收藏 分销(赏)

单片机数据采集控制系统.doc

上传人:精**** 文档编号:3065948 上传时间:2024-06-14 格式:DOC 页数:11 大小:342.50KB 下载积分:8 金币
下载 相关 举报
单片机数据采集控制系统.doc_第1页
第1页 / 共11页
单片机数据采集控制系统.doc_第2页
第2页 / 共11页


点击查看更多>>
资源描述
《单片机数据采集控制系统》课程设计报告 一、前言 通常是指有若干相互连接、相互作用的基本电路组成的具有特定功能的电路整体。由于大规模集成电路和模拟-数字混合集成电路的大量出现,在单个芯片上可能集成许多种不同种类的电路。 二、课程设计的目的和要求 2.1、课程设计的目的 运用模拟电子技术、数字电子技术、单片机原理及其应用等课程知识,根据题目要求进行软硬件系统的设计和调试,从而加深对本课程知识的理解, 把学过的比较零碎的知识系统化,比较系统的学习开发单片机应用系统的基本步骤和基本方法,使学生应用知识能力、设计能力、调试能力以及报告撰写能力等有一定的提高。 2.2、课程设计要求 用8051单片机设计数据采集控制系统,基本要求如下: 1、 可实现8路数据的采集,假设8路信号均为0-5V的电压信号; 2、 采集数据可通过数码管显示,显示格式为:[通道号] 电压值,如 [01] 4.5 3、 可通过键盘设置采集方式;(单点采集、多路巡测、采集时间间隔*) 4、 具有异常数据声音报警功能:对第一路数据可设置正常数据的上限值和下限值,当采集的数据出现异常,发出报警信号。(LED显示报警) 5、 可输出8路顺序控制信号,设每路顺序控制信号为一位,顺序控制的流程为: 三、总体设计 八路数据采集模块 显示模块 键盘模块 报警模块 八路顺序控制模块 8051单片机 实验原理:从A/D转换器入手,通过编程,实现硬件上的八路数据采集、采集数据显示、通过键盘设计采集、实现上下限的报警功能、八路顺序控制信号。 四、硬件设计 4.1各种芯片的功能、引脚、相应的命令控制字格式的介绍 1、MCS-51 芯片介绍:MCS-51系列单片机是美国Intel公司开发的8位单片机又可以分为多个子系列。MCS-51系列单片机共有40条引脚,包括32条I/O接口引脚、4条控制引脚、2条电源引脚、2条时钟引脚。 引脚说明: P0.0~P0.7:P0口8位口线,第一功能作为通用I/O接口,第二功能作为存储器扩展时的地址/数据复用口。 P1.0~P1.7:P1口8位口线,通用I/O接口无第二功能。 P2.0~P2.7:P2口8位口线,第一功能作为通用I/O接口,第二功能作为存储器扩展时传送高8位地址。 P3.0~P3.7:P3口8位口线,第一功能作为通用I/O接口,第二功能作为为单片机的控制信号。 ALE/ PROG:地址锁存允许/编程脉冲输入信号线(输出信号) PSEN:片外程序存储器开发信号引脚(输出信号)。 EA/Vpp:片外程序存储器使用信号引脚/编程电源输入引脚 RST/VPD:复位/备用电源引脚。 2、74LS373 芯片介绍:74LS373是带有三态门的八D锁存器,当使能信号线OE为低电平时,三态门处于导通状态,允许1Q-8Q输出到OUT1-OUT8,当OE端为高电平时,输出三态门断开,输出线OUT1-OUT8处于浮空状态。G称为数据打入线,当74LS373用作地址锁存器时,首先应使三态门的使能信号OE为低电平,这时,当G端输入端为高电平时,锁存器输出(1Q-8Q)状态和输入端(1D-8D)状态相同;当G端从高电平返回到低电平(下降沿)时,输入端(1D-8D)的数据锁入1Q-8Q的八位锁存器中。当用74LS373作为地址锁存器时,它们的G端可直接与单片机的锁存控制信号端ALE相连,在ALE下降沿进行地址锁存。 引脚说明: D0~D7:锁存器8位数据输入线 Q0~Q7:锁存器8位数据输出线 GND:接地引脚 Vcc:电源引脚,+5V有效 OE :片选信号引脚 G:锁存控制信号输入引脚 3、74LS138 芯片介绍:74LS138是一个3-8译码器,共16个引脚。 引脚说明:A、B、C:选择端即信号输入端 E1、E2、E3:使能端,其中E1、E2低电平有效,E3高电 平有效 Y0~Y7:译码输出信号,始终只有一个为低电平 Vcc:电源端,+5V GND:线路地 4、ADC0809 芯片介绍:ADC0809是一种比较典型的8位8通道逐次逼近式A/D转换器,CMOS工艺,可实现8路模拟信号的分时采集,片内有8路模拟选通开关,以及相应的通道地址锁存用译码电路,其转换时间为100μs左右,采用双排28引脚封装。 引脚说明: IN0~IN7:8路模拟量输入通道 ADDA~ADDC:地址线用于选择模拟量输入通道 ALE:地址锁存允许信号 START:转换启动信号 D0~D7:数据输出线 OE:输出允许信号,低电平允许转换结果输出 CLOCK:时钟信号输入引脚,通常使用500KHz EOC:转换结束信号,为0代表正在转换,1代表转换结束 Vcc:+5V电压 VREF(+)、VREF(-):参考电压 5、DAC0832 芯片介绍:DAC0832是美国数据公司的8位D/A转化器,片内带数据锁 存器,电流输出,输出电流稳定时间为1μm,功耗为20mW。 引脚说明:D0~D7:数据输入线,TTL电平 ILE:数据锁存允许控制信号线 CS:片选信号线,低电平有效 WR1:数据锁存器写选通输入线,负脉冲有效 XFER:数据传输控制信号输入线,低电平有效 WR2:DAC寄存器写选通输入线,低电平有效 IOUT1:电流输出线,当DAC寄存器为全1时电流最大 IOUT2:电流输出线,其值与IOUT1之和为一常数 Vcc:电源电压线,为+5V~+15范围 VREF:基准电压输入线,范围为:-10V~+10V AGND:模拟地 DGND:数字地 Rfb:反馈信号输入线,调整Rfb端外接电阻值可以调整转换满量程精度 4.2绘出硬件接线图 五、软件设计 5.1程序流程图 开始 判按键 若为0~7,即为通道号 若为A开始循环采集 报警 N LED显示通道号和电压值 系统初始化 判断电压值是否正常 主程序流程图 5.2主程序、子程序、中断服务程序 附录一 ORG 0000H LJMP SE11 ORG 000BH LJMP INTT0 ORG 0100H SE11: MOV SP,#53H MOV 7EH,#10H MOV 7DH,#00H MOV 7CH,#01H MOV 7BH,#11H MOV 7AH,#10H MOV 79H,#10H ;显示缓冲区初值 MOV R6,#00H MOV R4,#00H MOV 60H,#00H MOV 30H,#30H MOV TMOD,#01H MOV TL0,#0DCH MOV TH0,#0CH SETB EA SETB ET0 LO18: CALL DIS MOV A,R4 ;ADC0809内部模拟开关 (可以改读取通道) MOV DPTR,#0FFE0H ;A4A3A2 000 选通Y0 MOVX @DPTR,A ;0809的0通道采样 L9: CALL DIS ;显示 MOV 7CH,R4 MOVX A,@DPTR ;取出采样值 A = 00-FF MOV R0,#79H CALL PTDS ;采样值送显示缓冲区 CALL DIS CALL GetKey SJMP LO18 ;循环 PTDS: MOV B,#33H DIV AB SWAP A MOV R5,A MOV A,B MOV B,#05H DIV AB ORL A,R5 DA A MOV R1,A ;拆送显示缓冲区 JMP NO1 NO: ADD A,R1 ;把电压值的整数位和小数位加起来 MOV R1,A ;------------------------------- ;报警子程序 NO1: CJNE R1,#40H,MAX1 ;判断上线电压值,大于4V,LED1灯亮 MAX1: JC MAX2 CLR P3.0 MAX2: JNC NO2 SETB P3.0 NO2: CJNE R1,#10H,MIN1 ;判断下线电压值,小于1V,LED2灯亮 MIN1: JNC MIN2 CLR P3.1 MIN2: JC NO3 SETB P3.1 NO3: ACALL PTDS1 MOV A,R1 SWAP A PTDS1: ANL A,#0FH MOV @R0,A INC R0 RET DIS: PUSH DPH PUSH DPL SETB RS1 MOV R0,#7EH MOV R2,#20H MOV R3,#00H MOV DPTR,#LS0 LS2: MOV A,@R0 MOVC A,@A+DPTR CJNE R0,#7AH,AA ANL A,#7FH AA: MOV R1,#0DCH MOVX @R1,A MOV A,R2 inc R1 MOVX @R1,A LS1: DJNZ R3,LS1 CLR C RRC A MOV R2,A DEC R0 JNZ LS2 movx @r0,a dec r0 cpl a movx @r0,a CLR RS1 POP DPL POP DPH RET GetKey: call ScanKey MOV R5,A CJNE R5,#20H,BIAN ;R5标志位用于判断前后值是否变化 SJMP XUAN ;若R5无变化,则转至XUAN,保持原先的通道模式 BIAN: CLR TR0 MOV 40H,R5 ;R5有变化,选择变化后的通道 MOV R4,40H ;R4为渠道的选通值 MOV R6,40H ;R6用于判断选通 XUAN: SETB C CJNE R6,#8,QING ;判断选择的通道是0-7:cy = 1,还是8-F:cy = 0。 QING: JC LO20 ;若通道为0-7,转至Lo20,保持原先的通道; CJNE R5,#20H,QING1 ;判断通道8-F的通道值是否有变化;若无变化,则原先的通道递增模式,继续执行 SJMP XUN QING1: MOV R4,#0FFH ;用于清零。 SJMP XUN XUN: SETB TR0 MOV R4,60H LO20: ret ;子程序返回 ScanKey:setb RS1 mov r2,#0feh ;列扫描 mov r3,#08h ;列扫描的次数 mov r0,#00h ;扫描到的列号值 LoopS: mov r1,#0DDH ;列扫描入口FFDDH mov a,r2 movx @r1,a ;开始列扫描 rl a mov r2,a inc r1 ;键入口地址FFDEH movx a,@r1 ;读取行信息 cpl a anl a,#0fh ;无按键A=0,有按键A!=0 jnz Scan inc r0 djnz r3,LoopS ReTKey3:mov a,#20h TKey3: mov r2,a clr a mov r1,#0DDH movx @r1,a mov a,r2 clr RS1 ret Scan: cpl a jb acc.0,TKey0 mov a,#00h sjmp EndLoop TKey0: jb acc.1,TKey1 mov a,#08h sjmp EndLoop TKey1: jb acc.2,TKey2 mov a,#10h sjmp EndLoop TKey2: jb acc.3,ReTKey3 mov a,#18h EndLoop:add a,r0 ;a为行号值(头):00,08,10,18 sjmp TKey3 INTT0: PUSH ACC PUSH PSW SETB PSW.3 MOV TL0,#0DCH MOV TH0,#0CH MOV A,30H DEC A MOV 30H,A JNZ RET0 MOV A,60H INC A CJNE A,#00H,D0 MOV 30H,#30H D0: CJNE A,#01H,D1 MOV 30H,#30H D1: CJNE A,#02H,D2 MOV 30H,#60H D2: CJNE A,#03H,D3 MOV 30H,#10H D3: CJNE A,#04H,D4 MOV 30H,#10H D4: CJNE A,#05H,D5 MOV 30H,#10H D5: CJNE A,#06H,D6 MOV 30H,#10H D6: CJNE A,#07H,D7 MOV 30H,#60H D7: MOV 60H,A CJNE A,#08H,RET0 MOV A,#00H MOV 60H,A MOV 30H,#30H RET0: POP PSW POP ACC RETI LS0: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH,0C6H,0F0H END 六、实验数据 七、结束语 这次的课程设计是一次全面的综合性质的课程设计,让我们温习了前面所学的知识,并且能好好地实践。 我们从中也学会了很多,懂得了很多。比如构思,一开始在做如何把显示的范围缩小到0到5。我们的想到了先把要显示的数据除以51,再用余数去除以5.1,前后所得的数据分别是高位和地位要显示的数据。可是除以5.1不容易做到,通过老师的提点,我们知道了可以通过把5.1近似看作5来处理,这样编写起来就容易多了。这着实让我们增长了不少经验。 当8路循环实现之后,我们的显示又出现了一个小问题,那就是显示的时候,总会有一瞬间数码管全亮了,也就是意味着有一瞬间它们获得的信号都是低电平,说明程序里面有漏洞。后来通过同学的帮助,检查出来是push和pop的时候,没有注意先进后出这一规则。 还有很多经验获得,比如我们的循环原来做出来是无法用延时,后来经过老师的提点,我们修改了程序,使得通过延时循环显示同一通道,这样也就不会跳的太快。 这次的课程设计真的让我们收获颇丰,比课堂上讲的内容丰富多了,好掌握多了。其实实践课多点帮助比较大。对于帮助我们对知识的理解和掌握起到了很大的效果。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服