您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 基于c的上下位机设计
目录摘要................................................................................................................................11.系统要求及简介.....................................................................................................21.1要求...................................................................................................................21.2简介...................................................................................................................22.上位机实现.............................................................................................................32.1VisualC++6.0介绍.....................................................................................32.2MFC简介.....................................................................................................32.3上位机设计框架...............................................................................................33.下位机实现.............................................................................................................53.1硬件介绍...........................................................................................................53.1.1STC89C52RC介绍................................................................................53.1.2MAX232芯片介绍................................................................................63.2下位机软件设计...............................................................................................74.结果分析与总结.........................................................................................................84.1结果分析...........................................................................................................84.2总结...................................................................................................................95.参考文献...................................................................................................................10附录1:原理图...........................................................................................................11附录2:上位机程序...................................................................................................12附录3:下位机程序...................................................................................................14武汉理工大学《程序设计实训》课程设计说明书1摘要随着时代的发展,科技的进步,单片机已经深入到生活中的方方面面,而在单片机的应用中,单片机的通讯是不可缺少的一部分。单片机的通讯分为并行通信和串行通信。并行通信时,数据的个位同时传送。其优点是传送速度快;缺点是数据有多少位就需要多少根数据线,在长距离传输中,传输线过多是不经济的,并使系统的抗干扰能力降低。串行通信时,数据的个位按照一定的顺序逐位分时传送。它的突出优点是只需要一对数据线,大大的降低了网络成本,特别适用于远距离通信。其缺点就是通信速度较低。相比之下,并行通信虽然传输效率高,但是所需要设备复杂,远距离通信成本太高,所以其只适用于实时性较强,传输速率要求较高的设备中。而串行通信则相对需要设备简单,成本低廉,适合远距离传输通信,所以已经被广泛应用于各工业控制系统中。关键词:串行通信温度动态显示中断武汉理工大学《程序设计实训》课程设计说明书21.系统要求及简介1.1要求此系统基于C语言的上下位机通信设计,其主要功能:(1)上位PC机与下位单片机模块通信(2)上位机能通过下位机控制板块上的指示灯;(3)下位机可把温度等信息传给上位机1.2简介本系统通过上位机的按键,向下位机发送特定的十六进制数字,由下位机接收后识别并进行相应的温度采集上传或控制下位机的指示灯。在温度采集方面,我们设计了有连续采集和单步采集,也即上位机可以控制下位机持续上传温度,也可以单次上传,同时上位机还可以控制串口的打开与关闭。在温度的显示方面,温度值可以在编辑框中准确的显示,并且在下一次温度传来的时候,上一次的温度值不会消失,这样就方便我们看到温度的变化过程,当然,也可以由上位机的“清除内容”按钮对其中的内容进行清空;在控制下位机的指示灯上,也是通过上位机上的按钮来向下位机发送数据,并由下位机接收辨别来实现点亮第几个指示灯。武汉理工大学《程序设计实训》课程设计说明书32.上位机实现2.1VisualC++6.0介绍VisualC++6.0,简称VC或者VC6.0,是微软推出的一款C++编译器,将“高级语言”翻译为“机器语言(低级语言)”的程序。VisualC++是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出VisualC++1.0后,随着其新版本的不断问世,VisualC++已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了VisualC++.NET(VisualC++7.0),但它的应用有很大的局限性,只适用于Windows2000、WindowsXP和WindowsNT4.0。所以实际中,更多的是以VisualC++6.0为平台。本次上位机就采用此软件[1][2][3]。2.2MFC简介MFC(MicrosoftFoundationClasses),是一个微软公司提供的类库(classlibraries),以C++类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。2.3上位机设计框架此上位机包含编辑框,动态文本,通信控件,按钮,动态条,静态文本等构成,其具体界面如下图所示。武汉理工大学《程序设计实训》课程设计说明书4图1上位机界面图武汉理工大学《程序设计实训》课程设计说明书53.下位机实现3.1硬件介绍3.1.1STC89C52RC介绍STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择[4][5]。其具有的特点如下:STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。主要特性如下:1.增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051;2.工作电压:5.5V~3.3V(5V单片机)/3.8V~2.0V(3V单片机);3.工作频率范围:0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHz;4.用户应用程序空间为8K字节,片上集成512字节RAM;5.通用I/O口(32个)复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。6.ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片,具有EEPROM功能和看门狗功能7.共3个16位定时器/计数器。即定时器T0、T1、T2,外部中断4路,下降沿中断或低电平触发电路,PowerDown模式可由外部中断低电平触发中断方式唤醒8.通用异步串行口(UART),还可用定时器软件实现多个UART,工作温度武汉理工大学《程序设计实训》课程设计说明书6范围:-40~+85℃(工业级)/0~75℃(商业级),使用PDIP封装图2STC89C52引脚图3.1.2MAX232芯片介绍MAX232芯片是美信(MAXIM)公司专为RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电。其各个引脚功能如下:(1)第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。(2)第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。(3)8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。(4)TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。(5)第三部分是供电。15脚GND、16脚VCC(+5v)。武汉理工大学《程序设计实训》课程设计说明书7图3R232引脚图3.2下位机软件设计本系统下位机主要采用串口中断模式,主循环是一个while(1)死循环,而且循环体中还嵌套了一个当t=1为真的死循环,当上位机发出数据,下位机产生中断,并在中断程序中比较
本文标题:基于c的上下位机设计
链接地址:https://www.777doc.com/doc-2854272 .html