ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:98.22KB ,
资源ID:24005313      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24005313.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(串行AD转换器TLC549的应用设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

串行AD转换器TLC549的应用设计.docx

1、串行AD转换器TLC549的应用设计一. 8位串行模数转换器TLC549的应用1.1 概述TLC549是美国德州仪器公司生产的8位串行A/D转换器芯片,可与通用微处理器、控制器通过CLK、CS、DATA OUT三条口线进行串行接口。具有4MHz片内系统时钟和软、硬件控制电路,转换时间最长17s, TLC549为40 000次/s。总失调误差最大为0.5LSB,典型功耗值为6mW。采用差分参考电压高阻输入,抗干扰,可按比例量程校准转换范围,VREF-接地,VREF+VREF-1V,可用于较小信号的采样。 图(一)1.2 芯片简介TLC549的内部框图和管脚名称TLC549的内部框图和引脚名称如图

2、1所示。1.3 极限参数TLC549的极限参数如下: 电源电压:6.5V;输入电压范围:0.3VVCC0.3V;输出电压范围:0.3VVCC0.3V;峰值输入电流(任一输入端):10mA;总峰值输入电流(所有输入端):30mA;工作温度: TLC549C:070TLC549I:4085TLC549M:55125 图(二)1.4 工作原理TLC549均有片内系统时钟,该时钟与I/O CLOCK是独立工作的,无须特殊的速度或相位匹配。其工作时序如图2所示。当CS为高时,数据输出(DATA OUT)端处于高阻状态,此时I/O CLOCK不起作用。这种CS控制作用允许在同时使用多片TLC549时,共用

3、I/O CLOCK,以减少多路(片)A/D并用时的I/O控制端口。一组通常的控制时序为: (1)将CS置低。内部电路在测得CS下降沿后,再等待两个内部时钟上升沿和一个下降沿后,然后确认这一变化,最后自动将前一次转换结果的最高位(D7)位输出到DATA OUT端上。(2) 前四个I/O CLOCK周期的下降沿依次移出第2、3、4和第5个位(D6、D5、D4、D3),片上采样保持电路在第4个I/O CLOCK下降沿开始采样模拟输入。(3)接下来的3个I/O CLOCK周期的下降沿移出第6、7、8(D2、D1、D0)个转换位,(4)最后,片上采样保持电路在第8个I/O CLOCK周期的下降沿将移出第

4、6、7、8(D2、D1、D0)个转换位。保持功能将持续4个内部时钟周期,然后开始进行32个内部时钟周期的A/D转换。第8个I/O CLOCK后,CS必须为高,或I/O CLOCK保持低电平,这种状态需要维持36个内部系统时钟周期以等待保持和转换工作的完成。如果CS为低时I/O CLOCK上出现一个有效干扰脉冲,则微处理器/控制器将与器件的I/O时序失去同步;若CS为高时出现一次有效低电平,则将使引脚重新初始化,从而脱离原转换过程。 在36个内部系统时钟周期结束之前,实施步骤(1)(4),可重新启动一次新的A/D转换,与此同时,正在进行的转换终止,此时的输出是前一次的转换结果而不是正在进行的转换

5、结果。若要在特定的时刻采样模拟信号,应使第8个I/O CLOCK时钟的下降沿与该时刻对应,因为芯片虽在第4个I/O CLOCK时钟下降沿开始采样,却在第8个I/O CLOCK的下降沿开始保存。 图(三)1.5 应用接口及采样程序TLC549可方便地与具有串行外围接口(SPI)的单片机或微处理器配合使用,也可与51系列通用单片机连接使用。与51系列单片机的接口如图3所示。其采样程序框图如图4所示,实际应用程序清单如下:图(四)初始化:SETB P1.2 ;置CS为1。 CLR P1.0 ;置I/O CLOCK为零。 MOV R0,00H ;移位计数为零。A/D过程:A/DP: CLR P1.2

6、NOP ;等待1.4s,NOP数根据晶振情况选择NXT: SETB P1.0MOV C, P1.1 RLC A CLR P1.0 INC R0 CJNE R0,8,NXT MOV R0,00 SETB P1.2 MOV DTSVRM,A ;DTSVRM:DATA SAVE RAM. RET TLC549片型小,采样速度快,功耗低,价格便宜,控制简单.适用于低功耗的袖珍仪器上的单路A/D或多路并联采样。二、74LS164功能及应用21 了解74LS164 在单片机系统中,如果并行口的IO资源不够,而串行口又没有其他的作用,那么我们可以用74LS164来扩展并行IO口,节约单片机资源。74LS16

7、4是一个串行输入并行输出的移位寄存器。并带有清除端。其中; Q0Q7 并行输出端 。 A,B串行输入端。 MR 清除端, 为0时,输出清零。 CP 时钟输入端。 74LS164 引脚定义74LS164逻辑表 图(五)74ls164参考实验照片: 图(六)22 掌握的74LS164工作原理当清除端(CLEAR)为低电平时,输出端(QAQH)均为低电平。 串行数据输入端(A,B)可控制数据。当 A、B任意一个为 低电平,则禁止新数据输入,在时钟端(CLOCK)脉冲上升沿作用下Q0 为低电平。当A、B 有一个为高电平,则另一个就允许输入数据,并在CLOCK 上升沿作用下决定Q0 的状态。三 各程序模

8、块的功能: 在程序设计中,我们主要分五个模块来完成,分别是主程序,AD转换读入数据程序,数据处理程序,显示程序这五大块,下面将分别对每一个模块的功能进行分析31 主程序各个子程序都是通过这个主程序调用进来,再执行各模块的功能的。在主程序中首先对一些下面要用到的I/0口,数据存储地址,中断首地址等进行设置。接下来首先打开中断随时检测是否有按键按下,再调用数据采集模块”READ”读入数据,需要采集两次,然后调用数据处理模块”DIS”,接下来再调用显示模块”DISPLAY”,最后在调用量程检测模块检测是否超限。程序如下:CLK BIT P3.4DO BIT P3.5CS BIT P3.1KEY EQ

9、U 40HORG 0000HLJMP MAINORG 0003HAJMP KEY_BOARDORG 0050H;*主程序MAIN: CLR P1.6 MOV P1,#00H MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV 33H,#05 MOV 34H,#0 SETB IT0 SETB EX0 SETB EAAD: SETB DO SETB CS CLR CLK CLR CS ;启动转换 ACALL READ ;读数据 SETB CS ACALL DELAY CLR CS ;再次AD启动转换 ACALL READ ;再次读数据 SETB CS ACALL

10、DIS ;数据处理 ACALL DISPLAY ;数据显示ACALL BAOJING ;检测量程2 数据采集模块这个模块主要是利用8位串行模数转换器TLC549采集电压信号,然后转换成数字信号存在累加器A中。程序如下: ;*AD转换读入数据READ:MOV C,DO RLC A MOV R7,#07H RE:SETB CLK NOP NOP CLR CLK NOP NOP MOV C,DO RLC A DJNZ R7,RE SETB CLK NOP NOP CLR CLK NOP NOP RET33 数据处理模块这个模块的主要功能就是对转换成的数字信号进行处理,并把处理好的数据存放在30H和3

11、1H中。程序如下: ;*数据处理 DIS: MOV R2,A MOV A,R2 MOV B,#51 DIV AB MOV DPTR,#TAB MOV KEY,A MOVC A,A+DPTR MOV 30H,A MOV A,B CLR F0 SUBB A,#1AH MOV F0,C MOV A,#10 MUL AB MOV B,#51 DIV AB JB F0,LOOP2 ADD A,#5 LOOP2: MOVC A,A+DPTR MOV 31H,A RET 34 数据显示模块主要是把上一个模块所处理得到的数据,通过51单片机上的p1.0和p1.1两个口控制74LS164显示出来,p1.1口主要

12、负责产生上升沿,p1.0口负责传送数据,每一个上升沿传一位,传完八位即传完一个数。程序如下:;*显示DISPLAY: MOV R1,#08 MOV A,31H LOP1: RLC A MOV P1.0,C CLR P1.1 SETB P1.1 DJNZ R1,LOP1 MOV R5,#08 MOV A,30H LOP2: RLC A MOV P1.0,C CLR P1.1 SETB P1.1 DJNZ R5,LOP2 ACALL DELAY1RET35 键盘扫描模块 这个模块主要设置系统所采集电压信号的大小量程。程序如下: ;*键盘扫描KEY_BOARD: MOV p2,#0FH MOV A,

13、P2 KEY1: JB ACC.0,KEY2 ACALL DELAY2 JB ACC.0,KEY2 MOV 33h,#02h MOV 34H,#01H JMP CCC KEY2: JB ACC.1,KEY3 ACALL DELAY JB ACC.1,KEY3 MOV 33h,#03h MOV 34H,#02H JMP CCC KEY3:JB ACC.2,CCC ACALL DELAY2 JB ACC.2,CCC MOV 33h,#04h MOV 34h,#02h CCC: NOP RETI36 上下限设置模块 此模块主要用于检测电压的大小,是否超出量程,若超出则指示灯发光,若不超出则返回继续测

14、量电压。程序如下: ;*设置上下限 BAOJING: CLR C CLR p1.6 MOV A,KEY CJNE A,33H ,AAA1 AAA1: JC AAA2 SETB P1.6 ;超限报警灯亮 LCALL DELAY2 SJMP ADAAA2:CJNE A,34H,AAA3 AAA3:JNC AD SETB P1.6LCALL DELAY2 SJMP AD RET37 延时模块 这主要是为了其它子程序模块所需要用到的延时模块,从此调用。如在检测按键按下时就要用到延时程序,还有数码管的显示上等。程序如下: ;* 20u秒延时DELAY:MOV R6,#05H ; D1:NOP NOP D

15、JNZ R6,D1 RET;*1MS延时DELAY1:MOV R4,#250 D2:NOP NOP DJNZ R4,D2 RET;*5MS延时DELAY2:MOV R3,#05H D3:ACALL DELAY1 DJNZ R3,D3 RET四、结果分析: 打开电源开关,连接好所有接口,先把电压调节按钮至最小,此时74LS164显示出电压大小为0,正确。接着不断调大电压大小,显示屏上电压也不断的连续增大,当达到5V时,显示也是5V,也正确。接下来就用按键选择电压量程,当按下第一个按键时,此时量程为1-2V,接着调大电压,当超过2V时,电压报警指示灯就马上发光报警,结果正确。接下来选选择按下按键二,选择的量程为2-3V,调节电压大小,当电压小于2V时,报警指示灯发光;再增大电压,当电压大于3V时,报警指示灯也发光报警,结果正确。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1