第1世代のUART
第1世代Brain GC-590でUARTの出力を確認できるようにする方法です。
UARTのはんだづけ
PW-GC590 のサブLCDにのびるコネクタ(CONN701)から UART0 が出ている
https://gyazo.com/7e490de9ef9999d7104678dc98fe3681
準備
第1世代機では何らかのアプリ起動後にUART0(ペリフェラルのMMIO全般?)にアクセスできるようになります。
最初に何らかのアプリを立ち上げてUARTを使える状態にしてください。
加えて、UART0のピンはサブLCDの制御に使われているので、ログ出力に使うためには以下の初期化が必要です。
UARTペリフェラルの初期化
UARTCRの UARTEN = 0にしてdisableする
IBRD, FBRDを決めて設定する
IBRD = 0x28B, FBRD = 0x3 で baudrate 9600 になる
UARTLCRのWLEN=0b11, FEN=0, にする
0b11 << 5 | 1 << 4 = 0x70
UARTCRの RXE, TXE, UARTEN = 1にしてenableする
IO functionの設定
GPIO port NのfunctionをUART0のTXとRXに設定する
上記をopenocdで行うコマンドは以下です。
code: openocd
mww phys 0xf2000030 0
mww phys 0xf2000024 0x28B
mww phys 0xf2000028 0x3
mww phys 0xf200002C 0x70
mww phys 0xf2000030 0x301
mww phys 0xf080c424 0
mww phys 0xf080c428 0
mww phys 0xf080c424 1
mww phys 0xf080c428 2
読み書き
UART0のDRレジスタに8bitの値を書き込むと送信されます。
補足
UARTは2つ搭載されているとTMPA910CRAXBGのデータシートに書かれていますが、今のところUART0以外はアクセスが確認できていません。
UART0のペリフェラルはarm pl011と思われます。
データシートのURL:
第1世代Brainに関する過去の記事
回路解析等
JTAGデバッガ接続方法