单片机和上位机利用串口进行通讯
大家在学习单片机时,上位机编写好程序后,生成文件,下载到下位机进行运行,一般情况下,都是单机版,就是说只是单片机和部分外设进行独立的工作。今天让我来分享一下,单片机和上位机利用串口,进行实时通讯的小经验。
操作方法
(01)第一步,将keil 4安装到PC上,建个工程,编写串口程序(相信懂单片机的小伙伴都会的,这是基本知识),在串口初始化程序中,设置好波特率(可以理解为单位时间内传输码元符号的个数,要与比特率区分开),打开串口中断和总中断;
(02)第二步,编写串口中断程序,串口中断号是interrupt 4,(这个千万别弄错了),在中断程序中,要定义一个接收从上位机PC端发过来的字符类型为:unsigned char ,并将单片机接收到的数据再返回到PC机上,在串口助手上显示出来;
(03)第三步,利用下载工具(相信大家都有的)下载编译好的文件到单片机中,在PC端打开串口助手,在“我的电脑”-->"设备管理器"中找到对应的串口,设置好波特率,数据位数,停止位,校验位,设置好以后,在“字符输入框”中,输入数字或者字符,点击“发送”,此时,会在接收区看到接收到的字符。
(04)第四步,如果你在接收区看到的是乱码,一定是你波特率没有设置成一致,此时要检查串口初始化的程序,一般情况下,设置为4800Bps或者9600Bps,是没有问题的,过高(115200Bps)可能会出现问题,误差越小越好;
特别提示
在设置波特率的程序中,很可能会出现乱码,此时可以尝试将波特率设置的低一些,再尝试。
希望能帮到小伙伴们,大家一起努力!
-
该内存不能为read或该内存不能为written错误
有时候我们在使用电脑的时候,可能会弹出一个错误提示对话框,“0XXXXXXX”指令引用的“0x00000000”内存,该内存不能为“read”或者written的错误出现此种错误的时候,点击确定常常会关闭我们当前打开的所有界面非常的不方便,小编今天就为大家讲解下出现这种情况的解...
-
参考文献在文中怎么标注(word)
(尾注添加方法)在文章中标注参考文献,还在一个一个慢慢敲吗?看看用word怎么快速实现吧。这里以word2003为例。操作方法(01)光标移到要加入参考文献标注的地方(02)菜单中“插入”——“引用”——“脚注和尾注”(03)如图设置(04)确定后在该处就插入了一个上标“1”,而光标...
-
如何查看网络计算机和设备?
现在我们的电脑,办公的基本都是与单位局域网相连的,这是为了方便公司内部数据的传输与查询。因此在工作的网络中除了知道自己的电脑外,也想知道其它的电脑工作状态。那么如何查看呢?现在和大家分享一下实际操作。操作方法(01)点击电脑桌面左下角的开始图标,进入电脑主...
-
用excel的days函数快速计算两日期之间的天数
如何用excel的days函数快速计算两日期之间的天数?下面,图文演示,给大家作个参考。公式编写(01)用days函数编辑公式:=days(结束日期,开始日期)如图所示。(02)按回车,得到两日期之间的天数为4天。举例应用(01)下面,举个简单例子。比如,下图中,若超过10天,即标上:超时(02)选中D2:D8再在...