Proteus 8.15和51单片机的UART串口通讯点亮LED
创作时间:
作者:
@小白创作中心
Proteus 8.15和51单片机的UART串口通讯点亮LED
引用
CSDN
1.
https://blog.csdn.net/zhenxixianzai00/article/details/137967170
本文将详细介绍如何使用Proteus 8.15仿真51单片机与电脑端上位机的UART串口通讯。通过这个实验,你可以实现上位机发送数字来控制LED灯的点亮,如果不是数值1-8蜂鸣器就会报警,同时将发送的数值进行回传。
1. 电路连接
1.1 整体电路连接
其中的时钟和复位电路可以不需要连接也可以使用。其中51单片机的RXD需要和COMPIM的RXT相连接,TXD与TXD连接。
1.2 元器件载入
在侧边栏找到元件图标,在搜索栏输入AT89得到51芯片,其他元器件的名字为:10WATT10R-电阻,02013A0R5CAT2A-电容,BUTTON-按键,BUZZER-蜂鸣器,COMPIM-计算机接口,CRYSTAY-晶振,LED-灯,PNP-三极管。
虚拟终端在侧边栏的虚拟仪器模式里面的VIRTUAL TERMINAL。
1.3 设置51单片机程序和频率
在程序文件中选择keil编译的.hex文件,设置频率的时候要注意单位。因为通信使用9600的波特率,所以设置频率为11.0592MHz,如果加了外部晶振也不要忘记设置频率。
1.3 设置虚拟终端和计算机接口的终端
双击虚拟终端配置波特率为9600,设置数据位数为8位,截止位1位,计算机接口也要进行配置。
2. 程序部分
2.1 串口初始化
配置波特率率为9600,允许串口中断。
//设置波特率9600
SCON=0x50; //设定串口工作方式
PCON=0x00; //波特率不倍增
TMOD=0x20; //定时器1工作于8位自动重载模式, 用于产生波特率
EA=1;
ES = 1; //允许串口中断
TL1=0xfd;
TH1=0xfd; //波特率9600
TR1=1;
2.2 发送数据
u8 UART_Receive_Data()
{
u8 temp;
while(!RI);//等待串口接收到数据(RI被置1)
temp=SBUF;
RI=0;//清空接收中断标志位,为下次接收做准备
return temp;
}
2.3 串口中断程序
void serial() interrupt 4
{
ES = 0; //关闭串行中断
RI = 0; //清除串行接受标志位
buf = SBUF; //从串口缓冲区取得数据
UART_Send_Data(SBUF);//将数据发回电脑
switch(buf)
{
case 0x31: P1=0xfe;beep=1;break; //接受到1,第一个LED亮
case 0x32: P1=0xfd;beep=1;break; //接受到2,第二个LED亮
case 0x33: P1=0xfb;beep=1;break; //接受到3,第三个LED亮
case 0x34: P1=0xf7;beep=1;break; //接受到4,第四个LED亮
case 0x35: P1=0xef;beep=1;break; //接受到5,第五个LED亮
case 0x36: P1=0xdf;beep=1;break; //接受到6,第六个LED亮
case 0x37: P1=0xbf;beep=1;break; //接受到7,第七个LED亮
case 0x38: P1=0x7f;beep=1;break; //接受到8,第八个LED亮
default: beep=0;P1=0xff;break; //接受到其它数据,蜂鸣器响
}
ES = 1; //允许串口中断
}
3. 虚拟串口驱动
使用Virtual Serial Port Driver 6.9来配置虚拟串口,将Proteus里面的计算机接口和你的电脑进行连接。因为我已经添加了COM1和COM2两个虚拟端口,所以添加那里自动变成了COM5和COM6,而前面的COM3和COM4是电脑自带的端口。可以看到Virtual ports下面的COM2有一个后缀[9600-N-8-1],那是因为我打开了串口调试助手连接COM2后就会自动显示。
配置Proteus里面的计算机接口连接COM1。
4. 实验结果
当我们使用串口调试助手发送数字2时,第二个LED亮起,并且回传了一个数值2。
热门推荐
基金投资策略:定投与一次性买入的权衡与选择
2025年开便利店赚钱吗?开便利店的利润和风险
无刷电机寿命有多长?软件能改善吗?无刷电机驱动
美联储的量化宽松政策,为何全球经济都在依赖它?
大型普通客车过户需要什么条件?
8400万新就业形态劳动者,谁来为你“撑伞”?
古文小学怎么说——探寻古代儿童教育的智慧
酒店OTA代运营的概念与优势详解,如何提高线上销售能力?
竞争比最高达10665:1!国考报名人数破310万
有了商业医疗保险,还需要参加基本医疗保险吗?
高原旅行:你不可不知的「高原反应」
打造“医学技术+”卓越双峰分层分类培养体系
皮蛋对身体有害吗?医生告诉您答案,爱吃皮蛋的您不妨来了解
员工职业发展的关键策略与实践分享
影视发行是什么工作
心理崩溃的成因与应对策略
世界甲胄史上的一股清流,各种铠甲应有尽有,中国甲胄的进化演变
《蓝甲虫》:DC 宇宙中的一抹亮丽色彩
编程语言入门指南:如何选择适合自己的第一门编程语言?
朝鲜半岛真能统一吗?为什么说从历史上看,朝鲜半岛分裂是常态?
香蕉和桃子能一起吃吗
维生素B2:从功效到食物来源的全面解析
孔雀鱼的美丽与独特之处(探秘孔雀鱼的外观、行为和繁殖习性)
原画设计师岗位的全面解析
主场迎战澳大利亚,国足能否打破三连败魔咒?
“药驾”预警!吃了这9类药后开车得注意哟!
《美丽人生》影评
减肥这件事 不能只靠饿和药
这些通通可以喝,怀孕期间让你放心喝的20款饮品!
租客死亡的情况下,房东是否需要承担责任?