基于PROTEUS的单片机串口通信的实例设计与仿真

2011年第9期SCIENCE&TECHNOLOGYINFORMATION

○IT论坛○科技信息

基于PROTEUS的单片机串口通信的

实例设计与仿真

陈海霞徐智

(三江学院电气与自动化工程学院江苏

南京

210012)

【摘要】本文通过实例介绍了一种基于Proteus软件的串口通信方法。通过虚拟串口软件VSDPXP,借助串口调试助手,与单片机Proteus仿真系统的串口通信进行联调,实现了PC机与单片机的串口通信。该实例表明,Proteus软件的串口仿真功能可以有效缩短开发周期,降低开发成本,具有良好的推广价值。

【关键词】Proteus软件;串口通信;

仿真

0引言VirtualSerialPortsXP软件是一种高级的配置工具,用于模拟RS232串口通信,可以使用它为应用程序提供虚拟串口,这个虚拟串口的功能就像标准的硬件串口一样,为研发人员提供便利。

使用软件VirtualSerialPortsXP,打开软件后,如图2所示,COM3是电脑上实际的物理串口,单击“Addpair”可立即添加一对虚拟串口COM1和COM2,这样就连接好一对虚拟串口。2.2上位机软件设置

PC与单片机的通信常用VB或VC中的MSComm控件编写,本设计使用“串口调试助手”来实现PC对Proteus的联系媒介。如图3所示,该类软件的使用一定要注意串口通信的参数的设置(如串口,波特率,数据位,校验位,停止位),它们必须与单片机程序总的串口设置相对应。串口调试助手则可以真实的模拟上位机与单片机进行通信。正确地使用所有的信号线和模拟波特率的工作,可以和使用真实串口一样传输文件、数据。

Proteus软件是由英国LabCenterElectronics公司开发的EDA工具软件,已有近20年的历史,在全球已得到广泛使用。它不仅是模拟电路、数字电路、模/数混合电路的设计与仿真平台,也是目前最先进的实现嵌入式系统在计算机上完成从原理图设计、代码调试与仿真、系统测试与功能验证到形成PCB的完整的设计、仿真和研发的平台。在缺乏硬件的情况下,这是一款非常实用的仿真软件,其仿真的原理图经验证后可直接应用到现实中。

目前,很多高校已引入这套软件,作为理论教学和实践教学的必要补充,实践证明效果很好;而且,在一些像海尔等知名公司也已将它作为仿真和研发平台,大大提高了工作效率,缩短了研发周期。

本文通过实例,以AT89C51单片机为核心,设计了一个PC与单片机的进行串口通信的功能,并详细说明了在PROTEUS平台下进行串口使用和调试的基本方法。

1串口通信的实例设计

PC机和单片机的串口通信系统的调试通过一根串口连接线把上位机(PC机)和下位机(即单片机)连接起来进行,用这种方法调试串口通信比较烦琐。Proteus仿真技术和虚拟串口技术的出现,使串行口的调试可以在一台电脑上通过软件完成。上位机由PC机代替,下位机由用Proteus软件设计的AT89C51单片机仿真电路代替,串口及连接通过由虚拟串口软件产生和连接。

为了模拟串口调试,本文设计了一个实例,其功能为:串口接收和发送数据都采用查询方式,一次能接发一个字节即2位16进制数据,由键盘控制单片机数据的发送。按0~15号键实现发送字符功能,分别是“0,1,2,……,E,F”字型码,在数码管上显示出来;上位机软件控制PC机数据的发送,接收到的字型码在另一个数码管上显示出来。其电路原理图如图1所示。

图2

虚拟串口的设置

图3串口调试助手的设置

仿真元件COMPIM

单片机与PC串行通信时需要进行电平转换,MAX232是最常用的转换器。COMPIM是ProteusISIS制作的一个虚拟元件,它内置了MAX232转换器,所以单片机可以直接通过它与PC连接,而不用MAX232去进行一次电平转换。在仿真时需对该元件的属性进行编辑,设置串口的工作方式与上位机对应。

单击串口COMPIM可打开其属性视图。若使用COM1,那么串口调试工具必须设定为虚拟串口COM2,并且设置为16进制发送和显示。利用COM1作为单片机的串口,COM2作为PC机的串口,二者构成一对虚拟串口,共同实现通信功能。

2.3

图1串口通信硬件原理图

3软件设计

2

2.1

EDA软件设置

虚拟串口的形成

在PC机中,虚拟串口可以由专业软件来产生,也可以自行开发。

流程图如图4所示。主要包括键盘扫描子程序和数码管显示子程序。键盘扫描采用查询工作方式,有键按下时,将按键信息自动显示在LED1(左起两位)上;当查询接收到PC的串口数据后,能自动显示在

(下转第457页)LED2(右起两位)上。

458

科技信息○IT论坛○

SCIENCE&TECHNOLOGYINFORMATION2011年第9期

有被破坏或篡改,其数字签名有效;否则,改ED签名不可行或者原始ED被篡改.

4结论

图3-1发送方处理步骤

(3)ED发送方长生会话密钥,用它对签名后的ED进行加密;

(4)ED发送方查阅CA,获取ED接收方的公钥,然后用其对通信密钥进行加密;

(5)ED发送方发送ED(包括加密的原始ED,签名和对ED加密的通信密钥).

3.2接收方处理步骤(如图3-2):

由于对称加密算法的简单,快速,高效等特点,目前它仍然是主流的密码体制之一,因为目前暂时没有有效的攻击方法.与此同时,由于公钥密码体系在密钥管理方面的便捷,并且能实现数据签名和身份认证等非常重要的功能,从而使它成为了电子商务和电子政务等技术的关键.在相同的安全条件下,基于ECC的加密和数字签名算法在计算量、处理速度等方面比其他公钥密码算法有着很大的优势.

本文通过对AES、ECC算法体制的分析和研究,提出了一种间两者结合的混合密码加密体制,从而更为高效地实现了人们在网络通信过程中的信息加密、数据签名、身份认证等,解决了密码体制中速度和安全性不能兼顾的重要问题.在当今高速发展的信息社会里,混合密码体制的研究和应用是非常有意义的.科

【参考文献】

[1]B.Schneier.应用密码学协议、算法与C源程序[M].北京:机械工业出版社,2000.[2]W.Trappe,L.C.Washington.密码学概论[M].北京:人民邮电出版社,2004.[3]W.Diffie,E.Hellman.Newdirectionsincryptography[J].IEEETransactionsoninformationTheory,1976,22(5):644-654.

肖国镇,白恩健,刘晓娟.AES密码分析的若干进展[J].电子学报,2003,31(10):[4]

1549-1554.[5]V.S.Miller.Useofellipticcurvesincryptography[C].In:AdvancesinCryptology-Crypto’98,LNCS128,Springer-Verlag,1986,128:417-426.

杨成卫.基于AES和ECC的混合密码系统研究[J].河南科学,2006,2:124-[6]126.[7]T.ElGamal.Apublickeycryptosystemandasignatureschemebasedondiscretelogarithms[J].IEEETransactionsoninformationTheory,1985,31:469-472.

图3-2接收方处理步骤

(1)ED接收方在受到后,用自己的私钥对其进行解密,得到AES通信密钥;

(2)ED接收方用ED发送方的通信密钥对受到的经加密的签名ED进行解密,得到原始ED的数字签名和原始ED;

(3)ED接收方用ED发送方的公钥对数字签名进行解密,得到原始ED的数字摘要,同时将原始ED用SHA函数编码,产生另一个数字摘要;

(4)ED接收方将这两个摘要进行比较,若相等说明原始ED并没

[责任编辑:曹明明]

(上接第458页)

打开电路仿真图和C工程文件,在Keil中启动调试“Debug→Start/StopDebugSession”,并运行“Debug→Go”,此时Proteus仿真被Keil启动,在Keil和Proteus中都可以观察到程序运行状态。程序运行后,可看到LCD1602的显示情况。也可在Keil中,将源程序编译为.hex文件后,在Proteus中双击AT89C51加载对应的.hex文件,然后启动仿真过程,同样可看到图1所示的LCD1602的显示情况。

5结束语

这种基于Proteus的电路设计、Keil程序设计的串口仿真调试,通过虚拟串口软件VSDPXP,借助串口调试助手,实现了PC机与单片机Proteus仿真系统的串口通信。这种方法显著提高了设计开发效率,降低开发风险,

对于单片机实际设计都具有较强的辅助作用。本文所设计的串口调试方法对实际应用系统具有很好的借鉴作用。科

【参考文献】

周润景,张丽娜.基于Proteus的电路及单片机系统的设计与仿真.北京:北京[1]

航空航天大学出版社,2006,6.

曲豪,等.基于Proteus与串口通信的LED条屏设计[J].电子测量技术,2009(2).[2]

王文海.基于PROTEUS的PC机与单片机串口通信的仿真[J].科技咨询导报,[3]2007(26).

陆婷,兰国原,杜月林.基于Proteus的单片机虚拟实验室的构建[J].国外电子[4]

测量技术,2007:92-93,96.

图4串口通信软件流程图

4系统仿真

利用软件生成虚拟端口后,再设置PC机和单片机的串口属性。

[责任编辑:曹明明]

457

2011年第9期SCIENCE&TECHNOLOGYINFORMATION

○IT论坛○科技信息

基于PROTEUS的单片机串口通信的

实例设计与仿真

陈海霞徐智

(三江学院电气与自动化工程学院江苏

南京

210012)

【摘要】本文通过实例介绍了一种基于Proteus软件的串口通信方法。通过虚拟串口软件VSDPXP,借助串口调试助手,与单片机Proteus仿真系统的串口通信进行联调,实现了PC机与单片机的串口通信。该实例表明,Proteus软件的串口仿真功能可以有效缩短开发周期,降低开发成本,具有良好的推广价值。

【关键词】Proteus软件;串口通信;

仿真

0引言VirtualSerialPortsXP软件是一种高级的配置工具,用于模拟RS232串口通信,可以使用它为应用程序提供虚拟串口,这个虚拟串口的功能就像标准的硬件串口一样,为研发人员提供便利。

使用软件VirtualSerialPortsXP,打开软件后,如图2所示,COM3是电脑上实际的物理串口,单击“Addpair”可立即添加一对虚拟串口COM1和COM2,这样就连接好一对虚拟串口。2.2上位机软件设置

PC与单片机的通信常用VB或VC中的MSComm控件编写,本设计使用“串口调试助手”来实现PC对Proteus的联系媒介。如图3所示,该类软件的使用一定要注意串口通信的参数的设置(如串口,波特率,数据位,校验位,停止位),它们必须与单片机程序总的串口设置相对应。串口调试助手则可以真实的模拟上位机与单片机进行通信。正确地使用所有的信号线和模拟波特率的工作,可以和使用真实串口一样传输文件、数据。

Proteus软件是由英国LabCenterElectronics公司开发的EDA工具软件,已有近20年的历史,在全球已得到广泛使用。它不仅是模拟电路、数字电路、模/数混合电路的设计与仿真平台,也是目前最先进的实现嵌入式系统在计算机上完成从原理图设计、代码调试与仿真、系统测试与功能验证到形成PCB的完整的设计、仿真和研发的平台。在缺乏硬件的情况下,这是一款非常实用的仿真软件,其仿真的原理图经验证后可直接应用到现实中。

目前,很多高校已引入这套软件,作为理论教学和实践教学的必要补充,实践证明效果很好;而且,在一些像海尔等知名公司也已将它作为仿真和研发平台,大大提高了工作效率,缩短了研发周期。

本文通过实例,以AT89C51单片机为核心,设计了一个PC与单片机的进行串口通信的功能,并详细说明了在PROTEUS平台下进行串口使用和调试的基本方法。

1串口通信的实例设计

PC机和单片机的串口通信系统的调试通过一根串口连接线把上位机(PC机)和下位机(即单片机)连接起来进行,用这种方法调试串口通信比较烦琐。Proteus仿真技术和虚拟串口技术的出现,使串行口的调试可以在一台电脑上通过软件完成。上位机由PC机代替,下位机由用Proteus软件设计的AT89C51单片机仿真电路代替,串口及连接通过由虚拟串口软件产生和连接。

为了模拟串口调试,本文设计了一个实例,其功能为:串口接收和发送数据都采用查询方式,一次能接发一个字节即2位16进制数据,由键盘控制单片机数据的发送。按0~15号键实现发送字符功能,分别是“0,1,2,……,E,F”字型码,在数码管上显示出来;上位机软件控制PC机数据的发送,接收到的字型码在另一个数码管上显示出来。其电路原理图如图1所示。

图2

虚拟串口的设置

图3串口调试助手的设置

仿真元件COMPIM

单片机与PC串行通信时需要进行电平转换,MAX232是最常用的转换器。COMPIM是ProteusISIS制作的一个虚拟元件,它内置了MAX232转换器,所以单片机可以直接通过它与PC连接,而不用MAX232去进行一次电平转换。在仿真时需对该元件的属性进行编辑,设置串口的工作方式与上位机对应。

单击串口COMPIM可打开其属性视图。若使用COM1,那么串口调试工具必须设定为虚拟串口COM2,并且设置为16进制发送和显示。利用COM1作为单片机的串口,COM2作为PC机的串口,二者构成一对虚拟串口,共同实现通信功能。

2.3

图1串口通信硬件原理图

3软件设计

2

2.1

EDA软件设置

虚拟串口的形成

在PC机中,虚拟串口可以由专业软件来产生,也可以自行开发。

流程图如图4所示。主要包括键盘扫描子程序和数码管显示子程序。键盘扫描采用查询工作方式,有键按下时,将按键信息自动显示在LED1(左起两位)上;当查询接收到PC的串口数据后,能自动显示在

(下转第457页)LED2(右起两位)上。

458

科技信息○IT论坛○

SCIENCE&TECHNOLOGYINFORMATION2011年第9期

有被破坏或篡改,其数字签名有效;否则,改ED签名不可行或者原始ED被篡改.

4结论

图3-1发送方处理步骤

(3)ED发送方长生会话密钥,用它对签名后的ED进行加密;

(4)ED发送方查阅CA,获取ED接收方的公钥,然后用其对通信密钥进行加密;

(5)ED发送方发送ED(包括加密的原始ED,签名和对ED加密的通信密钥).

3.2接收方处理步骤(如图3-2):

由于对称加密算法的简单,快速,高效等特点,目前它仍然是主流的密码体制之一,因为目前暂时没有有效的攻击方法.与此同时,由于公钥密码体系在密钥管理方面的便捷,并且能实现数据签名和身份认证等非常重要的功能,从而使它成为了电子商务和电子政务等技术的关键.在相同的安全条件下,基于ECC的加密和数字签名算法在计算量、处理速度等方面比其他公钥密码算法有着很大的优势.

本文通过对AES、ECC算法体制的分析和研究,提出了一种间两者结合的混合密码加密体制,从而更为高效地实现了人们在网络通信过程中的信息加密、数据签名、身份认证等,解决了密码体制中速度和安全性不能兼顾的重要问题.在当今高速发展的信息社会里,混合密码体制的研究和应用是非常有意义的.科

【参考文献】

[1]B.Schneier.应用密码学协议、算法与C源程序[M].北京:机械工业出版社,2000.[2]W.Trappe,L.C.Washington.密码学概论[M].北京:人民邮电出版社,2004.[3]W.Diffie,E.Hellman.Newdirectionsincryptography[J].IEEETransactionsoninformationTheory,1976,22(5):644-654.

肖国镇,白恩健,刘晓娟.AES密码分析的若干进展[J].电子学报,2003,31(10):[4]

1549-1554.[5]V.S.Miller.Useofellipticcurvesincryptography[C].In:AdvancesinCryptology-Crypto’98,LNCS128,Springer-Verlag,1986,128:417-426.

杨成卫.基于AES和ECC的混合密码系统研究[J].河南科学,2006,2:124-[6]126.[7]T.ElGamal.Apublickeycryptosystemandasignatureschemebasedondiscretelogarithms[J].IEEETransactionsoninformationTheory,1985,31:469-472.

图3-2接收方处理步骤

(1)ED接收方在受到后,用自己的私钥对其进行解密,得到AES通信密钥;

(2)ED接收方用ED发送方的通信密钥对受到的经加密的签名ED进行解密,得到原始ED的数字签名和原始ED;

(3)ED接收方用ED发送方的公钥对数字签名进行解密,得到原始ED的数字摘要,同时将原始ED用SHA函数编码,产生另一个数字摘要;

(4)ED接收方将这两个摘要进行比较,若相等说明原始ED并没

[责任编辑:曹明明]

(上接第458页)

打开电路仿真图和C工程文件,在Keil中启动调试“Debug→Start/StopDebugSession”,并运行“Debug→Go”,此时Proteus仿真被Keil启动,在Keil和Proteus中都可以观察到程序运行状态。程序运行后,可看到LCD1602的显示情况。也可在Keil中,将源程序编译为.hex文件后,在Proteus中双击AT89C51加载对应的.hex文件,然后启动仿真过程,同样可看到图1所示的LCD1602的显示情况。

5结束语

这种基于Proteus的电路设计、Keil程序设计的串口仿真调试,通过虚拟串口软件VSDPXP,借助串口调试助手,实现了PC机与单片机Proteus仿真系统的串口通信。这种方法显著提高了设计开发效率,降低开发风险,

对于单片机实际设计都具有较强的辅助作用。本文所设计的串口调试方法对实际应用系统具有很好的借鉴作用。科

【参考文献】

周润景,张丽娜.基于Proteus的电路及单片机系统的设计与仿真.北京:北京[1]

航空航天大学出版社,2006,6.

曲豪,等.基于Proteus与串口通信的LED条屏设计[J].电子测量技术,2009(2).[2]

王文海.基于PROTEUS的PC机与单片机串口通信的仿真[J].科技咨询导报,[3]2007(26).

陆婷,兰国原,杜月林.基于Proteus的单片机虚拟实验室的构建[J].国外电子[4]

测量技术,2007:92-93,96.

图4串口通信软件流程图

4系统仿真

利用软件生成虚拟端口后,再设置PC机和单片机的串口属性。

[责任编辑:曹明明]

457


相关文章

  • 单片机串口通信的调试方法与技术
  • ·电子与计算机技术· J o u r n a l o f W u h a n P o l y t e c h n i c 单片机串口通信的调试方法与技术 席东河1,马磊娟1,杜 娟2 (1. 河南工业职业技术学院,河南南阳473009: 2 ...查看


  • 智能仪器设计综合实例
  • 题目一:简易单回路温度控制器 1. 系统功能 单回路温度控制器实际上是以单片机控制为核心,根据设定目标温度值进行自动或手动调节的单回路温度控制系统,主要包括温度控制.温度检测.参数显示.报警指示.通讯等部分.根据模式值,可查看相应的参数,如 ...查看


  • 基于单片机的数字温度计课程设计报告
  • <基于单片机的数字温度计课程设计> 设计报告 设计时间:班 级: 姓 名:报告页数: 广东工业大学课程设计报告 设计题目_基于单片机的数字温度计设计_ 学院_信息工程_专业__应用电子技术_11(3)_班 学号_31110026 ...查看


  • 倒计时器的设计实现
  • 目录 1 倒计时器设计要求 ................................................... 1 1.1设计要求 ............................................ ...查看


  • 合肥学院首届proteus仿真设计大赛初赛试题
  • 合肥学院首届proteus仿真设计大赛初赛试题 一.小时钟 设计要求: 设计一个以AT89C51单片机为核心的带闹铃时钟,显示当前的时间.(不得利用时钟芯片) 显示格式为"时时:分分:秒秒". 用4个功能键操作来设置当前 ...查看


  • 知网论文检测查重报告样板2015
  • 打印 文本复制检测报告单(全文标明引文) №:ADBD2015R_[***********]0527152407xxxxx 检测时2015-05-27 15:24:07 间: 检测文献: 红外防盗报警系统 作者: XX(xxxxxxxx) ...查看


  • Proteus在[微型机原理]课程教学中的应用
  • [摘 要]本文通过对传统教学的优缺点分析,提出Proteus在<微型机原理>课程教学中的应用的需求,列举了在8086CPU与单片机的课程教学中的具体应用,论述了Proteus仿真软件在<微型机原理>课程教学中促时作用 ...查看


  • 篮球赛计时计分器的设计
  • 学生姓名 李照明 学号 1213014066 题 目 篮球赛计时计分器的设计 所在学院 陕西理工学院 专业班级 电子1203班 指导教师 梁芳 完成地点 物理与电信工程学院实验室 2016 年 6 月 2 日 篮球赛计时计分器的设计 作者: ...查看


  • 基于51单片机的篮球计分器设计
  • 毕业设计论文 51单片机的篮球比赛计分器设计 基于 系 别: 机电工程系 专业名称: 自动化 学 号: [1**********] 学生姓名: 黎俊杰 指导教师: 卢满怀 指导单位: 机电工程系 完成时间: 2010年5月5日 电子科技大学 ...查看


热门内容