说得具体点:
lcd_ce为使能端,读数据时为高。lcd_ce=P1^0;
lcd_clk为时钟,上升缘有效。 lcd_clk=P1^1;
lcd_do为单片机要读取的数据。lcd_do=P0^1;
假设单片机要读一个字节为0x43,它的程序这样写对吗?请高人指点
void read_data()
{
uchar i;
_nop_();
_nop_();
lcd_clk=1;
lcd_ce=1;
_nop_();
_nop_();
for(i=0;i<8;i++)
{
uchar read_data;
lcd_do=1; //读程序是不是要先把P0^1置1?
lcd_clk=0;
lcd_clk=1;
read_data=lcd_do; //read_data得到的一位一位的数据放哪了?
if(read_data==1)
{
P0^2=1; //蜂鸣器响
}
_nop_();
}
} |