IO口上没有接上拉电阻,通过245与CH376S连接。
数据线IO平时置为推挽输出,读数据的时候先置为浮空输入,然后读,读完再切换到推挽输出。
目前的现象是写入命令、数据,然后读到的返回数据和之前发送的数据是一样的。
请问,
1)如果不改硬件的情况下,造成这样的原因可能是什么?
2)有没有类似的源码,发给我一份个人信息保护,已隐藏
3)谢谢
IO口上没有接上拉电阻,通过245与CH376S连接。
数据线IO平时置为推挽输出,读数据的时候先置为浮空输入,然后读,读完再切换到推挽输出。
目前的现象是写入命令、数据,然后读到的返回数据和之前发送的数据是一样的。
请问,
1)如果不改硬件的情况下,造成这样的原因可能是什么?
2)有没有类似的源码,发给我一份个人信息保护,已隐藏
3)谢谢
245是什么?A0 CS WR RD 初始化推挽输出,PORT初始化普通输入。大致流程如下:
{
CSLOW();
SetWR();
SetRD();
SetPortIn();
}
WriteCommand(u8 cmd)
{
A0set(1);
ClrWR();
SetPortOut();
SetData(cmd);
SetWR();
SetPortIn();
Delay_us(2);
}
void WriteData(u8 value)
{
A0set(0);
ClrWR();
SetPortOut();
SetData(value);
SetWR();
SetPortIn();
Delay_us(1);
}
u8 ReadByte(void)
{
u8 temp;
Delay_us(1);
A0set(0);
ClrRD();
temp = GetData();
SetRD();
return temp;
}
HC245
我的数据口还有别的用处,所以平时是输出状态,只有和376通讯读数据时才置为输入状态一下