標(biāo)題: 請高手幫忙分析程序-GPIO擴(kuò)展芯片XRA1402 [打印本頁]
作者: 閆Sir 時間: 2019-5-16 21:16
標(biāo)題: 請高手幫忙分析程序-GPIO擴(kuò)展芯片XRA1402
主要是SPI操作,芯片寄存器。
命令字節(jié) 操作數(shù)據(jù) 寄存器描述 讀/寫 默認(rèn)數(shù)值
0x00 000 0 000 0 0x00 GSR -GPIO狀態(tài) 只讀 0xXX
0x01 000 0 001 0 0x02 OCR – 輸出控制 讀/寫 0xff
0x02 000 0 010 0 0x04 PIR -輸入極性反轉(zhuǎn) 讀/寫 0x00
0x03 000 0 011 0 0x06 GCR- GPIO 組態(tài)/構(gòu)造 讀/寫 0xFF
0x04 000 0 100 0 0x08 PUR-輸入內(nèi)部上拉電阻啟用/禁用 讀/寫 0x00
0x05 000 0 101 0 0x0A IER-輸入中斷使能 讀/寫 0x00
0x06 000 0 110 0 0x0C TSCR - 輸出三態(tài)控制 讀/寫 0x00
0x07 000 0 111 0 0x0E ISR -輸入中斷狀態(tài) 讀 0x00
0x08 000 1 000 0 0x10 REIR - 輸入上升沿中斷使能 讀/寫 0x00
0x09 000 1 001 0 0x12 FEIR - 輸入下降沿中斷使能 讀/寫 0x00
0x0A 000 1 010 0 0x14 IFR - 輸入濾波器啟用/禁用 讀/寫 0xFF
//SPI寫函數(shù)
void Write_Data(unsigned char DAT)
{
unsigned char i;
SCK = 0;
for(i=0;i<8;i++)
{
SDI = DAT&0x80;
Delay_10uS();
SCK = 1;
Delay_10uS();
DAT <<= 1;
SCK = 0;
}
//主程序調(diào)用函數(shù)
void main(void){ Delay_1S();
Write_Data(0x03); //選定0x03 GCR- GPIO 組態(tài)寄存器, //該成0x06也不行
Write_Data(0x00); //寫入0x00 使所有IO為 輸出IO
Write_Data(0x01); //選定0x01 OCR – 輸出控制寄存器, //該成0x02也不行
Write_Data(0x0f);//寫入0x0F 使高四位IO為低電平,第四位IO為高電平
while(1);
}
-
XRA1402.png
(135.81 KB, 下載次數(shù): 59)
下載附件
2019-5-16 21:10 上傳
作者: 閆Sir 時間: 2019-5-17 07:22
沒高手給看一下嗎?
糾結(jié)是不是芯片焊接時燒壞了。。。。
中午換一個芯片試試
作者: 幻劍心 時間: 2019-5-17 12:28
Write_Data(0x03); //選定0x03 GCR- GPIO 組態(tài)寄存器,
作者: 幻劍心 時間: 2019-5-17 12:29
Write_Data(0x06); //選定0x03 GCR- GPIO 組態(tài)寄存器
作者: 幻劍心 時間: 2019-5-17 12:30
前面是命令,后面是數(shù)據(jù)。
作者: 閆Sir 時間: 2019-5-17 14:40
這個知道啊,實(shí)際情況這樣寫不行
作者: ke3376028 時間: 2019-5-17 15:18
Write_Data(0x03);
Write_Data(0x06);
作者: 麻吉馬巧龍 時間: 2019-5-17 17:42
Write_Data(0x06); //
選定0x03 GCR- GPIO 組態(tài)寄存器
作者: 閆Sir 時間: 2019-5-18 09:28
這回復(fù)都是玩呢???????
沒有可行的建議嗎?
| 歡迎光臨 (http://m.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |