CEVRZA1L用ケース試作1号
基板剥き出しは使い勝手が悪いのでケースを試作した。
素材は4mm厚のシナベニヤ。
CEVRZA1L実験2
SF_EXTCNの使い道
急に思い立ったのでメモ。
機能は意図不明と書いてしまったSF_EXTCNだが、
TH7(/RES) ASSERT しておけばRZからアクセスされないので、
TH1〜6でMX25L1633をSPI経由で書き込み可能。
つまり、Flash吹っ飛ばしても、SPI信号発射できる装置があれば書き込み可能。
秋月のFT232HとかFT2232Dで書けるわけだ。
これは、後日試す。Protocol Overhead がないので、Coresight経由より速度は出るかも。
世の中、私のように仕事でJTAG Debuggerを自由に使用できる人間ばかりではないので、吹っ飛ばした後の低価格なリカバリ手段はあると救われる場合も。
uSD/MMC周辺調査
Kernel側もSD Cardではなく、MMCとして実装されているっぽい。
CEVRZA1L実験1
CEVRZA1L購入・開封
内需拡大のため、国産SoC で Beaglebone みたいなの出ないかなと思っていた。
条件は
- \10,000 以内
- ARMv7A architecture
- Ethernet
- USB-UART on board
- USB Host on board
- SD/uSD slot on board
- JTAG Connector(Coresight) ・・・職業病だ
Renesas + Computex から、やっとでたCEV-RZ/A1Lを秋に購入していたが、多忙で動作確認できず。
やっと開封。
uSD Card I/Fの取り付け
実は正式サポートされていない。基板にパターンだけある。
これを使用すると、OptionのWiFi Boardが使用できなくなる。
私は使わないので関係ない。
(ボード本体と同額なので高くて手が出ない)
Hot Plug用の電源制御IC? について
「Hot Plug しない。これはSystem Disk扱い。」
と割り切ってしまえば短絡実装でよさそう。
Webで先駆者を発見。
http://www.si-linux.co.jp/techinfo/index.php?CEV-RZ%2FA1L
同様に改造。私は、お守り的なC45は未実装。
Reset Switchの取り付け
SF_EXTCN は SerialFlashの信号とResetが引き出してあるが、OnBoard FlashをDisableするSW/Jumperがないので意図不明。
Linux kernel からの MMC(uSD)認識
先駆者の実験通り、Pre-built kernelで認識できる。
u-boot に mmc commandは実装されていない。
ここはさほど難しくないので、自分でPatchしてしまえばいい。
SDCCのVersion毎に処理を変える
諸事情で8051系MCUなぞいじっている。かの有名なFX2LPなワケだが。
Keil C51 の 4KB無償評価の壁に早くもぶつかったので SDCC に切り替え。
しかし、サンプルの多い SDCC 2.x と SDCC 3.x で基本型の定義が違う
- xdata (SDCC2)
- __xdata (SDCC3)
- code (SDCC2)
- __code (SDCC3)
special sdcc keywords which are not preceded by a double underscore are obsoleted (removed) in version 3.2.0 and higher. See section 3.1 Standard-Compliance.
つうことで SDCC 3.2.0 以降は ANSII非標準はぜんぶ'__'を接頭句に変更したっぽい。
で、こうなった。
#if SDCC >= 320 extern BYTE EZUSB_WriteI2C_(BYTE addr, BYTE length, BYTE __xdata * dat); extern BYTE EZUSB_ReadI2C_(BYTE addr, BYTE length, BYTE __xdata * dat); extern BYTE EZUSB_WriteI2C(BYTE addr, BYTE length, BYTE __xdata * dat); extern BYTE EZUSB_ReadI2C(BYTE addr, BYTE length, BYTE __xdata * dat); extern void EZUSB_WaitForEEPROMWrite(BYTE addr); #else //#if SDCC >= 320 extern BYTE EZUSB_WriteI2C_(BYTE addr, BYTE length, BYTE xdata * dat); extern BYTE EZUSB_ReadI2C_(BYTE addr, BYTE length, BYTE xdata * dat); extern BYTE EZUSB_WriteI2C(BYTE addr, BYTE length, BYTE xdata * dat); extern BYTE EZUSB_ReadI2C(BYTE addr, BYTE length, BYTE xdata * dat); extern void EZUSB_WaitForEEPROMWrite(BYTE addr); #endif //#if SDCC >= 320
これで SDCC 2/3 共用となるハズ。
QFP Package の Middle to High performance ARM SoC
- Freescale i.MX233 :: LQFP128, ARM926EJ-S single, 454MHz
- NXP Semiconductors | Automotive, Security, IoT
- digikey.jp で \762 (At 2012/Nov/04)
- NTSC decorderがあるのでカメラ画像処理...Robo-Visionとかの研究が安くできそう...
32BIT One-Chip-uC が100円台
- ¥190 :: MIPS32 M4K(PIC32MX)
- ¥110 :: ARM Cortex-M0
仕事と同じKnowledgeで扱えるのがGood。
DIPだからブレッドでいけるし。