微处理器ATmega161在嵌入式测控网络中的应用

分享到:

摘  要:介绍了ATMEL公司推出的RISC结构的AVR高档嵌入式微处理器ATmega161的主要特点和增强性能,给出了以ATmega161为中央处理单元设计的一种高性价比嵌入式测控网络的硬件电路和软件程序。 关键词:AVRATmega161;嵌入式;测控网络;RS-485总线  

1引言
    随着微电子技术、通信技术、控制技术和半导体技术的飞速发展以及工业、医疗卫生、国防等部门对智能控制要求的不断提高,嵌入式微处理器被越来越广泛地应 用。为了适应各方面的需求,嵌入式微处理器在运算速度、可扩充能力、系统可靠性、功耗和集成度等方面得到了突飞猛进的发展。嵌入式微处理器体系结构经历了 一个从CISC(Complex In-struction Set Computer)到RISC(Reduced Instruction SetComputer),从4位、8位、16位到32位甚至64位,寻址空间从64kB到16MB甚至更大,处理速度从0.1MIPS到2000 MIPS的过程。
ATmega161是一款基于AVR(Advanced RISC)的低功耗CMOS8位单片机,它以其强大的功能和较高的性价比得到了不少嵌入式系统开发者的青睐。其主要特点表现在以下几方面:
    (1)ATmega161增强型RISC结构方面
    ●内含2周期乘法器;
    ●具有32个8位通用(工作)寄存器;
    ●工作在8MHz时,具有8MIPS的性能;
    ●具有130条指令,大多数为单周期指令;  
    (2)数据和程序存储器方面
    ●内含16k非易失在系统可编程FLASH;
    ●具有1k的内部SRAM;
    ●带有512字节非易失在系统编程EEPROM;  
    ●能进行可编程程序加密。  
    (3)外围特点
    ●带有两个可编程全双工UART;
    ●带有主/从SPI串行接口;
    ●具有自身振荡器的实时时钟RTC;  
    ●具有2个8位定时器/计数器;
    ●带有1个可预分频的具有比较、捕捉和双8/9/10位PWM功能的16位定时器/计数器;
    ●具有可编程的内部看门狗定时器;
    ●片内的模拟比较器可用作A/D转换;
    ●带有35个可编程I/O口。 (4)增强的MCU特点
    ●可进行上电复位和可编程低压检测;
    ●具有21级内外部中断源;
    ●有空闲、节电及掉电三种节电模式。  
    (5)其它特性
    ●采用40脚PDIP,44脚PLCC及QFP封装;
    ●工作电压为4.0~5.5V。
2嵌入式测控网络的设计
    传统的测控网络由于连接有很多常规模拟仪表和执行机构以及其它现场设备而具有很多缺点,如一对一结构连线庞杂,工程周期长,安装费用高,维护不便;模拟信 号传输精度低,易受干扰;操作员在控制室既不能对其进行参数调整,也不能对其进行故障诊断,因而会导致操作的“失控”。
图1所示是笔者设计的 以ATmega161为核心的嵌入式测控网络系统示意图。图中的嵌入式控制器通过两级RS-485总线既可和上位机通信,又可和传感器以及执行机构等现场 设备进行通信。操作人员可直接通过键盘、鼠标来完成对执行机构的远程控制,从而实现实时监控;同时,总线似的数字信号通信可以克服常规模拟信号传输的许多 缺点,并具有接线简单、维护方便、精度高、抗干扰能力强等优点。


3硬件设计
    可以用两个UART通用串行口组成两级RS-485网。一般的微处理器并不具备两个UART,通常可扩展一片串行接口芯片(如8251、8250或者 EXAR公司的ST16C2552等)构成两个UART,但这样会使电路变得复杂、PCB成本增大且系统的抗干扰能力下降。而ATmega161正好具有 两个可编程UART,所以无需扩展,这种方法不但可以使电路简化并使PCB体积缩小,而且还可使抗干扰能力增强,同时也具有较高的性价比。

  
通信部分的硬件原理图如图2所示。图中,将两个UART的RXD、TXD分别接到两片MAX485上,以使其转换成RS-485电平,再以数据总线的形式连接到上位机和数字化的仪器仪表以及其它现场设备上,从而构成两级测控网络。
MAX485是一种专用的RS-485/RS-422接口芯片,它具有功耗低、体积小、操作简单方便等优点。每片MAX485最多能带32个收发器,如果要增加每条总线上收发器的个数,可以换成MAX487、MAX1487(可带128个收发器)等芯片。
4软件设计
4.1通信协议
通信协议采用ISO的OSI七层模型中的物理层、链路层和应用层。其中物理层为RS-485,它以双绞线为传输总线,其最大通信距离可达1200米,最 大从机个数为32台(使用MAX485),数据传送速率为2400b/s,数据传输格式为:1位起始位、8位数据位和1位停止位,该格式无奇偶校验位,通 信错误检测采用累加和校验。
数据链路层可参考ISO的“高级数据链路层协议”(HDLC)的有关规定,并选用适合于主从网络的HDLC的正常 响应操作模式(NRM),即从站只有在其受到主站的请求时才能发送信息。上位机采用轮询的方式对嵌入式控制器进行访问,而控制器又对数字化传感器及现场设 备以轮询的方式进行访问。其操作过程如图3所示。


嵌入式控制器在整个通信过程中具有双重身份,即在与上位机通信过程中,上位机是主站,控制器为从站;而在与传感器及现场设备的通信过程中,控制器是主站,传感器和现场设备为从站。
帧的格式定义为:帧开始符、源地址、目的地址、控制字、信息、累加和校验(BCC)以及帧结束符。
在实际的通信过程中,往往会出现数据丢失和数据传输错误等通信故障。为了防止数据丢失,系统采用了超时处理的方法。这样,主站发送查询命令后,如果在预 定的时间内没有收到从站的响应信号,可再次发送一帧查询命令,以等待对方响应。如果连续三次发送后,主站仍然没有收到正确的响应,系统将退出并报警,同时开始轮询下一从站。
针对数据出错情况,每帧都增加了累加和校验来对源地址、目的地址、控制字和信息段进行逻辑和运算,并将运算结果作为帧结束前的一个字符传送到接收方,而 接收方在接收完该帧信息后也将接收到的源地址、目的地址、控制字和信息段作逻辑和运算,如果运算结果和收到的运算结果不一致,则废弃该帧数据。如果接收到 通信协议规定之外的控制字、源地址或目的地址,系统也将废弃该帧数据。  
4.2 ATmega161的双UART寄存器设置
如前所述,ATmega161带有两个全双工的可编程通用异步收发器UART。用户可通过设置表1中的9个寄存器来对两个UART进行编程,表内括号中的十六进制数为相应的寄存器地址。
以UART0为例,UDR0是两个物理分离的数据寄存器,它们具有相同的I/O地址,但在读/写时,它们将分别访问不同的寄存器。在两个状态控制寄存器中,UCSR0A的格式为:


  其中,RXC0为接收完成标志,TXC0为发送完成标志,UDRE0为数据寄存器空标志,FE0为帧出错标志,OR0为超越出错标志,U2X0为双倍传输速度标志,MPCM0为多处理器通信标志位。另一个状态控制寄存器UCSR0B的格式为:

  该格式中的RXCIE0为接收完成中断触发位,TXCIE0为发送中断触发位,UDRIE0为数据寄存器空中断触发位,RXEN0为接收允许,TXEN0为发送允许,CHR90为九位数据标志位,RXB80为收到的数据第8位,TXB80为发送的数据第8位。
UBRRHI的低四位和UBRR0分别为波特率寄存器的高位和低位。波特率寄存器的计算公式为:

式中,Fck为晶振频率,BAUD为波特率,UBRR为寄存器中应取的值。
UART1的设置编程与UARTO基本相同。  
4.3部分源代码
可以使用汇编语言或ANSIC语言编写源代码(编译软件均可从INTERNET上免费下载),编译生成HEX目标文件后,可以通过高速下载线经由SPI接口将该目标文件下载到ATmega161的FLASH存储器中。
下面是C语言源代码的一部分:  
 


<!--标题EN(结束)←-->5结束语
    事实证明,用ATmega161构成的嵌入式控制器在构成两级测控网络时具有明显的性价比优势,在现场总线(如LONWORKS、CAN等)仍然还比较昂 贵的情况下,可以作为DCS向FCS的过渡产品。因为该网络具有数字化的特点,加上RS-485标准在国内已经非常流行,所以具有良好的扩展性和通用性, 完全可以满足现场控制和远程监控的要求,可广泛应用于各类测控系统中。 <!--→参考文献CH(开始)-->

 

参考文献

1.耿德根,等.AVR高速嵌入式单片机原理与应用.北京航空航天大学出版社.2001
2.吴锡祺,何镇湖.多级分布式控制与集散系统.中国计量出版社,2000  
3.HTTP://WWW.ATMEL.COM
4.MAXIMCorporation.NewReleases Data Book VolumeIX.2000
5.苏学花,杨寿保.基于RS-485的分布式监控系 统的设计.计算机应用.2001年8

继续阅读
Microchip专家访谈 —— 嵌入式系统解决物联网应用的五大核心问题

Microchip开发了一个由产品、软件和设计合作伙伴组成的生态系统,旨在解决全部五个核心功能,从而确保我们的客户成功部署IoT。对于Microchip而言,客户的成功与提供合适的半导体产品同样重要。

拜嵌入式控制、可穿戴电子装置以及物联网(IoT)应用之赐,全球物联网传感器年增速超过15%

随着智能“传感生活”的普及,全球传感器年增速超过15%,预计5年后产值将达1200亿元。其中,中国传感器的市场近几年一直持续增长,增速超过15%。未来五年,国内传感器市场平均销售增长率将达31%。 2016年传感器销售额创新高纪录 市场研究机构IC Insights的最新统计报告显示,拜嵌入式控制、可穿戴电子装置以及物联网(IoT)应用之赐,半导体传感器组件销售额在2016年创下新高纪录。全球市场传感器组件销售额在2016年成长14%,创下73亿

AMD发布新款GPU 卓越性能抢占VR/AR嵌入式市场

为抢攻虚拟实境(VR)/扩增实境(AR)医疗影像应用市场,AMD祭出新款基于Polaris架构的嵌入式绘图处理器(GPU)新品—E9260/E9550。跟上一代产品相比,新推出的两款GPU处理器在每个计算单元上性能增加了15%,另外在每瓦特数上的性能也增加了2.8倍,以满足VR/AR未来于医疗影像之市场需求。

用MBed开发物联网应用

现在的芯片实在太多太复杂,也各有特色,那么就有一个比较大的问题,就是大家不可能每种芯片都去学习,等学习好了在去使用。针对这个情况,同时也是为了适应新的物联网时代的变化,ARM提供了一个全新的开发方式:MBed。Mbed包括了云服务、客户端、Mbed OS等几大部分。

基于AVR单片机的嵌入式“瘦服务器”

本文的主要内容为:以AVR单片机为主控CPU芯片,提供“瘦服务器”的软件、硬件的组成框图。该“瘦服务器”的应用前途广泛,可以应用于各行各业的Internet远端监控系统中。主要应用于:(1)网络家电产品,通过该系统把数字化家电直接接入Internet网络,组成intelligentizedhome;(2)城市网络自动售货机;(3)城市交通Internet监控;(4)楼宇防火防盗Internet监控;(5)工厂生产设备Internet监控。

©2018 Microchip Corporation
facebook google plus twitter linkedin youku weibo rss