单片机电阻测量
2.3
AT89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS—51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。
关键词:单片机(AT89C52);电压;A/D转换;ADC0809
设计要求1
1电路的论证与对比1
1.1方案一1
1.2方案二2
1.3方案的对比与比较2
2系统硬件电路设计2
2.1振荡电路模块2
2.2A/D转换电路模块2
3
2.2.2ADC0809芯片的组成原理4
2.2.3ADC0809引脚功能4
2.3主控芯片AT89C52模块5
ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。
5
2.3.2主要引脚功能6
2.4显示控制电路的设计及原理8
3系统调试与分析9
3.1硬件调试9
3.2软件调试9
3.3性能分析10
4元器件清单11
5总结与致谢12
6参考文献13
附一:原理图14
附二:程序15
电阻测量
设计要求
电阻测量(需要简单的外围检测电路,将电阻转换为电压)
测量100,1k,4.7k,10k,20k的电阻阻值,由数码管显示。
课程设计报告
课程名称:单片机原理及应用课程设计
设计题目:电阻测量
系别:通信与控制工程系
专业:电子信息专业
班级:09级电信二班
学生姓名:
学号:
起止日期:
指导教师:
教研室主任:
指导教师评语:
指导教师签名:年月日
成绩评定
项目
权重
成绩
1、设计过程中出勤、学习态度等方面
0.2
2、课程设计程度
图4A/D转换电路原理图
1分辨率为8位二进制数。
2模拟输入电压范围0V—5V,对应A/D转换值为00H—FFH。
3每路A/D转换完成时间为100μs。
4允许输入4路模拟电压,通过具有锁存功能的4路模拟开关,可以分时进行4路A/D转换。
5工作频率为500kHz,输出与TTL电平兼容。
2.2.2A
具体设计要求如图5所示,它是由地址锁存器、4路模拟开关、8位逐次A/D转换器和三态锁存输出缓冲器构成。由3位地址输入线ADDRA、ADDRB、ADDRC决定4路模拟输入中的1路进8位A/D转换器,A/D转换值进入三态锁存输出缓冲器暂存,在CPU发来输出允许控制信号OE后,三态门打开,经DB7—DB0进入CPU总线,完成一次A/D转换全过程。
图5A/D转换电路原路图
2.2.3ADC0809
ADC0809采用28引脚的封装,双列直插式。A/D转换由集成电路ADC0809完成。ADC0809具有8路模拟输入端口,地址线(23—25脚—即C,B,A,)可决定对哪一路模拟输入作A/D转换。22脚为地址锁存控制(ALE),当输入为高电平时,对地址信号进行锁存。6脚为测试控制(START),当输入一个2us宽高电平脉冲时,就开始A/D转换。7脚为A/D转换结束标志(EOC),当A/D转换结束时,7脚输出高电平。9脚为A/D转换数据输出允许控制(OE),当OE脚为高电平时,A/D转换数据从该端口输出。10脚为ADC0809的时钟输入端(CLOCK),利用单片机30脚的六分频晶振频率再通过14024二分频得到1MHz时钟。单片机的P1、P3.0—P3.3端口作为四位LED数码管显示控制。P3.5端口用作单路显示/循环显示转换按钮,P3.6端口用作单路显示时选择通道。P0端口作A/D转换数据读入用,P2端口用作ADC0809的A/D转换控制。
P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89C52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。
EA/VPP:访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。
表2P3口的第二功能
端口引脚
第二功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
外中断0
P3.3
外中断1
P3.4
T0(定时/计数器0)
P3.5
T1(定时/计数器1)
P3.6
外部数据存储器写选通
P3.7
外部数据存储器读选通
RST:复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。
图3振荡电路
2.2A/D
ADC0809是采用逐次逼近式原理的A/D转换器。
ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上,9电路图如图4所示。
图2方案二原理图
1.3
由于课程设计的要求是电阻测量需要简单的外围检测电路,将电阻转换为电压,测量100,1k,4.7k,10k,20k的电阻阻值,由数码管显示。测试:误差10%。通过比较以上两个方案,可知方案二相对来说比较适合。所以选用方案二作为实验方案。2系统硬件电路设计
2.1
振荡电路通过这两个引脚外并接石英晶体振荡器和两只电容(电容和一般取33pF),这样就构成一个稳定的自激振荡器。为单片机提供时钟信号。如图3所示。
用555构成的单稳态电路在正常工作条件下输出脉冲的宽度Tx与Rx的函数关系是:
图1方案一原理图
所产生的时间误差可能达到百分之十五,再加上其他原因产生的误差,测量是的时间
1.2
用ADC0809电阻测量,以一个1K的电阻作为基准电阻。和被测电阻进行分压,分压比例得出电阻比例。
用ACD0809测量电阻时间误差为10%以下,分辨率高,输出能与TTL电平兼容。其原理图如图2所示。
·与MCS—51产品指令和引脚完全兼容
·8k字节可重擦写Flash闪速存储器
·1000次擦写周期
·全静态操作:0Hz—24MHz
·三级加密程序存储器
·32个可编程I/O口线
·低功耗空闲和掉电模式
·3个16位定时/计数器
·可编程串行UART通道
2.3.2
VCC:电源
GND:地
P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
测试:误差10%。
1
1.1
利用单稳或电容充放电规律等,可以把被测电阻量的大小转换成脉冲的宽窄,即脉冲的宽度Tx与Rx成正比。只要把此脉冲和频率固定不变的方波(以下称为时钟脉冲)相与,便可以得到计数脉冲,将它送给数字显示器。如果时钟脉冲的频率等参数合适,便可实现测量电阻。计数控制电路输出的脉冲宽度Tx应与Rx成正比,其电路原理图及具体555单稳态触发器的构成及仿真如图1所示。
P1口和P2口的第二功能如下表1所示。
表1P0和P1口的第二功能
引脚号
功能特性
P1.0
T2(定时/计数器2外部计数脉冲输入),时钟输出
P1.1
T2EX(定时/计数2捕获/重载触发和方向控制)
P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P3口输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89C52特殊功能(第二功能)使用,在flash编程和校验时,P3口也接收一些控制信号。具体功能如表2所示:
XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:振荡器反相放大器的输出端。
2.4
显示子程序采用动态扫描法实现4位数码管的数值显示。测量所得的A/D转换数据放70H—77H内存单元中,测量数据在显示时须经过转换成为十进制BCD码放在78H—7BH单元中,其中7B存放通道标志数。寄存器R3用作8路循环控制,R0用作显示数据地址指针。