第27卷第7期
电力自动化设备
V01.27
No.7
固
2007年7月
Electrilc
Power
Automation
Equipment
Jul.2007
利用AT90S
1
200单片机实现A/D转换
张新海1。张睿彬2
(1.焦作师范高等专科学校理化生物系,河南焦作454003;
2.焦作大学电气工程系,河南焦作454003)
摘要:AT90S1200是基于增强性能精简指令集、低功耗、CMOS技术全新的单片机。采用RC模拟转
换原理利用该片内的模拟比较器.可以组成精度高、速度快、廉价的A/D转换器。实现A/D转换
的电路设计简单,即在AT90S1200单片机外部接口加一个电阻和电容,并使用片内的定时器/计数器
中断和模拟比较器中断。实现A/D转换的软件是:模拟比较器中断、A/D转换初始化、定时器/计数
器中断、A/D转换器启动等子程序。叙述了硬件电路的原理,给出了子程序的代码,并提供了实
例子程序。
关键词:单片机;外部接口;A/D转换器;硬件;控制电路
中图分类号:TN
79+2
文献标识码:B
文章编号:1006—6047(2007)07—0084一03
1
AT90S1200单片机介绍
AT90S1200单片机是美国ATMEL公司生产的
AVR增强型RISC内载Flash的单片机[1’51,其引脚如
图1所示。芯片上的Flash存储器附在用户的产品
中,可随时编程、再编程,使用户的产品设计容易,更
新方便。除具有一般结构以外,还增加了内置模
拟比较器[引,如图2所示。其带片内振荡器,具有
省电模式等功能。利用该片内的模拟比较器,可以
组成精度高、速度快、廉价的A/D转换器。
RESET
PD0
PDl
XTAL2
XTALl
(INT0)PD2
PD3
(T0)PD4
PD5
GND
Vcc
PB7(SCK)
PB6(MIS0)
PB5(MOSI)
PB4
PB3
PB2
PBl(AINl)
PBO(AIN0)
PD6
图1
AT90S1200的引脚
Fig.1
Outlets
of
ArI’90S1200
2硬件设计
这里采用RC模拟转换原理.即在Arr90S1200
单片机外部接口加一个电阻和电容组成A/D转换
器,并使用片内的定时器/计数器中断和模拟比较器
中断[7_10],其结构如图3所示。电阻一端接PD2,另
一端与电容组成RC振荡器.电容器的正端接单片机
的PBO(AIN0内部比较器正端),而PBl(AINl内部
比较器负端)接模拟输入电压,通过PD2端的控制
对电容充电[1l。1引。
加在电容器上的电压是按指数关系下降的。当
收稿日期:2007—04—10:修回日期:2007—04—29
8位数据总线
疆再栅I鉴查塑型堕
512×16
I程序n∞h
二1二
指令寄存器
率鼓孔臣
控制线
15根I/0线
图2
AT90S1200AVR的结构
Fig.2
StllJcture
of
A7190S1200AVR
图3
A/D转换器原理图
Fig.3
Principle
diagmm
of
A/D
conVerter
(5%)
压缩转换的电压范围到2/5
Vcc时,指数曲线接近水
平线。若通过电容器的电压等于被转换的电压时,
就完成一次简单的测量[12。1
3|。用模拟器实现比较,当
通过电容器的电压上升超过测量电压时,模拟比较
器给出中断信号,完成一次测量[13‘141。输出可分为
64级[15]。
为了确保定时时间,RC网络的时间常数要满足
公式(1)n6-17]:
512×(1/厂)=一RC×ln(1—2/5)
(1)
一一一一一一一一一一一一
器I/
一竺伽
通I、\
万方数据