毕业设计(论文)-凌阳单片机实验板.doc_第1页
毕业设计(论文)-凌阳单片机实验板.doc_第2页
毕业设计(论文)-凌阳单片机实验板.doc_第3页
毕业设计(论文)-凌阳单片机实验板.doc_第4页
毕业设计(论文)-凌阳单片机实验板.doc_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕 业 设 计(论文)(说 明 书)题 目:凌阳单片机实验板姓 名: 编 号: 平顶山工业职业技术学院 年 月 日平顶山工业职业技术学院毕 业 设 计 (论文) 任 务 书姓名 赵成志 专业 电气自动化(PLC方向) 任 务 下 达 日 期 年 月 日设计(论文)开始日期 年 月 日设计(论文)完成日期 年 月 日设计(论文)题目: A编制设计 B设计专题(毕业论文) 指 导 教 师 刘昆磊 系(部)主 任 郭宗跃 年 月 日平顶山工业职业技术学院毕业设计(论文)答辩委员会记录 系 专业,学生 于 年 月 日进行了毕业设计(论文)答辩。设计题目: 专题(论文)题目: 指导老师: 答辩委员会根据学生提交的毕业设计(论文)材料,根据学生答辩情况,经答辩委员会讨论评定,给予学生 毕业设计(论文)成绩为 。答辩委员会 人,出席 人答辩委员会主任(签字): 答辩委员会副主任(签字): 答辩委员会委员: , , , , , , 平顶山工业职业技术学院毕业设计(论文)评语第 页共 页学生姓名: 专业 年级 毕业设计(论文)题目: 评 阅 人: 指导教师: (签字) 年 月 日成 绩: 系(科)主任: (签字) 年 月 日毕业设计(论文)及答辩评语: 平顶山工业职业技术学院毕业设计说明书(论文) 前 言在现代社会的生产活动,以及人们的日常生活中,单片机有着广泛的应用。而目前在国内各大专院校的电子相关专业课程中,单片机这门课也越显得重要;然而由于单片机本身的特点,以及其应用存在多学科相结合的特点,学生想熟练掌握、精通单片机技术并不是一件容易的事。凌阳公司的单片机具有高速度、低价、可靠、实用、体积小、功耗低和简单易学等特点;尤其是凌阳 16 位单片机 SPCE061A,集成有 ADC、DAC、PLL、AGC 等电路,并配有凌阳 16 位单片机集成开发环境(简称 unSP IDE) ,支持标准 C 语言和汇编语言编程,使得开发方便、容易;SPCE061A 精简开发板(简称 61 板) ,更以功能完善、价格低廉的特点深受院校师生的喜爱。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种手机、充电器、电话、电风扇、录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。各个学校电子相关专业的学生除了在课堂上学习单片机的知识外,还会通过课程设计、实践创新的环节中加强学生的单片机应用知识,而在学生最后环节的毕业设计中也在鼓励采用单片机制作一个具有一定功能的作品;本论文就是以单片机为主题的毕业设计。 本论文主要内容为61板的介绍及其开发应用。在编写过程中会有错误纰漏,请广大读者朋友批评指正。 关键词:SPCE061A . unSP IDE . 61 板 34 目录第1章 SPCE061A 芯片介绍11.1 SPCE061A单片机的内部结构11.2 SPCE061A 单片机的外部引脚2第2章 61 板介绍42.1 61 板的结构和功能42.2 SPCE061A 最小系统52.3 电源电路62.4 音频电路72.5 ICE 接口电路8第3章 如何用SPCE061A 单片机开发93.1 SPCE061A 单片机开发的过程93.2 61 板93.3 下载线和在线调试器103.4 开发环境12第4章 做程序前我们要进行哪些准备144.1 软件准备IDE 安装144.1.1 IDE 路径144.1.2 IDE 安装步骤144.1.3 IDE 安装路径下的资源164.2 硬件准备硬件连接、硬件检测174.3程序写入18第5章 61板的开发实例225.1 新建一个项目:1到100的累加225.2 1到100的累加文件的新建245.3 1到100的累加的编程与编译255.4 1带100的累加的在线调试28第6章小结32致谢33参考文献34第1章 SPCE061A 芯片介绍SPCE061A 是凌阳科技研发生产的性价比很高的一款十六位单片机,它采用高性能的 unS 内核,具有丰富的硬件资源,并集成了 ICE(在线仿真电路)接口,可以直接利用该接口对芯片进行下载(烧写) 、仿真、调试等操作。1.1 SPCE061A单片机的内部结构图 1.1 为 SPCE061A单片机的内部结构框图:图 1.1 SPCE061A内部结构图SPCE061A的特性参数如表 1 所示: 表 1 SPCE061A的系统特性参数特性参数说明 工作电压 (CPU)VDD为3.03.6V,(I/O)VDDH为VDD5.5VCPU工作频率 0.3249.152MHz数据存储器 2K Word SRAM程序存储器 32K Word FLASH-Rom /O端口 2组16位可编程输入/输出端口 中断 14个中断源,FIQ和IRQ两个中断优先级定时器/计数器两组16位可编程定时器/计数器模/数转换器7通道10位电压ADC和单通道10位声音ADC 数/模转换器 2个10位DAC输出通道UART 一个全双工通用异步串行接口SIO 一个同步串行设备接口节电功能 具备弱振方式和睡眠方式WatchDog功能 具备清除时间周期为0.75s的看门狗其它功能低电压复位、低电压监测、保密功能等1.2 SPCE061A 单片机的外部引脚SPCE061A 单片机具有易学易用的效率较高的一套指令系统和集成开发环境。在此环境中,支持标准 C语言,可以实现 C 语言与凌阳汇编语言的互相调用,并且提供了语音录放的库函数,只要了解库函数的使用,就会很容易完成语音录放,这些都为软件开发提供了方便的条件。 SPCE061A具有 PLCC84 和 LQFP80 两种封装形式,其引脚功能见表 2:表 2 SPCE061A引脚说明名称PLCC84 脚位LQFT80 脚位说明IOA0IOA741482835IOA7:0可设置为键唤醒,IOA6:0可设ADC输入IOA8IOA15536040, 4349普通 I/OIOB0575可设置为 SIO_SCKIOB1474可设置为 SIO_SDAIOB2373可设置为外部中断触发引脚EXT1IOB3272可设置为外部中断触发引脚EXT2IOB4171可与 IOB2 组成反馈信号IOB58170可与 IOB3 组成反馈信号IOB68069普通 I/OIOB77968可设置为 UART_RXIOB87867可设置为 TimerA 的 PWM输出口IOB97766可设置为 TimerB的 PWM输出口IOB107665可设置为 UART_TXIOB11IOB1568645955普通 I/ORESET676复位,低电平有效X32O121晶振输出X32I132晶振输入DAC12112音频 DAC1 输出DAC22213音频 DAC2 输出AGC2516AGC控制脚MICN2819MIC差分信号输入(负极)MICP3321MIC差分信号输入(正极)V2VREF23142V 基准点压输出MICOUT2718MIC前级放大输出OPI2617MIC次级放大输入VADREF3422AD 参考电压输出VMIC3725MIC电源VEXTRE3523ADC参考电压输入VDDIO51, 52, 7538, 39, 64I/O 电源VSSIO49, 50, 6236, 37, 52I/O 地AVDD3624模拟电源AVSS3415模拟地VDD7,155,78数字电源VSS9, 19, 3810, 27, 80数字地VCION879连接电容(PLL 电路相关)SLEEP6354睡眠模式ICE167ICE 使能ICECLK178ICE 时钟ICESDA189ICE 数据TEST143TEST 接高电平进入测试模式,PFUSE2920保密设定PVIN2011保密设定N/C10, 11, 30, 31, 32, 39,40, 61, 69, 70, 71, 72,73, 74, 82, 83, 844, 6, 26, 41, 42, 50, 51,53, 60, 61, 62, 63, 77未用第2章 61 板介绍SPCE061A精简开发板(简称 61 板) ,是以凌阳16 位单片机SPCE061A为核心的精简开发仿真实验板,是“凌阳科技大学计划”专为大学生、电子爱好者等进行电子实习、课程设计、毕业设计、电子制作及电子竞赛所设计的,也可作为单片机项目初期研发使用。 2.1 61 板的结构和功能 61 板除了具备单片机最小系统电路外,还包括有电源电路、音频电路(含 MIC 输入部分和 DAC 音频输出部分) 、复位电路等,采用电池供电,方便随身携带。61 板上有调试器接口(Probe 接口)以及下载线(EZ_Probe)接口,分别可接凌阳科技的在线调试器、简易下载线,配合 unSP IDE,可方便地在板上实现程序的下载、在线仿真调试。图 2.1 是 61 板(V1.6 版)的实物图。图 2.1 61板实物照片61 板的硬件结构框图如图 2.2:图 2.2 61板硬件结构框图上图中的各部分硬件说明如表 3 所示。表 3 61板各部分硬件说明名称说明POWER 5V 和 3.3V 供电电路 S4 复位按键 S5 EZ-PROBE 和 PROBE 切换的 3 pin 排针 EZ-PROBE下载线的 5 pin 接口MIC 麦克风输入电路 VRT A/D 转换外部参考电压输入接口K1K3 扩展的按键,接 IOA0IOA2PLL锁相环外部电路 RESET 复位电路 PROBE 在线调试器 5 pin 接口 J3 2 pin 喇叭插针 OSC 32768Hz 晶振电路PORTA/B32 个 I/O 口61 板的硬件电路大体上可分为 SPCE061A 最小系统、电源电路、音频电路、ICE 接口等模块,下面分别介绍 61 板的各部分电路。 2.2 SPCE061A 最小系统 SPCE061A 最小系统中,包括 SPCE061A 芯片及其外围的基本模块,其中外围的基本模块有:晶振输入模块(OSC) 、锁相环外围电路(PLL) 、复位电路(RESET) 、指示灯(LED)等,如图 2.3 所示。图 2.3 SPCE061A最小系统2.3 电源电路 图 2.4 是电源部分的电路,由电池盒提供的 4.5V直流电压经过 SPY0029 后产生 3.3V给整个系统供电。SPY0029 是凌阳公司设计的电压调整 IC,采用 CMOS 工艺,具有静态电流低、驱动能力强、线性调整出色等特点。 图中的 VDDH3 为 SPCE061A的 I/O电平参考,如果该点接 SPCE061A(PLCC84 封装,下面的介绍中当出现 SPCE061A的引脚描述时,均指此封装的芯片)的 51 脚,可使 I/O输出高电平为 3.3V;VDDP为PLL锁相环电源, 接SPCE061A的7脚; VDD和VDDA分别为数字电源与模拟电源, 分别接SPCE061A的15脚和36脚; AVSS1是模拟地, 接SPCE061A的24脚; VSS是数字地, 接SPCE061A的38脚; AVSS2接音频输出电路的 AVSS2。图 2.4电源电路图2.4 音频电路 音频电路由音频输出和音频输入两部分组成。图 2.5 是音频输出电路图。SPCE061A内置 2路10 位精度的 DAC,只需要外接功放电路即可完成语音的播放。图中的 SPY0030 是凌阳的一款音频放大芯片,可以工作在 2.46V范围内,最大输出功率可达 700mW。图 2.5音频输出电路SPCE061A 芯片中已经集成了音频输入专用 ADC 以及 AGC 放大电路,因此芯片外部的电路比较简单,图 2.6 是 61 板的音频输入电路模块。图 2.6 音频输入模块2.5 ICE 接口电路 SPCE061A芯片内部集成了 ICE(在线仿真)接口,PC 机通过 Probe(在线调试器)或 EZ_Probe(简易下载线)与 61 板相连,就可以方便地完成程序的下载、调试等。61 板为 Probe 和 EZ_Probe 各自提供了一组接口,可通过 S5 跳线来选择使用的接口类型。ICE 接口部分电路如图 2.7 所示。图 2.7 ICE接口电路第3章 如何用SPCE061A 单片机开发3.1 SPCE061A 单片机开发的过程传统的单片机学习硬件方案是编程器+开发系统+仿真器,由于这些设备相互之间各自独立,使用者在学习或开发项目时,需要反复不停地拔插电缆、芯片、电源等,其繁琐的连线和复杂的操作,极大的降低了学习和开发的效率,如稍有不慎就有可能造成器件和设备的损坏,给使用者带来不必要的麻烦或损失。而且备齐这些设备往往需要一笔昂贵的费用,大大提高了单片机学习的门槛。SPCE061A 单片机学习开发系统将开发软件、单片机开发系统(或称“实验板”)、下载线、编程器、仿真器进行完美的结合。SPCE061A 单片机里面整合了进行在线编程控制的功能模块,试验过程中无需拔插任何电缆和芯片,也无需切换电源,配合下载线,就可轻松地将编译好的代码下载到开发系统上进行验证或演示,整个过程只需利用鼠标操作即可。当然也可以使用配套的开发环境直接对实验板上的资源进行在线仿真。该开发系统摆脱了传统、繁锁的单片机学习方式,将当今最流行、最经济有效的学习方案完美地整合在了同一个系统中,是一个快捷、高效、灵活的单片机学习、开发方案。有了这个开发系统就同时拥有了学习实验板、下载线、编程器、仿真器,具有非凡的性价比,是单片机爱好者快速学习单片机开发的理想工具。所以,采用SPCE061A 单片机进行开发比采用传统单片机进行开发的过程简化很多,简单的说它的开发过程就是首先在我们开发环境中编程,把编好的程序下载到开发系统上,通过开发环境提供的各类调试窗口进行仿真调试,或者直接运行。3.2 61 板“61 板”是SPCE061A EMU BOARD 的简称,是SPCE061A 单片机的开发系统,通过挂接不同的硬件和下载不同的程序就可实现各类特定功能的系统。由于具有语音处理的特色,即便是不挂接额外的硬件,下载一些我们开发环境下提供的程序就可以实现一个复读机、语音万年历之类的系统,这也是一些人把61 板称为一个准产品的原因,至于如何下载和找到那些程序在后面的章节中会详细介绍。熟悉61 板,应该从各功能模块入手,关于各功能模块的划分见图2.1。下面将各区的功能进行一下简要的介绍,以便在后面的编程调试时知道是要操作硬件的哪一部分,关于详细介绍请参考附录。1. 电源区:为整个系统提供电源,通常采用系统配套的电池盒进行供电,只要放入3 节5 号电池就可以满足供电需求了。2. 下载区:程序就是通过这边的接口下载到SPCE061A 单片机的,当然,在进行在线调试时也能上传一些硬件信息到开发环境中。3. 音频区:这里的麦克风是用来进行语音输入的,还有一个喇叭的接口用来进行语音播放。4. SPCE061A 与周边:这就是整块板子的大脑,所有控制信息都是从这里发出的,那些周边器件用来协助SPCE061A 单片机正常工作。5. 键控区:采用这几个按键我们可以做一些简单的试验,比如说当板子里下载了复读机的程序,按这几个按键就可以分别用来进行录音、暂停和播放,如果下载了语音万年历的程序,这几个按键就可以用来设定初始时间和控制播放当前时间等。6. 复位区:这里是由几个简单的电子元器件组成,当按下这里面的按键后,单片机就重新开始工作,也可以说成是单片机里的程序从第一条开始重新运行。7. 端口区:用于对外挂硬件的控制,或者获取外部硬件的一些状态以便SPCE061A 来进行处理。图3.1 61 板功能分区图3.3 下载线和在线调试器由于61 板开发系统与传统单片机开发系统的不一样,下载线和在线调试器赋予的功能就比较多了,它不仅承担着把开发环境生成的目标代码灌入单片机的功能,在进行程序调试时,它又承载着把单片机里各功能模块的当前讯息传送到开发环境,以便程序员能够根据这些数据判断程序的正确与否,从而进行程序的修改,因为传上来的是单片机内部功能模块的当前讯息,所以这个调试过程就形象地称之为在线调试。所以说下载线和在线调试器(也称PROBE)即是一个编程器(即程序烧写器),又是一个实时在线调试器,相对于61 板开发系统来说它们的功能是一样的。用它们中任意一个就可以替代在传统单片机应用项目的开发过程中常用的两件工具硬件在线实时仿真器和程序烧写器。与61 板配套的是下载线,当然也可以用在线调试器来对他进行开发。图3.2 下载线联机开发图下载线的好处是便宜,但它在传输数据的过程中没有在线调试器快,在线调试器就比较贵了,另外在线调试器还可以调试凌阳科技一系列的单片机,但下载线做不到。图3.3 在线调试器SPCE061A 单片机的调试接口只有2 根控制传输线,在线调试器和下载就是通过这两根传输线加上一些同电脑并行口(也称打印口)商量好的规则来进行联络(商量好的规则就是通常在通讯领域所听说的协议),由于并行口的信号是多个口一同发出的,要把它转换成两根线的传输方式,SPCE061A 才能识别,正是在这里出现了下载线和在线调试器速度上的差别,从上面两个图可以看到在线调试器比下载线多一些硬件,在线调试器是通过设计一些硬件的逻辑关系进行转换的,而下载线是通过电脑进行软件编程来进行转换的,根据硬件处理通常比软件处理快的常识,我们就可得出在线调试器速度快的结论了。3.4 开发环境所谓的开发环境,其实就是一个或几个电脑上的可执行程序,它同我们通常使用的word 文本编辑器没有两样,仅是它们实现的功能不一样。不管是哪类单片机的开发环境都至少具备如下的功能: 1. 程序编写:可以在开发环境里录入程序。 2. 编译程序:负责把程序翻译成机器码。 3. 程序下载:把机器码下载到仿真板或开发系统上。61 板开发系统的开发环境叫做集成开发环境(也称IDE),它除了具备上面的三个功能外还可以组织多个程序文件形成一个系统开发的项目,这样更有利于一些大型系统的开发和各功能模块的模块化,同时它还结合SPCE061A 单片机的硬件提供各类在线调试窗口,使调试程序变得更加直观和简单,除此之外,它还提供一些软件模拟SPCE061A 单片机仿真的功能,在没有硬件的情况下也可以完成一些简单程序的调试。可以通过集成开发环境使用C 语言和汇编语言对SPCE061A 进行编程,也许你没有编程经验,甚至于不知道C 语言和汇编语言是什么东西,没关系,因为学习它们并不是一件困难的事情,为了更加的便于理解,本书中所编写的程序均采用C 语言,并且每一行程序都会加上详细的注释。之所以会有语言的出现主要是因为单片机或电脑只认识“0”和“1”,但人就难于理解,所以后来人们就发明了一种用文字助记符来表示机器指令的符号语言,这就是所谓的汇编语言,当然用汇编语言写的程序必需通过编译器翻译成机器码才能被单片机认识和执行。原来没有汇编的时候,那些电子技术的拓荒者们就是采用“0”和“1”来进行编程的,当然如果你修炼到了一定的层次也可以采用“0”和“1”来进行编程:),但那是完全没有必要的,除非你是超人,要不写一个比较大的系统程序是肯定会出错,一旦出错将很难查找,并且你的程序别人无法理解,不符合协同开化的潮流,再说现在的编译技术已经发展到非常成熟的地步了,完全可以胜任翻译的工作。人能够勉强理解汇编语言。人常用的语言是更上一层的高级语言,比如C, BASIC。这些语言编写的程序更容易理解,并且一般都能在多种电脑上运行(多种电脑上运行就是所谓平台概念,可方便的实现资源重复利用),但同样必须先由一个叫作编译器或者是解释器的软件将高级语言程序翻译成特定的机器语言程序。汇编语言主要优点是占用硬件资源少、程序直接对硬件操作加快了处理速度。但是不同的单片机,其汇编语言可能有所差异,所以不利于资源重复利用。C 语言是一种比汇编更高级语言。其优点是可以很好的组织程序,并且容易读懂,可以在多种单片机上运行,是普遍使用的一种计算机语言。缺点是占用硬件资源较多,处理速度和效率没有汇编高,当然这也取决于编译器的翻译结果,正如现实中翻译员水平参差不齐,有的人翻译得很慢甚至出错,但有的人翻译得又快又准。你可以在凌阳大学计划网站下载到一个集成开发环境的安装软件,如果你有这套开发系统,在附带的光盘里就可找到这个安装软件,安装过程非常简单,选择默认安装就可(建议新手还是使用默认安装,因为改变路径安装将会导致一些程序的路径错误,而新手通常不知怎样去设置)。图2.4 就是安装后打开的界面,你可以在这个界面下进行程序的录入、编译、调试和下载,如果你使用这个工具遇到什么难题,可以去查看Help 菜单下的Help Topics,那里把每一部分的功能都说得很清楚,当然也可以通过联系凌阳大学计划得到解决。图3.4 IDE 打开的界面第4章 做程序前我们要进行哪些准备4.1 软件准备IDE 安装4.1.1 IDE 路径SPCE061A 的开发离不开凌阳公司提供的集成开发环境(unSP IDE,后面简称IDE),在准备好61板之后,还需要安装IDE 以及完成61 板与PC 的连接;这样就可以准备体验开发的乐趣了。凌阳公司目前提供的IDE 共有3 个版本,分别为unSP IDE 1.6.2、unSP IDE 1.8.4、unSP IDE 1.16.1;本书的程序都是在最新的unSP IDE 1.16.1 上调试的,用户可以在61 板附送的光盘上找到unSP IDE1.16.1的安装软件包;或者可以在凌阳大学计划网站的下载专区下的软件开发工具栏目里找到它的下载链接。IDE 的安装软件包图标如图3.1 所示:图4.1 unSP IDE 安装软件包图标4.1.2 IDE 安装步骤在使用unSP IDE 之前,用户必须要运行Windows98/Windows2000/WindowsXP;注意在Windows2000/WindowsXP上使用本工具的用户必须拥有管理员权限,而打印端口必须被设置为SPP(Standard Parallel Port)模式,端口地址必须被设置为378H。找到IDE 的安装软件包,双击图标,unSP IDE 的安装软件被解压缩,画面如图3.2 所示,其后出现安装向导画面,如图4.3 和图4.4 所示:图4.2 安装软件解压缩图例图4.3 安装向导一图4.4 安装向导二按照安装提示,unSP IDE 就被安装到用户的硬盘上了。当然在安装过程中,可以选择IDE 的安装路径,但在本书,选用了默认的安装设置,即安装在路径C:Program FilesSunplusunSP IDE 1.16.1 下。4.1.3 IDE 安装路径下的资源在IDE 的安装路径下,可以找到非常丰富的资源,主要是针对教材以及其方面的例程,对于61 板的自学者来说,是非常有用的。打开路径:C:Program FilesSunplusunSP IDE 1.16.1SPCE061A,可以看到如图3.5 中所示的几个文件夹:图4.5 IDE 下的相关资源文件夹1.“example”文件夹里有很多例程,分为61 板典型实验(61_Exa)、基础实验(BaseExa)、C 语言例程(C_Exa)、音频应用例程(VoiceExa)等,初学者可以参考里面的例程,进行进阶的学2.“include”文件夹里面主要是一些头文件,有关于库包含的函数、变量声明,以及硬件寄存器声明等。3.“library”文件夹里面可以找到有关音频库(SACMV25.lib)、C 库以及SPCE061A 常用函数库。4.“TextBookExample”文件夹中为其它教材的范例程序。安装好IDE 后,我们可以先熟悉一下这个工具的界面。选择开始程序SunplusunSPIDEunSP IDE 1.16.1,或者直接双击桌面上的unSP IDE 1.16.1的图标,启动集成开发环境unSP IDE1.16.1。启动后的界面如图4.6 所示。图4.6 集成开发环境IDE 界面4.2 硬件准备硬件连接、硬件检测安装好unSP IDE 后,需要连接61 板,确认以下的硬件都备全了:1.下载线(又称EZ-Probe);2.完好的61 板;3.电池盒(要记得里面要装好电池);4.喇叭。电池盒的接头接到61 板上部的J10 电源接口(插座具有防插错设计),喇叭接到61 板上的J3 接口。连接正确后,打开电源盒上的电源开关,可以看到61 板上的电源指示灯(红色LED)点亮。各部分接口的位置如图4.7 所示。图4.7 各接口位置示意图下载线的一边(25 针插座)与PC 后面的并行接口(即打印口)相接,另一边的五针接头与61 板上的J11 接口(即标有“EZ-Probe”的插座)相接,并用J11 接口边上的S5 跳线把S5 的2 和3 管脚短接。如图4.8 所示。图4.8 下载线连接线示图注意:在下载程序前,请先打开电源。4.3语音功能程序写入连接好硬件,安装好软件后,我们就可以进行精彩的程序体验了。下载光盘中的三个语音相关的程序到61 板上,并让程序在61 板上运行,听听61 板的“声音”,感受一下真正的人机“对话”。现在我们来体验两种不同的风格。 听61 板“唱歌”1. 打开unSP IDE 集成开发环境。2. 选择FileLoad Program菜单项,如图4.9 所示。图4.9 Load Program 菜单3. 选择后,打开如图4.10 所示的“打开”对话框。图4.10 载入程序4. 在对话框中的“查找范围”一栏中,找到光盘下的文件夹“电子竞赛”,从里面找出一个播放语音音乐的程序。路径为:光盘电子竞赛基础篇语音功能a2000 自动播放a2000_AutoDebug。在Debug文件夹中,找到后缀为“.S37”的文件,本例为:“a2000_Auto.S37”;选择找到的文件,点击“打开”按钮,把程序载入IDE 中。载入程序后的IDE 如图3.11 所示,而程序下载前所需要用到的工具按钮的位置也在图中有标出;“Select Body”用于选择芯片、下载线类型,“Use ICE”使IDE 处于在线仿真状态(只有在这种状态下,程序才能下载到61 板里面),“Download”启动程序下载。图4.11 工具栏按钮5. 点击“Select Body”图标工具,即图3.11 中标出的按钮中的最右边的那个,打开“Select Body”对话框,如图3.12 所示。在“Body Name”下拉选择框中,选择“SPCE061A”;在“Probe”下拉选择框中选择所用的下载线、调试器,本例选用EZ_Probe(即简易下载线)。设置完成后,点击“OK”。图4.12 Select Body 设置6. 点击“Use ICE”工具按钮(Select Body 工具左边,图标上有“ICE”字样的),使IDE 处于在线仿真状态。7. 选择BuildStart DebugDownload下载程序到61 板中,或者直接点击按钮“Download”把程序下载到61 板上。当程序处在下载状态时,会弹出一进度条对话框以示下载进程,不过前提要保证软件的设置以及硬件的连接都没有问题才可以,如图4.13 所示。图4.13 下载进程对话框8. 程序下载结束后,拨下连接在61 板上的下载线,并把S5 跳线设置为1、2 管脚短接,这时候就可以听到动听的歌声了。一个有趣的语音辨识的程序在光盘中找到“电子实习”文件夹,打开文件夹,可以找到一个“程序.rar”文件,我们把这个压缩文件拷贝到PC 的本地硬盘中,并把压缩文件解压,解压缩后生成一个“程序”文件夹,而我们要找的“.S37”的文件在路径:程序趣味语音识别程序5Debug 里面,找到“Guard_SD.S37”文件。下载程序的方法步骤与前面一样,而不同的是,这个语音辨识的程序运行起来时,需要与操作都进行“对话”,下面是一个特定人辨识的范例,相关的操作方法如下。在程序中我们通过三条语句的训练演示特定人连续音识别,其中第一条语句为触发命令。在程序一开始为训练名称,即触发命令,然后提示训练两条命令,训练完毕开始辨识,当识别出触发名称后,发布命令则会听到应答,具体命令如下:训练提示音输入语音“请输入触发名称” “警卫”“请输入第一条命令” “开枪”“请输入第二条命令” “你在干什么?”“请再说一遍”(以上提示音每说完一遍出现此命令)“没有听到任何声音“(当没有检测到声音时出现此命令)“两次输入名称不相同”(当两次输入的名称不同时出现此命令)“两次输入命令不相同”(当两次输入的命令有差异时出现此命令)“准备就绪,请开始辨识”(以上三条语句全部训练成功时,进入识别)识别发布命令 应答“警卫” “在/长官”“开枪” “枪声”“你在干什么?” “我在巡逻/我在休息/我在等人”注意:在每次提示音结束后2-3 秒再输入命令或当上次应答结束2-3 秒后再发布命令。第5章 61板的开发实例5.1 新建一个项目:1到100的累加单片机的开发离不开程序的编写,我们需要通过程序告诉单片机,它要完成什么样的工作,以及怎么去完成。本章将用C 语言来实现一个简单的1 到100 累加的程序,而在编程前,要理清整个程序的大概思路,完成对程序的组织,也就需要预先画一个程序流程图。这样会大大方便后面的编程,以及程序架构的组织。要养成良好的编程习惯,一定要注意程序与流程图的先后关系,是先有流程图再有具体的程序;也就跟平常工作、办事一样,要事先对要完成的事情有个大概的理解、有个大概的思路后,才能一步一步地去完成所要做的事务。图5.1 为本程序的流程图。变量初始化i100?While(1)?结束开始请看门狗i+Uiresult=Uiresult+i图5.1 到100 累加程序的流程图在真正开始编程前,需要先建立程序的项目(又称工程);而项目则提供用户程序及资源文档的编辑和管理,并提供各项环境要素的设置途径。因此,用户从编程到调程之前实际上都是围绕着项目的操作。下面将以图示介绍项目工程的建立过程。1. 打开集成开发环境IDE,选择FileNew,打开“New”对话框,如图4.2 所示。2. 选择“Project”标签项。3. 在“File”文本框里输入项目的名称,本例把新建的项目取名为“TheOne”。在“Location”文本框里,输入项目保存的路径,或者可以点击右边的文件路径选择按钮,在打开的对话框中,选择项目要保存的路径。4. 点击“OK”,即完成了一个项目的建立。新建完成的项目会由IDE 自动生成以下几个文件:Resource.asm、TheOne.rc、Resource.inc、TheOne.h等,新建完的项目如图5.3 所示,点击“Source File”左边的“+”即可看到该项目所包含的源程序文件(它会自动由IDE 生成的Resource.asm、TheOne.rc 文件)。图5.2 新建项目对话框示意图图5.3 新建项目界面示意图5.2 1到100的累加文件的新建项目的建立,搭建好了软件开发所需的平台,用户就可以在其上进行针对单片机的软件开发了;但在动手写程序之前,还需要新建一个源程序文件(也就是常用的C 语言文件xx.c、汇编语言文件xx.asm),而程序的编写是直接在这些源程序文件里面进行直接编写的。本书的例子程序全部采用C 语言编写,所以先来看看怎么去新建一个C 语言文件。1. 选择FileNew,打开“New”对话框,如图5.4 所示。图5.4 新建一个C 语言文件2. 选择“File”标签项。3. 在左边的选择框中,选择文件类型“SP IDE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论