《51单片机与PC机通信资料》由会员分享,可在线阅读,更多相关《51单片机与PC机通信资料(14页珍藏版)》请在人人文库网上搜索。

1、专业综合实习报告专 业: 电子信息工程 年 级: 2013级 指导教师: 学 生: 目录一:实验项目名称二:前言三:项目内容及要求四:串口通信原理五:设计思路5.1虚拟串口的设置5.2下位机电路和程序设计5.3串口通信仿真六:电路原理框图七:相关硬件及配套软件7.1 AT89C51器件简介7.2 COMPIN简介7.3 MAX232器件简介7.4 友善串口调试助手7.5 虚拟串口软件Virtual Serial Port Driver 6.9八:程序设计九:proteus仿真调试十:总结十一:参考文献一:实验项目名称:基于51单片机的单片机与PC机通信二:前言在国内外,以PC机作为上位机,单片。

2、机作为下位机的控制系统中,PC机通常以软件界面进行人机交互,以串行通信方式与单片机进行积极交互,而单片机系统根据被控对象配置相应的前向,后向信息通道,工作时作为主控机测对象,作为被控机接受PC机监督,指挥,定期或受命向上位机提供对象及本身的工作状态信息。目前,随着集成电路集成度的增加,电子计算机向微型化和超微型化方向发展,微型计算机已成为导弹,智能机器人,人类宇宙和太空和太空奥妙复杂系统不可缺少的智能部件。在一些工业控制中,经常需要以多台单片机作为下位机执行对被控对象的直接控制,以一台PC机为上位机完成复杂的数据处理,组成一种以集中管理、分散控制为特点的集散控制系统。为了提高系统管理的先进性和。

3、安全性,计算机工业自动控制和监测系统越来越多地采用集总分算系统。较为常见的形式是由一台做管理用的上位主计算机(主机)和一台直接参与控制检测的下位机(单片机)构成的主从式系统,主机和从机之间以通讯的方式来协调工作。主机的作用一是要向从机发送各种命令及参数:二是要及时收集、整理和分析从机发回的数据,供进一步的决策和报表。从机被动地接受、执行主机发来的命令,并且根据主机的要求向主机回传相应烦人实时数据,报告其运行状态。用串行总线技术可以使系统的硬件设计大大简化、系统的体积减小、可靠性提高。同时,系统的更改和扩充极为容易。MCS-51系列单片机,由于内部带有一个可用于异步通讯的全双工的穿行通讯接口,阴。

4、齿可以很方便的构成一个主从式系统。串口是计算机上一种非常通用的设备通讯协议,大多数计算机包容两个基于RS232的串口。串口同时也是仪器仪表设备通过用的通讯协议,很多GPIB兼容的设备也带有RS-232口。同时串口通讯协议也可以用于获取远程采集设备数据。所以,深入的理解学习和研究串口通信相关知识是非常必要的。此次毕业设计选题为“PC机与MCS-51单片机的串口通讯”,使用51单片机来实现一个主从式的总线通讯系统。通过此次设计,对串口通讯的原理和应用融会贯通,为以后的时间工作储备知识和研究方法。3 项目内容及要求基于51单片机,在相关软件的辅助下,建立起单片机与PC机之间的通信机制,使用prote。

5、us仿真软件进行仿真,要求可从PC机上发送数字及英文字母出来,由单片机接收并在虚拟软件显示屏上显现出来,有开关控制数字或者是字母的发送。四:串口通信原理单片机与外围部件或设备的数据传输方式有并行通信和串行通信两种方式,本实验主要通过串行通信方式进行单片机与PC机之间的数据传输,故略去并行通信方式的介绍。串行通信是指计算机主机与外设之间以及主机系统与主机系统之间数据的串行传送。使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只需要少数几条线就可以在系统间交换信息,特别适用于计算机与计算机、计算机与外设之间的远距离通信。串口通信时,发送和接收到的每一个字符实际上都是一。

6、次一位的传送的,每一位为1或者为0。这种传送方式具有方法简单,灵活性强,可靠性高等特点,同时需要的传送线少,适于远距离传送。但是,由于数据是按位发送出去的,因此这种数据传送方式比并行通信速率低。串行通信又可以分为同步通信和异步通信两种方式。同步通信是指同步通信是一种比特同步通信技术,要求发收双方具有同频同相的同步时钟信号,只需在传送报文的最前面附加特定的同步字符,使发收双方建立同步,此后便在同步时钟的控制下逐位发送/接收。进行数据传输时,发送和接收双方要保持完全的同步,因此,要求接收和发送设备必须使用同一时钟。相对于同步通信,异步通信在发送字符时,所发送的字符之间的时隙可以是任意的,当然,接收。

7、端必须时刻做好接收的准备(如果接收端主机的电源都没有加上,那么发送端发送字符就没有意义,因为接收端根本无法接收)。发送端可以在任意时刻开始发送字符,因此必须在每一个字符的开始和结束的地方加上标志,即加上开始位和停止位,以便使接收端能够正确地将每一个字符接收下来。内部处理器在完成了相应的操作后,通过一个回调的机制,以便通知发送端发送的字符已经得到了回复。5 设计思路Pc机和单片机的串口通信系统的调试一般通过一根串口连接线把带有软件上位机的(Pc机)和下位机(即单片机)连接起来进行,用这种调试串口通信程序比较烦琐。本文介绍一种用纯软件实现PC机和单片机串口通信的仿真的方法,所有的调试都在一台电脑上。

8、通过软件完成。上位机由Pc机代替,下位机由用PROTEUS软件设计的AT89C51单片机仿真电路代替串口及连接通过由虚拟串口软Virtual Serial Port Driver 6.9进行连接。5.1虚拟串口的设置安装虚拟串口软件Virtual Serial Port Driver 6.9,然后打开,左边上面的COMl是电脑上实际的物理串口,下面是虚拟串口,在没有设置前是空的。因为电脑最多有两个物理串口,将圆圈里的串口改为COMl,COM3,点击Add pair,这就表示,利用这个软件将计算机的串口l和模拟串口3联接了起来,这两个串口可以进行通信了。5.2下位机电路和程序设计用Proteus。

9、69设计的仿真电路只用了几个元器件。由于两个虚拟串口采用相同的标准电平,因此电路中用来作,ITllL电平向RS232电平转换的电路在仿真电路中可以省略。单片机的实例程序用KeilC51语言编写,串口接收数据采用中断的方式,发送数据采用外部中断的方式,用按钮开关控制数据的发送。5.3串口通信仿真打开友善串口调试助手,修改串口为COM3,波特率为9600,校验位为None,数据位8,停止位为1。用Proteus打开仿真电路文件,先设置AT89C51的属性,右击选中AT89C5l,再用左键单击AT89C51,在出现的属性对话框里点击Program File后的打开按钮,找到自Keil源程序编译好的H。

10、EX文件后单击打开,然后在Clock Frequency后填写12M。单击OK接下来打开串口COMPIN的属性对话框,在PhsicalPort后选择COMl,波特率为9600,校验位为None,数据位8,停止位为l。设置好后,启动仿真就可以实现电脑和单片机串口通信的仿真了。首先演示一下单片机向计算机的串口发送数据。拨动开关向右拨,运行,按一下开关。虚拟串口终端最示单片机向计算 机COMl发送的数据,而计算机的COMI已经和COM3相连,因软件PROTEUS 所此可以在COM3收到单片机发送给COMi的数据。接着冉演示一下计算机的串口向单片机发送数据。拨动开关向左拨,在口调试助手中输入想要发送的。

11、数据,点击手动则字符 串由COM3发送给了计算机的COMI。再由COMI发送给单片 机。单片机的程序里面有回显功能,将接 送给了COM因此可以在COM3的接受框内能够接收到会显得字符串。六电路原理框图7 相关硬件及配套软件7.1 AT89C51器件简介AT89C51是一种带4K字节FLASH存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL。

12、高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。7.2 COMPIN简介COM口( cluster communication port )即串行通讯端口。微机上的com口通常是9针,也有25针的接口,最大速率bps。通常用于连接鼠标(串口)及通讯设备(如连接外置式MODEM进行数据通讯或一些工厂的CNC机接口)等。一般主板外部只有一个COM口,机箱后面和并口。

13、一起的那个九孔输出端(梯形),就是COM1口,COM2口一般要从主板上插针引出。并口是最长的那个梯形口。本实验主要应用九针接口。7.3 MAX232器件简介MAX232是一种双组驱动器/接收器,片内含有一个电容性电压发生器以便在单5V电源供电时提供EIA/TIA-232-E电平。当用单片机和PC机通过串口进行通信,尽管单片机有串行通信的功能,但单片机提供的信号电平和RS232的标准不一样,因此要通过max232这种类似的芯片进行电平转换。7.4友善串口调试助手一个强大而稳定的串口调试助手,支持常用的110-bps波特率及自定义波特率,波特率最高可支持(串口硬件有关),可适应于非标准波特率。支持。

14、串口自动识别,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符,可以任意设定自动发送周期,并能将接收数据保存成文本文件,能发送任意大小的文本文件。7.5虚拟串口软件Virtual Serial Port Driver 6.9简介该软件安装成功后可以虚拟出多个串口用于实验,虚拟串口都是成对出现使用的,最大限度的方便了用户数的需求。8 程序设计注:本程序采用C语言编写,程序如下:#include #define uint unsigned int#define uchar unsigned charuchar Receive_Buffer101;uchar Buf_I。

15、ndex = 0;uchar code DSY_CODE=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00;void Delay(uint x)uchar i;while(x-)for(i=0;i=0 & c=9)Receive_BufferBuf_Index=c-0;Receive_BufferBuf_Index+1=-1;Buf_Index = (Buf_Index+1)%100;ES = 1;void EX_INT0() interrupt 0uchar *s = (Receiving From 8051.rn);uchar i = 0;while(si!=0)SBUF = si;while(TI = 0);TI = 0;i。

单片机与PC机一样都是计算机,51单片机与PC机通信资料相关推荐

  1. 单片机小白学步系列(三) 偶遇51单片机

    单片机有很多种,比较常见的有51单片机,AVR,MSP430,PIC,STM32等.现在我将从比较简单易学的51单片机说起,带领大家进入单片机的精彩世界. 20世纪80年代美国Intel公司推出MCS ...

  2. 单片机c 语言0-99,单片机“0~99”加法计数器程序的设计51单片机原理及应用.doc...

    单片机"0~99"加法计数器程序的设计51单片机原理及应用 课 程 设 计 课程名称51单片机原理及应用题目名称单片机"0~99"加法计数器程序设计专业班级学生 ...

  3. 51单片机STC89C52RC进阶 – 在面包板上构建51单片机最小系统

    电子元件准备 STC 89C52RC 单片机芯片(40Pin 直插式DIP封装) x 1 10uF铝电解电容 x 1 10K直插式电阻 x 2 11.0592MHz晶振 x 1 30pF瓷片电容 x ...

  4. 单片机控制蜂鸣器唱生日快乐歌曲 PROTEUS 和51单片机教程(附仿真文件+源代码)

    功能:按一下开关后,单片机控制蜂鸣器唱生日快乐歌曲 PROTEUS 和51单片机教程 单片机控制蜂鸣器唱生日快乐歌曲 程序源代码如下: /* 生日歌 */ #include <reg51.h&g ...

  5. 单片机与PC机一样都是计算机,单片机与pc机什么区别

    随着社会的发展和需求的提高,计算机也在不断地更新与发展.由于计算机的产生是应数值计算而产生的,因此长期以来电子计算机技术都是沿着满足大量高速数值计算而发展的,直到20世纪70年代,电子计算机在数字逻辑 ...

  6. 国家c语言二级机试题,国家二级计算机考试题目C语言机试题库.doc

    国家二级计算机考试题目C语言机试题库.doc 国家计算机等级考试二级 c 语言考试机考题目题目有 1.2.3 .4 个数字,能组成多少个互不相同且无重复数字的三位数 都是多少1.程序分析可填在百位.十 ...

  7. 使用51单片机模拟IIC从机,实现主机(51单片机)对模拟从机的读写操作

    51单片机.IIC从机模拟.IIC协议.iiC读写 1.思路 1.1写数据 1.2读数据 2.从机IIC协议 2.1起始信号和结束信号 2.2从机读取和写数据 2.3从机发送和接收ACK 2.4判断主 ...

  8. 计算机三级单片机考试试题及答案,2008秋计算机三级单片机试卷及部分答案

    06年至08年共5分浙江省计算机三级考试单片机试卷及答案,试题模板系网上下载,并按照自己理解完成了判断题和选择题及部分解答题,更正了一部分答案,大多数是自己所学的不完全的知识所解答,故有错误之处难免, ...

  9. 51单片机74ls273并行输出地址c语言程序,51单片机I/O口的扩展问题:使用 锁存器74LS273连接后还是只有8个端口,为什么说是扩展呢?...

    满意答案 a26264679 2014.04.21 采纳率:44%    等级:8 已帮助:313人 用8255扩展之后就是PA,PB,PC了,怎么还会只有8个端口呢? 用8255扩展51单片机 I/ ...

最新文章

  1. Centos 6.5 yum源配置总结
  2. python图片转字符画
  3. OpenCV如何启用Halide后端以提高效率
  4. Pro*c使用指示变量来处理NULL列值
  5. 做好领导最喜欢的可视化报表,30岁依然能转行大数据分析师
  6. Android 手机的坐标
  7. 51单片机开发板独立按键试水
  8. unity3d 人物对话_Unity 3D游戏-NPC对话系统With XML
  9. 转 我奋斗了18年,不是为了和你一起喝咖啡!
  10. 数字化会议管理系统,实现会议全流程管理
  11. 信息系统项目管理师考试重点和难点分析
  12. C# 在获得鼠标点击事件时,如何判断Control键,Shift键被按下
  13. 城市是最好的产业平台 —— 让企业成为城市的名片,城市成为企业的展厅
  14. 【顺序表】顺序表的就地逆置
  15. API工具栏教你如何采集淘宝拼多多商品详情数据
  16. oracle多边形经纬范围筛选_Oracle根据经纬度查询一定范围内的数据
  17. C语言农历天干地支,农历一百年算法(1921~2021)【C语言代码】
  18. Stata 转 Excel —— export excel 命令详解
  19. 【帆软报表】报表类型简介
  20. Android获取屏幕信息的几种方式

热门文章

  1. hashtable和hashmap的区别?
  2. oracle数据库查看用户相关语句
  3. Buying Feed, 2010 Nov (单调队列优化DP)
  4. GitHub---最简单的使用
  5. DotNET内存管理与垃圾回收[转]
  6. android studio 无法输入中文,Android Studio 升级到3.0后输入法中文状态下无法选词的终极解决方案...
  7. java 爬虫_探索Java 多线程爬虫及分布式爬虫架构
  8. linux 取出字符中数字,使用awk提取字符串中的数字或字母
  9. matlab cuda的.cu文件应该放在那里_无人机基于Matlab/Simulink的模型开发(连载一)
  10. Tecplot云图锯齿状边界解决办法