单片机课程设计说明书正文.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1 引言 1.1 设计任务与要求 使用AT89C51单片机为核心,使用光耦元件模拟外部光照,用按键模拟外部声音,在外部没有光照声音出现时按下按键点亮照明设备,照明设备使用220V灯泡,灯泡点亮时间的长短由可变电阻调节控制,使用模数转换元件ADC0832对可变电阻器的阻值进行模数转换并输入单片机中,用以控制照明设备延时长度。控制程序在Keil软件中编写,编译,整个控制电路在Proteus仿真软件中连接调示。(参考附表A) 1.2 实用价值与理论意义 本次设计是以实践性为课题,起到巩固所学知识,加强综合能力,培养电路设计能力,提高实验技术,启发创新思想的效果。 用声光控延时开关代替住宅小区的楼道上的开关,只有在天黑以后,当有人走过楼梯通道,发出脚步声或其它声音时,楼道灯会自动点亮,提供照明,当人们进入家门或走出公寓,楼道灯延时几分钟后会自动熄灭。在白天,即使有声音,楼道灯也不会亮,可以达到节能的目的。声光控延时开关不仅适用于住宅区的楼道,而且也适用于工厂、办公楼、教学楼等公共场所,它具有体积小、外形美观、制作容易、工作可靠等优点。 2 设计方案 硬件选择:AT89C51, ADC0832,电源,光电藕,电位器,开关K1K2,继电器,晶振6M,电阻,电容。 软件部分: 1 测量电压值最大理论是2.5V,模数转化后理论最大值128。 2 使用89C51单片机,6MH晶振,P1.0与P1.1分别为光耦,声音模拟控制输入,P1.4口的读入A/D值,P2.0口为控制口。 3 采用T0定时7.8125mS来产生最长10分钟延时关断。(参考附表B) 简要介绍ADC0832 ADC0832 是美国国家半导体公司生产的一种是美国国家半导体公司生产的一种 8 位分辨率双通道 A/D 转换芯。由于它体积小,兼容性强,性价比高而深受单片机爱者及企业欢迎,其目前已经有很高的普及率其目前已经有很高的普及率。学习并使用 ADC0832 可是使我们了解可是使我们了解可是使我们了解 A/D 转换的原理的原理,有助于我们单片机技术水平的提高有助于我们单片机技术水平的提高。 ADC0832 具有以下特点 8 位分辨率位分辨率 双通道 A/D 转换 输入输出电平与 TTL/CMOS 相兼容 电源供电时输入电压在 0~5V 之间 工作频率为 250KHZ,,转换时间为 32μS; 一般功耗仅为 15mW; 8P、、14P—DIP(双列直插)、PICC 多种封装 商用级芯片温宽为0°C to +70°C,工业级芯片温宽为?40°C to +85°C; 芯片顶视图 芯片接口说明: CS 片选使能 CH0 模拟通道0 CH1 模拟通道1 CLK 时钟输入 DO 转换数据输出 DI 数据通道选择 VCC 电源输入,参考电压 GND 接地 芯片读写数据时序图 芯片接口程序编写流程图 3 硬件设计 ADC0832是带有二路模拟开关的8位串口输出A/D转换芯片,所以它可有2个模拟量的输入端,由芯片的DI引脚来选择模拟通道中的一个。DI端与8051的P1.3相接。时钟信号,可有8051的P1.2软件模拟输出得到,DO数据由P1.4按位输入 。 片内时钟有内部的一个高增益反相放大器,用于构成振荡器。反相放大器输入端为XTAL1,输出端为XTAL2,两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。 复位电路采用上电自动复位电路,在通电瞬间,电容C通过电阻R充电,RST端出现正脉冲,用以复位。 输出电路采用继电器输出,可以有很强的驱动能力,并且采用光耦隔离,增强对外界强电信号的抗干扰能力。 4 软件设计 4.1 编程流程图 4.2 程序编写 ADCS BIT P1.5 ;使能接口 ADCLK BIT P1.2 ;时钟接口 ADDO BIT P1.3 ;数据输出接口(复用) ADDI BIT P1.3 ;数据输入接口 ORG 0000H AJMP START ORG 001BH LJMP SERVE START: SETB P1.0 SETB P1.1 MOV C, P1.0 MOV ACC.0, C MOV C, P1.1 MOV ACC.1, C ANL A,#03H CLR P2.0 CJNE A,#03H,START MOV B,#00H ;装入通道功能选择数据值 ;以下为ADC0832读取数据子程序 ;==== ADC0832读数据子程序==== ADCONV: SETB ADDI ;初始化通道选择 NOP NOP CLR A

您可能关注的文档

文档评论(0)

文档分享 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档