|
![](static/image/common/ico_lz.png)
楼主 |
发表于 2012-6-28 21:47:46
|
显示全部楼层
shuipaopao 发表于 2012-6-28 18:48 ![](static/image/common/back.gif)
我只是举了个例子,楼主不应该照搬,中断向量各个型号的单片机不尽相同,用时需要查数据手册。 ...
我知道我问题出在那儿了
这段代码:
while(1)
{
if(flag)
{
str_send(rdata); //发送接收到的字符串
flag=0;
}
变量flag,我之前接收字符串的时候,没有将flag值1.我修改完了以后,能接收到字符,把字符往LCD上显示也可以.
不过现在出现新的问题:
用串口调试助手发送11个字符串,然后再发回串口助手,并且在LCD上显示接收到的字符.但是,第一个发送的时候,LCD显示正确,但是串口接收到的只是字符串的第一个字符.再发送一次后,LCD显示和串口接收到都正常了.
将字符串改变后发送,发现一个问题,就是,发送的时候LCD上显示的是发送的字符,但是串口接收到的是上一次发送的字符.把字符再改变后发送,LCD始终显示正确,串口接收到的都是上一次发送的.
比如,发送A1,LCD显示A1,串口显示A,再发送A2,LCD显示A2,串口显示A1,发送A3,LCD显示A3,但串口显示A2......
不知道这是什么原因,高手再帮忙给分析一下!!!
谢谢!
|
|