版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机应用技术QQ群号:100352443(单片机之家)网址::8/suite/wv/683931QQ群号:100352443(单片机之家)网址::8/suite/wv/683931A/D转换01.情境导入02.教学内容03.练习总结04.分享讨论PART1情境导入额温枪大家都熟悉吧?他是利用红外线来测量人体温度,再进行显示的。Part1情境引入2020年的新冠疫情改变了我们很多生活学习方式,我们到超市、到学校、到人口密集的地方都要用额温枪测量我们体温,他是利用红外线来测量人的体温的工具,但是红外线测量到是模拟信号,我们看到的却是数字信息,显然额温枪要将模拟信号转换为数字信号,即A/D转换。额温枪已经成为家喻户晓的工具了PART2教学内容A/D转换基本知识ADC0831的特点ADC0831的引脚ADC0831的时序单片机与ADC0831的连接1.
A/D转换基本知识传感器单片机01逐次逼近式02双积分式03V/F变换式04并行式类别类别传感器单片机A/D转换器的作用是将模拟量转换为数字量,以便计算机接收处理。A/D转换A/D转换2.ADC0831的特点最大功耗0.8W电源电压最大6.3V、最小4.5V最大工作温度+70℃输入电压和参考电压均5V一款8位的模数转换器可通过三线串行总线与单片机连接单通道的A/D转换器单端输入,也可差分输入ADC0831是美国国家半导体公司生产的8位逐次逼近式单极性A/D转换器,自带时钟发生器,具有单通道输入方式,它的串行输出接口容易与单片机相连。输入、输出可与TTL和MOS电路兼容3.ADC0831的引脚功能引脚名称引脚性质、类型引脚功能CS片选输入端
IN+正输入端
IN-负输入端接地时,ADC0831为单端工作,IN+为输入CLK时钟信号输入端时钟信号频率为250kHzDO串行数据输出端转换一字节时间为32μsREF基准电压输入端通常REF接VCC,典型值为+5VVCC、GND电源、地VCC通常取+5V单端输入:IN-引脚接地,此时IN+为输入。差分输入:将信号差分后输入到IN+和IN-之间。4.ADC0831的时序5.ADC0831与单片机的接口电路PART3练习总结A/D转换基本知识ADC0831的特点ADC0831的引脚ADC0831的时序单片机与ADC0831的连接Part3:练习总结ADC0831连接单片机后,当CS信号变为低后,经过多长时间将转换的数据从DO口输入到单片机,最先输入单片机的是哪一位?A、1个时钟周期,D7B、2个时钟周期,D7C、1个时钟周期,D0D、2个时钟周期,D702利用ADC0831将模拟信号转换成数字信号的应用中,应该将ADC0831的哪一个引脚与模拟信号源相连接?A、DO,属于串行输入B、IN+,此时IN-必须接地C、IN-,此时IN+必须接高电平D、IN+和IN-,采用差分输入01PART4分享讨论请你们以小组为单位讨论如下问题,如果要差分输入方式与模拟信号源连接,则要如何连接?单片机与D/A转换器的连接一、D/A转换基本知识
D/A转换器的基本工作原理是:通过电阻网络将n位数字量逐位转换成模拟量,经运算器相加,从而得到一个与n位数字量成比例的模拟量。由于计算机输出的数据(数字量)是断续的,D/A转换过程也需要一定时间,因此转换输出的模拟量也是不连续的。单片机控制对象D/A转换D/A转换器的分类按数据输入方式,D/A转换器有串行和并行两类,输入数据包括8位、10位、12位、14位、16位等多种规格,输入数据位数越多,分辨率也越高;按输出模拟量的性质,D/A转换器分电流输出型和电压输出型两种。电压输出又有单极性和双极性之分,如0~+5V、0~+10V、±2.5V、±5V、±10V等,可以根据实际需要进行选择。二、8位通用D/A转换器DAC0832是并行输入、电流输出型的通用8位D/A转换器,它具有与微机连接简便、控制方便、价格低廉等优点,被广泛应用于微机系统中。1.结构输出为模拟电流,可转换为电压。LE1或LE2=1,当前寄存器的输出跟随输入LE1或LE2=0,锁存数据Iout1Iout2DI0DI78位寄存器DAC8位D/A转换器8位输入锁存器...≥1&ILECSWR1WR2XFERLE1LE2VREFRFBAGNDDGNDVCC≥12.引脚功能ILE:输入锁存允许信号,高电平有效。:输入寄存器选择信号,低电平有效。:写信号1,输入寄存器写选通信号,低电平有效。输入锁存器的锁存信号LE1由ILE、、的逻辑组合产生。当ILE为高电平,和同时为低电平时,LE1为正脉冲,输入寄存器的输出随输入变化;当变成高电平时,LE1变为低电平,输入数据被锁存在输入锁存器中。:写信号2,即DAC寄存器的写选通信号,低电平有效。:数据传送控制信号,低电平有效。DAC寄存器的锁存信号LE2由、的逻辑组合产生,当和同时为低电平时,LE2为1,DAC寄存器的输出随它的输入而变化;当变为高电平后,LE2变为0,LE2的负跳变将输入寄存器中的数据锁存在DAC寄存器中。2.引脚功能DI0~DI7:8位数字输入端,DI0为最低端,DI7为最高端。Iout1:DAC电流输出端1,为数字输入端逻辑电平为1的各位输出电流之和。DAC寄存器内容随输入端代码线性变化,DAC寄存器的内容为全1时,Iout1最大;全为0时,Iout1最小。Iout2:电流输出端2。Iout2等于常数减去Iout1,即Iout1+Iout2=常数。此常数对应于一固定基准电压的满量程电流。RFB:反馈电阻。反馈电阻被制作在芯片内部,用作DAC提供输出电压的运放的反馈电阻。Vref:基准电源输入端。Vref一般在-10~10V范围内,由外电路提供。Vcc:逻辑电源输入端,取值范围为+5~+15V,+15V最佳。AGND:模拟地,为芯片模拟电路接地点。DGND,数字地,为芯片数字电路接地点。ILE,WR1:控制输入锁存器
ILE=1,WR1=0时:直通
ILE=1,WR1=1时:锁存DAC0832可以有三种工作形式:直通、单级缓冲、双缓冲。XFER,WR2:控制DAC寄存器
XFER=0,WR2=0时:直通
XFER=1orWR2=1时:锁存3.DAC0832与单片机的连接
DI0DI78位寄存器DAC8位D/A转换器8位输入锁存器...≥1&ILECSWR1WR2XFERLE1LE2Iout1Iout2VREFRFBAGNDDGNDVCC≥1(1)直通方式直通方式是指两个数据输入寄存器都处于开通状态,即所有有关的控制信号都处于有效,输入寄存器和DAC寄存器中的数据随DI0~DI7的变化而变化,也就是说,输入的数据会被直接转换成模拟信号输出。这种方式在微机控制系统中很少采用。(2)单缓冲方式
单缓冲方式是指两个数据输入寄存器中只有一个处于受控选通状态,而另一个则处于常通状态,或者虽然是两级缓冲,但将两个寄存器的控制信号连在一起,一次同时选通。单缓冲方式适用于单路D/A转换或多路D/A转换而不必同步输出的系统中。单缓冲方式的接口——两个输入寄存器同时受控的方式“同时”做何解释?+5VAVout8051P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
P2.7WRDAC0832VccILEVrefRfbIout1Iout2AGNDDGNDDI0DI1DI2DI3DI4DI5DI6DI7CSXFERWR1WR2+转换程序DAC0832作为了8031的一个并行输出口,若假设无关地址线为1,那么其地址为7FFFH。如果把一个8位数据data写入7FFFH,也就实现了一次D/A转换,输出一个与#data对应的模拟量。
#defineADDR0832XBYTE[0X7FFF]//P2.7=0,定义DAC0832芯片的地址
ADDR0832=data;//写入0832,进行一次转换输出案例单片机控制锯齿波输出由于DAC0832典型的输出稳定时间是1μs,因此输出信号的变化频率必须小于1MHz,亦即单片机的两次数字量输出之间的间隔必须大于1μs。因为晶振频率为12MHz,程序中for语句和向DAC0832送数的语句的执行时间已足以达到1μs的要求,所以程序中没有必要再进行额外的延时。案例24单片机控制锯齿波输出#include<reg51.h>#include<absacc.h>#defineDAC0832XBYTE[0X7FFF]voiddelay();voidmain(){unsignedchari;while(1){for(i=0;i<=255;i++){DAC0832=i;delay();}}}voiddelay(){unsignedinti;for(i=100;i>0;i--);}
1/282/283/28254/28255/280产生的锯齿波的过程(3)双缓冲方式双缓冲方式是指由单片机两次发送控制信号,分时选通DAC0832内部的两个寄存器。第一次将待转换数据输入并锁存于输入锁存器中,第二次再将数据从前一级缓冲器写入DAC寄存器并送到D/A转换器完成一次转换输出。在要求多路模拟信号同步输出的系统中,必须采用双缓冲方式。按双缓冲方式的要求,设计电路必须能够实现以下两点:一是各路D/A转换器能分别将要转换的数据锁存在自己的输入寄存器中;二是各路D/A转换器的DAC寄存器能够同时锁存由输入寄存器送出的数据,也就实现了同步转换。——两个锁存器都接成受控锁存方式输入寄存器(1)地址:7FF8H输入寄存器(2)地址:7FF9HDAC寄存器地址:7FFAH将两个8位数字量data1和data2同时转换为模拟量的程序:#include<reg51.h>#include<absacc.h>unsignedchardata1,data2;intxdata*ad_int;main(){ad_int=0x7ff8;//指向0832(1)的输入寄存器
ad_int=data1;//data1→0832(1)输入寄存器
ad_int++;//指向0832(2)的输入寄存器
ad_int=data2;//data2→0832(2)输入寄存器
ad_int++;//指向两个0832的DAC寄存器
ad_int=0;//启动转换
while(1);}案例空调制冷系统环境温度检测控制选用热敏电阻式温度传感器和ADC0809转换器。温度传感器产生的模拟信号转换为数字信号后,由P0口输入。ADC0809由P3.0启动转换,由P3.1控制输出。(1)工作原理当温度在中间某一范围时,温度传感器特性曲线为线性关系,可以用以下公式表示:
T=T0—KVT考虑到空调制冷控制系统所在环境温度一般在0~40℃之间,本案例选用的热敏电阻是NTSD0WB203,根据按图8-26对热敏电阻在0~50℃取一定温度值进行测量,得到测量温度与ADC0809转换的数据P1有如下关系:
T=100-P1+1(2)程序
在空调制冷控制系统案例中,80C51单片机定时从P0口读取环境温度值,该温度是温度传感器采样的信号经ADC0809转换的值,再根据读取的环境温度值与预置温度进行比较启动或停止压缩机,因此该功能可以通过中断方式实现,即把该案例程序设计成定时器(T0)的中断服务程序。源程序#include<reg51.h>sbitST=P3^0;sbitOE=P3^1;unsignedcharcount=10;voidmain(){TMOD=0x01;TH0=-50000>>8;TL0=-50000;ET0=1;EA=1;TR0=1;ST=1;ST=0;//启动A/D转换
while(1);}知识梳理与总结本任务通过温度报警器中环境温度定时检测的实现,让读者掌握A/D、D/A的基本知识、常用的A/D、D/A转换器的结构和引脚功能以及与单片机的接口。本任务的重点内容如下:(1)ADC0809的结构、引脚功能、与单片机的接口,包括与单片机间的数据传送方式的处理;(2)AD1674的结构、引脚功能、与单片机的接口;(3)DAC0832的结构、引脚功能、与单片机的接口,包括DAC0832的单缓冲方式和双缓冲方式的应用。任务作业P281~P282T8-7~T8-9单片机与DS18B20的连接
李法春2015年10月一、DS18B20引脚及内部结构1.DS18B20引脚DS18B20的常用封装有3脚、8脚等几种形式。各脚含义如下:DQ:数字信号输入/输出端。GND:电源地端。VDD:外接供电电源输入端(在寄生电源接线时此脚应接地)。
2.DS18B20内部结构64位ROM和一线接口存储和控制逻辑高速暂存器8位CRC生成器温度传感器低温触发器TL高温触发器TH配置寄存器电源检测DQVDD二、DS18B20的读写操作1.ROM操作命令
(1)读命令(33H):通过该命令主机可以读出DS18B20的ROM中的8位系列产品代码、48位产品序列号和8位CRC校验码。该命令仅限于单个DS18B20在线的情况。(2)选择定位命令(55H):当多片DS18B20在线时,主机发出该命令和一个64位数,DS18B20内部ROM与主机一致者,才响应命令。该命令也可用于单个DS18B20的情况。(3)查询命令(0F0H):该命令可查询总线上DS18B20的数目及其64位序列号。(4)跳过ROM序列号检测命令(0CCH):该命令允许主机跳过ROM序列号检测而直接对寄存器操作,该命令仅限于单个DS18B20在线的情况。(5)报警查询命令(0ECH):只有报警标志置位后,DS18B20才相应该命令。2.存储器操作命令(1)写入命令(4EH):该命令可写入寄存器的第2、3、4字节,即高低温寄存器和配置寄存器。复位信号发出之前,三个字节必须写完。(2)读出命令(0BEH):该命令可读出寄存器中的内容,复位命令可终止读出。(3)开始转换命令(44H):该命令使DS18B20立即开始温度转换,当温度转换正在进行时,主机这时读总线将收到0;当温度转换结束时,主机这时读总线将收到1。若用信号线给DS18B20供电,则主机发出转换命令后,必须提供至少相应于分辨率的温度转换时间的上拉电平。2.存储器操作命令(4)回调命令(088H):该命令把EEROM中的内容写到寄存器TH、TL及配置寄存器中。DS18B20上电时能自动写入。(5)复制命令(48H):该命令把寄存器TH、TL及配置寄存器中的内容写到EEROM中。(6)读电源标志命令(084H):主机发出该命令后,DS18B20将进行响应,发送电源标志,信号线供电发0,外接电源发1。三、DS18B20的复位及读写时序1.复位对DS18B20操作之前,首先要将它复位。(1)主机将信号线置为低电平,时间为480~960μs。(2)主机将信号线置为高电平,时间为15~60μs。(3)DS18B20发出60~240μs的低电平作为应答信号。单片机收到此信号后,表明复位成功,才能对DS18B20作其它操作,否则可能发生器件不存在、器件损坏或其他故障。480μs~960μs15μs~60μs60~240μs≥480μsDQ2.写字节单片机将DQ设置为低电平,延时15μs产生写起始信号。将待写的数据以串行形式送一位至DQ端,DS18B20在15~60μs的时间内对DQ检测,如DQ为高电平,则写1,如DQ为低电平,则写0,从而完成了一个写周期。在开始另一个写周期前,必须有1μs以上的高电平恢复期。15μs15μs~60μs>1μsDQ>60μs15μs15μs~60μs>1μsDQ>60μs写“0”时序写“1”时序3.读字节当单片机准备从DS18B20温度传感器读取每一位数据时,应先发出启动读时序脉冲,即将DQ设置低电平1μs以上,再使DQ上升为高电平,产生读起始信号。启动后等待15μs,以便DS18B20能可靠地将温度数据送至DQ总线上,然后单片机开始读取DQ总线上的结果,单片机在完成取数据操作后,要等待至少45μs,从而完成了一个读周期。在开始另一个读周期前,必须有1μs以上的高电平恢复期。15μs>1μsDQ>60μs>45μs>1μs>1μs15μs>60μs>45μs>1μs案例单片机与DS18B20传感器连接用单片机AT89C52的P0.7口线经上拉后接至DS18B20的引脚2数据端,引脚1接电源地端,引脚3接+5V电源端。源程序#include<reg51.h>#include<intrins.h>sbitLE=P2^5;sbitDQ=P0^7;bitDS_IS_OK=1;unsignedcharseg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0x00};//字段数组定义了12个元素,其中第11个元素是负号“-”的字//段码第12个元素为不显示的字段码,用于显示正温度值unsignedcharbuf[4];unsignedinttemperature;voiddelay(unsignedinttime)//延时函数{while(time--);}源程序(初始化函数)unsignedcharInit_Ds18b20(){unsignedcharstatus;DQ=1;delay(8);DQ=0;delay(60);//延时约600μsDQ=1;delay(5););//延时约50μsstatus=DQ;delay(20);//延时约200μsreturnstatus;}源程序(读字节函数)unsignedcharread(){unsignedchari=0;unsignedchardat=0;DQ=1;_nop_();for(i=8;i>0;i--){DQ=0;dat>>=1;DQ=1;delay(2);//延时约15μsif(DQ)dat|=0x80;delay(5);//延时约50μsDQ=1;}return(dat);}15μs>1μsDQ>60μs>45μs>1μs>1μs15μs>60μs>45μs>1μs源程序(写字节函数)voidwrite(unsignedchardat){unsignedchari;for(i=8;i>0;i--){DQ=0;delay(2)//延时约15μsDQ=dat&0x01;delay(5);//延时约50μsDQ=1;dat>>=1;}}源程序(采样温度函数)voidReadTemperature(){unsignedchartempL=0;unsignedchartempH=0;if(Init_Ds18b20()==1)//DS18B20故障
DS_IS_OK=0;else{DS_IS_OK=1;write(0xcc);write(0x44);//发出温度转换命令
Init_Ds18b20();write(0xcc);write(0xbe);//读出温度值
tempL=read();tempH=read();temperature=(tempH<<8)|tempL;}}//温度值显示处理函数voiddispute(){unsignedinttemp,temp1;//用于中途的数据转换
//以下if语句用于处理负温度值,因为保存的是温度值的补码
if((temperature&0xf80
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中职农业机械使用与维护(拖拉机使用与维护)试题及答案
- 2025年大学本科四年级(旅游管理)旅游景区管理测试题及答案
- 2025年大学工厂设备安装(工厂设备安装)试题及答案
- 2025年大学大三(生态学)微生物生态学实验阶段测试题及答案
- 2025年中职物业设施设备管理(设施设备维护)试题及答案
- 2025年中职营养与保健(膳食搭配)试题及答案
- 2025年大学三年级(石油工程技术)钻井工艺综合试题及答案
- 2025年中职道路与桥梁工程施工(道桥施工工艺)试题及答案
- 2025年大学设施农业科学与工程(设施农业)试题及答案
- 2026年贵州航空职业技术学院单招综合素质考试参考题库带答案解析
- 2025年全国注册监理工程师继续教育题库附答案
- 锅炉原理培训课件
- 重庆市高新技术产业开发区消防救援支队政府专职消防员招录(聘)114人参考题库附答案
- 2026年林学概论选择试题及答案
- 2026年安全员之A证考试题库500道附参考答案(黄金题型)
- 儿童早教中心接待服务流程
- 肿瘤课件模板
- 大学计算机教程-计算与人工智能导论(第4版)课件 第3章 算法和数据结构
- 带脉的课件教学课件
- 自建房消防安全及案例培训课件
- 2025年广东省第一次普通高中学业水平合格性考试(春季高考)思想政治试题(含答案详解)
评论
0/150
提交评论