AVR嵌入式单片机接口技术与应用
文章编号:1006-1576(2003)05-0041-04
AVR嵌入式单片机接口技术与应用
肖宇峰,黄玉清
(西南科技大学 信息与控制工程学院,四川 绵阳 621002)
摘要:AVR单片机内嵌Flash,置有ADC和模拟比较等电路接口,采用快速存取寄存器文件和快速单指令周期,其程序与数据存储器分开,通过SPI和编程器可对Flash存储器编程。在分析AT90S8515芯片定时/计数器、I/O端口、通用串行口UART、模拟比较器等接口基础上,设计了信号发生器、频率计以及与PC机串行通信接口电路,给出了数字信号发生器原理图和程序流程图,频率计原理简图与程序流程图。
关键词:接口;单片机;AT90S8515
中图分类号:TP368.1 文献标识码:B
Interface Technology and Application of AVR SCM
XIAO Yu-feng, HUANG Yu-qing
(College of Information & Control Engineering, Southwest University of Science & Technology, Mianyang 621002, China)
Abstract: The AVR single chip microcontroller (SCM) has inside Flash, RISC instructs, ADC and analog
comparison circuit interfaces etc. It can fleetly access the file of register and single cycle instructions, the program can be wrote into the Flash with the SPI and program implement. On the base of analysis about the AT90S8515 interfaces which include clock/counter, I/O, serial UART port and the interface of analog comparison components, digital signal generator, cymometer and interface circuit for the serial communication was designed, and the principle charts and program flow charts of the generator and cymometer.
Key words: Interface; SCM; AT90S8515
1 引言
AT90系列单片机,内载有Flash,配置精简指令集(RISC),称为AVR单片机。图1为AVR单片机系统结构简图(省略了一些细节)。
功能的16位定时/计数器;速度为4MHz/8MHz。
管脚定义(图2)如下。
图1 AVR单片机系统结构简图
2 AVR的接口简介
2.1 AVR典型芯片AT90S8515的说明
采用118条指令系统,8MHz时具有8MIPS的性能;4K
/8K字节的在线可编程Flash、256/512字节SRAM、256/512字节在线可编程EEPROM;一个可预分频的8位定时器/计数器、片内模拟比较器、一个可预分频的有比较捕捉和8/9/10位PWM
I/O端口,A口(PA7~PA0),B口(PB7~PB0),C口(PC7~PC0),D口(PD7~PD0),这些端口还提供AT90系列单片机的特殊功能。
XTAL1:晶振反相放大器的输入端和内部时钟操作电路的输入端;
XTAL2:晶振反相放大器的输出端;
ICP:定时器/计数器1的输入捕获功能引脚;
图2 AT90S8515管脚定义
收稿日期:2003-02-27;修回日期:2003-03-18 作者简介:肖宇峰(1978-),男,湖南人,2000年毕业于西南科技大学,从事计算机软件技术、控制技术研究。
・41・
OC1B:定时器/计数器1的输出比较功能B的输出引脚;
ALE:使用外部存储器时地址锁存触发端。 2.2 基于AT90S8515的常用接口
(1) 定时/计数器
AT90S8515单片机有2个通用定时器/计数器,即一个8位、一个16位。定时器/计数器从10位的预定比例定时器获取预定比例区域。
① 定时/计数器0
控制寄存器—TCCR0:位7~3为保留位,总读0,位2,1,0为CS02、CS01和CS00为预分频控制,如表1。
表1 TCCR0预分频控制
CS02 CS01CS00说明CS02CS01CS000 0 0 0
0 0 1 1
0 1 0
停止 CK CK/8
1 1 1 1
0 0 1 1
0 1 0 1
说 明CK/256 CK/1024 外部T0脚,下降沿 外部T0脚,上升沿
★ 定时/计数器中断屏蔽寄存器
—TIMSK: 与定时器0相关的屏蔽位为TOIE0—定时器/计数器0溢出中断屏蔽。当该位被设为0时,且状态寄存器的I位被设为1时,定时/计数器0溢出中
TIFR中的TOV0断被允许,当发生计数器0溢出时,
位置1,同时$008号中断被执行。
★
定时/计数
器中断标志寄存器—TIFR
与定时器0相关的标志位为TOV0—定时器/计数器0计数溢出标志位。当溢出时,TOV0位被设为1;当执行中断处理后,TOV0被硬件清零。当SREG的I位和TOIE0及TOV0被设为1时,定时器/计数器0的溢出中断被执行。
1 /64
(2) I/O端口 A、B、C、D每个端口包括如下3部分:PORTX(数据寄存器)、DDRX
(方向寄存器)、PINX(输入脚地址),其中X或A或B或C或D。如下仅以C口为例做简要说明:
端口C一个8位双向I/O口,分配有3个数据存储器地址,分别为数据寄存器PORTC ($15)、数据方向寄存器DDRC ($14) 和输出引脚PINC ($13)。其中,
TCNT0,存放计数值。
② 相关寄存器
★ CPU的状态寄存器—SREG
与定时器0工作相关的位为I位—全局中断允许。置1为中断允许、置0为中断禁止。指令有SEI(置位I),CLI(清零I)。
PORTC为 DDRC为 PINC为
PC0~PC7作数字I/O时是等效,PCn为通用
I/O引脚:DDRC寄存器的DDRCn位选择引脚的方向。DDRCn为1,PCn被配置为输出引脚;DDCn为0,PCn被配置为输入引脚。
(3) 通用串行口UART 数据寄存器UDR:
波特率寄存器UBRR
RXT接收完成、TXC发送完成、UDRE数据寄
存器空、FE帧出错、OR超越错误、0~2保留。RXCIERX为RX完成中断触发、TXCIE为TX完成中断触发、UDRIE为数据寄存器空中断触发、RXEN为接收触发、TXEN为发送触发。
(4) 模拟比较器
控制状态寄存器ASCR
状态寄存器USR
控制寄存器UCR
・42・
ACD模拟比较器禁止、ACO模拟比较输出、
运行波形点数字量处理程序,定时向DAC0832输
,经DAC出波形点数字量(数字量输出接A端口)
转换
后,输出模拟的波形信号。其程序流程图3,
原理图如图4。
中断服务程序框图
ACI模拟比较器中断标志位、ACIE模拟比较器中断触发、ACIC模拟比较器输入捕获触发、ACS1与ACS0模拟比较器中断模式选择。
(5) 其它接口内容
AVR自带EEPROM,同步串行接口SPI,有这些接口电些型号的芯片还带有A/D转换部件等,
路使得用AVR开发出来的产品具有外围线路简洁、功能强大、易于维护等优点。
3 应用实例
3.1 信号发生器
数字信号发生器具有如下指标:可输出正弦波、方波和三角波、输出波形幅值范围0.1~5V,波形频率范围100Hz~20000Hz,幅值可调步进0.1mv,频率可调步进100Hz。
为实现上述信号发生器,硬件上:以一块AVR芯片AT90S8515-8为中心(接8MHz晶振),外加一数模转换器件DAC0832、一4×4键盘(键盘扫描端接C端口)、一LCD显示器1602AT(S)R(数据输入接B端口)以及一5V电源。AT90S8515-8
图
图4 数字信号发生器原理图
3.2 频率计
设计一款频率计,最大可测频为999999Hz,以AVR芯片AT90S8515-8为中心,包括4键盘档位选择、LCD显示器1602AT(S)R以及5V电源。
原理简图如图5,程序流程如图6。 3.3 与PC机通信
在工程应用中经常会有单片机与PC机通信的要求,其通信接口电路简图如图7。
・43・
图5 频率计原理简图
主程序定时中断
4 结束语
AVR的应用范围很广,尤其在工业控制领域。高档一点的处理芯片还可用来开发数据采集设备、数据处理设备、智能控制模块等。
图6 频率计程序流程图
+5V
参考文献:
[1] 耿德根, 等. AVR
高速嵌入式单片
机原理及应用[M]. 北京: 北京航空航天大学出版社, 2001.[2] 宋建国. AVR单片
机原理及应用[M]. 北京: 北京航空航天大学出版社, 1998.
机
图7 与PC通信
接口电路简图
作为高性能计算技术产品的高性能计算机,又称巨型机,是与超级计算机相对应的概念。每秒10万亿次“曙光4000A”巨型机面对正在规划建设的“中国国家网格”已做技术上的准备。网格被称为继因特网、万维网之后的下一代互联网。目前互联网上的资源是割裂的,不能共享。网格是把整个因特网整合成一台巨大的超级计算机,实现各种资源的全面共享,让用户很方便地像用电一样使用计算资源。国外IT巨头都把发展网格作为战略重点。曙光集团正在紧跟国际计算机前沿的发展趋势,把握住“网格”这一历史变革的机遇。先前推出的每秒4.2万亿次“曙光4000L”巨型机,其中开发了智能控制台和网格监控中心两项网格技术,更多的网格技术有待开发,关键在于开发速度更快的巨型机。
为了使我国在网格技术和网格应用方面跻身世界前列,“国家863计划网格专项”与美国IBM公司于2003年9月5日签约,双方在战略与系统、高性能计算机、网格结点、网格软件、网格应用等5个方面进行共同研究、开发,并通过与世界领先厂商的合作,力争将“中国国家网格”推向建设阶段。曙光集团承担了国家863计划中有关网格的课题,计划投入精力研制500万亿次的巨型机,争取世界第一。
・44・