为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

单片机应用技术项目教程(C语言版)-电子教案-素材资源 电子课件 06.项目六 模拟量输入输出设计与实现

2019-11-12 28页 ppt 294KB 22阅读

用户头像 个人认证

希望

暂无简介

举报
单片机应用技术项目教程(C语言版)-电子教案-素材资源 电子课件 06.项目六 模拟量输入输出设计与实现项目六模拟量输入输出设计与实现ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现教学目的掌握模/数、数/模转换芯片与单片机的连接方法及典型应用。掌握用查询方式、中断方式完成模/数、数/模转换程序的编写方法。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现模/数、数/模转换模拟量I/O接口的作用实际工业生产环境——连续变化的模拟量例如:电压、电流、压力、温度、位移、流量计算机内部——离散的数字量二...
单片机应用技术项目教程(C语言版)-电子教案-素材资源 电子课件 06.项目六  模拟量输入输出设计与实现
项目六模拟量输入输出设计与实现ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现教学目的掌握模/数、数/模转换芯片与单片机的连接方法及典型应用。掌握用查询方式、中断方式完成模/数、数/模转换程序的编写方法。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现模/数、数/模转换模拟量I/O接口的作用实际工业生产环境——连续变化的模拟量例如:电压、电流、压力、温度、位移、流量计算机内部——离散的数字量二进制数、十进制数工业生产过程的闭环控制ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现模拟量I/O通道的组成ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现工作模块15模数转换LED显示模拟量由电位器模拟产生;使用ADC0808/ADC0809模数转换器,将电位器上的模拟量(模拟电压)转换为数字量;把转换结果送到8个LED进行显示(既二进制显示)。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现模数转换显示电路ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现ADC0809模数转换器ADC0809是8通道8位的,以逐次逼近原理进行模—数转换的器件;内部有一个8通道模拟多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换;A/D转换后的数据由三态锁存器输出;片内没有时钟,需外接时钟信号。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现ADC0809主要特性8路8位A/D转换器,即分辨率8位;具有转换起停控制端;转换时间为100μs;单个+5V电源供电;模拟输入电压范围0~+5V,不需零点和满刻度校准;工作温度范围为-40~+85摄氏度;低功耗,约15mW。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现ADC0809外部特性一ADC0809芯片有28条引脚,采用双列直插式封装IN0~IN7:8路模拟量输入端;D0~D8:8位数字量输出端;ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路;CLK:时钟脉冲输入端;REF(+)、REF(-):基准电压;Vcc:电源,单一+5V;GND:地;ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现通道选择表ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现ADC0809外部特性二ALE:地址锁存允许信号,输入,高电平有效。START:A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。EOC:A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现ADC0809工作过程首先输入3位地址,并使ALE=1,将地址存入地址锁存器中;此地址经译码选通8路模拟输入之一到比较器;START上升沿将逐次逼近寄存器复位;下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行;直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请;当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现模数转换显示程序模数转换显示图模数转换显示程序ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现技能训练6-1采用中断方式完成模数转换设计要求工作模块15是采用查询方式完成模数转换LED显示的,如何采用中断方式实现模数转换LED显示。中断方式模数转换电路设计中断方式模数转换程序设计ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现中断方式模数转换电路设计把转换完成的状态信号(EOC)作为中断请求信号,经过反相器后送到单片机的INT0引脚,电路其它部分与工作模块15一样。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现工作模块16数字电压表设计与实现使用AT89S52单片机,采用动态显示的方式,把8通道模数转换器ADC0808采样的电压值的大小经单片机处理后由数码管显示出来,量程为0-5V,显示格式:X.XXX。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现数字电压表电路设计由于需要显示多位,因此数码管采用了较节省I/O口线的动态显示方式。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现数字电压表程序设计数码管显示电压值实现模数转换采用的是8位的ADC0808,因此其分辨力为5*1/2^8V,即19.6mV。为了得到各位待显示的数字的大小,采取了除法和取余相结合的方式:dat[3]=tmp/10000; /最高位dat[2]=tmp/1000%10;dat[1]=tmp/100%10;dat[0]=tmp/10%10; /最低位数字电压表控制C语言程序ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现C语言结构体类型结构体与前面介绍过的数组一样,是一种构造类型的数据,它是将若干个不同类型的数据变量有序地组合在一起而形成的一种数据的集合体。组成该集合体的各个数据变量称为结构成员。整个集合体使用一个单独的结构变量名。一般来说结构中的各个变量之间是存在某些关系的,如时间数据中的时、分、秒等。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现结构体类型的定义定义一个结构体类型的一般形式为:struct结构体名{成员项列表};其中“struct”是关键字,作为定义结构体类型的标志;“结构体名”由用户自行定义;“成员列表”为该结构体中的各个成员,由于结构体可以由不同类型的数据组成,因此对结构体中各成员都要进行数据类型的说明。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现结构体类型变量的定义结构体定义好以后,就可以指明该结构体的具体对象,即定义该种类型的变量,结构体类型变量的定义主要有如下三种方式:先定义结构体类型,再定义变量名在定义结构体类型的同时定义结构体变量名直接定义结构体变量ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现先定义结构体类型,再定义变量名定义一个表示时间的结构体类型。structtime{ unsignedcharhour; unsignedcharminute; unsignedcharsecond;};定义好一个结构体后,就可以用它来定义结构体变量。一般格式为:struct结构体名结构体变量名1,结构体变量名2,...结构体变量名n;用结构体time来定义时间的结构体变量:structtimetime1;结构体变量time1具有structtime类型的结构,可以使用该结构体中的数据。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现定义结构体类型的同时定义结构体变量名一般格式为:struct结构体名{成员列表}结构体变量名1,结构体变量名2,...结构体变量名n;ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现直接定义结构体变量一般格式如下:struct{成员列表}结构体变量名1,结构体变量名2,...结构体变量名n;第三种方法直接省略了结构体名,一般不提倡。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现结构体变量的引用定义了一个结构体变量之后,就可以对它进行引用,既可以进行赋值、存取和运算。结构体变量的引用是通过对其成员的引用来实现的。引用结构体变量中的成员格式为:结构体变量名.成员名其中“.”是引用结构体成员的运算符。例如:time1.hour=20,表示给结构体变量time1中的成员hour赋值。对结构体变量中的各个成员可以像普通变量一样进行赋值、存取和运算。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现结构体变量的初始化对结构体变量可以在定义的时候进行初始化;也可以在定义后对各个成员单独进行初始化。例如:time1.hour=20; //结构体成员赋初值time1.minute=35;time1.second=55;ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现结构体变量需要注意的地方结构体类型与结构体变量是两个不同的概念。定义一个结构体类型时只给出了该结构体的组织形式,并没有给出具体的组织成员,因此结构体不占用任何存储空间。结构体变量则是一个结构体中的具体对象,会给结构体变量分配存储空间,因此可以对结构体变量名进行赋值、存取和运算。一个结构体中的成员还可以是另外一个结构体类型中的变量,既可以形成结构体的嵌套。ARM嵌入式系统单片机应用技术项目教程(C语言版)计算机科学系项目六模拟量输入输出设计与实现结构体数组一个结构体变量中可以存放一组数据(如:字符显示数据结构有显示内容、段码数据等数据)。如果显示为0~9,就要有0~9的段码数据,显然应该用数组,这就是结构体数组。结构体数组与以前介绍过的数值型数组不同之处在于每个数组元素都是一个结构体类型的数据,它们都分别包括各个成员项。ARM嵌入式系统
/
本文档为【单片机应用技术项目教程(C语言版)-电子教案-素材资源 电子课件 06.项目六 模拟量输入输出设计与实现】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索