单片机与PC机通信设计Word下载.docx
《单片机与PC机通信设计Word下载.docx》由会员分享,可在线阅读,更多相关《单片机与PC机通信设计Word下载.docx(13页珍藏版)》请在冰豆网上搜索。
该系列单片机的始祖是Intel的8031单片机,后来随着Flashrom技术的发展,8031单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。
很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。
51单片机是基础入门的一个单片机,还是应用最广泛的一种。
需要注意的是52系列的单片机一般不具备自编程能力。
串行通信是计算机进行数据通信的一种主要方式之一,而单片机通信主要采用串行通信。
这也就引导我们向这方面发展,以至有了单片机的双机通信,多机通信,单片机与PC机的通信等等
关键字:
单片机pc通信显示串行
二.实习简介
实习内容:
a)查找资料学习单片机与PC机的通信原理;
b)理解KST-51的串口通信电路图;
c)编制程序实现:
将数字0-255从PC机的串口助手发送到单片机并用数码管显示。
d)绘制PROTEL原理图;
三.系统概述
3.1单片机的发展
单片机也被称为微控制器,是因为他最早被应用在工业控制领域。
,经历SCM、MCU、SOC三大阶段。
(1)SCM即单片微型计算机阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。
“创新模式”获得成功,奠定了SCM与通用计算机完全不同的发展道路。
(2)MCU即微控制器阶段,主要的技术发展方向是:
不断扩展满足嵌入式应用时,对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。
(3)单片机是嵌入式系统的独立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;
因此,专用单片机的发展自然形成了SOC化趋势。
随着微电子技术、IC设计、EDA工具的发展,基于SOC的单片机应用系统设计会有较大的发展。
3.2
MCS-51系列单片机介绍
单片机的全称是单片微型计算机。
为了使用方便,它把组成计算机的主要功能部件:
中央处理器(CPU)、数据存储器(RAM)、程序存储器(ROM、EPROM、E2PROM或FLASH)、定时/计数器和各种输入/输出接口电路等都集成在一块半导体芯片上,构成了一个完整的计算机系统。
与通用的计算机不同,单片机的指令功能是按照工业控制的要求设计,因此它又被称为微控制器
单片机也被称为微控制器(Microcontroler),是因为它最早被用在工业控制领域。
单片机由芯片内仅有CPU的专用处理器发展而来。
最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备当中。
INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。
单片机比专用处理器最适合应用于嵌入式系统,因此它得到了最多的应用。
事实上单片机是世界上数量最多的计算机。
现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。
手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。
而个人电脑中也会有为数不少的单片机在工作。
汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!
单片机的数量不仅远超过PC机和其他计算的综合,甚至比人类的数量还要多。
四,单片机与pc通信实习设计
4.1单片机与pc通信实验介绍
单片机的数据通信由串行口来完成,定时器中的T1作为波特率发生器。
38.同PC机一致,设波特率为9600波特,8位数据位,1位停止位,第9位作为地址数据判断位。
采用中断方式传送和接收数据。
T1设置为工作方式2,串行口设置为工作方式2,由到9位判断地址码或数据。
当某台单片机与PC机发出的地址码一致的时候,就发出应答信号给PC机,而其它三台不发应答信号,这样在某一时刻PC机只与一台单片机通信。
PC机与单片机之间通常采用2种通信方式:
并行通信和串行通信。
并行通信是指将待发送数据的各位同时传送,串行通信则将数据一位一位地按顺序传送。
并行通信虽然传输效率高,由于所需硬件设备复杂,不适于长距离通信,所以一般只适用于要求实时性强,传送速率较高的控制系统中,实用面较窄;
相比之下,串行通信简单易实现,传输距离较长,所以已被广泛应用于各种工控系统中。
$V_F%P_e-HM_J6r0 串行通信分为同步通信和异步通信2种方式。
同步通信是指通过在每个数据块开始时的同步字符来实现收/发双方同步的一种数据传输方法,常用于信息量大,速度要求高的场合;
异步通信则规定了标准的字符数据传输格式,即每一帧信息由起始位、数据位、奇偶校验位和停止位组成。
由于有冗余位,所以传送效率不高,常用于信息量不大,速度较低的场合。
在计算机测控系统中,由于串行接口的标准化,一般采用异步串行通信方式,以提高其通用性。
由于各种接口的机械和电器特性有所差异,串行通信分为近程通信和远程通信。
4.2PC机同单片机通信存在的问题
目前,51单片机同PC机的通信在大多数情况下仍然是使用RS-232(DB-9)串口作为通信接口实现的。
而随着USB接口技术的成熟和使用的普及,由于USB接口有着一系列RS-232(DB-9)串口无法比拟的优点,RS-232(DB-9)串口正在逐步的为USB接口所替代。
而在现在的大多数笔记本电脑中,出于节省物理空间和用处不大等原因,RS-232(DB-9)串口已不再设置,这就约束了基于RS-232(DB-9)串口与PC机联络的单片机设备的使用范围。
4.2USB通信的优点
通过USB接口和RS-232(DB-9)的比较,不难发现:
(1)USB接口支持即插即用和热插拔,而RS-232(DB-9)串口不支持即插即用和热插拔,设备安装后需重启计算机方可使用。
(2)USB接口的传输速率较快,可达480Mbps(V2.0),而RS-232(DB-9)串口的最高速率仅为19200波特。
(3)USB接口占用体积较小,插拔方便;
而RS-232(DB-9)串口的的插拔需要使用改锥,且在机箱后操作,比较麻烦。
五.软件设计5.1系统软件设计软件的设计除了满足设计功能外还必须要满足易读写,方便下载和编译。
设计目标和硬件总体结构确定的情况下,软件可以分为主程序,显示子程序,各种特效显示子程序,通信程序三个主要部分组成。
软件的编写需要借助软件编辑器和编译软件,编译完成后还需要下载到单片机中执行。
编写软件选择的是c语言以及配套的编译软件KeiluVision。
最后还要用单片机的下载器来把编写的程序下载到单片机中执行。
5.2程序的编译步骤如下:
运行keil软件——新建工程{project(newproject)}——把工程保存为hzdz的工程名——选择CPU(Ateml-AT89C51)——点击“确定”——点击“否”——建立一个文本文件(File-new)——输入程序——保存(save—hzdz.c格式)——在工程sourcegroup1上右击选择addfilestogroupsourcegroup1添加刚刚保存的文件——编译源程序(工程菜单中的buildtarget)——生成.hex文件——下载——运行STC-ISP.exe软件——选择芯片类(STC89C52RC)——选择端口模式——打开程序文件——Download下载——调试。
5.2单片机与PC机通信设计软件
点击这里可以下载并运行这个串口调试软件,这是一个绿色的软件,无需安装,可以直接在当前位置运行这个软件。
软件界面如上图,我们先要设置一下串口通讯的参数,将波特率调整为9600,勾选十六进制显示。
串口选择为COM1,当然将网站提供的51单片机实验板的串口也要和电脑的COM1连接,将烧写有以下程序的单片机插入单片机实验板的万能插座中,并接通51单片机实验板的电源。
Keil的设置
5.3流程图设计
3.虚拟串口调试:
单片机和Proteus虚拟串口调试,就是我们不需要实际的串口进行调试,只需要用protues加串口,在加串口调试助手就行了。
写好单片机串口程序加载到protuse仿真里,这边串口调试助手就有反应。
比如我们的程序是单片机通过串口发送数据C到电脑,然后串口调试助手就回接收到C。
也可以有单片机接收数据串口调试助手发送数据。
单片机与pc通信系统具体设计主要由单片机系统,译码电路,显示驱动电路,以及通信数据线等部分组成
本次设计使用的是AT89S51的最小系统电路,包括:
电源、时钟脉冲、复位电路和程序存储器设定电路,只是接受少量的数字和字符,不用外接存储扩展。
时钟脉冲:
AT89S51单片机的最高时钟脉冲频率已经达到了24MHz,它内部已经具备了振荡电路,只要在AT89S51的两个引脚(即19、18脚)连接到简单的石英振荡晶体的2个管脚即可,同时晶体的2个管脚也要用30pF的电容耦合到地。
复位电路:
89S51的复位引脚(RESET)是第9脚,当此引脚连接高电平超过2个机器周期,即可产生复位的动作。
以12MHz的时钟脉冲为例,每个时钟脉冲为0.5μS,两个机器周期为1µ
S,因此,在第9脚上连接一个2μS的高电平脉冲,即可产生复位动作。
最简单的就是只有一个电阻跟一个电容就可可靠复位的电路,电阻一般选择10K,电容一般选择10µ
F。
程序存储器设定电路:
MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。
对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地。
强制CPU从外部程序存储器读取程序。
对于内部有ROM的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。
默认采用内部程序存储器。
6.3LED显示模块
LED显示屏可以显示变化的数字、文字、图形图像;
不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。
LED点阵显示系统中各模块的显示方式有静态和动态显示两种。
静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的脉冲信号,反复循环以上操作,就可显示各种图形或文字信息。
LED显示原理为:
本设计采用了AT89C51单片机作控制器,12MHz晶振,8×
8点阵共需要64个发光二极管组成,二极管的阳极接的是三极管的发射极,阴极通过P1口接的是+5V的高电平,三极管的集电极接的是单片机的P0-P7口,其中P0-P2接74HC138的A0-A2口,P3-P5分别接始能端口E1、E2和E3,始能端是低电平有效,对38译码器的A0、A1和A2赋值就可实现相应二极管的行发光,若要使哪个二极管熄灭,可以给相应的P1口高电平.
应用的是定时器T0的工作模式1。
定时器的控制寄存器TCON(88H):
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
TCON
TF0/TF1:
定时器0、定时器1溢出中断申请标志位:
=0:
定时器未溢出;
=1:
定时器溢出中断申请,进中断后自动清零。
TR0/TR1:
定时器运行启停控制位:
定时器停止运行;
定时器启动运行。
定时器控制寄存器TCON(88H)
TCON
IT0/IT1:
外部中断请求的触发方式选择位:
在INT0/INT1端申请中断的信号低电平触发;
在INT0/INT1端申请中断的信号负跳变触发。
IE0/IE1:
外部中断申请标志位:
没有外部中断申请;
有外部中断申请。
中断允许寄存器IE(0A8H)
EA
___
ET2
ES
ET1
EX1
ET0
EX0
IE
EX0/EX1/ET0/ET1/ES位:
分别是INT0/1,Timer0/1,串行口的中断允许控制位:
=0时禁止中断;
=1时允许中断。
ET2:
T2终端允许控制位:
EA:
总的中断允许控制位:
=0时禁止全部中断;
6.4总体设计电路图
(1)单片机电路图如下:
(2)3—8译码器电路原理图如下:
6.5程序源
ORG0000H
LJMPMAIN
ORG0023H
LJMPCKFS
ORG0100H
MAIN:
MOVSCON,#50H
MOVTMOD,#20H
MOVTH1,#0FDH
MOVTL1,#0FDH
SETBTR1
SETBEA
SETBES
SJMP$
ORG0200H
CKFS:
JBRI,JSQL
JSQL:
CLRRI
MOVA,SBUF
MOVR1,A
MOVB,#10
DIVAB
MOVR2,A
MOVA,B
MOVDPTR,#0500H
MOVCA,@A+DPTR
MOVP1,#08H
MOVP0,A
MOVR5,#100
DEL5:
DJNZR5,DEL5
MOVA,R2
MOVR3,A
MOVP1,#09H
DEL4:
DJNZR5,DEL4
MOVA,R3
MOVP1,#0AH
DEL6:
DJNZR5,DEL6
SJMPCKFS
RETI
DELAY:
MOVR7,#0AH
DEL3:
MOVR6,#0FFH
DEL2:
MOVR5,#0FFH
DEL1:
DJNZR5,DEL1
DJNZR6,DEL2
DJNZR7,DEL3
RET
ORG0500H
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
七.结论
首先通过此次课程设计,让我们对所学的计算机控制技术理论知识更加熟悉了解,对理论学习时没有掌握牢固的一些知识以及一些在学习中存在的漏洞进行学习并加以弥补,也让我们明白学习一门课程就要认真地对待,掌握牢固,并要在实践中加以运用。
只有能运用自如的知识才是属于自己的东西。
比较熟练,在学习此软件过程中其次,此次课程设计我们尝试用proteus软件进行仿真设计。
对于proteus,我们之前对它的一些应用比较熟悉,所以此次运用起来通过查找图书馆的资料以及在网上的学习让我们意外收获了一些其他的知识,拓展了知识面,也丰富了自己的阅历。
通过这次课程设计,我们学会了单片机完成某一项功能,需要从两个方面入手:
一是软件的实现即汇编语言程序的编写,二是硬件电路的实现。
两方面比较,程序编写时相对较难的一分。
我们团组认为这是积累应用的过程。
所以我们觉得这种困难最好的解决办法就是通过平时的积累,多多学习。
此次设计培养了我们对于计算机串口通信的一些兴趣,当看着自己设计的东西,通过仿真可以出现自己期望的结果时,那种愉悦的心情是前所未有的,同时当出现问题,通过自己查找资料检查电路之后排除问题的过程也锻炼了我们对于学习的一种深入和坚持,锻炼了我们独立思考的能力和最初的创新意识,让我们真正体会到学习的乐趣。
另外,我们再次巩固了一些以前的东西,仿真软件的运用,课程设计的书写,计算机的一些应用软件的应用,以及对word的了解也更深入了。
最后一点,也使最深刻的体会,就是在设计过程中,基本上用到的都是我们学过的一些原理,
所以学以致用在这次设计中可谓体现的淋漓尽致,要把所学的知识联系起来综合运用。
这些都将成为我们以后的工作学习的铺路石,使我们在大学里收获的最实用的东西,而不是仅仅只是纸上谈兵,而是通过我们亲自动手来完成的经验对每个人来说都是一笔财富,所以这次《单片机控制技术》课程设计对我们来说绝对是一次难得的锻炼的机会。
八.参考文献如下:
赵丽清,51单片机参考与应用,中国石油大学出版社,2009;
张毅刚,MCS-51单片机应用设计,哈尔冰工业电子出版社,1996;
何立民,MCS-51系列单片机应用系统设计与接口技术,北京航空航天大学出版社,1990;
李广弟,单片机基础,北京航空航天大学出版社,1992.