枣庄学院。
题目 8位a/d、d/a转换系统的设计。
院别机电工程学院
专业班级机械设计制造及其自动化14级。
升本1班 姓名马鹏程。
学号 201415310121
指导教师杨中国。
8位a/d、d/a转换系统的设计。
一、 设计要求。
在单片机的智能仪器仪表、数据采集以及实时控制系统中,被控制对象往往是一些连续变化的模拟量,例如温度、压力、形变、位移、流量等。这些非电的模拟量必须通过传感器转换成电模拟量,再转化成数字量后,才能输入到计算机处理。有时还要求处理结果转换成模拟量以实现对被控对象的控制,并要求通过键盘置数、显示、打印等。
本系统设计能完成上述各方面要求。通过修改和增加软件还可以扩展功能。故本系统是一个通用的,且可进一步开发应用的8位a/d,d/a转换系统。
二、 原理框图如图2所示。
图2三、系统的硬件设计。
1)系统的组成。
8位a/d、d/a转换系统以at89c51单片机为主机,由于内部有数据和程序存储器,根据需求,无需外扩存储器,tlc549的8位输入a/d从p1口输入,经0832的d/a转换从p0口输出数据,用p0、p1、p2口的组合实现4x3的键盘输入和标准打印机口。p3口的txd和rxd引脚与max232芯片相接组成标准rs-232接口实现通信,系统设计由24c02和数字温度传感器,可以随时测量环境温度并记录到24c02中。
2)系统工作原理。
主机at89c51借助tlc549进行转换,通过ds18b20对系统周围温度进行检测,并对采样数据修正,结果存入24c02中,同时将数据送入显示缓存区,经led显示,送d/a转换器输出,再经打印机接口记录结果。
3)系统硬件设计。
1)显示键盘电路显示键盘电路如图3-2 所示,由显示电路和键盘电路两部分组成。其中显示电路由p0口、p2口低4位和4位共阳极led显示器,4只9015三极管组成。根据共阳极数码管低电平点亮原则,真值表如图3-1所示:
表3-1 七段码字形表。
图3-2 显示键盘电路。
段选有p0口控制,位选由p2.0-p2.3口经9015分别对应千、百、十、个位,根据共阳极原理,位选信号经9015驱动从vcc送入显示阳极,因此得到选择码,而千位、百位、十位、个位对应的位选码分别为0eh、0dh、0bh、07h,从而分别送出字形,并从千位到个位依次显示,而由于人眼的惰性,会观察到四位同时显示。
键盘电路由p2口低4位和p1口高3位组成4x3矩阵形式的12个键组成,包括10个数字键和2个功能山地车键。键盘扫描电路中,p2.0-p2.
3用作扫描行线的输出口,p1.5-p1.7用作控制键列线的输入口。
p2.0-p2.3四线中先送p2.
3线为0,其余位送全1(07h),读p1口,若有键按下,则p1.5-p1.7中必有一线为0,分别送0bh、0dh、0eh和读p1口值,达到扫描键盘作用。
键所在的行列值决定闭合键的键值。
2)ds18b20,24c02电路
选用数字温度传感器ds18b20测量系统环境温度,选用24c02串行来记录a/d的转换结果和温度变化值。由ds18b20与p1口低3位构成高精度数字传感器接口电路,24c02与p1.2低3位实现外扩功能。
电路如图3-3所示。
图3-3 单片机与ds18bc02接口电路。
3)a/d、d/a转换器电路。
a/d、d/a转换器电路如图所示。由p1口低3位和转换器tlc549实现8位a/d转换接口功能。在tlc549的cs端加低电平后,a/d转换器启动,此时在clk上必须送入移位脉冲,将sda的转换结果经过c进位送入累加器a中。
dac0832由8位数据输入寄存器,8位dac寄存器和8位d/a转换器组成。可以将输入的数字量转换成模拟电流量输出。而在单片机的应用系统中,往往需要电压信号输出,所以将电流经过运算放大器lm2904得到转换电压输出。
本系统采用单缓冲方式连接,p0口送8位数据,p3.6作为选通信号。
图3-4 a/d、d/a转换电路。
4)并行输出打印电路和串行输出rs-232电路
本系统选用标准并口打印口输出,用p0口输出并行数据,p3.7作为打印口的选通信号,当打印机正在打印时,其状态输出线busy为高电平,空闲时送出低电平,p2.4引脚连到打印口busy信号,供cpu查询使用。
在系统中我们为mcs-51串行接口配置了max232来实现rs-232标准信号,使系统可与上位机联机,实现网络功能,如图3-5。
图3-5 串行输出ds-232,并行输出标准打印口电路图。
8位a/d、d/a转换系统总体逻辑图如图3-6。
图3-6四、系统的软件设计。
整个程序由主程序、显示、键盘扫描、测温、a/d d/a转换、rs-232通信模块构成。由于cpu内部含有4kb的快擦写可编程只读存储器可作为监控程序单元使用,系统外扩24c02作为存取随机数据的单元,系统使用地址单元分配如下:
1)显示缓冲区:61h、62h、63h、64h单元。
(2)键盘行扫描:40h、41h、42h、43h单元。
3)键盘**:44h~4fh单元。
我们采用数字**与命令执行键(#),退出命令执行键(*)组合而成。具体方法为:取低二位数值(即led显示器的低二位中的内容)作为命令键不同的键值,在按下“#”后程序转入命令键处理,完成(63h)x16+62h操作到的命令键,并且做如下定义:
1)12h对应a/d d/a转换功能,21h对应打印功能。
2)31h对应串口通信功能,41h对应测温功能。
对应八位**列表如表4-1所示。程序流程框图如图4-2所示。
表4-1图4-2
1) 主程序。
org 0000h
ajmp main
org 0023h
org 0100h
main: mov 40h,#07h键行扫描码赋予40h-43h
mov 41h,#0bh
mov 42h,#0dh
mov 43h,#0eh
mov 44h,#4eh键值码赋予44h-4fh
mov 45h,#27h
mov 46h,#47h
mov 47h,#87h
mov 48h,#2bh
mov 49h,#4bh
mov 4ah,#8bh
mov 4bh,#2dh
mov 4ch,#4dh
mov 4dh,#8dh
mov 4eh,#2eh
mov 4fh,#8eh
mov 60h,#00h
main0: mov sp,#68h设置sp指针。
mov r0,#61h
ml0: mov a,#00h显示缓冲区清零。
mov @r0,a
inc r0
cjne r0,#65,ml0
ml1: mov r0,#64h
mov r3,#00h
ml2: acall display调用显示子程序。
acall key1调用键盘扫描子程序。
cjne a,#0bh,ml4 ;不是命令执行键转数字键处理。
mov a,63h是,进行命令键处理。
swap a形成命令字。
anl a,#0f0h
mov b,a
mov a,62h
add a,b
cjne a,#12h,ml3不是a/d、d/a命令转到ml3
ajmp adc执行a/d、d/a子程序。
ml3: cjne a,#41h,ml4 ;不是测温命令转到数字键出理。
ajmp b20main执行测温子程序。
ml4: ajmp ml2是数字键b,转显示程序。
2) 键盘显示功能程序。
1)本程序段使用显示缓存区为内部ram中的64h(千位h(百位h(十位h(个位)。程序流程框图如图4-3所示。
图4-3显示子程序:
display: mov dptr,#numtab ;取七段码首地址。
setb c
mov r7,#0feh ;位选择置处置(从千位开始)
mov r0,#64h ;显示缓冲区首地址送r0
mov r4,#04h ;设循环次数(4位)
show : mov a,@r0 ;取显示缓冲区要显示的数值。
movc a,@a+dptr ;查七段表,取七段码。
单片机课程设计
可变程序控制器是集微机技术 自动化技术 通讯技术于一体的通用工业控制装置。它可靠性强 性能 比高 使用方便,已在工业控制的各个领域里得到了极为广泛的应用,成为实现工业自动化的一种强有力的工具 1 plc的定义有许多种。国际电工委员会 iec 对plc的定义是 可编程控制器是一种数字运算操作的电子系统...
单片机课程设计
目录。内容提要2 关键词2引言3 一 硬件电路设计3 一 电路板原理3 二 电路元器件3 二 软件设计3 一 秒钟设计方案3 二 时钟设计方案4 结语7单片机时钟设计。内容摘要 一 在实验板上用动态扫描显示00 59秒钟,具体要求如下 一 6m晶振 二 l9 l10显示00 59十进制数并循环,间隔...
单片机课程设计
1 选题背景。1.1 家庭智能防盗报警系统设计的背景及目的。随着经济的发展,人们对防盗 防劫 防火保安设备的需求量大大增加。针对偷盗 抢劫 火灾 煤气泄漏等事故进行检测和报警的系统,其需求也越来越高。家居智能是以家为平台,兼备建筑 自动化,智能化于一体的高效 舒适 安全 便利的家居环境。自动化的家居...