电子产品世界 » 论坛首页 » 企业专区 » Renesas » 基于uCOS-ii的语音播放平台系统的设计(可扩展为语言识别、图像异常检测等)

共9条 1/1 1 跳转至

基于uCOS-ii的语音播放平台系统的设计(可扩展为语言识别、图像异常检测等)

助工
2012-11-21 10:21:29    评分
小组队名:天籁齐舞
        天籁是音
        舞是视
        齐是齐心协力
小组成员如下:
成员名 擅长方向 所在地 工作学习状况 备注  
andery88 底层驱动、硬件架构 北京海淀 研二  
qqjiaqq001 uCOS-ii操作系统 江西萍乡 本科毕业后工作3年  
zhangpeng759 工业控制  湖南长沙 本科毕业后工作近2年   
tuyukui2 制造业  山东威海   有待完善
         
         
         
         
         
       
       最近,我也一直再玩MCU,一次偶然的机会再我用一款同样也是32位的MCU做开发时,发现一个很棘手的问题:在做系统开发时发现直接用C语言来编写的传统的前后台运行的系统感觉系统设计太复杂,而且最关键的是当要向其中增加新功能时,就要对前面所设计的整个系统都要修改,工作量很大,于是我就寻找有没有更好的办法来解决这个问题,答案是肯定的了,那就是嵌入式操作系统,多少专家学者根据各种不同的需求设计出了各式各样的操作系统,他们的应用场合不尽相同,需要根据需要有区别的选择。
       由于我是在嵌入式操作系统方面还是一个新手,就选择了一个结构相对简单,易于理解的操作系统----uCOS ii操作系统,据查,该系统性能稳定,经过美国航空航天安全局(FAA)的认证,可将该操作系统应用于航天航空器上。说大了也没有用,接下来我就在网上查找在该芯片上是否有已经移植好的uCOS ii操作系统,巧了,还真被我找到了,与是二话没说先在MDK上将所给的系统代码编译一下(系统代码是在MDK上编写的),如下是项目的文件:

哈哈!果真开源!程序没有任何错误和警告,如下是编译完后的结果:

为了弄明白编译后得出的这些数据是什么含义,我又在网上查了查相关的资料,得知:

     Code是指编译后二进制代码所占用的字节,

     ROReadOnly)是指程序中的常量(只可读不可写),

     RWRead/Write)是指程序中已经初始化的变量(即可读又可写),

     ZIZero)就是未初始化的变量(这类变量的值被默认赋值为0),

还有就是这些代码、常量、变量数据并不全部都作为image文件下载到MCU芯片的ROM里,这是因为ZI数据都是0,没必要包含,只要程序运行之前将ZI数据所在的区域一律清零即可,包含进去反而浪费存储空间,所以,在程序下载时真正下载到ROM中的也只有:

     Code+RO+RW=8630+482+100=9212(字节)=9K(字节)

而当程序运行后,RAM所占用的空间自然就是:

     RW+ZI=100+5812=5912(字节)=5.77K(字节)

然后我对着目前我所使用的MCU芯片:

     STM32F051R8其具有Flash memory64K(字节),SRAM8K(字节)

  经过对比可以发现作为一个裸uCOS ii系统其Flash memory还可能足够用,不过,SRAM的容量可不那么乐观了,单单运行uCOS ii系统和两个简单的闪烁LED任务就耗费了5.77K字节的内存空间(占总空间的72.1%),这要是再运行预设计应用程序,岂不系统崩溃了。除此之外还有一个弊端就是该芯片的主频最大为48MHz,作为预开发的系统来说是有点低。

         为此我正在寻觅哪里能够得到一款合适的MCU芯片,巧了,还是EEPW,还是瑞萨电子推出基于Sakura开发板的系统开发,其内部资源我大致看了一下,如下:

       MCURX63N (R5F563NBDDFP)

   主频:96MHz

      Flash Memory1MB(字节)

      RAM125KB

   哈哈!完全正好符合系统设计的要求,说实话当我自己看到这个帖子的时候,心里别提有多激动了,话说一个巴掌拍不响,众人划桨开大船,我在这里也预招兵买马,希望那些和我有共同兴趣的同学或成功人士加入这个团队一起努力,把这个系统工程做起来!好了,动员的话就说到这里,接下来还是来说重点的项目内容:

基于uCOS iiMP3系统设计(后期可以考虑MP4、语言识别、视频异常检测等)

系统原理图:

 

实物图片:

系统硬件图:

从左至右依次为:MP3模块、MCU开发板、TFT液晶触摸屏

未安装MCU开发板时的系统图:

如若采用瑞萨的RX63N到时再换个板子重新“布线”,呵呵!

TFT液晶屏的背面(内含SD卡槽):

 

 

 

 

 

系统工作过程:

1、  MCU开发板(预采用瑞萨的RX63N开发板)在该工程中起到承上启下的作用,在MCU上运行uCOS ii系统,在该操作系统上运行着3个任务(如若以后预增加功能,只需在此基础上增加任务即可):

1)  TFT液晶屏驱动显示任务,考虑到此任务仅负责显示任务,所以设置其的优先级最低。

2)  TFT触摸控制任务,考虑到此是控制部件,需要实时响应,所以设置其的优先级最高。

3)  MCU读取SD卡音频数据任务,考虑到MCU读取速度快于MP3模块需求音频数据,所以此任务的优先级居中但要低于MCUMP3模块传输音频数据的任务的优先级。

4)  MCUMP3模块输送音频数据的任务,此任务的优先级要略高于MCU读取SD卡音频数据的任务。

2、  各模块之间的通信方式:

MCU与液晶屏采用16位并口数据传输,控制线采用单个独立I/O进行控制。

MCUSD卡通信采用SPI的数据传输方式。

MCUMP3模块也采用SPI的方式进行数据的传输。

    本系统设计完成后,还可以考虑在此基础上实现语音识别、图像异常检测等更多功能(届时只需增加部分任务即可哦)。

最后,我期待着获得这款开发板,并与有着共同爱好的同学或成功人士共同来完成这个系统的开发,期待着大家的支持和参与,谢谢!

 

 




关键词: 基于     uCOS-ii     语音     播放     平台     系统     设计    

院士
2012-11-21 10:27:31    评分
2楼
这也是申请的理由吧?

助工
2012-11-21 10:34:51    评分
3楼

是的,我是想在renesas的RX63N开发板上建立一个处理平台,运行一个操作系统,然后再在其上进行功能扩展。
欢迎有相同兴趣的朋友们支持我,共同完成系统的开发。。。
跟帖组团啦!!!


助工
2012-11-21 11:38:03    评分
4楼
想学习一下,有什么要求么

助工
2012-11-21 11:47:31    评分
5楼
我申请加入一起 学习一下。

助工
2012-11-21 12:50:40    评分
6楼
不错,要求加入,一起学习

助工
2012-11-21 13:51:37    评分
7楼
我也来加入探讨探讨这玩意儿

工程师
2012-11-21 15:00:30    评分
8楼
顶一个!

工程师
2012-11-22 11:07:05    评分
9楼
我申请加入

共9条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]