019、“叮咚”门铃

上传人:wo7****35 文档编号:62121093 上传时间:2018-12-17 格式:DOC 页数:6 大小:64.50KB
返回 下载 相关 举报
019、“叮咚”门铃_第1页
第1页 / 共6页
019、“叮咚”门铃_第2页
第2页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《019、“叮咚”门铃》由会员分享,可在线阅读,更多相关《019、“叮咚”门铃(6页珍藏版)》请在金锄头文库上搜索。

1、19 “叮咚”门铃1 实验任务 当按下开关SP1,AT89S51单片机产生“叮咚”声从P1.0端口输出到LM386,经过放大之后送入喇叭。 2 电路原理图 图4.19.1 3 系统板上硬件连线 (1 把“单片机系统”区域中的P1.0端口用导线连接到“音频放大模块”区域中的SPK IN端口上; (2 在“音频放大模块”区域中的SPK OUT端口上接上一个8欧或者是16欧的喇叭; (3 把“单片机系统”区域中的P3.7/RD端口用导线连接到“独立式键盘”区域中的SP1端口上; 4 程序设计方法 (1 我们用单片机实定时/计数器T0来产生700HZ和500HZ的频率,根据定时/计数器T0,我们取定时

2、250us,因此,700HZ的频率要经过3次250us的定时,而500HZ的频率要经过4次250us的定时。 (2 在设计过程,只有当按下SP1之后,才启动T0开始工作,当T0工作完毕,回到最初状态。 (3 “叮”和“咚”声音各占用0.5秒,因此定时/计数器T0要完成0.5秒的定时,对于以250us为基准定时2000次才可以。 5 程序框图 主程序框图 T0中断服务程序框图 图4.19.2 6 汇编源程序T5HZ EQU 30HT7HZ EQU 31HT05SA EQU 32HT05SB EQU 33HFLAG BIT 00HSTOP BIT 01HSP1 BIT P3.7ORG 00HLJM

3、P STARTORG 0BHLJMP INT_T0START: MOV TMOD,#02HMOV TH0,#06HMOV TL0,#06HSETB ET0SETB EANSP: JB SP1,NSPLCALL DELY10MSJB SP1,NSPSETB TR0MOV T5HZ,#00HMOV T7HZ,#00HMOV T05SA,#00HMOV T05SB,#00HCLR FLAGCLR STOPJNB STOP,$LJMP NSPDELY10MS: MOV R6,#20D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1RETINT_T0: INC T05SAMOV A,T

4、05SACJNE A,#100,NEXTMOV T05SA,#00HINC T05SBMOV A,T05SBCJNE A,#20,NEXTMOV T05SB,#00HJB FLAG,STPCPL FLAGLJMP NEXTSTP: SETB STOPCLR TR0LJMP DONENEXT: JB FLAG,S5HZINC T7HZMOV A,T7HZCJNE A,#03H,DONEMOV T7HZ,#00HCPL P1.0LJMP DONES5HZ: INC T5HZMOV A,T5HZCJNE A,#04H,DONEMOV T5HZ,#00HCPL P1.0LJMP DONEDONE: R

5、ETIEND7 C语言源程序#include unsigned char t5hz;unsigned char t7hz;unsigned int tcnt;bit stop;bit flag;void main(void)unsigned char i,j;TMOD=0x02;TH0=0x06;TL0=0x06;ET0=1;EA=1;while(1)if(P3_7=0)for(i=10;i0;i-)for(j=248;j0;j-);if(P3_7=0)t5hz=0;t7hz=0;tcnt=0;flag=0;stop=0;TR0=1;while(stop=0);void t0(void) interrupt 1 using 0tcnt+;if(tcnt=2000)tcnt=0;if(flag=0)flag=flag;elsestop=1;TR0=0;if(flag=0)t7hz+;if(t7hz=3)t7hz=0;P1_0=P1_0;elset5hz+;if(t5hz=4)t5hz=0;P1_0=P1_0;

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

当前位置:首页 > 大杂烩/其它

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