好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

毕业设计智能音频测定仪.doc

45页
  • 卖家[上传人]:平***
  • 文档编号:16407259
  • 上传时间:2017-11-07
  • 文档格式:DOC
  • 文档大小:1.19MB
  • / 45 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 淮 阴 工 学 院 毕 业 设 计 说 明 书 ( 论 文 ) 第 1 页 共 46 页1 绪言目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能 IC 卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域琴弦音频测定仪的设计正是以单片机为核心,通过其他的外围电路实现琴弦的准确调弦1.1 课题研究的背景和意义作为乐器家族中弦乐器的一员,吉他是一种通过拨动上面一根根的琴弦发出声音的有弦的演奏乐器弹奏时用一只手拨动琴弦,另一只手的手指抵在指板上,后者是覆盖在琴颈上的金属小条弹奏出来的声音会通过吉他的共鸣箱得到增强吉他在不压弦时所弹出来的音,叫吉他的空弦音。

      吉他是一种十二平均律乐器,钢琴也是,目前绝大多数的音乐场合都是在使用十二平均律吉他、小提琴等弦乐器经常需要进行校音,通过调节弦的张力来调节弦的振动频率(即空弦音的音高)作为一个吉它手,调音是必备技术之一,很难想象,一个吉它手每次弹琴前都需要别人替他调弦,那可真是不可思议关于调音的方法,主要有以下几类:(1)六音笛法(2)单音笛法(3)听音法(4)听自然泛音法(5)看弦法以上几种方法可以根据不同情况加以采用其共同的要求是调弦者的听音能力要好,对初学音乐或者音阶听力不是很好的人来说掌握起来有一定的困难本设计针对这一问题,设计一个琴弦频率智能测试仪,可以帮助初学者或音阶听力不好的人准确、快速地校准琴弦频率,而且体积小,携带和使用都很方便1.2 课题研究发展方向市场上存在类似的琴弦音频测定仪设备,与我们设计的琴弦频率智能测试仪相比,它们的缺点是体积较大,对使用环境要求苛刻,耗电大,价格昂贵等制作了以单片机为核心的电子校音器,通过 LCD 液晶显示屏更加直观地显示以其大量的 淮 阴 工 学 院 毕 业 设 计 说 明 书 ( 论 文 ) 第 2 页 共 46 页显示信息量、寿命长、耗电量小、重量轻、空间尺寸小、稳定性高、易于操作、携带和维护等特点可以在市场上取代老式的测试仪。

      1.3 课题研究的内容琴弦频率智能测定仪实现功能:测定仪对琴弦每根弦的空弦音频率进行计算判断,并通过液晶显示模块把频率显示在屏幕上,再用语音模块进行语音提示,从而让使用者明白调整方向及幅度,反复调整,直至将琴弦频率调准2 琴弦频率智能测定仪的总体设计从 图 1.1 可 以 看 出 , 本 设 计 可 以 分 为 四 大 模 块 , 分 别 为 声音采集模块、核心控制模块、语音模块设计、外围辅助电路模块声音采集模块设计 核心控制模块设计 单片机外围电路设计语音模块设计图 2.1 系 统 总 框 图(1)声音采集模块的设计:这部分是利用单片机测量琴弦频率的前提,主要功能是将要采集的声音信号转换成可测量的电信号要保证转换的精度,还要处理好电路本身产生的谐波电路应该有基本的放大、滤波、比较电路的设计2)核心控制模块的设计:这部分属于系统的软件部分设计主要是控制芯片的选择和编程语言的选择通过单片机控制各个子模块的正常工作,实现需要的功能是需要解决的重点子模块包括:键盘模块、LCD12864 显示模块、频率测量模块、PC 机通信模块3)语音模块设计:内部存储每根琴弦所发出的标准频率声音的数据,可以对每根琴弦发出的声音进行录音,也可以播放声音。

      在单片机处理完数据输出到液晶显示器,语音模块同时发出对应弦的频率4)外围辅助电路的设计:这部分都是系统的硬件部分设计,包括复位晶振电路、电源电路、液晶显示电路、语音播报电路、按键控制电路等需要合理将这些 淮 阴 工 学 院 毕 业 设 计 说 明 书 ( 论 文 ) 第 3 页 共 46 页电路准确组合并能够实现各自所需的功能根据设计任务,以及方案的研究,我们最终确定了以下方案:晶振和复位电路:晶振作用是为系统提供基本的时钟信号,通常一个系统共用一个晶振,便于各部分保持同步复位是单片机的初始化操作通过选择的控制芯片设计合适的晶振和复位电路键盘电路:电路设计了 6 个按键,直接与 I/O 口相连,其中 2 个按键用作选弦和选调,1 个按键作为确认键,其余 3 个按键用来扩展功能由于所用到的按键不多,I/O 口线数量足够,所以键盘电路采用独立式按键显示电路:主要由 LCD12864 构成,可以将声音频率显示在 LCD 屏幕上,看起来清楚明了能够直观的得出琴弦的频率,以便对它进行调整语音模块电路:可以将所测定声音与标准声音比较,发出语音提示内部存储着每根琴弦所发出声音的标准频率的数据,在单片机处理完数据后输出到液晶显示屏的同时,语音模块播放出当前所测弦的频率。

      电源电路:可以使用多种方式供电,如:稳压电源供电,USB 供电,电池供电可以随身携带,随时使用,快捷方便串口电路:使用 MAX232 芯片设计一个简单的串口下载电路,为了方便单片机程序的下载3 琴弦频率智能测试仪的软件设计3.1 软件程序编程语言及开发环境选择以往的单片机系统,其控制程序大多是用相应单片机的汇编指令编制,其执行效率高,但其可读性和可移植性却较差,直接影响其软、硬件的扩展和升级C 语言早期用于编写 UNIX 操作系统,是一种结构化的语言,可产生紧凑代码C 语言可用许多机器级的函数直接控制操作单片机的硬件,不必通过汇编语言与汇编语言相比,C 语言主要有以下一些优点有:不要求了解单片机的指令系统,仅要求对其存储器结构有初步了解;寄存器分配、存储器寻址及数据类型等细节可由编译器管理;程序由不同的函数构成,便于程序的结构化和模块化;程序的可读性及可移植性较高;关键字及运算符可用近似人的思维方式使用;程序编制及调试时间显著缩短, 淮 阴 工 学 院 毕 业 设 计 说 明 书 ( 论 文 ) 第 4 页 共 46 页大大地提高了编程效率;C 语言提供的库包含许多标准的子程序,具有较强的数据处理能力。

      C 语言是一种非常便于使用的计算机高级编程语言,使用 C 语言进行单片机 尤其是 MCS-51 系列单片机的开发具有极大的优势 用 C51 编制程序时,应遵循结构化、模块化的设计方法在编程时,可将任务分成若干模块,对每个模块分别进行编制及调试,最后有机结合成一个完整的控制程序Keil C51 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系统,与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用Keil 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起运行 Keil 软件需要 WIN98、NT、WIN2000、WINXP 等操作系统使用 C 语言编程么 Keil 几乎就是编程的不二之选,即使不使用 C 语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令编程事半功倍3.2 主程序模块设计3.2.1 主程序模块实现的功能主 程 序 模 块 实 现 的 功 能 为 : 琴 弦 音 频 测 定 仪 的 校 音 项 目 为 吉 他 六 根 弦 的 空 弦音 , 琴 弦 音 频 测 定 仪 开 始 工 作 时 , 先 出 现 一 个 欢 迎 界 面 。

      然 后 通 过 不 停 的 对 按 键进 行 扫 描 , 来 判 断 哪 个 键 按 下 , 如 果 有 相 应 的 键 按 下 , 则 执 行 相 应 程 序 并 进 行 语音 播 报 ;如 果 没 有 一 个 键 被 按 下 , 则 返 回 按 键 扫 描 程 序 , 继 续 进 行 按 键 扫 描 3.2.2 程序设计思想及说明通过一个按键来识别每种不同的功能,给每个不同的功能模块用不同的 ID 号标识,每按下一次按键,ID 的值是不相同的,单片机识别不同功能的身份了当我们按下待 测 琴 弦 切 换 键 后 , 变 量 ID 的 值 就 不 断 的 加 一 , 通 过 不 同 的 ID 值 , 分 别控 制 六 根 弦 频 率 的 显 示 和 语 音 提 示 主要使用的语句有:A.while(1){.....} 淮 阴 工 学 院 毕 业 设 计 说 明 书 ( 论 文 ) 第 5 页 共 46 页这是个死循环语句,通过这个语句循环调用键盘函数,不断判断是否有按键按下;调用显示函数进行液晶显示和调用语音播放函数进行语音提示B do{.....}while(...)它 是 先 执 行 一 次 指 定 的 循 环 体 语 句 , 然 后 判 别 表 达 式 。

      当 表 达 式 的 值 为 非 零(“真 ”)时 , 返 回 重 新 执 行 循 环 体 语 句 , 如 此 反 复 , 直 到 表 达 式 的 值 等 于 0 为止 , 此 时 循 环 结 束 C.if 语句的 3 种形式(1)if(...)语句(2)if(...)语句 1 else 语句 2(3)if(...)语句 1else if(...)语句 2else if(...)语句 3┆else if(...)语句 melse 语句 nif 语句是用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一同硬件设计一样,软件设计也是分模块进行的主要包括系统主程序、录音子程 序模块、键盘扫描程序模块、频率测量程序、lcd12864 显示子程序模块,语音播报程序等各部分程序由主程序调用,组成一个整体程序整体结构清晰、简洁、流程合理,各种功能的实现采用模块化,子程序化,便于阅读连接修改 按总体要求划分出各功能程序模块, 分别确定主程序,子程序图 3-1 是系统总流程图首先需要进行系统初始化设置,初始化后就进入循环 在这里通过判断相应的键值来进入各子程序具体来说,就是电路通电后,单片机内部进行初始化,显示一个欢迎界面。

      然后不停对键盘进行扫描,判断确认测量键是否有按下,当该键按下时,进行琴弦频 淮 阴 工 学 院 毕 业 设 计 说 明 书 ( 论 文 ) 第 6 页 共 46 页率的测量和显示,同时进行语音提示结束后返回按键扫描程序;如果确认键没有按下,则再返回按键扫描程序,继续判断是否有按键按下 通过这样不停的循环就可以达到琴弦频率的测量单片机主程序流程图如图 3.1 所示开始初始化欢迎界面键盘扫描有键按下 ?K e y = ?K e y = 1选弦K e y = 2选调K e y = 3确定K e y = 4选项后移K e y = 5选项前移K e y = 6撤销NY图 3.1 单片机主程序流程图3.3 显示模块设计液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖 淮 阴 工 学 院 毕 业 设 计 说 明 书 ( 论 文 ) 第 7 页 共 46 页珍式仪表和低功耗应用系统中得到越来越广泛的应用本设计用的是 12864 液晶模块,12864 液晶模块是一种图形点阵液晶显示器 ,它主要由行驱动器/列驱动器及 128×64 全点阵液晶显示器组成可完成图形显示,也可以显示 8×4 个(16×16 点阵)汉字。

      128×64 点阵液晶显示屏有三种控制器,分别是 KS0107( KS0108)、 T6963C 和 ST7920,三种控制器主要区别是:KS0107(KS0108)不带任何字库、T6963C 带 ASCII。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.