數(shù)據(jù)線用的是STM32 D0-D7(上面還有SDRM,LCD等) A0和CS用的GPIO口 RD、WD等掛載在STM32的讀寫信號線上。
#define OUTADDR4 (*((volatile INT8U *) 0x60500000))
void xWriteCH376Cmd(unsigned char CMD) { OUTADDR4=CMD; USB1_A_1; USB1_CS_0; delay_us(25); USB1_CS_1; USB1_A_0;
delay_us(20);
}
void xWriteCH376Data(unsigned char dat) { OUTADDR4=dat; USB1_A_0; USB1_CS_0; delay_us(25); USB1_CS_1; delay_us(20); }
unsigned char xReadCH376Data() { unsigned char i=0;
USB1_A_0; USB1_CS_0; delay_us(50); i=OUTADDR4; delay_us(20); USB1_CS_1;
return i; }
unsigned char xReadCH376Status() { unsigned char i=0;
USB1_A_1; USB1_CS_0; delay_us(50); i=OUTADDR4; delay_us(20); USB1_CS_1; USB1_A_0;
return i; }
unsigned char CH375_Init(void) { unsigned char i=0xff;
xWriteCH376Cmd(0x06); xWriteCH376Data(0x55); i=xReadCH376Data(); return i; }
我想當(dāng)我向OUTADDR4寫數(shù)據(jù)的時候,數(shù)據(jù)線上出現(xiàn)數(shù)據(jù),我片選打開CH376,數(shù)據(jù)就可以進去了,讀的時候也是這樣,因此我沒有控制CH376的讀寫信號線。OUTADDR4這個地址隨便一個地址,只要我系統(tǒng)中其它地方?jīng)]有使用即可。
但是現(xiàn)在CH375_Init()函數(shù)的返回值是0xFF,就是讀不出正確的值,不知道什么問題?我的上述理解有問題嗎?