AVRワンチップマイコンのピン割り当てを解析してみました。といっても、テスタでパターンをたどっただけですが。外部からのフラッシュROM書き換えのヒントになればと思ったのですが、結論から言えば、このAVR、電源、リセット、LED、ファンの制御しかしていないことがわかりました。ただ、いくつか不明な点は残りますが。。
現時点で全く不明なのが、12pinのフラッシュに延びているライン。CPUのttyS1からの命令でフラッシュをライトプロテクトする、くらいしかその必要性を感じないのですが。。ピン番号もわかったし、AVRのソースコードを解析すればすぐわかるかも。 また、デバッグコネクタCN5に伸びている6pinも不明。I/Oすら不明。これに関しては後ほどコード解析してポートレジスタ設定を読めばすぐわかると思います。 少なくともAVR単体でフラッシュROMにデータをライトできないということはわかりました。となると、外部からフラッシュROMを書き込むにはJTAGに頼るしかなさそう。。これを機会にJTAGアダプタ作るかな。。
Pin | Pin名称 | I/O | LinkStationでの機能 |
1 | RESET# | I | ルネサスのリセットIC「M51957」から出力されるリセット信号が接続されている。リセットICで3.3V系の電圧監視をして、ある電圧(分圧抵抗にて設定)を下回るとAVRに対しリセットをかける。AVR ISP(In-System Programming)コネクタCN4-5pinに接続 |
2 | PD0/RXD | I | R62にて3.3Vプルアップ。FIL8を通してCPUへ。(おそらくttyS1に接続) |
3 | PD1/TXD | I | NC |
4 | XTAL2 | - | 4MHzのXtalに接続 |
5 | XTAL1 | - | |
6 | PD2/INT0 | I | R59にて3.3Vプルアップ。FIL4を通してCN5(CPUデバッグコネクタ、JTAG)の14pinに接続。 |
7 | PD3/INT1 | O | LED4(DIAG)LEDに接続。 |
8 | PD4/T0 | O | LED3(DISKFULL)LEDに接続。 |
9 | PD5/T1 | I | R48にて3.3Vプルアップ。FIL2を通して電源コネクタへ。おそらくFANモータON/OFF制御。PWMしてるのかは不明。FANモータからの回転パルス入力。 |
10 | GND | - | GND |
11 | PD6/ICP | O | LED1(POWER)LEDに接続。 |
12 | PB0/ADIN0 | O | R63にて3.3Vプルアップ。 |
13 | PB1/ADIN1 | O | FIL9を通してマイコンへ接続。IDEコントローラへ接続。イーサーネットコントローラへ接続。別系統でマイコンへ接続。おそらく各デバイスのリセット信号と思われる。 |
14 | PB2 | I | R56にてプルアップ後、リセットSWへ接続。 |
15 | PB3/OC1 | I | R54にてプルアップ後、PowerSWへ接続。 |
16 | PB4 | O | R,Trを通してPchMOSFETに接続。FANモータ回転数制御。16pinがLで、FANモータに約8V供給、Hで、12V供給。 |
17 | PB5/MOSI | O | R,Trを通してPchMOSFETに接続。おそらく電源ON/OFF制御。CN4(ISP)-4pinへ接続。 |
18 | PB6/MISO | I | CN4(ISP)-1pinへ接続。 |
19 | PB7/SCK | I | CN4(ISP)-3pinへ接続。 |
20 | Vcc | - | 3.3V駆動。AVR電源は、コンセント差し込みで常時ON。(他のデバイスの電源、リセット制御をするため。) |
AVRから吸い出したコードから、各PINのI/Oを上の表に追記しました。勘違いしていたのはFANモータ制御で、PWM制御などしておらず、回転数をモニターして、FANモータの供給電圧のHi/Lowを切り替えているだけでした。Lowの時に指でFANを止めると、モータ供給電圧が8V→12Vになりました。もしかしたら、マイコンからのttyS1によってもHi/Lowを切り替えているかもしれません。
3.3V電源はチョッパレギュレータで生成していました。どおりででっかいコイルが付いているわけです。チョッパレギュレータとわかると、その高周波ノイズが気になってしまうのは私だけでしょうか。実際、PCBに耳を近づけるとキーというかすかな音が聞こえていますね。
040422
LinkStation、玄箱1台ずつ、FlashROMの内容を消してしまったので、本格的にフラッシュ書き込みの方法について模索してます。まず、AVR12pinからFlashROMに延びているラインは、RESETに接続されていることが判明。ちなみに当初予想したライトプロテクト(15pin)は、Vccが接続されており常にプロテクト解除状態です。詳しくはフラッシュ解析のコーナーで書きます。