课程设计 利用RS232实现单片机与PC间的串行通信.docx
- 文档编号:9240894
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:20
- 大小:523.94KB
课程设计 利用RS232实现单片机与PC间的串行通信.docx
《课程设计 利用RS232实现单片机与PC间的串行通信.docx》由会员分享,可在线阅读,更多相关《课程设计 利用RS232实现单片机与PC间的串行通信.docx(20页珍藏版)》请在冰豆网上搜索。
课程设计利用RS232实现单片机与PC间的串行通信
内容提要
单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。
概括的讲:
一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可......用它来做一些控制电器一类不是很复杂的工作足矣了。
我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影!
......它主要是作为控制部分的核心部件。
它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。
单片机是靠程序运行的,并且可以修改。
通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。
一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!
但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!
只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!
由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?
很多高级的语言已经达到了可视化编程的水平为什么不用呢?
原因很简单,就是单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。
一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K的尺寸!
对于家用PC的硬盘来讲没什么,可是对于单片机来讲是不能接受的。
单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。
一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC上来运行,家用PC的也是承受不了的。
二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。
不过,这种电脑,通常是指个人计算机,简称PC机。
它由主机、键盘、显示器等组成。
还有一类计算机,大多数人却不怎么熟悉。
这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。
顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。
因为它体积小,通常都藏在被控机械的“肚子”里。
它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。
现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。
各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。
1引言
1.1设计目的
本设计包括确定控制任务、系统总体方案设计、硬件系统设计、软件程序的设计等,以便使学生掌握有关单片机控制的设计思想和设计方法。
为学生今后从事单片机控制系统开发工作打下基础。
1.2设计内容和要求
本课程设计的基本要求是使学生全面掌握单片机控制系统设计的基本理论熟悉掌握MCS-51系列单片机的编程方法,具体要求如下:
利用电平转换器件RS-232实现单片机与PC间的串口通信,利用虚拟终端仿真单片机与PC间的串行通信。
PC先发送从键盘输入的数据,单片机接收后会发给PC机,双方收发数据是相同的单片机将收发到的30-39H间的数据转换成0-9显示,其他数据直接显示为字符的ASCII码。
2单片机的介绍
2.1单片机的基本概念
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。
单片微型计算机简称单片机,是典型的嵌入式微控制器,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
相当于一个微型的计算机,和计算机相比单片机只缺少了I/O设备。
由于单片机在工业控制领域的广泛应用,单片机由芯片内仅有CPU的专用处理器发展而来。
最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。
手机、电话、计算机、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都用1-2部单片机。
汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!
单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。
2.2基本结构
单片机由运算器、控制器、存储器、输入输出设备构成。
2.3硬件特性
1、主流单片机包括CPU、4KB容量的ROM、2个16位定时器/计数器、4个8位并行口、全双工串口行口、ADC/DAC、SPI、I2C、ISP、IAP;
2、系统结构简单,使用方便,实现模块化;
3、单片机可靠性高;
4、处理功能强,速度快;
5、低电压,低功耗,便于生产便携式产品;
6、控制功能强;
7、环境适应能力强。
2.4应用分类
单片机作为计算机发展的一个重要分支领域,根据目前发展情况,从不同角度单片机大致可以分为通用型/专用型,总线型/非总线型及工控型/家电型。
3系统设计内容
3.1从PROTEUS库中选取元器件及结构框图
1.AT89C51/AY89C2051:
单片机如图1所示:
图1AT89C2051:
单片机
2.RES:
电阻如图2所示:
图2RES:
电阻
3.7SEG-BCD-RED:
红色BCD数码管如图3所示:
图37SEG-BCD-RED:
红色BCD数码管
4.CAP、CAP-ELEC:
电容、电解电容如图4所示:
图4CAP、CAP-ELEC:
电容、电解电容
5.CRYSTAL:
晶振如图5所示:
图5CRYSTAL:
晶振
6.MAX232/MAX220:
RS-232收发器如图6所示:
图6MAX232:
RS-232收发器
3.2原理图中用到的部分元器件的功能、原理及引脚说明
1.串口模型COMPIM及其引脚功能如图7所示:
图7串口模型COMPIM及其引脚功能
2.MAX232/MAX220:
RS-232收发器的功能
实现电平转换,也就是将CMOS电平转换成TTL电平
3.RS232(DB9)引脚定义
(1):
DCB:
载波检测。
主要用于Modem通知计算机其处于在线状态,即Modem检测到拨号音,处于在线状态。
(2):
RXD:
此引脚用于接收外部设备送来的数据;在使用Modem时,会发现RXD指示灯在闪烁,说明RXD引脚上有数据进入。
(3):
TXD:
此引脚将计算机的数据发送给外部设备;在使用Modem时,会发现TXD指示灯在闪烁,说明计算机正在通过TXD引脚发送数据。
(4):
DTR:
数据终端就绪;当此引脚高电平时,通知Modem可以进行数据传输,计算机已经准备好。
(5):
GND:
信号地;
(6):
DSR:
数据设备就绪;此引脚高电平时,通知计算机Modem已经准备好,可以进行数据通讯了。
(7):
RTS:
请求发送;此引脚由计算机来控制,用以通知Modem马上传送数据至计算机;否则,Modem将收到的数据暂时放入缓冲区中。
(8):
CTS:
清除发送;此引脚由Modem控制,用以通知计算机将欲传的数据送至Modem。
(9):
RI:
Modem通知计算机有呼叫进来,是否接听呼叫由计算机决定
4.MAX232原理
MAX232芯片是专门为电脑的RS-232标准串口设计的接口电路,使用+5V单电源供电。
内部结构基本可分三个部分:
第一部分是电荷泵电路。
由1、2、3、4、5、6脚和4只电容构成。
功能是产生+12V和-12V两个电源,提供给RS-232串口电平的需要。
第二部分是数据转换通道。
由7、8、9、10、11、12、13、14脚构成两个数据通道。
其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。
8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。
TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
第三部分是供电。
15脚DNG、16脚VCC(+5V)。
5.AT89C2051单片机引脚介绍
AT89C2051为20引脚小型封装,2K内部程序存储器,15个可编程I/O口线,没有P0口和P2口的16根I/O线,内部集成了一个模拟比较器。
AT89C2051单片机的引脚排列如图8所示:
图8AT89C2051单片机的引脚排列
芯片共有20个引脚,引脚的排列顺序为从靠芯片的缺口(见上图)左边那列引脚逆时针数起,依次为1、2、3…20,在单片机的20个引脚中,电源引脚2根,外接晶体振荡器引脚2根,复位引脚1根以及P1、P3口可编程I/O引脚15根。
(1)主电源引脚(2根)
VCC(Pin20):
电源输入,接+5V电源
GND(Pin10):
接地线
(2)外接晶振引脚(2根)
XTAL1(Pin5):
片内振荡电路的输入端
XTAL2(Pin4):
片内振荡电路的输出端
(3)控制引脚(1根)
RST/VPP(Pin1):
复位引脚,引脚上出现2个机器周期的高电平将使单片机复位
(4)可编程输入/输出引脚(15根)
P1口:
8位准双向I/O口线,P1.0—P1.7,共8根
P3口:
8位准双向I/O口线,P3.0—P3.5、P3.7,共7根
4硬件设计
4.1系统各组成部分硬件设计
(1)、硬件设计电路图如图9所示:
图9硬件设计电路
4.2电路图的原理
(1)、利用电平转换器件RS-232实现单片机与PC间的串行通信。
本次试验利用虚拟终端仿真单片机与PC间的串行通知。
PC先发送从键盘输入的数据,单片机接收后回发给PC机,双方收发数据是相同的单片机将接收30-39H间的数据转换成0-9显示,其他数据直接显示为字符的ASCII码。
(2)、4个虚拟终端,分别给单片机的串行口及COMPIM的2脚、3脚,COMPIM的3脚与虚拟终端的发送端TXD相连,将单片机串口的RXD,TXD以及COMPIM的2脚分别接入虚拟终端的RXD,以此监视单片机和串口模型收、发数据。
(3)、PCS代表计算机发送数据,PCR用来监视PC接收到的数据,SCMS、SCMR分别为单片机发送、接收终端,分别监视单片机发送、接收数据。
4.3原理图中各引脚说明
(1)、AT89C2051单片机引脚图如图10所示
图10AT89C2051单片机引脚图
(2)、MAX232引脚图如图11所示:
图11MAX232引脚图
5软件设计
5.1软件设计流程图如图12所示:
图12软件设计流程图
5.2源程序设计
ORG0
ORG30H
SJMPSTART
START:
MOVTMOD,#20H;设计定时方式寄存器
MOVPOCN,#0;设置电源制寄存器
MOVTH1,#0E6H;装初值
MOVTL1,#0E6H;装初值
SETBTR1;开中断
CLRES;中断允许
MOVSP,#5FH;装入指针初值
LOOP:
MOVSCON,#50H;串行口工作于方式1
JNBRI,$;判断RI=1?
CLRRI;清零
MOVA,SBUF;读进收到的数据
PUSHACC
CJNEA,#3AH,RANG1;判断A的内容是否等于48
RANG1:
JCRANG3;判断CY=1?
CJNEA,#3AH,RANG2;判断A的内容是否等于58
RANG2:
JNCRANG3;判断CY=0?
CLRC;CY=0
SUBBA,#30H;转换为ASCII码
RANG3:
MOVP1,A;输出到数码管显示
POPACC
RANG4:
NOP
NOP
NOP
NOP
NOP
MOVSBUF,A;启动发送
JNBTI,$;判断TI=1?
END
6调试和结果分析
6.1调试结果
(1)、在刚开始设计完原理图时,编译运行时出现了如图13所示,表示该程序是错误的,经过我们的一起研究发现了程序的末尾没有加上END结束标志。
图13编译运行图
(2)、程序调试完了之后,在运行时出现了如图14所示,在PCS中输入数字和字符而在数码管、PCR、SCMR、SCMS没有显示跟踪结果。
在我们的研究和探讨中发现了我们没有在串行口的3引脚发送数据端没有加上标记PCS。
图14运行图
(3)、在原理图基本调试出来的时候,运行在PCS中输入数字“8”我们发现在PCR中没有显示跟踪结果,如图15所示,最后我们把PCR的属性改成如下所示才把原理图和程序调试出来。
调试成功后的运行图如图16所示:
图15编辑元件图
图16调试成功后的运行图
6.2实验结果
(1)、在PCS中输入“8”时,结果如图17所示:
图17结果图
(2)、当PCS输入数据位“2”时,运行结果如图18所示:
图18结果图
(3)、当PCS输入数据为“a”时,运行结果如图19所示:
图19结果图
(4)、当PCS输入数据为“空格”时,运行结果如图20所示:
图20结果图
(5)、当PCS输入数据为“?
”时,运行结果如图21所示:
图21结果图
7课程设计体会
通过此次的课程设计,让我对单片机有了更深一层的认识。
通过上网查找资料,我学到了很多的关于单片机、硬件和数字芯片的知识,让我受益匪浅。
在程序调试过程中,我们克服困难,经多次努力我们的实验运行成功。
这次的课程设计让我对单片机的理论有了更加深入的了解,使我更深刻的体会到了理论联系实际的重要性,还学会了如何去培养我的创新精神,从而不断地战胜自己,超越自己。
参考文献
1.孙涵芳.MCS-51/96系列单片机原理及应用(修订版).北京航空航天大学出版社.1994
2.李朝青.单片机原理及接口技术(第3版).北京航空航天大学出版社.2005
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 利用RS232实现单片机与PC间的串行通信 利用 RS232 实现 单片机 PC 串行 通信
![提示](https://static.bdocx.com/images/bang_tan.gif)