基于avr单片机的485通信系统设计(编辑修改稿)内容摘要:

的 系统 比较容 易扩展且提高 系统的 稳定性 ,不但能够 实现 主 机 和从 机 这两者之 间的通信, 而且能实现从 机 和从 机间的通信 ;与方案一比较,方案二拥有较强的抗干扰能力、同时通信距离较远,而且也可以完成主机与从机的通信,但不能实现从机之间的通信。 所以采用方案一。 设计的内容以及要求 设 计的内容 设计一个基于 AVR 单片机的 485 通信系统 设计的要求 ; 单片机串口与 RS485 总线连接,从而将数据发送给从机,然后再显示出来。 图 系统总体方案的设计图 3 系统的组成及其工作的原理 蚌埠学院本科毕业设计(论文) 5 系统的组成 首先,系统主要由数据输入模块、模数转换模块、主机控制模块和数据显示模块以及通信模块这五个模块组成。 系统总体框图如下图所示: 图 系统框图 在这个系统中,主要的核心部分是通信主机,它的功能 主要是完成对数据的处理以及运算等;而数据的输入模块则主要是完成对数据的输入,并且所有人机交换的数据都是从这一模块中输入的;接下来是数据的显示模块,这一模块主要是完成通信从机的数据显示;而通信模块呢就是使数据的接受和发送得以完成,以实现数据的远距离传输。 工作原理 基于 AVR 单片机的 485 通信系统设计的原理是:利用数模转换模块或者键盘输入模块通过 P3 口或者 P1 口将数据输入到 ATmega16 单片机主机里, ATmega16 单片机主机利用 MAX485 芯片将数据传输到 AVR 单片机从机中,然后显示出来。 张苹苹:基于 AVR 单片机的 485 通信系统设计 6 4 硬件电路方案设计 系统硬件的介绍 本设计硬件开发平台采用 Protel DXP 2020。 其中文版有时也叫 altium designer summer。 Protel DXP 2020 不仅具有 Protel 旧版所具有的功能,而且 Protel 软件的最初的设计领域也被延伸了 ,它不仅功能更加完善了、界面更加灵活了,而且在仿真及 PLD电路设计等方面均具有重大的改进。 而且它拥有非常灵活的用户界面,可以使用户清楚明了的知道每个菜单的功能。 所以新的软件不会给使用者们带来不便,而且同时 PCB制作门槛也被 降低了,只要经过一段时间的培训,一块合格的 PCB 板就一定不算是难事了。 主机电路控制模块 图 主机电路控制模 块 AVR 单片机是一种增 8 位微控制器,同时它拥有增强内置的高速精简指令集,它是由 ATMEL 公司在 1997 年开发的。 AVR 单片机不但应用在仪器仪表、通信设备、计算机外设以及工业实时控制等方面,而且在日常生活,如家用电器领域也有广泛应用。 蚌埠学院本科毕业设计(论文) 7 随着 AVR 单片机的 横空出世 ,彻底打破 了 旧 的 设计格局, 不仅 废除了机器周期,而且 抛弃 了以往只 追求指令完备的做法;指 令集中占大多数的单周期指令都是将内容丰富的操作数与操作码安排在一字之中 ,同时使 用精简 的 指令集 并且 以字作为指令长度单位, 它的 取指周期 很 短, 同时 又 能够提前取出 指令 以及能够完成 流水作业 这样的功能 ,因此它能够 高速 的 执行指令。 当然这种速度上的升跃, 并不是必然的,它 是以高可靠性作 为其后盾 才得以实现的。 ATmega16 AVR 单片机介绍 AVR 单片机的计数器在它的内部,它是由电源上电启动的,当给系统复位引脚复位上电之后,我们就可以延迟 MCU开始正式读取指令执行程序所用的时间这是使用 AVR内部的 RC看门狗定时 器实现的。 而这种延时启动的特性,能使 MCU 才正式开始执行程序,当然这只有在系统电源以及外部电路都达到稳定以后才能实现,这不仅可以提高系统工作的可靠性,而且同时还可以减少外加的复位延时电路的使用。 AVR 系列的单片机有不同的型号,在此我们选择了系列型号为 16的同时片内容量为 16KB 的单片机为主芯片。 系统主芯片是本系统的核心芯片,因为系统的要求是:芯片能够灵活的处理所传输的数据,而且要求性能稳定并且价格低廉,因此我们需要选择一个合适的芯片。 ATmega16 是一种功耗很低的单片机。 因为它本省具有很高级的指令 集并且拥有单时钟周期的指令执行时间,所以 ATmega16 单片机的可以达到很高的数据吞吐率,可以达到 1MIPS/MHz,因此是解决系统在功耗与处理速度这两者间冲突的行之有效的方法。 因为 ATmega16 AVR 的内核拥有 32个通用工作寄存器,而且所有寄存器我们都可以直接与逻辑运算单元连接,所以我们就可以只用一条指令就可以在一个时钟周期内同时访问两个独立的寄存器。 ATmega16 具有 16K 字节系统内部可编程 Flash, 32个通用的输入 /输出口线以及 32个通用工作寄存器和 512 字节 EEPROM,支持片内编程与调试 ,具备 JTAG 接口, 片内 /外中断,三个具有比较模式 的 定时器 / 计数器 ,可编程串行 USART, 8路 10位可编程增益可选差分输入级 的 AD 转换器, 一个 SPI 串行 的 端口 ,并且具 有起始条件检测器的通用串行接口, 同时还 具 备 片内振荡可编程看门狗定时器 以 及六个可 以 通过软件选择的省电模式 ,这是非常厉害的。 同时 ATmega16 具 有一 系列并且很完整 的编程 以及 系统开发的 工具, 它包含了 : C 语言 编译器 、评估板 和 仿真器 以及 程序调试器 / 软件仿真器。 本芯片是用 ATMEL 存储器技术生产的,这个芯片具有高密度非易失性。 片内 ISP Flash也张苹苹:基于 AVR 单片机的 485 通信系统设计 8 可以有其他的编程方式,如我们能够选择运行于 AVR 内核之中的引导程序来完成编程。 也允许程序存储器通过 ISP 串行接口,或者也可以用通用编程器进行编程。 这款单片机在产品中得到了大量的使用。 本设计就用这款。 数据显示模块 因为系统事实要求传输的简单的数据,所以采用数码管显示就可以满足指标要求。 我们 通常所说 LED 显示器 ,一般是 由 七 个发光二极管组成 ,所以我们也 称 它 为七段 数码管 ,其二极管排列形状如 下 图所示。 我们可以 通过 控制 七个发光二极管 中 , 哪些发光,哪些不发光,然后 显示 不同的 字母、数字以及其他符号。 发光二 极管 在 LED 显示器 有两种完全不同的接法,下面来介绍一下这两种接法 : (1) 共阳极接法 就是 公共阳极 是由 发光二极管的 所有 阳极连 接 在一起 组 成 的。 在用的时候,把 公共阳极接 上电源 +5V。 这样 ,当在 阴极端输入低电平 时它的 发光二极管就能够 导通 发 亮 了 ,而输入高电平 是 则不亮。 (2) 而 共阴极接法 就是说它的 公共阴极 是由 发光二极管的阴极连在一起 而组成的。 在用的时候,把 公共阴极接地 ,所以 发光二极管就 可以 导通 发 亮 了。 假如我们在 阳极端输入高电平 的时候 , 二极管就发光, 而输入低电平 时就 不 发光。 在此,我们采用的是八段共阴极数码管显示。 表 31八段数码管的字型代码如下图 : 蚌埠学院本科毕业设计(论文) 9 键盘输入模块 图 键盘输入模块 本次课题采用的是矩阵式键盘,它的突出优点是 I/O 端口的重复使用率很高,又可以循环操作,不但如此,而且在扫描键盘时占用 CPU的时间很少 ,操作又比。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。