「WiFi - ベースバンドチップ」の編集履歴(バックアップ)一覧はこちら
「WiFi - ベースバンドチップ」(2007/07/16 (月) 06:12:59) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
158h - W_BBSIOCNT - ベースバンド シリアル転送制御 (W)
0-7 インデックス (00h-68h)
8-11 未使用 (0にしなければならない)
12-15 方向 (5=Write BBSIOWRITE to Chip, 6=Read from Chip to BBSIOREAD)
Transfer is started after writing to this register.
15Ah - W_BBSIOWRITE - ベースバンド シリアル書き込みデータ (W)
0-7 Data to be sent to chip (by following W_BBSIOCNT transfer)
8-15 Not used (should be zero)
15Ch - W_BBSIOREAD - ベースバンド シリアル読み込みデータ (R)
0-7 Data received from chip (from previous W_BBSIOCNT transfer)
8-15 Not used (always zero)
15Eh - W_BBSIOBUSY - ベースバンド シリアルビジーフラグ (R)
0 Transfer Busy (0=Ready, 1=Busy)
1-15 Always zero
Used to sense transfer completion after writes to W_BBSIOCNT.
Not sure if I am doing something wrong... but the busy flag doesn't seem to get set immediately after W_BBSIOCNT writes, and works only after waiting a good number of clock cycles?
160h - W_BBSIOMODE (R/W)
0-7 Always zero
8 Unknown (usually 1) (no effect no matter what setting?)
9-13 Always zero
14 Unknown (usually 0) (W_BBSIOREAD gets unstable when set)
15 Always zero
This register is initialized by firmware bootcode - don't change.
168h - W_BBSIOPOWER (R/W)
0-3 Disable whatever (usually 0Dh=disable)
4-14 Always zero
15 Disable W_BBSIO-ports (usually 1=Disable)
Must be set to 0000h before accessing BB registers.
Read-Write-Ability of the BB registers
Index Num Dir Expl.
00h 1 R always 6Dh (R) (maybe chip id)
01h..0Ch 12 R/W 8bit R/W
0Dh..12h 6 - always 00h
13h..15h 3 R/W 8bit R/W
16h..1Ah 5 - always 00h
1Bh..26h 12 R/W 8bit R/W
27h 1 - always 00h
28h..4Ch R/W 8bit R/W
4Dh 1 R always 00h or BFh (depending on other regs)
4Eh..5Ch R/W 8bit R/W
5Dh 1 R always 01h (R)
5Eh..61h - always 00h
62h..63h 2 R/W 8bit R/W
64h 1 R always FFh or 3Fh (depending on other regs)
65h 1 R/W 8bit R/W
66h 1 - always 00h
67h..68h 2 R/W 8bit R/W
69h..FFh - always 00h
Important BB Registers
Registers 0..68h are initialized by firmware bootcode, and (most) of these settings do not need to be changed by other programs, except for:
Addr Initial Meaning
01h 0x9E [unsetting/resetting bit 7 initializes/resets the system?]
13h 0x00 CCA operation - criteria for receiving
0=only use Carrier Sense (CS)
1=only use Energy Detection (ED)
2=receive if CS OR ED
3=receive only if CS AND ED
1Eh 0xBB see change channels flowchart
35h 0x1F Energy Detection (ED) criteria
value 0..61 (representing energy levels of -60dBm to -80dBm)
----
**158h - W_BBSIOCNT - ベースバンド シリアル転送制御 (W)
0-7 インデックス (00h-68h)
8-11 未使用 (0にしなければならない)
12-15 方向 (5=BBSIOWRITE の値をチップに書き込む, 6=BBSIOREADへチップからデータを読み込む)
このレジスタに書き込み後、通信が開始される。
**15Ah - W_BBSIOWRITE - ベースバンド シリアル書き込みデータ (W)
0-7 チップに送るデータ (by following W_BBSIOCNT transfer)
8-15 未使用 (0 にしなければならない)
**15Ch - W_BBSIOREAD - ベースバンド シリアル読み込みデータ (R)
0-7 チップからのデータ読み込み (from previous W_BBSIOCNT transfer)
8-15 未使用 (常に0)
**15Eh - W_BBSIOBUSY - ベースバンド シリアルビジーフラグ (R)
0 通信ビジー (0=Ready, 1=Busy)
1-15 常に0
Used to sense transfer completion after writes to W_BBSIOCNT.
Not sure if I am doing something wrong... but the busy flag doesn't seem to get set immediately after W_BBSIOCNT writes, and works only after waiting a good number of clock cycles?
**160h - W_BBSIOMODE (R/W)
0-7 常に0
8 未知 (通常 1) (no effect no matter what setting?)
9-13 常に0
14 未知 (通常 0) (W_BBSIOREAD gets unstable when set)
15 常に0
このレジスタはファームウェアのブートコードによって初期化される。
変えてはならない。
**168h - W_BBSIOPOWER (R/W)
0-3 Disable whatever (通常 0Dh=無効)
4-14 常に 0
15 W_BBSIO-ports 無効 (通常 1=無効)
BBレジスタにアクセスする前に0000hにセットしなければならない。
**Read-Write-Ability of the BB registers
Index Num Dir Expl.
00h 1 R always 6Dh (R) (maybe chip id)
01h..0Ch 12 R/W 8bit R/W
0Dh..12h 6 - always 00h
13h..15h 3 R/W 8bit R/W
16h..1Ah 5 - always 00h
1Bh..26h 12 R/W 8bit R/W
27h 1 - always 00h
28h..4Ch R/W 8bit R/W
4Dh 1 R always 00h or BFh (depending on other regs)
4Eh..5Ch R/W 8bit R/W
5Dh 1 R always 01h (R)
5Eh..61h - always 00h
62h..63h 2 R/W 8bit R/W
64h 1 R always FFh or 3Fh (depending on other regs)
65h 1 R/W 8bit R/W
66h 1 - always 00h
67h..68h 2 R/W 8bit R/W
69h..FFh - always 00h
**Important BB Registers
Registers 0..68h are initialized by firmware bootcode, and (most) of these settings do not need to be changed by other programs, except for:
Addr Initial Meaning
01h 0x9E [unsetting/resetting bit 7 initializes/resets the system?]
13h 0x00 CCA operation - criteria for receiving
0=only use Carrier Sense (CS)
1=only use Energy Detection (ED)
2=receive if CS OR ED
3=receive only if CS AND ED
1Eh 0xBB see change channels flowchart
35h 0x1F Energy Detection (ED) criteria
value 0..61 (representing energy levels of -60dBm to -80dBm)
----