智能教学楼电子创新设计大赛论文(编辑修改稿)内容摘要:

同时控制,将光敏三极管的输出端控制 555 的触发复位端,音频放大电 路控制 555 的触发端。 缺点:该电路在声强 50dB 时,对照明灯的有效控制率高于 94%,过于敏感。 很小的声音也会促使灯发光,会造成能源的浪费。 方案二 : 运用YQ-I制成声光控电路 5 优点:声光控延时开关的电路原理图见图 22 所示。 电路中的主要元器件是使用了数字集成电路YQ-I,其内部含有 4 个独立的与非门 vd 1~ vd4,使电路结构简单,工作可靠性高。 陶瓷压电蜂呜片 B 把声音变成直流控制电压。 通过光敏电阻的改变,使电位发生改变,从而控制晶闸管的通断,从而达到使灯自动熄灭的目的。 缺点:降压功能不强,对晶闸 管的冲击电流大,对灯泡的寿命有影响。 方案三: 声光控开关 IC CD4011 应用电路 优点:其采用集成块 IC CD4011,制作起来成本低、并且节电又方便。 同时,对声音的灵敏度适中,并且原件容易设计。 综合以上三种电路的优缺点后,我们决定采用第三种方案。 6 3 电路与程序设计 电路的设计 系统总体框图 系统总体框图如图所示 智能教室模块 子电路原理图 STC89S52 单 片 机 最 小 系 统 热释红外传感器 环境光采集电路 烟 雾报警模块 声音采集电路 LCD 显示模块 电机驱动模块 DS18B20 模块 继电器驱动模块 7 走廊 子系统电路原理图 电源 电源 由 4 节电池来提供 程序的设计 程序功能描述与设计思路 程序功能描述 根据题目要求软件部分主要实现键盘的设置和显示。 1)键盘实现功能:设置频率值、频段、电压值以及设置输出信号类型。 2)显示部分:显示电压值、频段、步进值、信号类型、频率。 程序设计思路 程序流程图 主程序流程图 XXX 子程序流程图 8 XXX 子程序流程图 XXX 子程序流程图 4 测试方案与测试结果 测试方案 单片机系统的调试应包括硬件及软件两部分,主要是通过调试发现硬件及软件 中存在的问题,查看其运行结果是否符合设计要求。 在对系统进行实际调试时,首先应对硬件进行静态调试,同时对系统软件进行初步调试,此后再对软件和硬件进行动态调试,最后才能使系统进入正常工作 . (1)静态调试:静态调试主要是排除明显的硬件故障。 在将芯片、传感器等元件连接到电路板上时,要保证各处电源极性、电压正确,以防止因电源极性接反或电压过高损坏芯片或传感器。 此外,插入芯片必须在断电的情况下进行,特别注意芯片的方向不要插反。 (2)软件调试:在软件调试时采用在计算机上利用模拟软件实现对单片机的硬件模拟、指令模拟及 运行状态模拟,从而完成应用软件开发的全过程。 调试过程中的运行状态、各寄存器状态、端口状态等都可以在指定的窗口区域显示出来,通过这些显示结果随时跟踪程序运行状态,以确定程序运行无错误。 (3)动态调试:控制系统的软件和硬件是密切相关的,由于软件模拟开发系统不能对硬件部分进行诊断,同时也不能实时在线仿真,所以用户程序还需跟硬件连接起来进行联调,同时对软件和硬件进行检查和诊断。 整个单片机系统进行在线调试时,需借助仿真开发工具来对用户软件及硬件电路进行诊断、调试。 在应用系统各模块电路调试成功后,将程序加载到在线仿 真器上,这时就能单步或连续地执行目标程序,同时也可以根据需要分段设置断点执行程序。 而对于一些与硬件相关的用户程序,如接口驱动程序等,则需要配合硬件,进行在线调试,如果有逻辑错误,也要及时纠正修改。 程序调试完毕后,利用编程器将程序固化到单片机中,使整个系统运行起来。 各模块电路调试流程图如下示: 9 图 41 电源调试 图 42 单片机最小系统调试 图 43 按键电路调试 图 44 显示电路调试 10 图 45采集电路调试 测试条件与仪器 测试条件:检查多次,仿真电路和硬件电路必须与系统原理图完全相同,并且检查无误,硬件电路保证无虚焊。 测试仪器:高精度的数字毫伏表,模拟示波器,数字示波器,数字万用表,指针式万用表。 测试分析与结论 根据上述测试数据, XXXXXXXXXXXXXXXXXXXXXXXXXXXXX,由此可以得出以下结论: 综上所述,本设计达到设计要求。 5 总结 11 附录 1:电路原理图 12 附录 2:源程序 include include include void LcdDisplay(int)。 sbit K1=P2^4。 sbit K2=P2^5。 sbit K=P1^3。 extern int th=20。 sbit beep=P1^0。 sbit redout=P1^2。 sbit led=P1^1。 void main() { LcdInit()。 LcdWriteCom(0xc7)。 LcdWriteData(39。 C39。 )。 while(1) { if(K1==0) { Delay1ms(500)。 if(K1==0)。 th++。 } if(K2==0) { Delay1ms(500)。 if(K2==0)。 th。 } LcdDisplay(Ds18b20ReadTemp())。 } } void LcdDisplay(int temp) { int i,tt,mm。 unsigned char datas[] = {0, 0, 0, 0},datas1[] = {0, 0, 0}。 float tp。 13 if(temp 0) { LcdWriteCom(0xc0)。 LcdWriteData(39。 39。 )。 i=1。 temp=temp1。 temp=~temp。 tp=temp。 temp=tp**10+。 mm=temp。 } else { LcdWriteCom(0xc0)。 LcdWriteData(39。 +39。 )。 tp=temp。 temp=tp**10+。 mm=temp。 } datas[0] = temp / 1000。 datas[1] = temp % 1000 / 100。 datas[2] = temp % 100 / 10。 datas[3] = temp% 10。 if(th 0) { LcdWriteCom(0x89)。 LcdWriteData(39。 39。 )。 tt=th。 } else { LcdWriteCom(0x89)。 LcdWriteData(39。 +39。 )。 tt=th。 } datas1[0] = tt / 100。 datas1[1] = tt% 100 / 10。 datas1[。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。