使用queue作tx會導致message與內容不同步:
程式已經down了,但是tx queue中來有error message沒送,
所以只有顯示到前一個階段的message。
這樣沒辦法確認真正down機的所在。
所以修改sp0.c,sp1.c,將tx_queue拿掉。
將spX_putChar,改為polling的方式。
結果: 完全不動。
查RX 資料進不來。
用232queueTxRxInt測試也變得無法動作。
所以猜測應該是reset不完全。
CPU在reset時會先run flash的code,直到ICE介入,才取得控制全。
所以猜測是原來燒入f的flashloader程式的影響。
修改 spX_init,
加入
*US0_IDR = 0x03 ; // disable Tx/Rx int
*AIC_EOICR = 0; // read EOI to clear int
結果: 以232TxPollingRxInt測試OK。
( 232TxPollingRxInt是為了配合flashloader2所作的232測試project)
沒有留言:
張貼留言