- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
子项目五_数字钟
子项目五:数字钟 学习目标: 通过完成音频的输出和电子琴的综合设计, 使学生进一步掌握keilC编译器的使用和proteus仿真软件进行仿真的基本过程。进一步了解单片机C51程序设计基础,了解单片机内部结构、存储器地址分配、并行I/O口的结构与工作原理、循环程序的设计。 学习任务: 由易到难设计滴、滴报警声的输出,叮咚门铃和电子琴掌握音符的输出控制。 技能拓展: 1、proteus软件使用。 2、KeilC编译器使用 3、C51程序设计 一、原理 1、滴、滴报警声 用 AT89S51 单片机产生“嘀、嘀、…”报警声从 P1.0 端口输出,产生频率为 1KHz, 根据上面图可知:1KHZ方波从 P1.0 输出 0.2 秒,接着 0.2 秒从 P1.0输出电平信号,如此循环下去,就形成我们所需的报警声了。 2、叮咚门铃 当按下开关 SP1,AT89S51 单片机产生“叮咚”声从 P1.0 端口输出,经过放大之后送入喇叭。 3、电子琴 由 4X4 组成 16 个按钮矩阵,设计成 16 个音,可随意弹奏想要表达的音乐。 一、原理——1、滴、滴报警声 一、原理——2、叮咚门铃 一、原理——3、电子琴 二、原理图绘制 本例要用到的元件有:AT89C51、 电阻(RES)、电容(CAP)、电解电容(HITEMP)、发光二极管(LED)、晶振(CRYSTAL) 具体绘制方法参见项目一 三、程序设计——(1)滴、滴报警声 1、生活中我们常常到各种各样的报警声,例如“嘀、嘀、…”就是常见的一种声音报警声,但对于这种报警声,嘀 0.2 秒钟,然后断 0.2 秒钟,如此循环下去,假设嘀声的频率为 1KHz,则报警声时序图如下图所示: 三、程序设计——(1)滴、滴报警声 上述波形信号如何用单片机来产生呢? 由于要产生上面的信号,我们把上面的信号分成两部分,一部分为 1KHZ 方波,占用时间为 0.2 秒;另一部分为电平,也是占用0.2秒;因此,我们利用单片机的定时/计数器 T0 作为定时,可以定时 0.2 秒;同时,也要用单片机产生 1KHZ的方波,对于 1KHZ 的方波信号周期为 1ms,高电平占用 0.5ms,低电平占用 0.5ms,因此也采用定时器 T0 来完成 0.5ms 的定时;最后,可以选定定时/计数器 T0 的定时时间为 0.5ms, 而要定时 0.2 秒则是 0.5ms 的 400 倍, 也就是说以 0.5ms 定时 400次就达到 0.2秒的定时时间了。 三、程序设计——(1)滴、滴报警声 2、程序框图——主程序框图 三、程序设计——(1)滴、滴报警声 2、程序框图——中断服务程序框图 三、程序设计——(1)滴、滴报警声 3、汇编源程序 T02SA EQU 30H T02SB EQU 31H FLAG BIT 00H ORG 00H LJMP START ORG 0BH LJMP INT_T0 START: MOV T02SA,#00H MOV T02SB,#00H CLR FLAG MOV TMOD,#01H 三、程序设计——(1)滴、滴报警声 MOV TH0,#(65536-500) / 256 MOV TL0,#(65536-500) MOD 256 SETB TR0 SETB ET0 SETB EA SJMP $ INT_T0: MOV TH0,#(65536-500) / 256 MOV TL0,#(65536-500) MOD 256 INC T02SA MOV A,T02SA CJNE A,#100,NEXT INC T02SB MOV A,T02SB CJNE A,#04H,NEXT 三、程序设计——(1)滴、滴报警声 MOV T02SA,#00H MOV T02SB,#00H CPL FLAG NEXT: JB FLAG,DONE CPL P1.0 DONE: RETI END 三、程序设计——(1)流水灯左移右移 4、 C 语言源程序 #include AT89X51.H unsigned int t02s; unsigned char t05ms; bit flag; void main(void) { TMOD=0x01; TH0=(65536-500)/256; TL0=(65536-500)%256; TR0=1; ET0=1; EA=1; while(1); } void t0(void) interrupt 1 using 0 { TH0=(65536-500)/256; TL0=(65536-500)%256; t02s++; if(t02s==400) { t02s=
您可能关注的文档
- 大跨度预应力双拱架吊装施工工艺QC小组.ppt
- 天上的街市PPT1.ppt
- 大连交易所第四期期货学院课件PVC2.ppt
- 天上的街市PPT2.ppt
- 天地之美的画卷_从物理科学到物理教学.ppt
- 天山5月偏差分析报告.ppt
- 大跨空间体内预应力钢结构施工新工艺大型水动力实验室项目QC小组.ppt
- 天山水泥7月经营分析.ppt
- 天山股份5月份经营分析-dl.ppt
- 天山水泥股份有限公司情况介绍.ppt
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)