1、 课 程 设 计 任 务 书课 程 设 计 任 务 书 课 程 名 称 单片机原理及应用 A 设 计 课 题 电子琴设计 院(系、部、中心) 自动化学院 专 业 自动化(数控技术) 班 级 数控 094 目 录 一、设计目的及任务 1、 设计目的 2、 设计任务题目及要求 二、总体方案设计 1、 设计任务分析 2、 设计方案 三、设计原理 1、 程序流程图 2、 硬件原理图 四、模块设计 1、 键盘扫描模块 2、 定时器模块 五、调试过程 1、 问题发现与解决 六、设计总结 七、参考文献 八程序清单 一、设计目的及任务一、设计目的及任务 1 1课程设计应达到的目的课程设计应达到的目的 (1)运
2、用课程等知识,根据题目要求进行软硬件 系统的设计和调试, 从而加深对本课程知识点的理解, 使学生综合应用知识能力、 设计能力、调试能力及报告撰写能力等显著提高。 (2)了解计算机发声原理, 进一步熟悉定时器编程方法及键盘扫描电路工 作原理及编程方法。 2 2课程设计题目及要求课程设计题目及要求 (1) 、) 、题目题目 电子琴设计 (2) 、设计要求、设计要求: 利用实验仪上提供的键盘,使数字键 1、2、3、4、5、6、7、8、9 作为电子 琴按键,其中 17 号键按下后即发出相应的音调。8 号键按下后依次发出“1、 2、3、4、5、6、7” 音调,9 号键按下后依次发出“7、6、5、4、3、
3、2、1” 音 调,用 8255 的 PA.0 口发出音频脉冲,驱动喇叭。 利用定时器,可以发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放 大滤波后,就会发出不同的音调.定时器按设置的定时参数产生中断,这一次中断 发出脉冲低电平,下一次反转发出脉冲高电平.由于定时参数不同,就发出了不同 频率的脉冲. 本实验中按键一次,会发 50 个脉冲.发完后继续检测键盘,如果键 还按下,继续发音。 二、总体方案设计二、总体方案设计 1、设计任务分析、设计任务分析 本任务的要求是根据不同的数字键被按下后, 发出相对应的音调, 或者顺序、 逆序连续的发出七中音调,不同音调的产生对喇叭发出不同频率的脉冲,而脉冲
4、 则是根据定时器中断产生正负脉冲的跳变,这样就形成了脉冲。与此同时,定时 时间的长短,及频率的高低,是由定时间的初值决定的。 通过以上的析,可以明确,本课题需要涉及到的就是键盘扫描,和定时器。 围绕这两个模块,就可以制定出总体的设计方案。 2、设计方案、设计方案 通过以上的分析,可以制定出以下的设计方案: (1) 、) 、 因为要用到 9 个按键,可以用 4*4 的矩阵键盘, ,对其中的 9 个按键 进行标号,再根据键盘扫描的原理,就可以找出是哪个键被按下。 (2) 、) 、不同频率的脉冲均通过定时器来产生,定时器的初值不同,计满溢出 的频率 也是不同的, 从而正负电平的跳变的频率也不同, 就
5、产生了不停频率的脉冲, 所以只需对定时器设置不同德计数初值,便可实现不同频率脉冲的产生。 (3) 、喇叭发声原理则是:对喇叭驱动电路交替的施加施加低电平,喇叭发 声;否则就不发声。把这一原理和定时器中断产生的电平跳变相结合,就可以听 到不同频率的音调。 三、设计原理三、设计原理 1 1、程序流程图、程序流程图 根据上述的设计方案,可以用流程图画出本次课程设计的整体思路,在以 下的流程图中,包括主程序和各个相关的子程序。 在程序中, 首先是进行扫描, 找出是哪个键被按下, 然后根据相应的键号, 采取不同的操作,以此构成循环 本程序中涉及到的子程序模块包括: 键盘扫描子程序; 定时器中断子程序;
6、顺序连续发出 1234567 七个音调;连续发出 7654321 七个音调。 以下分别主程序各个相关的子程序: 2 2、硬件原理图、硬件原理图 以下是电子琴电路的实际硬件原理图,主要是一个单片机,和一个 8255 以及 一个喇叭组成。是通过 8255 的 PA.0 口发出脉冲,来产生不同频率的音调。单片 机则是用到一个定时器,来产生定时中断。 值得注意的是,由于电路图中是直接用 P1 口来进行键盘扫描的,则在实验箱 上进行实物连接时,一定要把跳线器短接,否则将使键盘扫描不能正常工作。 在连线时,不能使用已损坏的导线,并且把多余的导线放到一边,一面影响 正常的工作。 四模块设计四模块设计 1 1键盘扫描模块键盘扫描模块 通过键盘扫描的流程图可以清晰的知道其工作原理,可将其归纳为: 先将 P1 的高四位置 1,低四位置 0,在读 P1 口的值,若读到的值得高四位不是 全 1,则代表有键按下或者是键盘抖动。 为消除键盘抖动的影响,先采用延时,延时后重复上述操作,若读到的