关于单片机stc15芯片学习的串口通信测试问题

嵌入式技术

1330人已加入

描述

今天闲来无事,再次操起很久之前的一块板子,板载stc15芯片,要做个串口通信。看完数据手册直接写程序,写完烧写进去后测试串口不通。

百思不得其姐啊,小编写了不下十次的串口程序,今天怎么就不通了呢?

好吧,老老实实的再看一遍数据手册(话说小编写程序都是看着数据手册写的),看完后更是郁闷了,哪哪都没问题啊,但是就是不通。

好吧,再回来从头仔细看程序,从申明到函数定义,从初始化到中断函数,都没问题,最后看主函数吧。

因为小编用P3.3口驱动一个三极管,所以偷懒写了:

P3M1=0x00;

P3M0=0xff;

整个程序就只是比平时的多了这两句。是它的原因引起了串口通信不正常的吗?抱着试试的态度,把以上程序改为:

P3M1=0x00;

P3M0=0x00;

在测试,完美解决问题,串口通信正常,收发都正常↓↓。

串口通信

所以问题就出在这里。

这样下结论是不是太早了,小编还算严谨,接着往下测试,

就之前的问题,我既然是设置为输出模式,那按道理是要能发送数据才对吧,好吧,小编改代码,下载测试↓↓

串口通信

果不其然,还真的能发送数据。

到此,测试结束,可以大胆的说了,小编今天遇到的问题就是因为错误的设置了IO口的工作模式引起的。

科普:

STC单片机从12系列后就支持IO的工作模式的设置了,有兼容传统51的双向IO,强上拉推挽输出,输入,开漏四种模式,我们在使用是请一定按实际使用要求设置,具体设置方式请看下图↓↓

串口通信

最最后,今天的问题,相信很多小伙伴都遇到过,在此就算给自己或者大家提个醒,你也遇到过同样的问题请点赞,如果你还没遇到望后续学习中不要在出现这样的问题,你在单片机学习的道路上遇到过哪些头疼的问题,文后留言和大家交流,小编前来学习。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分