ImageVerifierCode 换一换
格式:DOC , 页数:29 ,大小:1.27MB ,
资源ID:2204293      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/2204293.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(基于单片机的遥控灯心形音乐盒.doc)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

基于单片机的遥控灯心形音乐盒.doc

1、 本科毕业论文(设计) 题  目 基于单片机的遥控灯心形音乐盒 姓  名 李国宝 学号 201212301031 二级学院 机电工程学院 专  业 电子信息工程 指导教师 王妍力 职称 助教 齐鲁理工学院教务处制 目 录 摘要 1

2、关键词 1 Abstract 1 Key words 1 前言 2 1 单片机概述 2 1.1 单片机定义 2 1.2 单片机的应用及发展方向 3 1.2.1 发展方向 3 1.2.2 应用场景 4 1.3 MSP430单片机简介 4 2 单元电路设计 5 2.1 电源电路 5 2.2 MSP430最小系统 6 2.2.1 稳压电路 6 2.2.2 时钟电路 7 2.2.3 复位电路 7 2.2.4 通讯接口电路 8 2.2.5 数据存储电路 8 2.3 HS0038红外遥控 9 2.3.1 红外遥控简介 9 2.3.2 NEC

3、协议 9 2.4 音乐信号放大与播放电路 10 2.4.1 LM324放大芯片 10 2.4.2 LM324音频放大 11 3 心形灯设计 11 3.1 信号AD采集 11 3.1.1 使用方法概述 11 3.1.2 使用概述 12 3.1.3 相关寄存器 12 3.2 FFT算法 12 3.3 音乐频谱 13 3.3.1 频谱简介 13 3.3.2 心形灯频谱 13 4 程序设计 14 4.1 MSP430单片机开发环境 14 4.2 程序烧写 15 4.3 程序流程图 16 4.3.1 AD采集部分 16 4.3.2

4、红外解码 16 4.3.3 系统整体流程图 17 致谢 18 参考文献 18 附录A FFT算法C语言实现 19 附录B 红外解码程序 20 附录C AD采集程序 23 图1 ADC12内部模块图 24 图2 单片机最小系统原理图 25 基于单片机的遥控心形灯音乐盒 电子信息工程 李国宝 指导教师 王妍力 摘要 21世纪的今天,科技飞速发展,各项技术越来越成熟。单片机技术也得到了广泛的应用,并且单片机技术已经发展成为当前科技领域中一分非常关键的技术。并且单片机技术在各行各业中有着广泛的应用,这篇文章介绍了基于单片机MSP430所制作

5、的音乐盒,采用Embedded Workbench for MSP430软件编程,proteus仿真,并详细的阐述了相关的制过程和核心的制作技术。这款音乐盒实现的功能主要有一下几点:可通过红外遥控的方式选择音乐的播放暂停以及上一曲下一曲等;同时心形灯能伴随播放的音乐进行等节奏的跳动;音乐的播放可以通过外部接入音频信号或由内部乐谱的音节以及节拍混排编码实现,从而实现了乐曲的播放这一功能。 关键词 MSP430单片机,音乐盒,遥控 Remote control heart shaped lamp music box based on single chip microcomputer

6、electronic information engineering Guobao Li Tutor Yanli Wang Abstract In twenty-first Century, the rapid development of science and technology, the technology has become more and more mature. Single chip technology has been widely used, and has become the current development of SCM technology

7、 in the field of science and technology a very important technology. And the SCM technology is widely used in all walks of life, this article introduces the music box made based on MCU MSP430,The Embedded Workbench for, MSP430 software programming, proteus simulation, and a detailed description of t

8、he production process and the core technology related. The music box to achieve the main function of the following points: choose music through the infrared remote control way and stop playing on a next song; at the same time can play with heart beating light music rhythm; music playback you can acc

9、ess through the external audio signal or by internal music and rhythm mixed syllable encoding, so as to realize the function of playing music. Key words MSP430 single chip microcomputer, music box, remote control 前言 现代社会,经济飞速发展,人们对物质方面的追求已经得到了充分的满足,许多人对精神世界的要求越来越来越高。音乐从最初开始就是人类精神活动的产物,可以令人心情愉悦

10、陶冶人的情操,给我们的生活减压,人们在精神方面的追求离不开音乐。大家肯定都见过目前在市场上出售的各式各样的音乐片,它们许多都只是通过一个小的集成电路块构成,通电就能够发出很优美的旋律,演奏出动听的乐曲。然而在这样的小巧而又精美的音乐盒上有一个很大的缺点,那就是它只能够存储播放一个单一的曲目,不能够满足大多数人的爱好。所以鉴于此,现将设计一款基于单片机的心形音乐盒,我的这个设计能够弥补只能播放一只相同曲目音乐片的缺陷。这个音乐盒它不仅仅可以存储一首动听的音乐,还能够根据音乐跳动的旋律在音乐盒的心形LED灯上面一起跳动,形成优美的旋律,给人一种非常舒适惬意的体验。 1877年,德国西门子公司的

11、Erenst Verner根据佛莱明左手定律,制作了世界上最早的喇叭,并获得动圈式喇叭的专利。经过不断的改进,现在的喇叭已经具备播放各种复杂音乐的能力,也是现代几乎所有电子产品不可或缺的元件。二十世纪七十年代,电子技术迅速发展。到目前为止,电子技术已经经历了将近半个世纪的发展,电子技术无论是从制作工艺还是集成度上来说也是想当的高,并且已经慢慢的趋于饱和状态。单片机技术跟随着电子技术的发展同时发展起来,在1974年的时候,美国的电子技术也正处于蒸蒸日上的时期,世界上的第一台单片微型计算机也就是我们今天所熟知的单片机在这个时期被制作出来。这款微型的单片机一问世,便受到了各种家用电器和仪器仪表生产厂

12、家的欢迎和重视,从此加速了单片机研制的步伐。现设计一种基于MSP430超低功耗单片机的遥控心形灯音乐盒。能够实现对音乐信号的识别处理和播放,并且能在播放不同音乐的同时对彩灯闪烁跳动的控制,可以通过红外遥控的方式,实现对播放音量的设置,音乐的选择等。 1 单片机概述 1.1 单片机定义 早在二十世纪七十年代,电子技术就已经发展起来了。到目前为止,电子技术已经经历了将近半个世纪的发展,电子技术无论是从制作工艺还是集成度上来说也是想当的高,并且已经慢慢的趋于饱和状态。然而对于单片机技术来说,他的发展也在同步的进行着,在19

13、74年的时候,美国的电子技术也正处于蒸蒸日上的时期,世界上的第一台单片微型计算机也就是我们今天所熟知的单片机在这个时期被制作出来。这款微型的单片机一问世,便受到了各种家用电器和仪器仪表生产厂家的欢迎和重视,从此加速了单片机研制的步伐。 所谓单片机,一般包括: (1)、处理数据及控制系统的中央处理器(CPU); (2)、存储单片机处理的数据的随机存储器(RAM); (3)、储存程序及一些不变的值的只读存储器(ROM); (4)、与外部其他电路相连接的输入/输出接口电路(I/O口); (5)、为某些控制场合提供定时和技术的定时/计数器; (6)、与其他带有串行通信口的外围器件通信的串

14、行通信接口 等等许多复杂的数字电路或者模拟的电路集成在一块芯片中,能够单块芯片就能实现相应的控制功能的完整的微型计算机。通过电脑编程,并将程序烧写到芯片中即可操作CPU控制各个内部模块,完成开发者规定的任务。 现代单片机加上了各种复杂的数字或模拟电路。这些电路使得单片机的功能越来越强大,应用范围进一步扩大。高端单片机就是一块没有屏幕的电脑。单片机在使用的时候一般只需要一块这样的芯片即可应用到嵌入式设计系统中,即独立的单块芯片就能工作的结构。单片机与单独的CPU不同的是,单片机所执行的相关的指令是进过同一标准制定的精简指令集,也是在嵌入式系统设计中所使用的指令集,又因为芯片的体积小,功耗低,

15、实现的功能多,并且能在许多极端恶劣的自然环境下仍然能够可靠的运行。所以单片机又称之为嵌入式微控制器。 1.2 单片机的应用及发展方向 1.2.1 发展方向 目前,随着制作工艺的越来越发达。单片机将向着高性能化,大容量,小体积、低价格化方向不断发展,并且不断的将各种以前外部电路实现的功能也做到单片机的内部。 (1)单片机的性能优化:进一步的提高单片机内部CPU的处理能力,提高CPU的指令执行速度,对能硬件实现的特殊功能改为硬件实现,CPU制作控制,不做操作,例如硬件DMA控制器,硬件IIC总线,硬件SPI等等。 (2)存储空间增大:单片机在发展初期一般程序的存储容量是很小的从1K到4

16、K的都有,而随机存储器RAM的空间就更小了,从16B到64B的都有。然后这远远不能满足当下在实际项目中的应用,在有些应用要求比较高的场合,这样的单片机的缺陷就表现的很明显。为了解决这个问题,在科技发达的今天电子制作工艺的日趋成熟,程序存储空间已经能达到1M以上,数据存储空间已经能达512KB或者更大,这能满足目前许多的项目的应用了。 (3)小容量、低价格化:与上述相反,小容量主要是指生产一些操作简单的,但是在一些控制单一的场合,这样的单片机就很适合。这也是单片机技术领域发展的方向之一。 (4)内部模块增多:除了单片机的一般结构外,目前许多公司生产的新型单片机例如TI公司生产的MSP430单

17、片机大多数系列片内都集成了ADC转换器,比较器等,还有许多其他厂商生产的单片机内部集成有DMA控制器等。 (5)增强IO口功能:某些场合,例如单片机驱动数码管,由于单片机的驱动能力有限,一般都需要外接数码管驱动电路,这无可厚非的增加了外围电路的复杂程度,为了解决这个矛盾,所以单片机的IO口也做了相应的增强处理,提高了IO的输出能力,目前许多单片机都具有强推挽强上拉能力,使用这样的IO口可以直接驱动数码管或者液晶显示器,有时候在驱动低电压液晶显示器的时候,有可能还要在IO口串接限流电阻,课件目前许多单片机的IO的驱动能力很强。 (6)提高IO的翻转速度和传输速度:有些单片机的IO口有很高的的

18、输出速度,翻转速度,例如ST公司的STM32单片机IO的输出速度100M以上,翻转速度达50M,能够以更快的速度读取数据和输出速度,性能打打的提高。 1.2.2 应用场景 单片机在生活的各行各业中的应用情况大致可分为如下几个: 1.在计算机网络和通信领域中的应用; 2.在工业控制中的营运; 3.在家用电器中的应用; 4.在智能仪器仪表上的应用; 5.在医用设备领域的应用; 1.3 MSP430单片机简介 MSP430单片机是美国德州仪器半导体公司(TI公司)生产的低功耗, 功能强大的一款单片机。这款单片机芯片配备了必要的外部器件(处理数据及控制系统的中央处理器(CPU)、存储

19、单片机处理的数据的随机存储器(RAM)、储存程序及一些不变的值的只读存储器(ROM)、与外部其他电路相连接的输入/输出接口电路(I/O口)、为某些控制场合提供定时和技术的定时/计数器以及与其他带有串行通信口的外围器件通信的串行通信接口),结构简单。MSP430单片机系列中MSP430F149这款芯片是我的设计中所使用的芯片,芯片内部有256字节的程序存储器和256B的FLASH(内置的EEPROM),还有2KB存储单片机处理的数据的随机存储器(RAM),有看门狗模块(上电默认开启)、带3个捕获/比较寄存器和PWM输出的16位定时器、带7个捕获/比较寄存器和PWM输出的16位定时器(一共可以输出

20、10路PWM波)、P1口P2口均可以作为外部中断输入、6组8位输出的IO端口、模拟比较器、12位A/D转换器、2个串行通信接口等模块。 如图1是MSP430x14x系列单片机内部,总线结构、各硬件资源、处理器等它们之间的相互关系。 图1 MSP430x14x内部结构图 这款MSP430F149芯片特点: 功耗低:普通工作模式芯片电流为0.1A,单片机处于低功耗模式(睡眠模式)时电流仅为200μA; 高效16精简指令集,27条常用指令,当时钟频率为8MHz时,每条指令的指令周期为125ns,而且绝大多数指令都是单周期指令; 供电电压很低、但却有很宽的电压工作范围范围:1.8~3.

21、6V; 系统时钟非常的灵活:可选用的时钟频率有:外部高速时钟,外部的低速时钟,内部的高速时钟; 当选用外部的低速时钟时仍然能够满足告诉的通信要求; 具有在线编程功能; 非常完善且操作方便的中断管理能力; 睡眠模式下,具有中断唤醒功能,且唤醒时间极端,从睡眠模式唤醒仅需6μs; 运行的环境温度范围很广:-40~+85℃,工业使用也没问题。 由于这款单片机的所有外围模块的功能使用和控制都是CPU操作他们与之对应的寄存器来实现,因此在编写程序的时候是相对简单的。在编程开发项目的时候通过专用的编程器,一般选择C语言这门简单高效的语言,编程环境使用IAR公司为MSP430系列的单片机专门开

22、发的IAR for 430软件来编写程序,编写完成后编译直接通过编程器在线调试程序,使用灵活简单。 2 单元电路设计 2.1 电源电路 设计整体供电使用220V(普通市电)的交流电压,将市电经过变压器降压到15至20V左右后,然后经过二极管整流桥进行整理为直流电,然后由电容进行滤波得到稳定的没有纹波电压的直流电然后使用12V的稳压芯片稳压。稳压芯片选择LM317,合理设计取样电阻和电位器的阻值,将输出电压控制在3.37.5V范围内。仿真图如图2。 图2 LM317可调电源仿真图 由图得R5是输出电流采用电阻,当输出电流大于等于0.4mA时,采样电阻电压大于等于0.3V,则Q

23、1导通从而Q1上的电流流向U1,U1导通从而继电器通电,因而电源断电,声光报警装置通电,进行报警。起限流作用,防止因输出电流过大而烧坏单片机等器件。而在滤波电路后并联一个发光二极管与10K电阻串联电路,在调试电路时能方便直观的检测电路是否正常通电。 Uref=1.25V,R4=348,R3=112,当滑动变阻器滑头滑到最上端时RV1=0,RV2=112;当滑动变阻器滑头滑到最下端时RV1=112,RV2=0;其电源输出最大值为U0(max)=7V;最小值为U0(min)=3.3V。 2.2 MSP430最小系统 对于MSP430系列单片机来说,最小系统一般包括:时钟部分,单片机,稳压电

24、源,上电复位手动复位,仿真器调试接口。在最小系统的基础上,通过外接其他模块就可以开发成实用的产品,具有很大的实用性。 如图2是我设计的MSP430F149最少元器件使单片机能正常工作的系统的系统框图 图3 MSP430F149最小系统的系统框图 2.2.1 稳压电路 在这个设计中,使用+5V直流电压为输入电压,而+3.3V可以由+5V通过+3.3V稳压芯片(ASM1117)直接线性降压。电源电路原理如图4所示。 图4 单片机+3.3V稳压电路 2.2.2 时钟电路 MSP430单片机时钟包括内部高速时钟(MCLK)、外部高速时钟(SMCLK)、外部低速时钟(ACLK)

25、这样设计多个时钟源或为单片机的运行提供不同的工作速率,这样能够方便的解决某些外围部件在应用时对时钟的要求,例如:LCD显示、低频通信、定时器、计数器等。 外部的低速时钟满足了低功耗的要求,它以外部低速的32.768kHz晶振为时钟源。在本电路中我们使用高频模式,外接8MHZ的石英晶体振荡器,晶振外接2个22pF的电容经过XIN和XOUT 连接到MCU。外部晶振电路一般选择8MHZ。单片机时钟电路原理图如图5所示 图5 单片机时钟电路 2.2.3 复位电路 上电自动复位,通过电容来实现,上电时电容充电完成复位,手动复位通过按动按键实现。复位电路原理图如图6所示。   图6

26、上电复位手动复位电路 2.2.4 通讯接口电路 通信接口主要应用在与外围的串行主机数据交换或者进行打印输出等任务。串行通讯只需很少的端口就可以实现单片机和PC机的通信,具有非常大的优势,在现在的短距离通信中广泛使用。串行通信分为两大类:串行异步通信和串行同步通信,对他们进行简单的程序设计即可灵活的实现通信。由于单片机的串口是TTL电平与PC串口的232电平不匹配所以单片机在与PC进行通信时需要进行电平转换。对于232电平转换芯片使用MAX232来实现,原理如图 7所示。 图7 RS232串行通信电路 2.2.5 数据存储电路 数据存储选择AT24C02。它是一个2K字节串行C

27、MOS E2PROM,内部含有2048个字节,每字节为8位,ATMEL公司的拥有先进的半导体生产工艺,是的这款芯片的整体功耗很低,AT24C02有一个8字节页写缓冲器该器件通过I2C总线接口进行操作。原理如图8所示。 图8 EEPROM存储电路 2.3 HS0038红外遥控 2.3.1 红外遥控简介 我们一般把波长从770nm到410um的这的电磁波称为红外线,在这个波段的电磁波对我们人的眼睛来说是不可见光,又因为波长在红光的波长的左边,因此我们称之为红外线。红外遥控方便我们远距离控制整个系统。在能够看见的区域内红外遥控作为一种最便宜的遥控设备,目前几乎所有的便捷控制设备都使用

28、这种遥控方式。因该设备应用十分广泛,且其内部应用的器件都十分的便宜,体积也很小,所以该红外遥控成为我们日常生活中一种更方便更理想的设备控制器。 红外遥控发出的光就是一种波长小于950nm而不能被人们所看到且颜色比较特殊的普通光。红外遥控电路十分容易设计,设计的成本也很低,仅仅需要一个晶体三极管作为放大电路就能够用来驱动发红外光的 LED,但在选择三极管放大电路时我们需要考虑HFE和响应频率是否能让红外接收器相匹配,只有红外接收头匹配发射器的频率,接收器才能够在噪音信号中分辨出我们需要的信号。 用电池作为电源时,由于电池的电压会降低,而通过红外发光管的电流也要随着减少,这样最终会使能够遥控的

29、距离变的越来越短,为了解决此问题,我们利用两个二极管串联与三极管的基极相并联,这样来解决此类问题。目前许多家用电器设备的遥控都是通过红外线来实现遥控的。这种遥控技术应用广泛,遥控起来简单可靠,生产廉价,所以这是大多数电器厂商选择的原因。 红外接收头原理图如图9所示: 图9 红外线接收头连接原理图 2.3.2 NEC协议 协议规定低位首先发送。红外遥控时,先发送9ms的高脉冲,接着发送4.5ms的低电平,然后发送一个字节的用户码、一个字节的用户码反码、一个自己的数据吗、一个字节的用户码反码,发送一次一共是四个字节。 NEC协议发送一次数据的发送过程如图10所示。 图10 N

30、EC协议发送一次数据的过程 当按下一次的这个按键遥控信息的四个字节发送完成假如你还不松手,接下来将不会再发送用户码和数据码,而是会紧接着发送重复码,重复码如图11所示。重复码是:9.0ms的高电平,4.5ms的低电平,一个0.56ms的高电平组成。其次就是特别要注意的地方,接收到的信号是跟发送信号正好反向的。 图11 NEC协议规定的重复吗格式 发送的一个字节的逻辑1位先是560us的高电平,然后是1.69ms的低电平组成的脉冲,脉冲波形如图12所示。 图12 NEC协议规定的逻辑1的波形 发送的一个字节的逻辑0位先是560us的高电平,然后是565us的低电平组成的脉冲,脉

31、冲波形如图13所示。 图13 NEC协议规定的逻辑0的波形 当红外线接收到一次数据时,首先会产生一个下降沿,将红外线接收头的数据输出引脚连接到单片机的外部中断,产生下降沿后,CPU进入外部中断的中断服务函数中,下面开始对这个对应的IO口读取数据,开始红外线解码过程。 2.4 音乐信号放大与播放电路 2.4.1 LM324放大芯片 音乐信号放大在本设计中至关重要,没有没有放大,音响就不会发出动听的音乐。LM324芯片及内部运放结构如图14所示。 图14 LM324运放芯片 2.4.2 LM324音频放大 如图15所示是本设计中用于对音频信号放大的电路原理图,

32、这个放大电路采用±12V的双电源供电。 LM324的第四脚和第十一脚分别是正负12电源引脚。由于从单片机产生的语音信号或者外部输入的音频信号的幅值太低,不足以直接驱动喇叭来播放音乐,所以需要需进行功率放大。这个放大电路集成芯片采用LM324。对于LM324组成的运放电路来说,在电路中引入了负反馈,来提高运放的输入抗干扰能力。信号被放大后经电阻R13,送到下一级运放的反相端,信号经过两级运放后直接用来驱动喇叭,完成音乐的播放功能。 图15 LM324音频放大电路 电路特点:使用高性能的运放芯片LM324,并且在电路中加入了负反馈,电路噪声小、抗干扰能力强、放大性能稳定、使用元器件数少、设

33、计简单, 3 心形灯设计 3.1 信号AD采集 本设计所选用的MSP430单片机内部自带有12位的AD转换器,对于这个AD转换器来说在它的内部一共有16路的AD输入接口,但是在这个AD转化器在单片机的外部接口所引出的只有P6口的8路输入通道。其他8路与我们的设计无关,这里不多做赘述。 ADC_12转换器内部模块图见附录图一。 3.1.1 使用方法概述 中断方式: 1、首先初始化ADC12模块,启动AD转换; 2、编写中断服务函数; 3、转完成进ADC中断; 查询方式: 1、与中断方式使用情况一样; 2、while (!(0x01 & ADC12IFG));

34、 3、转换完毕读取采样值,系统自动清除中断标志; 3.1.2 使用概述 ADC初始化配置步骤: 1、设置工作方式; 2、设置转换时间; 3、设置触发方式; 4、设置通道; 5、设置参考源; 6、其他细节配置: 正常使用AD转换的时候,一开始要配置SHP,在SHP的上升沿的时候AD转换器供电打开,进入开启状态,然后开ADC12ON,开ADC12ENC,再打开ADC12IE(如果采取中断模式)。最后就是让ADC12转换器为我们做转换工作。 3.1.3 相关寄存器 表2是MSP430f149的单片机与AD转换器相关的所有寄存器。 寄存器 寄存器缩写 寄存器含义 转

35、换控制寄存器 ADC12CTL0 转换控制寄存器0 ADC12CTL1 转换控制寄存器1 中断控制寄存器 ADC12IFG 中断标志寄存器 ADC12IE 中断使能寄存器 ADC12IV 中断向量寄存器 存储及其控制寄存器 ADC12MCTL0-ADC12MCTL15 存储控制寄存器 0-15 ADC12MEM0-ADC12MCTL15 存储寄存器 0-15 3.2 FFT算法 FFT即快速离散傅里叶变换。离散傅里叶变换在数字信号处理领域有广泛的应用场景。对于直接使用离散傅里叶变换缺点很明显:计算量大、耗时长、且要求相当大的内存,限制了离散傅里叶变换的真正

36、使用。1965年,离散傅里叶变换算法问世,一问世,这个算法就得到了广泛的应用。这个算法并不是一种新的获取信号频域特性的方法,它仅仅只是对离散傅里叶变换的一种快速运算。 先从DFT的运算来简要的介绍一下离散傅里叶变换,DFT运算与IDFT运算公式如下: 其中需要指出的是式中 如果我们用DFT的一般定义式来进行傅里叶变换,那么我们将要进行进行次复数乘法和次的复数加法。但是,如果我们使用FFT算法来计算离散傅里叶变换只需要进行次的复数乘法次数和次的复数加法,打打运算效率大大提高。 FFT算法在计算的时候有两种计算方式:(1)、按时间抽取的FFT算法;(2)、按频率抽取的FFT算法;但

37、是不管是按时间抽取还是按频率抽取的FFT算法都只能处理长度为N=2^M的情况。如图16所示是按时间抽取的输入倒序,输出顺序的基2FFT算法的运算流图。 图16 基2FFT算法运算流图 3.3 音乐频谱 3.3.1 频谱简介 众所周知,一切声音都是由机械振动产生。声音的振动频率的单位是赫兹(简写为 Hz),一赫兹,就是一秒钟振动一次。人的耳朵所能听到的声音的频率范围是从20Hz到20000Hz的范围内。如果一种声音的振动频率范围比这个范围要低的叫次声波,反之当声音的频率比这个范围高的声音叫做超声波。无论是超声波还是次声波,我们人的耳朵都是不能够听见的,而且次声波对我们人体还是有害

38、的,在生活中我们还应当避免,通过上面的介绍我们能够知道,我们人所能听到的音乐它们的所有的频率分量都是在这个范围的。根据傅里叶的在他的著作中的分析,所有的信号实际上都是可以将他们分解为无数多个的正弦波的叠加。我们将这些频率分量绘制成曲线,那么就形成了我们所说的频谱了。表1是我们常见的一些人声的基频范围。 男低音 80-320Hz 男中音 96-387Hz 男高音 122-488Hz 女低音 145-580Hz 女高音 259-1034Hz 表1 常见人声的基频范围 3.3.2 心形灯频谱 首先,我们用MSP430单片机的内部AD转换器去采样一个音频信号之后,将模拟的音

39、频信号变为数字信号。我们人所能听到的最高频率是20KHZ,由抽样定理可知,只要我们将AD采集的频率设置为40KHZ,然后将采集得打的数字信号经过FFT运算,得到对应的频域特征。一般来说,FFT运算时取点的个数为2的整数次幂的个数即可。下面就是关于怎么使用FFT去控制LED心形灯的闪烁,完成心形灯频谱。简单的来说,先将模拟的音频信号通过AD转换器以后采集为离散的音频信号,然后将采集到的结果进行FFT运算,再将FFT运算的结果的幅值计算出来进行量化以后去控制LED等即可。如图17所示是心形LED频谱设计的电路图。 图17 心形LED频谱电路图 共使用8*16个LED灯,在PCB板上排列成心

40、形,LED驱动使用三极管8050。在本设计中三极管的作用是起开关的作用。 4 程序设计 4.1 MSP430单片机开发环境 首先我们简单的说一下IAR Systems公司,这家公司是全球领先的嵌入式系统设计所用工具的提供商,同时还提供与相关的嵌入式服务。这家公司成立于1983年,到目前已经有33年的时间。主要为嵌入式开发通一下几种服务: (1)、集成开发环境(IDE); (2)、嵌入实时操作系统和中间件; (3)、硬件仿真器以及状态机建模工具; MSP430单片机开发中所使用的编程工具(IDE)目前在国内的种类是很少的,我所使用的MSP430单片机的编程软件就是由IAR Sy

41、stems公司出品Embedded Workbench for MSP430软件。这款软件为我们的编程提供许多的工具和强大的功能。对我们的项目提供一下几种功能:(1)工程管理、(2)、程序编辑、(3)、代码下载、(4)调试。现在IAR的最新版本为V5.10版。 我们使用这个软件来新建一个工程,然后来打开新建工程下面的main.c,软件自动我们的输入了如下的内容: #include "io430.h" int main( void ) { WDTCTL = WDTPW + WDTHOLD; return 0; } 可以看到;这段程序为我们包含了一个io430.h的

42、头文件,这个头文件是IAR公司为我们用C语言程序编写时为我们推荐的头文件。在这个头文件中为我们MSP430单片机的所有的寄存器做了声明。在这个版本之前的早期版本中可能是msp430.h这个头文件,在这个头文件中,对寄存器的声明方式都是以宏定义的方式进行声明的。然后这些都没有关系的,我们使用头文件可以根据自己的习惯来决定,选择什么头文件其实都不是那么的重要的,只要能正确的实现我们程序的功能即可。 一般情况下,对于我们普通的单片机开发人员来说,我们都是使用的C语言来开发我们的项目的,除了对一些硬件操作不得不用汇编语言来实现的时候,我们才会编写汇编程序。那么在用C语言进行编程的时候我们首先来了解一

43、下什么是C运行时库。在单片机上电的瞬间,实际上单片机的中央处理器CPU并不知道当前应该执行什么指令,而且单片机在上电的一开始绝对不是从main函数开始。首先会启动相关的C语言运行所必须的运行环境。然后才会去设置指令寄存器SP,SP一般设置的值是RAM的最高地址的值;然后就是为单片机所以运行必须初始化RAM,再初始化将要使用的全局变量,静态变量。这些数据是直接从程序存储区拷贝过而已,实际上我们所定义的某些变量它不仅仅只是占用了我们一部分的ROM空间,在程序运行的时候它还占了一部分的RAM空间,不过对于那些未初始化的全局变量和静态变量而言,他们仅仅被放在了一个特殊的区域而已,这个区域被全部初始化为

44、0。在这些操作做完以后,然后才会开始执行我们编写的程序,也就是从main函数开始执行了。因为对于我们这款MSP430单片机而言,默认情况下它内部的看门狗是打开的,那么如果看门狗溢出,后面的程序将不会得到执行,所首先在main函数的开始的地方我们就关闭看门狗。C运行时库还包含着所有的C标准库,如strlen、memcpy等函数;还有乘除法的实现等等。 4.2 程序烧写 我们在Embedded Workbench for MSP430这个开发环境中编写完我们的工程后我们还要进行相应的编译才能生成我们需要的文件,然后将编译后产生的这个文件烧写到单片机中,单片机才能完成我们预期的工作,程序烧写的

45、这个过程我们称为下载或者编程。MSP430单片机为我们提供多种编程方式,一般我使用BSL或者JTAG。 BSL就是启动加载程序(BootStrap Loader)的简称,这种方法我们可以直接通过单片机的编程引脚然后使用串口,电脑就能将我们的程序烧写到单片机中。 另外一种程序的下载方式就是MSP430单片机官方所推荐的方式,就是使用官方为我们提供的程序下载接口JTAG,JTAG是一种国际标准,通过这个JTAG接口外接仿真器,就能非常方便的为我们的单片机进行程序的烧写。并且JTAG接口还有另外一个非常重要的功能,那就是为我们的程序提供在线的仿真与调试。JTAG技术在嵌入式领域中广泛的应用,基本

46、上目前大多数单片机都是支持JTAG接口调试的,我们将JTAG仿真器连接到单片机提供的JTAG接口就能完成我们程序在硬件上面的单步运行等。目前,在市场上许多的单片机嵌入式产品都是支持JTAG调试标准的,如ARM、DSP、FPGA器件等。一般的JTAG接口是4线制接线标准:TMS(测试模式选择)、TCK(测试时钟)、TDI(测试数据输入)、TDO(测试数据输出)。目前JTAG的具体使用的时候有14针接线和20针接线两种方式,其定义分别如表3所示。 管脚编号 功能说明 2 、4 VCC 电源 9 GND 接地 11 nTRST 系统复位信号 3 TDI

47、 数据串行输入 7 TMS 测试模式选 9 TCK 测试时钟 1 TDO 测试数据串行输 6、8、10、12 NC 未连接 表2 14针JTAG接口定义引脚名称描述 4.3 程序流程图 4.3.1 AD采集部分 AD采集部分的程序流程图如图19所示,这部分程序的功能主要是是实现MSP430单片机内部的AD采集模块将模拟的音频信号转换为数字信号方便后面的FFT运算,首先程序一开始由单片机控制AD转换器的相关寄存器,设置相关寄存器的相应的位来初始化AD转换器,完成对AD转换器的初始化以后,还要对单片机的定时器进行初始化,对定时器的初始化

48、的目的是,设置单片机对AD采集转换结果的读取频率,这里我设置为1s。当定时时间达到1s,单片机对AD采集的值读取一次,然后将读取到的结果保存到缓冲区中。 图19 AD转换程序流程图 4.3.2 红外解码 红外解码部分,对于红外解码程序的变成思路是。由于我们并不知道使用我制作出来的音乐盒的使用者没会在什么时候按下红外遥控器的按钮,那么我们为了节约CPU的资源,而并不是不停的去检测红外接收头的输出口的电平变化状态,我使用的是单片机内部自带的外部中断功能。对于我选用的这款单片机MSP430f149 来说,他的外部中断功能是很强大的,他的P1口P2口的第二功能都能被配置为外部中断的。那

49、么我们只需要将MSP430的P1口或者P2口的任意一个IO引脚设置外部中断的功能,所以红外线程序部分的第一步就配置外部中断,当有键按下后CPU响应中断后进入红外线的具体解码部分;整个过程在50ms左右,完全不影响音乐等其他功能的正常使用。红外线解码过程的程序流程图如图20所示。 图20 红外解码程序流程图 4.3.3 系统整体流程图 下图(图21)就是我设计的基于单片机的遥控心形灯音乐盒系统的整个程序流程图了,系统上电,程序开始运行后,一开始对整个系统进行初始化操作,整个初始化过程包括(相关全局变量初始化,外部中断初始化,定时器初始化,AD转换器初始化,程控放大部分初始化,LED驱

50、动部分初始化,FFT运算子程序初始化,音乐控制子程序初始化),然后程序进入等待状态,等待用户按下红外遥控器的控制键,程序进入红外解码子程序,解析完键值后,程序进入音乐控制子程序,音乐控制子程序根据键值做出对应的控制。如果用户按下了音乐播放子程序,那么程序进入音乐播放部分,同时程序开始进行AD采集,FFT运算等一系列操作,完成对音乐的播放和对心形灯频谱的控制。最终给人惬意的享受。 图21 系统总程序程序流程图 致谢 不知不觉大学四年就这么过去了,在这四年里我有幸结识了很多的朋友,遇到了很多勤勤恳恳,对我们负责的老师。可能这些老师有很多都叫不上我的名字,但是我清楚的记得他们的名字,他们的

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服