MCU通過SPI連接RA8889等芯片故障怎么解決?
【硬件檢查】
一、確定硬件連接是否正確,并確認(rèn)連接通斷,見下圖:
二、確定控制芯片(RA8889等)相關(guān)電壓是否正常?VCC=3.3V, LDO=1.2V,如果電壓不正常則檢查輸入連接,以及是否虛焊;另外要確保VCC電壓干凈,注意是否有外部干擾造成紋波過大。然后再確認(rèn)晶振信號是否起振?如果不振,則確認(rèn)是否有并聯(lián)1M歐電阻?或者可以換一顆晶振測試。
【軟件檢查】
三、檢查初始化:userdef.h中宏定義是否正確。如果正確,則可以單步運(yùn)行。如果單步運(yùn)行時在與RA8889通信時卡住,則說明通信不正常,這時候先檢查引腳配置,若沒有問題,再測試讀寫寄存器是否正常,方法如下:unsigned char temp;
//寄存器寫入
LCD_CmdWrite(0xAD);
LCD_DataWrite(0x11);
//寄存器讀回
LCD_CmdWrite(0xAD);
temp = LCD_DataRead();//判斷是否正常方法
if(temp==0x11)
{
//可通過點(diǎn)亮LED作為指示
}四、確定可正常讀寫RA8889等的寄存器之后,才進(jìn)行初始化的檢查。請先單步運(yùn)行,看看是具體在哪里卡住,逐一排查。參考代碼已打包在這個函數(shù):
RA8889_Initial(); 或者 RA8876_Initial(); 等。
由于SPI接口采用模擬IO口通信,為何使用模擬IO口?因?yàn)榧嫒菪暂^好。如果用戶想采用MCU的硬件SPI接口也可以,但需要驗(yàn)證。理論上RA8889的SPI可以達(dá)到最高50MHz的通信速度。
需要注意的是通信延時函數(shù)需要注意變更為用戶自己的函數(shù),否則SPI時序可能錯誤造成通信異常。
基本上以幾步確認(rèn)完之后初始化就可以跑通了,說明SPI通信已正常。如果液晶屏參數(shù)配置正確,初始化后可以看到彩虹條顯示1秒后關(guān)閉:
在初始化函數(shù)最后面的代碼,如下:
Color_Bar_ON();
delay_seconds(1);
Color_Bar_OFF();
分享到:
相關(guān)熱詞搜索:RA8889 RA8876 RA8873 RA8871 SPI
上一篇:第一頁
下一篇:RA8889配套上位機(jī)使用簡介
>>延伸閱讀:1