基于avr单片机的485通信系统设计---大学论文.doc
《基于avr单片机的485通信系统设计---大学论文.doc》由会员分享,可在线阅读,更多相关《基于avr单片机的485通信系统设计---大学论文.doc(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 目 录摘要- 1 -Abstract- 2 -1 引 言- 3 -2 系统总体方案确定- 4 -2.1 设计方案选择- 4 -2.2 设计的内容以及要求- 4 -2.2.1 设计的内容- 4 -2.2.2 设计的要求- 4 -3 系统的组成及其工作的原理- 4 -3.1 系统的组成- 5 -3.2 工作原理- 5 -4 硬件电路方案设计- 6 -4.1 系统硬件的介绍- 6 -4.2 主机电路控制模块- 6 -4.2.1 ATmega16 AVR单片机介绍- 7 -4.3 数据显示模块- 8 -4.4 键盘输入模块- 9 -4.5 通信电路模块- 9 -4.5.1 RS-485协议- 10
2、-4.6 从机控制模块- 10 -4.6.1 单片机最小系统- 10 -5 软件设计- 12 -5.1 IAR FOR AVR软件的介绍- 12 -5.2 通信协议- 13 -5.2.1 串行通信协议RS232和RS485的比较- 13 -5.2.2 通信过程- 13 -5.3 主机程序- 14 -5.3.1 主程序总流程图- 14 -5.3.2 键盘输入的子程序- 15 -5.3.3 用数码管显示子程序- 16 -5.4 从机程序- 16 -5.4.1 从机总流程图- 16 -5.4.2 接收并且显示主程序- 17 -6 实验调试和测试结果与分析- 18 -总 结- 18 -谢 辞- 18
3、-参 考 文 献- 20 -蚌埠学院本科毕业设计(论文) 基于AVR单片机的485通信系统设计摘 要: 现在的社会是一个数字化的时代,多机通信系统的应用已经广泛渗透到人们生活的方方面面,在科学研究的军事技术领域、文化艺术领域、工程设计领域都有它的应用。通过通讯方式交换信息、资源共享已经成为了一种必然的趋势。为了使系统中的多个计算机之间的数据通信都可以实现,它们必须根据实际需要并且按照某种形式的网络来进行,工程中经常用的是使一个完整的主站发送,然后正确的从多机通信模式接收的信号,同时要防止总线上的信号冲突。本文讨论了用ATmega16 AVR单片机来控制RS485串行接口与主机系统进行数据交换,
4、ATmega16为核心芯片,它与MAX485转换器连接实现远距离传输,同时ATmega16作为主控芯片控制按键电路与数据显示电路,系统主要由主机控制模块、通信模块、数据输入模块、数据显示模块和模数转换模块五个部分组成,实现了利用RS-485实现单片机通信,通过键盘实现从机的选择、发送数据,从机显示发送的数据。该系统是一个单片机发送另一个单片机接收的单向、平衡传输标准,具有强抗干扰能力,易于使用,易于维护,操作简单等优点,在现实生活中也拥有广泛的应用。关键字:多机通信、RS485接口、AVR单片机 Design of 485 Communication System based on AVR M
5、icro-controller Abstract: Todays society is a digital era, the application of much-machine communication systems have been widely seeped into the scientific research in all fields ,such as: military technology, culture and the arts, engineering and peoples daily life. By means of communication to ex
6、change information, share resources has become an inevitable trend. To make the system in data communication between multiple computer are met, they must be composed according to the actual needs some form of network engineering is often used to make a complete master sends and receives signals from
7、 the much-machine communication mode, correct and prevent the signal collision on the bus is guaranteed; This article discusses the use ATmega16 AVR micro-controller to control RS485 serial interface with the host system for data exchange, ATmega16 core chip, which is connected make remote distance
8、transmission truth and MAX485 converters, while ATmega16 as the main chip circuit control buttons and data display circuit, system is mainly controlled by the host module, communication module, data input module, data display component modules, and analog-digital conversion module five parts, we can
9、 use the RS-485 communication between SCM, realized through the keyboard to select the machine from sending data, the host display sending data. The system is a single-chip micro-controller receiving sending another way, balanced transmission standard, has a strong anti-jamming capability 、is easy t
10、o use、 easy to maintain、operate and simple, in real life, also has a wide range of applications. Keywords: much-machine communication、RS485 protocol、 AVR micro-controller 基于AVR单片机的485通信系统设计1 引 言在一个基于单片机的数据采集和实时控制系统的微控制器系统中,通过计算机接口的RS232接口与计算机之间命令和数据传送,我们可以检测和控制生产现场。由于计算机发送的RS-232的距离很短,不超过30m,所以如果需要进
11、行远距离的数据传输和控制时,这个时候我们就可以选择使用MAX485的接口转换芯片使RS-232协议转换为RS-485协议,进行远距离传输。RS-232不能在多点通信系统中使用,而只能在通信系统之间的点对点中使用,并且这些限制所有使用RS-232的系统都必须满足。 而RS-485的通信协议通常是半双工的、双向的,该协议的特别之处在于,允许不止一个驱动器和接收器同时连接在总线上,其中每个驱动器都可脱离总线。 2 系统总体方案确定2.1 设计方案选择 方案一:基于AVR单片机的485通信系统,使用的电路是:利用端口转发形式的网络接口电路并且同时使用总线型的系统网络拓扑结构等进行单片机通信系统的设计。
12、RS485构成的多机通信系统采用主从配置;主机控制从机,从机不采取从微控制器主动发送命令或数据,全部由主机MCU控制;并在多机系统中,只有一个主机,从机之间的各站不能彼此通信,如果有需要被交换的信息的话,也必须由主机转发。方案二:基于单片机的485通信系统的设计,我们利用的是单片机的串行通讯端口,以完成两个终端之间相互通信的功能。 经比较:方案一的系统比较容易扩展且提高系统的稳定性,不但能够实现主机和从机这两者之间的通信,而且能实现从机和从机间的通信;与方案一比较,方案二拥有较强的抗干扰能力、同时通信距离较远,而且也可以完成主机与从机的通信,但不能实现从机之间的通信。所以采用方案一。2.2 设
13、计的内容以及要求2.2.1 设计的内容设计一个基于AVR单片机的485通信系统2.2.2 设计的要求1.使用键盘输入数据并且用数码管显示要传输的数据;2.AVR单片机串口与RS-485总线连接,从而将数据发送给从机,然后再显示出来。 图2.1 系统总体方案的设计图3 系统的组成及其工作的原理3.1 系统的组成首先,系统主要由数据输入模块、模数转换模块、主机控制模块和数据显示模块以及通信模块这五个模块组成。系统总体框图如下图所示: 图 3.1 系统框图在这个系统中,主要的核心部分是通信主机,它的功能主要是完成对数据的处理以及运算等;而数据的输入模块则主要是完成对数据的输入,并且所有人机交换的数据
14、都是从这一模块中输入的;接下来是数据的显示模块,这一模块主要是完成通信从机的数据显示;而通信模块呢就是使数据的接受和发送得以完成,以实现数据的远距离传输。3.2 工作原理基于AVR单片机的485通信系统设计的原理是:利用数模转换模块或者键盘输入模块通过P3口或者P1口将数据输入到ATmega16单片机主机里,ATmega16单片机主机利用MAX485芯片将数据传输到AVR单片机从机中,然后显示出来。 4 硬件电路方案设计4.1 系统硬件的介绍本设计硬件开发平台采用Protel DXP 2004。其中文版有时也叫altium designer summer。Protel DXP 2004不仅具有
15、Protel 旧版所具有的功能,而且Protel软件的最初的设计领域也被延伸了 ,它不仅功能更加完善了、界面更加灵活了,而且在仿真及PLD电路设计等方面均具有重大的改进。而且它拥有非常灵活的用户界面,可以使用户清楚明了的知道每个菜单的功能。所以新的软件不会给使用者们带来不便,而且同时PCB制作门槛也被降低了,只要经过一段时间的培训,一块合格的PCB板就一定不算是难事了。4.2 主机电路控制模块 图4.1 主机电路控制模块AVR单片机是一种增8位微控制器,同时它拥有增强内置的高速精简指令集,它是由ATMEL公司在1997年开发的。 AVR单片机不但应用在仪器仪表、通信设备、计算机外设以及工业实时
16、控制等方面,而且在日常生活,如家用电器领域也有广泛应用。随着AVR单片机的横空出世,彻底打破了旧的设计格局,不仅废除了机器周期,而且抛弃了以往只追求指令完备的做法;指令集中占大多数的单周期指令都是将内容丰富的操作数与操作码安排在一字之中,同时使用精简的指令集并且以字作为指令长度单位,它的取指周期很短,同时又能够提前取出指令以及能够完成流水作业这样的功能,因此它能够高速的执行指令。当然这种速度上的升跃,并不是必然的,它是以高可靠性作为其后盾才得以实现的。4.2.1 ATmega16 AVR单片机介绍AVR单片机的计数器在它的内部,它是由电源上电启动的,当给系统复位引脚复位上电之后,我们就可以延迟
17、MCU开始正式读取指令执行程序所用的时间这是使用AVR内部的RC看门狗定时器实现的。而这种延时启动的特性,能使MCU才正式开始执行程序,当然这只有在系统电源以及外部电路都达到稳定以后才能实现,这不仅可以提高系统工作的可靠性,而且同时还可以减少外加的复位延时电路的使用。 AVR系列的单片机有不同的型号,在此我们选择了系列型号为16的同时片内容量为16KB的单片机为主芯片。系统主芯片是本系统的核心芯片,因为系统的要求是:芯片能够灵活的处理所传输的数据,而且要求性能稳定并且价格低廉,因此我们需要选择一个合适的芯片。ATmega16是一种功耗很低的单片机。因为它本省具有很高级的指令集并且拥有单时钟周期
18、的指令执行时间,所以ATmega16单片机的可以达到很高的数据吞吐率,可以达到1MIPS/MHz,因此是解决系统在功耗与处理速度这两者间冲突的行之有效的方法。因为ATmega16 AVR的内核拥有32个通用工作寄存器,而且所有寄存器我们都可以直接与逻辑运算单元连接,所以我们就可以只用一条指令就可以在一个时钟周期内同时访问两个独立的寄存器。ATmega16具有16K字节系统内部可编程Flash,32个通用的输入/输出口线以及32个通用工作寄存器和512字节EEPROM,支持片内编程与调试,具备JTAG接口,片内/外中断,三个具有比较模式的定时器/ 计数器,可编程串行USART,8路10位可编程增
19、益可选差分输入级的AD转换器,一个SPI 串行的端口,并且具有起始条件检测器的通用串行接口,同时还具备片内振荡可编程看门狗定时器以及六个可以通过软件选择的省电模式,这是非常厉害的。同时ATmega16 具有一系列并且很完整的编程以及系统开发的工具,它包含了:C 语言编译器、评估板和仿真器以及程序调试器/ 软件仿真器。本芯片是用ATMEL存储器技术生产的,这个芯片具有高密度非易失性。片内ISP Flash也可以有其他的编程方式,如我们能够选择运行于AVR内核之中的引导程序来完成编程。也允许程序存储器通过ISP串行接口,或者也可以用通用编程器进行编程。这款单片机在产品中得到了大量的使用。本设计就用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 avr 单片机 485 通信 系统 设计 大学 论文
限制150内