• 基于ATmega162的智能仪器设计
  • 基于ATmega162的智能仪器设计

    基于ATmega162的智能仪器设计
     
      ATmega162是ATMEL公司推出的一款基于AVRRISC的低功耗CMOS的8位单片机。ATmega162通过在一个时钟周期内执行一条指令,可以达到接近1MIPS/MHz的性能,从而使得设汁人员可以在功耗和执行速度之间取得平衡。AVR核将32个通用工作寄存器和丰富的指令集连接在一起。所有的工作寄存器都与ALU算术逻辑单元直接相连,允许在一个时钟周期内执行的单条指令,同时访问两个独立的寄存器。这种结构提高了代码效率,使AVR得到了比普通CISC单片机高将近10倍的性能。本文采用ATmega162开发了键盘一液晶显示器、无位置传感器两相直流无刷电机和异步串行通讯口实现数据的采集和发送3个系统。实验证明,采用ATmega162开发的这些系统性能可靠、成本较低、软件设计灵活、硬件接口功能丰富,为今后系统升级创造了良好条件。
     
      ATmega162具有35个可编程的I/O口线,有40脚PDIP,44脚TQFP及44脚MLF等多种封装。4个8位双向I/O口A,B,C,D,一个带内部上拉电阻的3位双向I/O口。每个端口都有对应的3个I/O端口寄存器,分别是数据寄存器PORTx、方向寄存器器DDRx和输入引脚寄存器PINx.当DDxn写入0时,对应的Pxn配置为输入引脚,置PORTxn为1时,配置该引脚的内部上拉电阻有效。当DDxn为1时,对应的Pxn配置为输出引脚,PORTxn中的数据为外部引脚的输出电平,即为1,端口引脚被强制驱动为高,输出高电平;清零PORTxn,端口引脚被强制拉低,输出低电平。在复位过程中,即使是在系统时钟还未启振的情况下,端口为三态口。还可以作为地址/数据复用口,提供ATmega162的许多特殊接口功能。C口提供JTAG接口的功能。在允许JTAG接口状态下,引脚PC7和PC4的内部上拉电阻总是处于有效方式。
     
      ATmega162具有以下特点:16kB的同时具有读写能力的在线编程FLASH;512BE2PROM;1kBSRAM存储器;35个通用I/O口;1个外部存储器接口;32个通用工作寄存器;1个具有边界扫描功能的JTAG接口;支持在线编译、编程以及仿真调试;支持对FLASH,E2PROM、芯片熔丝位和保密锁定位的编程;4个具有比较模式的灵活的定时器/计数器,2个具有比较模式的带预分频器的8位定时器/计数器,2个带预分频器,具有比较和捕获模式的16位定时器/计数器,具有独立振荡器的实时计数器;6个PWM通道;内外中断源;上电复位和可编程的电压检测电路;内部可校准的RC振荡器;2个可编程的UART接口;具有内部时钟的可编程的看门狗定时器;SPI串行接口;BOOT区具有独立的加密位,可通过片内的引导程序实现在系统编程,写操作时真正可读;全静态操作;片内带有执行时间为2个时钟周期的硬件乘法器;以及5种可通过软件选择的节电模式。
      ATmega162可以在线仿真和在线固化,当需要在线仿真时应把仿真器的TCK,TDO,TMS,TDI脚分别上拉4.7kΩ的电阻后和ATmega162对应的引脚连接起来。再把仿真器的NSRST与ATmega162的RST连接,仿真器的VTRES和ATmega162的VCC连接,并把仿真器和ATmega162共地。当程序在线仿真时,其程序已经自动固化到CPU中了,这样就避免了像89C51那样出现固化失败的问题,系统框图如图1所示。
     
      本设计中ATmega162采用的是3.6864MHz外接晶振。复位方式选用的是上电复位,AVR有3种复位方式,因为考虑到工作电压不稳定的因素,采用上电复位其复位电路可以确保只有当VCC达到一个安全电平时,器件才能开始工作。
     
      ATmega162的PA口的8位和液晶屏的数据端相连,把ATmega162的DDRA设置为0xFF,这样PA口只能为输出。而PB口是对液晶屏的控制,其PB0与RS相连,PB1与RW相连,PB2与复位端RST相连,PB3与使能端E相连作使能控制,PB4,PB5分别与液晶屏幕的片选CSB,CSA相连。PD口与89C2051的P1口相连,作为温度数据的输入口,其DDRD也为0x00,同时PD1和PD2作为串行通信口分别与MAX232的TIN1和TIN2相连接。PE0和PE1口作为控制温度传感器检测信号的输出,PE2作为温度检测完成信号的检测,因此DDRE为0x07。
     
      本设计中ATmega162的PA口作为数据端与液晶屏的DB0到DB7相连,PB0与RS相连作为写状态,PB1与RW相连控制读状态,PB2与RST相连作为液晶屏复位控制,PB3与E相连是用来控制液晶屏的使能端,当数据及指令都正确写入液晶屏,ATmega162置PB3为高电平时液晶屏开始执行写入的程序并调用新写入的数据,PB4、PB5和PB6分别与液晶屏的CSA、CSB和CSC相连,他们分别作为中间、左边和右边显示屏的片选,都是低电平有效。当需要在中间屏幕写,如显示数据时,ATmega162先把PB4置为低电平,再置RS为高电平,接着是拉低RW的电压,然后把数据放在PA口上好让液晶屏能接收到,最后打开使能端E,这样一次数据传输就完成了。进行32次循环输入,就可以把一个16×16汉字输入到液晶屏里了。
     
     
      北京首矽致芯科技有限公司
      联系电话:010-57436215 15313166208
      联系 Q Q: 769132288
      联系邮箱:769132288@qq.com
      传真: 010--89146454
      地址:北京市昌平区北清路1号珠江摩尔国际中心6号楼1单元1105  邮编:10220

    更多型号芯片解密可致电北京致芯科技24小时服务热线:13466687255 010-57436217

    点击这里给我发消息 点击这里给我发消息

      Copyright © 2004-2012 致芯科技 版权所有