1、 11月 15日至 11月 26日共 2周指导教师(签字) 系 主 任(签字) 摘要4正文51 系统方案52 理论分析与计算63 程序与电路设计73.1 程序流程图:73.2 电路设计144 结果分析185 总结19设计体会及今后的改进意见20参考文献21摘要:本文对这次程序设计进行了详细的说明,对系统方案,理论分析与计算,电路与程序设计,结果分析,总结等各项进行了汇总说明。这次我们的单片机课程设计任务是串行 AD 转换器 TLC549 的应用,本单片机程序设计主要功能体现在将电压送到TLC549 芯片中并连接到 MCS-51 单片机,实现利用串行 AD 转换器 TLC549 采集电压信号,
2、显示,并能用键盘设定电压上下限,超限报警等。该项应用在实际应用中良好,具有一定的应用价值。关键词: TLC549,AD 转换,功能正文1 系统方案本次程序设计是利用串行 AD 转换器 TLC549 采集电压信号,显示;并能用键盘设定电压上下限,超限报警。利用 TLC549 进行电压数据采集。TLC549 是美国德州仪器公司生产的 8 位串行 A/D 转换器芯片,可与通用微处理器、控制器通过 CLK、CS、DATA OUT 三条口线进行串行接口。具有 4MHz 片内系统时钟和软、硬件控制电路,转换时间最长 17s,TLC548 允许的最高转换速率为 45 500 次/s,TLC549 为 40
3、000 次/s。总失调误差最大为0.5LSB,典型功耗值为 6mW。采用差分参考电压高阻输入,抗干扰,可按比例量程校准转换范围,VREF- 接地,VREF+VREF-1V,可用于较小信号的采样。当 CS 为高时,数据输出(DATA OUT) 端处于高阻状态,此时 I/O CLOCK 不起作用。这种 CS 控制作用允许在同时使用多片TLC548、TLC549 时,共用 I/O CLOCK,以减少多路(片)A/D 并用时的 I/O 控制端口。可通过对 cs 的控制来实现对电压信号的采集。数字信号的显示则是将转换器采集的电压数据信息惊醒数据处理并传到 74LS164 中, 并将数据通过 7 段数码管
4、显示出来。在设计程序的最后还要进行键盘警报设计,通过键盘设置上下限,并设置警报。2 理论分析与计算此次设计是通过 TLC549 进行模数转换.LC549 该时钟与 I/O CLOCK 是独立工作的,无须特殊的速度或相位匹配。TLC549 通过 CLK、CS、DATA OUT 三条口线单片机进行串行接口 ,尤其是 CS,CS 制来控制 ad 转换。当 CS 为高时,数据输出(DATA OUT)端处于高阻状态,此时 I/O CLOCK 不起作用。这种 CS 控制作用允许在同时使用 TLC549 时,共用 I/O CLOCK,以减少多路(片)A/D 并用时的 I/O 控制端口。(1) 将 CS 置低
5、。内部电路在测得 CS 下降沿后,再等待两个内部时钟上升沿和一个下降沿后,然后确认这一变化,最后自动将前一次转换结果的最高位(D7)位输出到 DATAOUT 端上。(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 周期的下降沿将移出第6、7、8(D2、D1、D0)个转换位。保持功能将持续 4
6、 个内部时钟周期,然后开始进行 32 个内部时钟周期的 A/D 转换。第 8 个 I/O CLOCK 后,CS 必须为高,或 I/O CLOCK 保持低电平,这种状态需要维持 36 个内部系统时钟周期以等待保持和转换工作的完成。如果 CS 为低时 I/O CLOCK 上出现一个有效干扰脉冲,则微处理器/控制器将与器件的 I/O 时序失去同步;若 CS 为高时出现一次有效低电平,则将使引脚重新初始化,从而脱离原转换过程。在 36 个内部系统时钟周期结束之前,实施步骤(1)(4),可重新启动一次新的 A/D 转换,与此同时,正在进行的转换终止,此时的输出是前一次的转换结果而不是正在进行的转换结果。
7、若要在特定的时刻采样模拟信号,应使第 8 个 I/O CLOCK 时钟的下降沿与该时刻对应,因为芯片虽在第 4 个 I/O CLOCK 时钟下降沿开始采样,却在第 8 个 I/O CLOCK 的下降沿开始保存。通过对 CS 的控制来控制芯片,进行 ad 转换,采集电压信号并传送至单片机中。数字显示:将单片机采集的数字信号传送至 74LS164 中,利用程序进行数据处理, 将十六进制转换成十进制,并通过 7 段数码管显示出来。最后进行键盘设置上下限程序设置,并通过电路警报显示出来。3 程序与电路设计初始化:P1 置 0,P3.2 置低启动 TLC549AD 转换CS 置低,读取数据A 是否小于下
8、限否是调用延迟子程序,CLRC再次启动 AD 转换结束启动报警程序流程图程序:;72H 储存下限电压73H 储存上限电压K0BITP2.0;(下限按键控制开始)K1P2.1;(上、下限个位-按键减)K2P2.2;(上、下限个位-按键加)K3P2.3;(上、下限十位-按键减)K4P2.6;K5P2.7;(下限按键控制结束)CLK BIT P3.4 DOBIT P3.5 CSBIT P3.1 KEY EQU 40H ORG 0000H LJMP MAIN ORG 0050HMAIN:CLR P3.2AD:MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV 72H,
9、#01HJBK0,KEY_BOARDSETB DO SETB CS CLR CLKCLRCS;启动转换ACALL READ SETB CS ACALL DELAY再次 AD 启动转换ACALL READ SETB CS ACALL DISACALL DISPLAY CLR CSETB p3.2 MOV A,KEYCJNE A,72H ,AAAAAA:JCADCLR P3.2;超过 报警灯亮LCALL DELAY2 SJMP AD*AD 转换读入数据READ:MOV C,DORLC AMOV R7,#07H RE:SETB CLKNOP NOPCLR CLK NOPNOPMOV C,DO RLC
10、 ADJNZ R7,RE SETB CLK NOPRET*键盘扫描KEY_BOARD:MOVA,72HMOV60H,A ANLA,#0FHMOV70H,A;储存个数位数字KEYSET:MOVA,60H ANLA,#0F0H SWAPAMOV71H,A;储存十位数字JBK1,GEDEC JBK2,GEADD JBK3,SHIDEC JBK4,SHIADDGEDEC:DEC 70HJBK5,DEF ACALL DELAY1 JMP ADDDGEADD:MOV A,70H INC AMOV 70H,A ACALL DELAY1 JMP ADDDSHIDEC:DEC 71H ACALL DELAY1
11、JMP ADDDSHIADD:MOV A,71H INC AMOV 71H,A ACALL DELAY1 JMP ADDDDEF:MOVA,71H SWAPA ORLA,70H MOV72H,AACALL DELAY1 LCALL DISPLAY1 LJMPADADDD:ACALL DELAY1 LCALL DISPLAY1 MOV p2,#00h SJMPKEYSET RET*数据处理DIS:MOV R2,AMOV A,R2 MOV B,#51 DIV ABMOV DPTR,#TBBMOV KEY,AMOVC A,A+DPTR MOV 30H,AMOV A,BCLR F0;F0=0 SUBB
12、 A,#1AH MOV F0,C MOV A,#10 MUL ABMOV B,#51 DIV ABJB F0,LOOP2 ADD A,#5LOOP2:MOV DPTR,#TABMOVC A,A+DPTR MOV 31H,AMOV A,B CLR F0SUBB A,#1AH MOV F0,C MOV A,#10 MUL ABMOV B,#51 DIV AB ADD A,#5*显示DISPLAY:MOVA,31HMOVR7,#8 CC:JBACC.7,AAMOVP1,#00H CLRP1.0JMPBBAA:BB:SETB P1.0CLRP1.1 SETBP1.1 RLADJNZR7,CCMOV A,30H MOV R7,#8GG:EE:FF:JBACC.7,EE CLRP1.0JMPFFSETBP1.0CLR P1.1 SETB P1.1 RL ADJNZR7,GG ACALL DELAY1 ACALL DELAY1*显示 1 DISPLAY1:MOV A,71HMOV R7,#8MOV DPTR,#RETAB MOVC A,A+DPTRCC1:JBACC.7,AA1MOV P1,#00h CLRP1.0JMPBB1AA1: BB1:GG1:EE1:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1