51单片机串口发送数据调时间,新手求助
时间:10-02
整理:3721RD
点击:
最近弄了一个可按键调时间的lcd1602显示的ds1302时钟,想改成用串口发送一定指令来设置时间,但是用了串口初始化函数和中断服务函数发送过后毫无反应,逻辑上是根据源程序改的没有问题
void UsartInit()
{
SCON=0X50; //设置为工作方式1
TMOD=0X20; //设置计数器工作方式2
PCON=0X80; //波特率加倍
TH1=0XF3; //计数器初始值设置,注意波特率是4800的
TL1=0XF3;
ES=1; //打开接收中断
EA=1; //打开总中断
TR1=1; //打开计数器
}
void Usart() interrupt 4
{
receiveData=SBUF;//出去接收到的数据
while(!RI);
RI = 0;//清除接收中断标志位
},我在主函数中用了if(receiveData==0x00)来判断,感觉是不是格式上的问题,还是数据需要一个字节一个字节接收?麻烦有兴趣的看一下
void UsartInit()
{
SCON=0X50; //设置为工作方式1
TMOD=0X20; //设置计数器工作方式2
PCON=0X80; //波特率加倍
TH1=0XF3; //计数器初始值设置,注意波特率是4800的
TL1=0XF3;
ES=1; //打开接收中断
EA=1; //打开总中断
TR1=1; //打开计数器
}
void Usart() interrupt 4
{
receiveData=SBUF;//出去接收到的数据
while(!RI);
RI = 0;//清除接收中断标志位
},我在主函数中用了if(receiveData==0x00)来判断,感觉是不是格式上的问题,还是数据需要一个字节一个字节接收?麻烦有兴趣的看一下
ES=1之后是不是要让ET1=0 禁止T1中断?
我已经弄好了,串口助手发送数据时要hex发送
您好,请问能发代码给我吗?我最近也在弄这个
可以啊
加我QQ1340627516