发布网友 发布时间:2022-04-23 22:27
共3个回答
热心网友 时间:2023-10-12 03:39
如果硬件没有问题的话,你的软件程序可以拆分为以下考虑
1、串口通信有问题吗?你先保证PC串口调试软件发一个数据,单片机能准确收到。
调试办法,单片机接收到后,体现在io管脚上或指示灯指示。如pc发送0x55,看看单片机是不是收到了;
2、单片机的lcd液晶显示
你用的是128不知道控制器是什么信号的,KS0107,T6963C还是ST7920,对照液晶说明书,关键字设置,点亮液晶,比如在固定位置显示一个字符
如果上面两条都实现了,
把两段程序柔和到一起就ok了
参考资料:http://zhidao.baidu.com/team/view/%E5%8D%95%E7%%87%E6%9C%BA-CAN
热心网友 时间:2023-10-12 03:40
主函数的while循环
while(1)
{
if(flag==1)//接受到数据后发送
{
displaylistchar(1,1,a);
ES=0; //单片机发送数据
for(i=0;i<90;i++)
{
SBUF=a;
while(!TI);
TI=0;
}
flag=0;
ES=1;
}
}
中断函数
void serial() interrupt 4 //中断函数内为单片机接受数据
{
if(RI)
{
RI = 0;
a[index++]=SBUF; //index为全局变量
if(index == 90)
{
index = 0;
flag = 1;
}
}
}
热心网友 时间:2023-10-12 03:40
你这个程序错一堆, 不说别的调用函数放在后面又没申明