版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘要本文根据单片机的优点,根据采用振荡器的普通电子钟的设计原理入手,设计了一 款具有语单识别、报时、秒表等功能的新型语单电子钟。详细介绍了本语音电子钟系统 的硬件和软件设计。硬件:单片机系统(DAC(ADC语音识别、定时 计数等)、时钟芯片 单元、音频输入输出单元、显示单元、接口电路单元、电源电路单元、键盘中断单元。 软件:初始化主程序系统、各功能子系统、中断服务子系统。本设计系统采用具有dsp(数 字信号处理)和双通道DAC的APCE061AI片机和SPLC501A(64亍X 128列)来完成。关键字:新型电子钟语单识别 SPCE061A LCD12864AbstractAccording
2、to the advantagesof using microcontroller, according to the design of the oscillators ordinary electric clock multi-duties, designed a paragraph of time, with voice recog niti on, the new voice fun cti ons such as a stopwatch electric clock. Detailed in troduced this speech electric clock system har
3、dware and software desig n. Hardware: the sin gle-chip microcomputer system (DAC (ADC, speech recog niti on regular coun ti ng), clock chip un it, audio in put/output un it, display un it, in terface circuit un its, power supply circuit un its, keyboard interrupt unit. Software: initialization main
4、program system, each function subsystem, interrupt service subsystem. This design system using a DSP (digital signal processor) and the dual channel DAC spce061A, and splc501A (64 do x 128 column) to complete.Keyword: New electric clockSpeech recognition SPCE061A LCD12864第一章引言 1第一节设计背景和意义 1第二节研究现状及未
5、来技术发展 1第二章 研究的主要内容及预期目标 3第一节研究的理论基础 3第三章系统的硬件设计 4第一节ISPCE061单片机系统电路 4第二节晶振电路 6第三节麦克风输入电路 7第四节音频输出电路 7第五节电源电路 8第六节SPLC501液晶显示系统电路 8第七节 电路板、pc连接电路(下载区) 9第四章系统的软件设计 11第一节 中断程序系统 11第五章系统调试 26第六章研究结果及结论 28致谢 29参考文献 30第一章引言第一节设计背景和意义电子钟表是一种用电能为动力的计时器, 利用数字电路来显示秒、分、时的 计时装置。其基本组成部分一般由电子元器件构成。采用 LCD显示装置。电子钟
6、中使用最多的是石英电子钟。由于采用了振荡频率稳定的石英振荡器和相应的集 成电路,石英电子钟比其他各类钟有明显的优越性, 包括走时精度高、稳定性好、 使用方便、耗电量小、走时延续时间长、体积小、功能多、制造成本低、显示直 观等,因而得到广泛应用。随着人们生活环境的不断改善和美化, 在许多场合可 以看到数字电子钟。时钟和日期在现代的生产和生活中占很重要的地位, 但目前市场上各式各样的电子钟大多数用全硬件电路实现,电路结构复杂,功率损耗大并且无新意,呆板死气。因此有必要对数字电子钟进行改进,通过高新的技术和高技术的硬件结合来设计新型的电子钟产品。本设计主要是对电子钟的功能的增强,在满足平时一般的生活
7、需求的同时对其人 性化设计,具有语音识别控制、备忘录提示等功能。第二节研究现状及未来技术发展本设计对普通电子钟改进的主要技术是语音识别技术和超大规模集成电路技术。语音识别技术包括信号处理、模式识别、概率论和信息轮、发声机理和听觉机理、 人工智能等。本系统的语音识别包括前端处理、模式匹配来实现人工智能。语音 识别的研究始于20世纪50年代,60年代和70年代初语音识别最重要的发展是 语音信号线性预测编码(LPC技术和动态时间规整(DTW技术1,有效地解 决了语音信号的特征提取和时间不等长匹配问题,对特定人的语音识别十分有 效。研究特点以孤立字语音识别为主,通常把孤立字作为一个整体来建立模块。80
8、年代,语音识别研究重点之一是链接词语音识别,开发了各种连接词语音识 别和关键词识别算法,如多级动态规划语音识别算法 2。目前在语音识别研究领域非常活跃的课题为稳健语音识别、 说话人自适应技 术、大词汇量关键词识别算法、语音说识别的可信度评测算法。基于类的语言模 型和自适应语言模型,一级深层次的自然语音的理解。 3国内外语音识别根据说话人可以分为:特定人,任意人。本系统特性为特定人的简单语音识别。语音 识别未来面临的主要问题:自然语言的识别和理解、语音信息量大、语音的模糊性、语音特性的变动、环境噪声和干扰降低了识别率。4单片机是超大规模集成电路技术的产物,包括中央处理器CPU存储器、定时/计数器
9、、中断系统、I/O和DAC(ADO电路。早起单片机都是8位或者4位的, 随着技术的发展高端的32位单片机诞生,主频超过300MHz处理速度提高很多 倍。单片机由于集成度高,系统结构简单,模块化,可靠性高,处理速度快,目 前在生活中的各个领域随处可见,广泛应用于仪器仪表、航空航天、医用设备等。 单片机诞生于 20世纪70年代末,经历了 SCM MCU SoC三大阶段。随着超 大规模集成电路技术的发展,单片机的应用更加广泛和深入。第二章 研究的主要内容及预期目标第一节研究的理论基础理论基础:(1)模/数电子技术(2)电路分析原理(3)单片机原理(4)数字信号处理(DSP(5)语音识别技术 研究的主
10、要内容:(1)语音识别技术(2)D/A、A/D 技术(3)数字信号处理(DSP技术(4)接口电路及键盘电路设计(5)系统的各子程序模块设计(6)系统的稳定性和抗干扰性 系统的预期目标和可行性:(1)系统的预期目标(2)1SPLC5011面显示时间、日期、星期(3)时间的可调性和闹铃选择(4)备忘录提示(5)语音识别控制报时功能(6)系统的可行性(7)系统的稳定性本系统采用高度集成的单片机 SPCE061A处理速度快,SPCE061A勺实时时 钟32768Hz经过PLL倍频电路产生系统时钟频率再经过分频得到CPU时钟频率。时基信号来于32768HZ为系统提供中断信号。电源的的前后两组电容用来去耦
11、滤 波。5为了获得标准3.3V电压,在板子上加入 SPY0029A三端稳压器,两个 二极管,是为防止误将电源接反造成不必要损失保证了系统的稳定性。第三章系统的硬件设计第一节ISPCE061单片机系统电路图3.1 .1系统硬件结构图系统的硬件电路包括:单片机系统(DAC(ADC语音识别、定时/计数等)、 时钟芯片单元、音频输入输出单元、显示单元、接口电路单元、电源电路单元、 键盘中断单元。IOA的高八位接到液晶模组的八个数据端,同时也连接了液晶模组的电源,即直接用一根10pin的排线连接61板“ +”、IOA815“- ”与SPLC501A液晶显示模组的“ +”、DB07 “- ”,主要用来向液
12、晶模组传送命令和数据;IOB6接 EP, IOB5接R/W IOB4接AQ用来控制液晶的显示和工作方式。3.1SPCE061单片机系统电路-AS3mA = EZ- 二_二 s S2 as32 as ss 02 咗晏 WIA 董 3KF.W10Bi:a:j4舄已:2JJA: 1K)A:皿7mlK.ll umA 1KKIA sff22-第Jn存P产”LF-”& ,*二二一s10工 rem:-Z2L1LJ1 TOZEiDASiAC2 VF:AflC-IMAQQQ芝KASMiff图系统电路图附系统的存储单元分段SPCE061A包括:FLASH (闪存)、SRAM静 态内存)、通用I/O 端口、定时 器
13、/计数器、中断控制、CPU时钟锁相环(PLL)、ADq模拟数字转换器)、DAC(数 字模拟转换器)输出、UART(同步串行输入输出接口)、SIO (串行输入输出接口)、 低电压监测/低电压复位模块、Watchdo声音模/数转换器输入通道内置麦克风 放大器,并具有自动增益控制(AGC功能。内置在线仿真电路接口ICE (在线实时仿真/除错器)。SPCE061A的系统时钟由时钟发生器(32768Hz晶振)、锁相环(PLL)和时间基准信号(RTC组成。32768Hz的实时时钟经过PLL倍频电路产生系统时钟频率(Fosc),Fosc再 经过分频得到CPU时钟频率(CPUCLK)锁相环PLL (Phase
14、 Lock Loop) 振荡器 电路的作用是将系统提供的实时时钟的基频(32768Hz)进行倍频。时间基准信号, 简称时基信号,来自于 32768Hz实时时钟,通过频率选择组合而成。时基信号 发生器为定时/计数器提供各种频率选择信号并为中断系统提供中断源信号。此 外,时基信号发生器还可以通过分频产生时基信号,为中断系统提供各种实时中断源信号。第二节晶振电路VCP3300pCIOi/S3 104图3.2晶振电路32768Hz的实时时钟经过PLL倍频电路产生系统时钟频率(Fosc), Fosc再经过分频得到 CPU时钟频率(CPUCLK)锁相环PLL (Phase Lock Loop) 振荡器电路
15、的作用是将系统提供的实时时钟的基频(32768Hz)进行倍频。时间基准信号,简称时基信号,来自于32768Hz实时时钟,通过频率选择组合而成。时基信号发生器为定时/计数器提供各种频率选择信号并为中断系统提供中断源 信号。此外,时基信号发生器还可以通过分频产生时基信号,为中断系统提供各种实时中断源信号。第三节麦克风输入电路此电路主要人通过MIC把语音信号输入到系统中,单片机通过 dsp算法、 AD转换存储在flash中,然后通过API函数模式匹配进行语音控制识别及时报 时等。第四节音频输出电路时,DAC0输出电压(1/2 AVdd)与输入电压 Vin进行比较。如果 Vin VDAC,保持原先设置
16、为1的位(最高有效位)仍为1 ;否则,该位会被清为0。这个过程重复10次,直到这些位都被比较过。转换结果将会保存在SAR内。A/D转换完成之后,P_ADC_Ctrl (读)($7015H)的第15位RDY被置为” 1”。第五节电源电路图3.5电源电路采用3节5号电池进行供电,由J10接入,其中的前后两组电容用来去耦滤波,使其供给芯片更加平滑。为了获得标准3.3V电压,在板子上加入SPY0029A三端稳压器。两个二极管,是为防止误将电源接反造成不必要损失而 设置的,在操作过程中千万不要将电源接反, 因为反向电压超过一定的值,二极 管将会被损坏,达不到保护的目的。后面的零电阻及其电源分不同的几路是
17、为了 减少电磁干扰设置的。第六节SPLC501液晶显示系统电路丄4=十 一 r 丰CE口I31二 C1图3.6液晶显示系统电路SPLC501为液晶显示控制驱动器,集行、列驱动器和控制器于一体,广泛应 用于小规模液晶显示模块。SPLC501单芯片液晶驱动,可以直接与其他微控制器 接口总线相连。微控制器可以将显示数据通过8位数据总线或者串行接口写到SPLC501的显存中。SPLC501的特点:1. 内置8580位显示RAM RAM中的一位数据控制液晶屏上的一个象素点的亮、 暗状态。“ T亮“0”暗。2. 具有65行驱动输出和132列驱动输出。3. 可以直接与80系列和68系列微处理器相连。4. 内
18、置晶振电路,也可以外接晶振。5. 工作温度范围为一40摄氏度和+ 85摄氏度之间。SPLC501液晶显示模组采用 GPG12063YS3 LC模块,此模块内嵌 SPLC501芯片, 采用先进的COG技术,将 芯片嵌在LCD玻璃上。第七节 电路板、pc连接电路(下载区)ICE基本运行方式是通过控制clock及通过ICE伪指令方式,来控制CPU的运行及缓存器资料和内存资料的存取,因此必须通过控制缓存器值的设定来控制 目前CPU的动作。板上的74HC244主要是在我们用下载线进行程序下载时起作 用,主要起缓存的作用和完成对 SDA是用来作为数据回送还是数据下载进行选 择。3.8晶振、指示灯、复位、电
19、源电路等略。第四章系统的软件设计系统的软件设计就是个子程序系统设计,包括:初始主程序、功能程序、语 音函数库程序、中断程序图4.1程序结构图第一节中断程序系统语音识别中断语音识别技术主要是音频压缩技术的问题,本系统采用的是特定人的语音识别SD(Speaker Dependent):是指语音样板由单个人训练,也只能识别训练人的语音命令,而他人的命令识别率较低或几乎不能识别。8接口是API(Applicatio n Programmi ng In terface,应用程序编程接口)是一些预先定义的函数。语音输入识1!1别r模式训练语音模型语音输出:API函数:int BSR_DeleteSDGro
20、up(0)int BSR_Train (int Comma ndlD, i nt Train dMode)void BSR_InitRecognizer(int AudioSource)int BSR_GetResult(Void)void BSR_StopRecog nizer(void)void BSR_FIQ_Routi ne初始化:【API 格式】C: int BSR_DeleteSDGroup(0) ;ASM: F_BSR_DeleteSDGroup(0)【功能说明】SRAM初始化。【参 数】该参数是辨识的一个标识符,0代表选择SRAM并初始化。【返回 值】当SRAM擦除成功返回0,
21、否则,返回一1。训练部分:1) 【API 格式】C: intBSR_Train (intCommandID, intTraindMode);ASM: F_BSR_Train【功能说明】训练函数。【参 数】CommandlD :命令序号,范围从 0x100到0x105,并且对于每组训练语 句都是唯一的。Train dMode:训练次数,要求使用者在应用之前训练一或两遍:BSR_TRAIN_ONCE:要求训练一次。BSR_TRAIN_TWICE 要求训练两次。【返回值】训练成功,返回0 ;没有声音返回一1;训练需要更多的语音 数据来 训练,返回一2 ;当环境太吵时,返回一3;当数据库满,返回一4
22、;当 两次输入命令不 通,返回一5;当序号超出范围,返回一6。【备 注】 在调用训练程序之前,确保识别器正确的初始化。 训练次数是2时,则两次一定会有差异,所以一定要保证两次训练结果 接近。 为了增强可靠性,最好训练两次,否则辨识的命令就会倾向于噪音。 调用函数后,等待2秒开始训练,每条命令只有1.3秒,也就是说, 当训练 命令超出1.3秒时,只有前1.3秒命令有效。辨识部分:1 )【API 格式】C: void BSR_InitRecognizer(int AudioSource)ASM: F_BSR_InitRecognizer【功能说明】辨识器初始化。【参 数】定义语音输入来源。通过MI
23、C语音输入还是LINE_IN 电 压模拟量输入。【返回值】无。2 )【API 格式】C: int BSR_GetResult() ;ASM: F_ BSR_GetResult【返回值】=R1【功能说明】辨识中获取数据。【参 数】无。【返回值】 当无命令识别出来时,返回0;识别器停止未初始化或识别未激活返回-1;当识别不合格时返回一2 ; 当识别出来时返回命令的序号。 【备注】该函数用于启动辨识,BSR_GetResult();3 )【API 格式】C: void BSR_StopRecognizer(void);ASM: F_ BSR_StopRecognizer【功能说明】停止辨识。【参数】
24、无。【返回值】无。【备注】该函数是用于停止识别,当调用此函数时,FIQ_TMA中断将关闭。中断部分:【API 格式】ASM : _BSR_InitRecognizer【功能说明】 在中断中调用,并通过中断将语音信号送 DAC通道播放。【参数】无。【返回值】无。【备注】 该函数在中断FIQ_TMA中调用。 当主程序调用 BSR_InitRecognizer时,辨识器便打开 8K采样率的FIQ TMA中断并开始将采样的语音数据填入辨识器的数据队列中 应用程序需要设置一下程序段在.PUBLIC _FIQ.EXTERNAL _BSR_FIQ_Rout ine.TEXT_FIQ:PUSH R1,R4 t
25、o SP/R1 = P_INT_CtrlCALL _BSR_FIQ_Routi neR1 = 0x2000/P_INT_Clear = R1POP R1,R4 from SP;/RETIENDFIQ_TMA 中:/定义全局变量寄存器入栈保护/调用子程序清中断标志位寄存器组出栈其中实时监控是用来观察辨识是否正常工作,如果辨识正常则会产生一图4.3识别过程函数功能16ms连续稳定方波,否则如果CPU超载则会产生不稳定波形,此时需要删除命 令,或是优化程序否则会丢失语音数据产生辨识出现错误的信息。识别识别过程: 触发识别训练请输入第一条命令 请输入第二条命令请再说一遍(以上提示音每说完一遍出现此命令
26、)没有听到任何声音(当没有检测到声音时出现此命令)两次输入名称不相同两次输入命令不相同(当两次输入的名称不同时出现此命令)(当两次输入的命令有差异时出现此命令)准备就绪,请开始辨识(以上三条语句全部训练成功时,进入初始化训练提辨别器初始I 实时监获取语音数图4.3识别功能实现流程图键盘扫描中断工作中1按,键KEY1+KEY2KEY2KEY3KEY2KEY1+KEY3+KEY3 卄1f, 1 r闹钟选择播报日期播报时间功能选择识别训练KEY3KEY2KEY11 rU箭头前翻箭头后翻确认选择图4.4键盘选择说明 语音播报及闹铃程序段:/文件名称:bobao.c/功能描述:日期和时间的语音播报#i
27、nclude SPCE061A.h#i nclude s480.h#defi ne C_T00 0#defi ne C_T01 1#defi ne C_T02 2#defi ne C_T03 3#defi ne C_T04 4#defi ne C_T05 5#defi ne C_T06 6#defi ne C_T07 7#defi ne C_T08 8#defi ne C_T09 9#defi ne C_T10 10#defi ne C_DIAN 11#defi ne C_MIN 12#defi ne C_YEAR 13#defi ne C_MONTH 14#defi ne C_DAY 15#
28、defi ne C_BELL 16exter n un sig ned int year;exter n un sig ned int gmon th;exter n un sig ned int gday;exter n un sig ned int hour;exter n un sig ned int min;/ 语法格式:PlayRespond(unsigned int Result)/实现功能:对对传入的实参序号的语音资源进行播报void PlayResp ond(un sig ned int Result)/SACM_S480_l ni tial(1);*PN T_Ctrl_New
29、 = *PN T_Ctrl_New | 0x0004;使初始化后不影响2KZ中断SACM_S480_Play(Result,3,3);while(SACM_S480_Status ()&0x0001) != 0)SACM_S480_ServiceLoop(); *P_Watchdog_Clear=0x0001;SACM_S480_Stop();/ 语法格式:PlaySpeakYear(int YearTemp)/实现功能:播报年void PlaySpeakYear(i nt YearTemp)PlayRespo nd(YearTemp/1000);PlayRespo nd(YearTemp%1
30、000)/100);PlayRespo nd(YearTemp%100)/10);PlayRespo nd(YearTemp%10);PlayRespo nd(C_YEAR);/ 语法格式:PlaySpeakMonth(int MonthTemp)/实现功能:播报月void PlaySpeakM on th(i nt Mon thTemp)if(Mo nthTemp 1)PlayResp on d(DayTemp/10+C_T00);/十位1报if(DayTemp/10)0)PlayRespond(C_T10);/报十,十位为 1 不报 1if(DayTemp%10)!= 0)PlayResp
31、o nd(DayTemp%10+C_T00);PlayResp on d(C_DAY);/ 语法格式:PlaySpeakHour(int DayTemp)/实现功能:播报时 void PlaySpeakHour(i nt DayTemp)if(DayTemp10 & DayTemp20)PlayResp on d(C_T02);PlayResp on d(C_T10);PlayRespo nd(DayTemp%20);PlayRespo nd(C_DIAN);/占八、/ 语法格式:PlaySpeakMi nute(i nt Min Temp)/实现功能:播报分void PlaySpeakMi
32、nute(i nt Min Temp)if(Mi nTemp=0)PlayResp on d(C_T00);if(Mi nTemp/10)1)PlayRespo nd(Mi nTemp/10);十位/if(Mi nTemp/10) 0)PlayResp on d(C_T10);十位大于1报,为1不报1if(Mi nTemp%10)!=0)PlayRespo nd(Mi nTemp%10);的个位不为0则报/PlayRespo nd(C_MIN);/分的分的分分/语法格式:void speaktime()/实现功能:播报当前的时间void speaktime()PlayRespo nd(C_BE
33、LL);/PlaySpeakHour(hour);PlaySpeakMi nute(mi n);/报时声时分/语法格式:void speakday()实现功能:播报当前的日期void speakday()PlaySpeakYear(year);PlaySpeakM on th(gm on th);PlaySpeakDay(gday);中断修改程序:/文件名称:调整.asm/功能描述:中断程序。实现日期时间的调整。N CLUDE SPCE061A.i ncN CLUDE s480.i nc.EXTERNAL _num.EXTERNAL _clock.EXTERNAL _gyearmo nthda
34、y.EXTERNAL _gxq.EXTERNAL _mbn um.EXTERNAL _miaobiao.EXTERNAL _in t2hz.EXTERNAL _m apcou nter1.TEXT/=/汇编语言格式:_FIQ/功能描述:FIQ的中断服务函数.PUBLIC _FIQ_FIQ:判断是否TimerA中push r1,r5 to sp;/断。M=0x2000;test r1,PN T_Ctrl;jnz ?L_FIQ_TimerA;r仁0x0800;test r1,PN T_Ctrl;jnz ?L_FIQ_TimerB;判断是否为PWM中?L_FIQ_PWM:/断。r仁C_FIQ_PWM
35、;P_INT_Clear=r1;中断程jmp?OUT?L_FIQ_TimerA:/TimerA序P_INT_Clear=r1;call F_FIQ_Service_SACM_S480;jmp?OUT中断程序?L_FIQ_TimerB:/TimerBP_INT_Clear=r1;?OUT:pop r1,r5 fromspreti/汇编语言格式:RQO/功能描述:IRQ0的中断服务函数.PUBLIC _IRQ0RQ0:reti/汇编语言格式:_IRQ1/功能描述:IRQ1的中断服务函数.PUBLIC _IRQ1RQ1:reti/汇编语言格式:RQ2/功能描述:IRQ2的中断服务函数.PUBLIC
36、_IRQ2RQ2:reti/汇编语言格式:_IRQ3/功能描述:IRQ3的中断服务函数.PUBLIC _IRQ3RQ3:reti/汇编语言格式:_IRQ4/功能描述:1KHZ中断,用来实现秒表的修改。.PUBLIC _IRQ4RQ4:push r1,r5 tospr1=PN T_Ctrltest r1,0x0010jnz ?INT_1KHZtest r1,0x0400jnz INT_4KHZINT_2KHZ:r仁0x0020PN T_Clear=r1jmp?OUTINT_4KHZ:r仁0x0400PN T_Clear=r1jmp?OUTINT_1KHZ:r仁0x0010PN T_Clear=r
37、1r1=_mb numr仁r1+0x0001_mb nu m=r1r1=_mapco un ter1 r1=r1+0x0001_mapco un ter1=r1call _miaobiao清看r仁0x0001P_Watchdog_Clear=r1/门狗jmp OUTOUT:pop r1,r5 fromspreti/汇编语言格式:RQ5/功能描述:2HZ中断,用来实现时钟以及日期的修改.PUBLIC _IRQ5_IRQ5:push r1,r5 tospr1=PN T_Ctrltest r1,0x0004jnz ?INT_2HZINT_4HZ:r仁0x0008PN T_Clear=r1jmp ?O
38、UTINT_2HZ:r仁0x0004PN T_Clear=r1r1=_ num r1=r1+0x0001_nu m=r1调用时调用年调用星清看门call _clock/间运算子函数call _gyearm on thday/月运算子函数call _gxq/期运算子函数r仁0x0001P_Watchdog_Clear=r1/狗r1=_i nt2hzcmp r1,0x0000 jnz ?GAVEr仁0x0001_in t2hz=r1jmp?OUTGAVE:r仁0x0000_in t2hz=r1OUT:pop r1,r5 fromspreti/汇编语言格式:RQ6/功能描述:IRQ6的中断服务函数.
39、PUBLIC IRQ6RQ6:reti/汇编语言格式:RQ7/功能描述:IRQ7的中断服务函数.PUBLIC _IRQ7_IRQ7:reti/汇编语言格式:_BREAK/功能描述:BREAK的中断服务函数.PUBLIC _BREAK_BREAK:reti.END第五章系统调试3 厨 Monthdydock flJss t 3 sdutcs Ffes 出i DataOSforLCD.asn 也 hardware.asmi 史 IRQ.asm 国 Ksy.c 国man.匚 国mod或匚 申 Monthcteyclock.rc 圉 Kesarce J匚.asmS SPLC501Driwr_IC 固
40、SPLCSOlUser-c 固?y?tern,cF LJ Head FfesF |_J Eittemal DependBnckukem void dlaplayf);ewtecn void P1spendunsigned int Result); &Kt6:tn void speoktime ();extern void keyscanf J; uk:tuin void ncx exteen void SKtem void GKtBm vaid PKtEin void extern voidtdisplcLj ; setdayO; set ring; SEt3eaond(); speaktim
41、e|); spedidajd;ew:tetii void keyinitial ();/= = 谁又如 中用到的变讹L乂及常数数组 /= unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigiiBd unsigned uniied unsicspiedint k.eylagl=Cj int KeyElag2=Q; int keyEla.g3=0; int keyflag4=0; int keyflag5=0; int keyflag6=Q; int kyf107=0; int ringflag=0; int-
42、keyvaLiiiiB=Oj int runlag=0; i曲t nun-Q;健枝下标店1, 心傩tr卜标畜春 键按下标志久键按下标志4,控制迸丿键技下标志5,檯按下操苏$,键按下烁志T,打徉餓检下的慎值 当年闰月棉恚位 “2HE计帧鱼元绘制进丿控制进丿 控制也 控制进丿鱼日4 Edt 匪軸 &Qject Quid Tools 也ndow Help自国日勃3 & 1? Lui!即灯嘉E2 SI別莓团_j-TT-1 di*/7时主函裁调用的函数声甲图5.1 IDE运行界面IDE开发环境,具有编辑 编译链接调试以及仿真等功能其友好的交互界 面下拉菜单快捷键和快速访问命令列表等,使用户的编辑调试工作
43、更加方便 和高效。此外,IDE的软件仿真功能可以在不连接仿真板的情况下模拟硬件的各 项功能来调试程序。具有两种状态:一种为编辑状态,即用户可以对工程进行文 件增删、设置操作,或者对某一个源程序文件进行程序编写; 另一种为仿真调试 状态,即用户的整个工程通过编译后, 可以进入该状态将程序运行起来, 以验证 程序正确性,或者将程序下载到 SPCE061A中,并可进行在线调试。仿真调试状 态又分为:软件仿真和在线调试。工程内各类文件:1)工程文件(spj):以spj 为扩展名的工程文件包括创建一个工程所需的各 种信息2) 资源文件(rc):扩展名为 rc 的资源文件包括当前工程的所有资源的信 息。3
44、)资源表文件(asm)和资源表头文件(inc)。4)Make File 文件。5)C语言包含文件(h)选择软件仿真,在工具栏单击 Body选择图标,在弹出的Body选择对话框的 Emulator Dll 文本框中选择PortIO。然后编译并运行程序,此时就会看到 I/O 现象。标号0-f中“黑”为输入状态,“灰”为输出状态, 按下某个输入端相 当于输入一个高电平。每位I/O 口下面对应的状态灯“亮”表示此时输出高电平,“暗”表示此时输出低电平图5.2 I/O仿真图PWM的软件仿真方法选择软件仿真,在工具栏单击Body选择图标,在弹出的Body选择对话框的Emulator Dll文本框中选择 PWM PWM Wav窗口是数字示波器,把数字信号转换成模拟信号,声音数据通过PWM端口输出,在PWMWave窗口显示。编译并运行程序,在工具栏中选择“ Set e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 居间合同2025年度版:定义、属性与服务质量评估体系3篇
- 二零二五年度能源项目权益转让与投资合同3篇
- 二零二五年软件开发服务合同4篇
- 二零二五版智能LED户外广告平台合作项目合同3篇
- 影视器材租赁与技术服务2025年度合同3篇
- 二零二五年度房地产开发项目造价咨询合同6篇
- 二零二五版搬家运输合同:搬家运输途中物品丢失赔偿3篇
- 二零二五版海鲜加盟店日常运营管理与维护服务合同范本2篇
- 二零二五年度车辆转让附带绿色出行奖励政策合同3篇
- 二零二五年度智能办公桌椅研发合作合同2篇
- 一年级语文雨点儿-教学课件【希沃白板初阶培训结营大作业】
- 替格瑞洛药物作用机制、不良反应机制、与氯吡格雷区别和合理使用
- 河北省大学生调研河北社会调查活动项目申请书
- GB/T 20920-2007电子水平仪
- 如何提高教师的课程领导力
- 企业人员组织结构图
- 日本疾病诊断分组(DPC)定额支付方式课件
- 两段焙烧除砷技术简介 - 文字版(1)(2)课件
- 实习证明模板免费下载【8篇】
- 复旦大学用经济学智慧解读中国课件03用大历史观看中国社会转型
- 案件受理登记表模版
评论
0/150
提交评论