ADC0832课程设计正文

上传人:公**** 文档编号:544946638 上传时间:2022-09-02 格式:DOC 页数:15 大小:428KB
返回 下载 相关 举报
ADC0832课程设计正文_第1页
第1页 / 共15页
ADC0832课程设计正文_第2页
第2页 / 共15页
ADC0832课程设计正文_第3页
第3页 / 共15页
ADC0832课程设计正文_第4页
第4页 / 共15页
ADC0832课程设计正文_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《ADC0832课程设计正文》由会员分享,可在线阅读,更多相关《ADC0832课程设计正文(15页珍藏版)》请在金锄头文库上搜索。

1、1 引言1.1 设计任务与要求使用AT89C51单片机为核心,使用光耦元件模拟外部光照,用按键模拟外部声音,在外部没有光照声音出现时按下按键点亮照明设备,照明设备使用220V灯泡,灯泡点亮时间的长短由可变电阻调节控制,使用模数转换元件ADC0832对可变电阻器的阻值进行模数转换并输入单片机中,用以控制照明设备延时长度。控制程序在Keil软件中编写,编译,整个控制电路在Proteus仿真软件中连接调示。参考附表A1.2 实用价值与理论意义本次设计是以实践性为课题,起到稳固所学知识,加强综合能力,培养电路设计能力,提高实验技术,启发创新思想的效果。 用声光控延时开关代替住宅小区的楼道上的开关,只有

2、在天黑以后,当有人走过楼梯通道,发出脚步声或其它声音时,楼道灯会自动点亮,提供照明,当人们进入家门或走出公寓,楼道灯延时几分钟后会自动熄灭。在白天,即使有声音,楼道灯也不会亮,可以到达节能的目的。声光控延时开关不仅适用于住宅区的楼道,而且也适用于工厂、办公楼、教学楼等公共场所,它具有体积小、外形美观、制作容易、工作可靠等优点。2 设计方案硬件选择:AT89C51, ADC0832,电源,光电藕,电位器,开关K1K2,继电器,晶振6M,电阻,电容。软件局部: 1 测量电压值最大理论是2.5V,模数转化后理论最大值128。 2 使用89C51单片机,6MH晶振,P1.0与P1.1分别为光耦,声音模

3、拟控制输入,P1.4口的读入A/D值,P2.0口为控制口。3 采用T0定时7.8125mS来产生最长10分钟延时关断。参考附表B简要介绍ADC0832ADC0832 是美国国家半导体公司生产的一种是美国国家半导体公司生产的一种 8 位分辨率双通道 A/D 转换芯。由于它体积小,兼容性强,性价比高而深受单片机爱者及企业欢迎,其目前已经有很高的普及率其目前已经有很高的普及率。学习并使用 ADC0832 可是使我们了解可是使我们了解可是使我们了解 A/D 转换的原理的原理,有助于我们单片机技术水平的提高有助于我们单片机技术水平的提高。ADC0832 具有以下特点8 位分辨率位分辨率双通道 A/D 转

4、换输入输出电平与 TTL/CMOS 相兼容电源供电时输入电压在 05V 之间工作频率为 250KHZ,转换时间为 32S;一般功耗仅为 15mW;8P、14PDIP双列直插、PICC 多种封装商用级芯片温宽为0C to +70C,工业级芯片温宽为?40C to +85C;芯片顶视图芯片接口说明: CS片选使能 CH0 模拟通道0 CH1 模拟通道1 CLK 时钟输入 DO 转换数据输出 DI 数据通道选择 VCC 电源输入,参考电压GND 接地芯片读写数据时序图芯片接口程序编写流程图3 硬件设计ADC0832是带有二路模拟开关的8位串口输出A/D转换芯片,所以它可有2个模拟量的输入端,由芯片的

5、DI引脚来选择模拟通道中的一个。DI端与8051的P1.3相接。时钟信号,可有8051的P1.2软件模拟输出得到,DO数据由P1.4按位输入 。片内时钟有内部的一个高增益反相放大器,用于构成振荡器。反相放大器输入端为XTAL1,输出端为XTAL2,两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。复位电路采用上电自动复位电路,在通电瞬间,电容C通过电阻R充电,RST端出现正脉冲,用以复位。输出电路采用继电器输出,可以有很强的驱动能力,并且采用光耦隔离,增强对外界强电信号的抗干扰能力。4 软件设计4.1 编程流程图YNNP1.0-1.1=0b11?读P1.0 P1.1设置定时器且输入初值读A

6、DC数据到89C51置位P1.0 P1.1且读出P1.0 P1.1开始P1.0-1.1=0b11?返回,pop保护现场是否到达ADC转换值NN到达计数值10?设置定时器设置定时器且计数中断次数中断保护4.2 程序编写ADCS BIT P1.5 ;使能接口 ADCLK BIT P1.2 ;时钟接口 ADDO BIT P1.3 ;数据输出接口复用 ADDI BIT P1.3 ;数据输入接口 ORG 0000HAJMP STARTORG 001BHLJMP SERVESTART:SETB P1.0SETB P1.1MOV C, P1.0MOV ACC.0, CMOV C, P1.1MOV ACC.1

7、, CANL A,#03HCLR P2.0CJNE A,#03H,STARTMOV B,#00H ;装入通道功能选择数据值 ;以下为ADC0832读取数据子程序 ;= ADC0832读数据子程序= ADCONV: SETB ADDI ;初始化通道选择 NOP NOP CLR ADCS ;拉低/CS端 NOP NOP SETB ADCLK ;拉高CLK端 NOP NOP CLR ADCLK ;拉低CLK端,形成下降沿 MOV A,B MOV C,ACC.1 ;确定取值通道选择 MOV ADDI,C NOP NOP SETB ADCLK ;拉高CLK端 NOP NOP CLR ADCLK ;拉低C

8、LK端,形成下降沿2 MOV A,B MOV C,ACC.0 ;确定取值通道选择 MOV ADDI,C NOP NOP SETB ADCLK ;拉高CLK端 NOP NOP CLR ADCLK ;拉低CLK端,形成下降沿3 SETB ADDI NOP NOP MOV R7,#8 ;准备送下后8个时钟脉冲AD_1: MOV C,ADDO ;接收数据 MOV ACC.0,C RL A ;左移一次 SETB ADCLK NOP NOP CLR ADCLK ;形成一次时钟脉冲 NOP NOP DJNZ R7,AD_1 ;循环8次 MOV C,ADDO ;接收数据 MOV ACC.0,C MOV B,A

9、 MOV R7,#8 AD_13: MOV C,ADDO ;接收数据 MOV ACC.0,C RR A ;左移一次 SETB ADCLK NOP NOP CLR ADCLK ;形成一次时钟脉冲 NOP NOP DJNZ R7,AD_13 ;循环8次 CJNE A,B,ADCONV ;数据校验 SETB ADCS ;拉高/CS端 CLR ADCLK ;拉低CLK端 SETB ADDO ;拉高数据端,回到初始状态 ;=读取程序结束=;最长10min后关灯,最大数字量128-2.5V ;定时器设置TIME:MOV TMOD,#10H ;设置T1于模式1MOV 30H,A;中断次数 ADD提供MOV

10、R0,30HCLR AMOV 31H,A ;秒单元清0MOV 32H,A;分单元清0SETB ET1SETB EAMOV TH1,#0FH ;初值MOV TL1,#42HSETB P2.0;开继电线圈SETB TR1;开定时器;灯亮期间又有光控,声控满足条件从新开始计数START2:MOV C,P1.0MOV ACC.0,CMOV C,P1.1MOV ACC.1,CANL A,#03HCJNE A,#03H,START2;条件检测LJMP ADCONV;时钟中断SERVE:PUSH PSWPUSH ACCMOV TH1,#0FHMOV TL1,#42HDJNZ R0,RETURNMOV A,3

11、0HMOV R0,AMOV A,#01HADD A,31HMOV 31H,A;定时到达1sCJNE A,#3CH,RETURN ;3CH=60MOV 30H,#00HMOV A,#01HADD A,32HMOV 32H,A;定时到达10minCJNE A,#0AH,RETURN ;OAH=10MOV 32H,#00HCLR P2.0;关继电线圈RETURN:POP ACCPOP PSWRETIEND5 设计体会与总结通过实验了解了A/D0832的作用以及其的接口作用,C51在整个实验用做智能控制器,了光电藕的型号及作用,还有编程语言的强大魅力,同时也意识到自己知识的匮乏,对以后的学习是种无形的鼓励,总之这次实验我受益匪浅。 附录A:表A 声光态序态序声音信号光信号输出信号1有-1无1灯亮并延时2有1有0灯灭3无0有0灯灭4无0无1灯灭附录B表B 定时器定时计算由硬件图可知,滑动变阻器分出电压最大值大约为2.5伏特,ADC转换器不会超过量程的。设产生128次中断的时间为0.1s那么应由定时器产生7.8125ms的定时即可完全循环一次产生1s的定时216-X*12/6*106=7.8125X=0F42H设计一个双层循环计数中断次数即可到达十分钟的延时时间。内层循环60,层循环为10。最短时间可延时4.7S。: 参考文献1 李朝青 单片机原理及接口技术.北京航空航天大学出版社.2005

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 商业计划书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号