基于凌阳SPCE061A的嵌入式应用系统设计

发布者:郑大大最新更新时间:2012-01-09 关键字:SPCE061A  嵌入式应用系统 手机看文章 扫描二维码
随时随地手机看文章

  引言

  SPCE061A是凌阳科技新推出的u課SP内核的十六位单片机,内嵌32K字 Flash的SPCE061A时是适用于数字语音识别应用领域的一种经济的选择。它支持精简指令系统,片内具有丰富的硬件资源。只需设计少量的片外扩展电路即可实现应用系统的硬件功能要求。μC/OS-II是一个源代码公开的精简的实时性很强的操作系统内核,移植性强,基于μC/OS-II来设计系统可以提高系统软件开发的效率。将μC/OS-II移植到SPCE061A上,在μC/OS-II的平台上设计软件对于提高相关嵌入式应用系统产品的质量,减少开发周期和降低成本方面有着重要的意义。

  基于SPCE061A的硬件最小系统的设计

  SPCE061A的系统结构

  SPCE061A具有丰富的片上系统资源,结构如图1所示,其片内包括:

  ·16位的高性能u課sp内核单片机

  ·CPU时钟范围:0.32MHz~ 49MHz

  ·片内32k字的Flash程序存储器、2k字的SRAM数据存储器

  ·2个16位I/O端口

  ·14个中断源

  ·1通道专用音频A/D转换通道

  ·7通道A/D转换通道

  ·内置MIC放大电路和自动增益(AGC)放大电路

  ·2路电流输出型的D/A转换通道

  ·2个16位通用定时器/计数器

  ·实时实钟(RTC)

  ·低电压复位、低电压监测

  ·内置在线仿真接口(ICE)

  ·具有保密功能

  ·具有WatchDog功能

  基于SPCE061A的最小应用系统的构建

  基于SPCE061A丰富的片内资源,在它的OSCO、OSCI端接上32768 Hz晶体振荡器及谐振电容,在锁相环压控振荡器的阻容输入VCP端接上相应的电容、电阻后,再加上复位电路即可构成一个最小系统。如图2所示。外围电路接口可扩展LCD液晶显示器用于对有关数据的实时显示。

  μC/OS-II 在SPCE061A上的移植

  μC/OS-II内核移植的主要内容

  μC/OS-II是为微控制器和应用软件开发而设计的抢占式实时多任务操作系统,其内核主要实现任务调度、任务间的通信、内存管理和时间管理。其软件体系结构以及与硬件的关系如图3所示.
多任务应用程序位于最上层,通过调用内核的API函数来实现任务的调度和切换、存储管理和任务进程的通讯. μC/OS-II的大部分代码是用C语言编写,而与硬件相关的三个源程序文件0S_CPU.H,OS_CPU_A.A,OS_CPU_C.C含有与硬件处理器相关的汇编语言代码,来实现对处理器寄存器的访问以及堆栈的操作.因而μC/OS-II操作系统在SPCE061A上的移植主要是对0S_CPU. H,OS_CPU_A.A,OS_CPU_C.C三个源程序的编写。

  其中OS_CPU.H 中包括了用#define定义的与处理器相关的常量,宏和类型定义.这样与μC/OS-II所定义的变量类型相一致.OS_CPU_A.A 中要求用户编写四个简单的汇编函数:(1)OSStartHighRdy()函数的作用是用于运行最高优先级的就绪任务.(2)OSCtxSw()是实现 CPU 在正常运行时任务间的切换,即对当前任务堆栈的保存和对高优先级任务堆栈的弹出,使最高优先级任务获取CPU 的控制权. (3)OSIntCtxSw()是在中断服务程序中执行任务切换功能的函数.(4)OSTickISR()是系统时钟的中断服务程序.该程序执行频率为10~100 Hz,主要功能是检查是否有由于延时而被挂起的任务成为就绪任务,如果有就调用OSIntCtxSw()进行任务切换,从而运行高优先级的任务. OS_CPU_C.C中主要是编写任务堆栈初始化函数OSTaskStklnit().

  移植中的关键问题

  多任务系统在运行时,任一当前正在运行的任务好像独占CPU一样,需要为每个任务开辟一段内存空间作为该任务的任务堆栈,该堆栈的作用是保存任务被切换前时CPU各寄存器的值以及系统堆栈的数据。由于不同的处理器其内部的寄存器分配不一样,有时堆栈的增长方式也不一样,因而移植的关键问题就是要针对不同的处理器如何在任务切换时做好寄存器的状态的保护,以及系统堆栈和任务堆栈的切换,从而编写好介于底层硬件和操作系统之间的软件层。凌阳 SPCE061A单片机有R1~R5五个通用寄存器,以及段寄存器SR, 程序计数器PC,共有7个CPU内部寄存器在任务切换前需要保存。μC/OS-II系统通过调用OSCtxSw()来实现任务的切换。

  语音识别系统实例

  本系统通过设计一个语音识别系统来验证μC/OS-II在SPCE061A上的移植成功,系统共创建4个实时任务,硬件实现上只需在最小系统上增加相应的音频电路和液晶显示模块。

  //建语音识别初始化任务

  OSTaskCreate(Task1, (void * )0, (void*) tackl[-TASK—STK—SIZE一1],1);

  //建立语音训练任务

  OSTaskCreate(Task2, (void * )0, (void*) tack2[-TASK—STK—SIZE一1],2);

  //建立语音识别任务

  OSTaskCreate(Task3, (void * )0, (void*) tack3[-TASK—STK—SIZE一1],3);

  //LCD显示的任务

  OSTaskCreate(Task4, (void * )1, (void*) tack4[-TASK—STK—SIZE一1],4);

  同时采用信号量来实现语音识别任务和LCD显示的任务之间的通讯,使得系统在成功识别语音后同时控制LCD输出识别的正确与否的信息。系统运行结果:系统初始化,调用训练函数进行语音识别训练;训练成功后,进入语音识别循环,并将语音识别的结果在LCD上显示出来。

  结语

  μC/OS-II操作系统具有较强的实时性,而且代码量较小(总计8K 多),现已被移植到许多处理器上。而将μC/OS-II移植到SPCE061A芯片上,具有一定的应用价值,使得基于SPCE061A的应用系统的设计可以更加灵活。同时μC/OS-II 实时操作系统的在SPCE061A移植,不但可以提高基于SPCE061A的应用系统的实时性、可靠性和稳定性,还提高了应用软件的可移植性,降低了研发周期。

  参考文献:

  1.  JEAN J,LABROSSE.uC/OS-II源码公开的实时嵌入式操作系统[M].邵贝贝,译.北京:中国电力出版社,2001

  2.  邵贝贝. 单片机嵌入式的在线开发方法[M]. 北京:清华大学出版社, 2004

  3.  任哲. 嵌入式实时操作系统uC/OS-II原理及应用[M]. 北京:北京航空航天大学出版社, 2005
  
  4.  刘海成,秦近平,韩喜春. MCU-DSP型单片机原理及应用[M]. 北京:北京航空航天大学出版社, 2006

关键字:SPCE061A  嵌入式应用系统 引用地址:基于凌阳SPCE061A的嵌入式应用系统设计

上一篇:交通信号灯控制电路的FPGA设计
下一篇:浅谈μCOSII在Cortex-M3核的ARM处理器上的移植

推荐阅读最新更新时间:2024-03-16 12:50

基于SPCE061A的语音识别技术应用
SPCE061A是凌阳公司设计的一种16位单片机,该款单片机资源丰富,具有极高的性价比,该单片机内置有2路DA转换,8路AD转换及在线仿真,并且有16×16位的乘法运算和内积运算的DSP功能,这为它进行复杂的语音数字信号的压缩编码与解码提供了便利,还可以做数字滤波器。这些特点为我们进行在语音处理尤其是语音识别领域的应用提供了便利。 语音识别技术在各个层面均有广泛的应用前景。电脑软件领域,例如:语音命令、语音输入,对话系统、查询系统、教学软件、游戏软件等;消费性电子产品领域,例如:电子记事本、声控玩具、语音拔号功能的手机等;工业产品领域,例如:车用移动电话、车用导航系统等;电话系统领域,例如:语音识别总机服务、语音拔号、语音订票订
[单片机]
SPCE061A在带USB接口功能的录音机中的应用
1 引言 通用串行总线(USB)是一种新兴的计算机外围串行通信接口标准,它克服传统计算机串/并口的缺陷,具有热插拔,即插即用,数据传输可靠,扩展方便,低成本等优点,已成为当前计算机必备的接口之一,同时也被广泛地应用于嵌入式系统设计中。 为了使USB开发者、爱好者轻松学习USB协议,开发USB设备,凌阳科技教育推广中心设计了USB接口模组。USB接口模组可以与任何满足资源条件的MCU连接,设计者可以使用它来完成自己的USB设备。本文正是介绍应用凌阳教育推广中心的USB接口模组结合SPCE061A单片机的语音特色完成带USB接口的录音系统。 2 芯片特性简介 2.1 SPCE061A特性简介 SPCE0
[单片机]
<font color='red'>SPCE061A</font>在带USB接口功能的录音机中的应用
SPCE061A在电冰箱中应用
随着家用电冰箱的普及,人们对电冰箱的控制功能要求越来越高,这对电冰箱控制器提出了更高的要求,多功能、智能化是其发展方向之一,传统的机械式、简单的电子控制已经难以满足发展要求。本文介绍了采用凌阳公司的SPCE061A作为控制器核心,对电冰箱的工作过程进行控制,并用语音将电冰箱的一些工作过程播报出来,使控制过程更人性化。 3.1系统组成 我们知道,电冰箱一般设有冷冻室和冷藏室,冷冻室用于速冻食品,在冷冻室中的食品可以存放较长的时间,冷冻室的温度为-16℃ """ -26℃左右;冷藏室以不冻伤食品又有保鲜作用为准,冷藏室的温度为2℃ """ 10℃左右;冷冻室食品中的水分会凝结成霜,到一定程度还要除霜。具体的说,电冰箱控制器的主要任务就是
[单片机]
基于SPCE061A的车载DVD播放器设计与实现
1 引言 近几年来,我国汽车产业发展迅猛,汽车相关的电子产品市场日趋庞大。车载DVD作为新一代汽车影音市场消费潮流的代表,发展前景相当广阔。目前在中国销售的汽车影音系统以外资品牌居多,国内品牌较少。因此,研究并开发出一套有自主特色的车载DVD控制系统,有其实际应用价值。本文为此设计并实现一套基于凌阳单片机SPCE061A的车载多碟DVD播放器。 2 系统硬件 本文介绍的车载多碟DVD系统,其硬件结构图如图1所示:虚线右方为车载多碟DVD播放器的硬件结构框图,它以凌阳16位单片机SPCE061A为核心,集成了DVD控制模块、FM/AM收音模块、声音控制模块、LCD显示模块、键盘模块以及红外遥控处理模块;虚线左方为多碟DVD
[单片机]
基于<font color='red'>SPCE061A</font>的车载DVD播放器设计与实现
SPCE061A单片机在汽车倒车防撞报警器中的设计与研究
  该系统以SPCE061A 单片机为控制核心, 工作时, 超声波传感器采集的数据, 由控制核心快速计算出汽车车尾与障碍物的距离, 并通过LED 显示提醒信息, 该系统主要利用单片机的实时控制和数据处理功能, 完成系统的控制。最后阐述了报警器的硬件电路原理及软件设计。   1.引言   随着汽车工业的飞速发展, 拥有私家轿车的人越来越多, 将会出现的交通问题也会随之越来越多。其中安全倒车是刚拿驾照或车龄不久的开车人士最为担心的问题之一, 只要稍不留神不仅会给自己或别人带来损失, 还有可能造成不必要的争吵。针对上述问题, 我们设计了一个倒车防撞报警器, 能以声音或者更为直观的显示告知驾驶员周围障碍物的情况, 解除了驾驶员泊车和起
[单片机]
<font color='red'>SPCE061A</font>单片机在汽车倒车防撞报警器中的设计与研究
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved