本帖最后由 北斗stone 于 2016-11-16 14:09 编辑
首先我对这次评测的申请做一下说明,本次评测坚持使用cube生成所有代码,方便大家学习如何使用cube以及使用规范的hal库。 开发环境打算用keil + stm32cubemx,先详细地描述如何安装cube以及生成代码文件,有几个很重要的细节我也会在帖子中详细地描述。另外,cube也支持带GCC的编译环境,本人用过英飞凌、TI、NXP的官方的基于eclipse的变种版本,很是好用。这次评测打算做一下ST主推的eclipse变种TureStudio的评测,我之前在官网也看了TureStudio免费版的限制。打算借这次机会,用F7的套件做个关于它的测评报告。第一篇报告打算做一个关于cube生成代码的使用,介绍如何生成一个含有基本外设的工程文档(LED输出、按键中断、板载STlink自带的串口)以及keil和TrueStudio的使用比较。
在今天的大环境下,针对很多公司研发都在做带RTOS的产品的情况,第一要义当然要用在F7套件上跑一下cube主推的FreeRTOS,在cube里面,ST又给FreeRTOS套了层函数接口,增强了程序的可读性、一致性,降低了写代码出错的概率。我会针对cube生成FreeRTOS的代码接口做详细的说明。第二篇的评测报告打算做一下使用cube跑一下FreeRTOS任务,介绍如何在cube内创建任务、信号量、队列等OS的关键部分,并且如何用串口输出各个任务时间、所处的状态以及调度器的工作情况。
然后,我打算利用一下板子上的已有的外设做下评测,想做以下这几个外设的评测,这些外设我会坚持使用CUBE去配置,而不是直接用demo代码: a.128Mb的SDRAM内存芯片,详细做一下如何用cube驱动这块sdram,会使用到外设FSMC。 b.512Mb的NOR flash,同样做一下如何用cube配置QSPI生成。 c.尝试一下板子上的四个mic,基于数字输出delta-sigma调制的信号,移植音频部分的内容SAI外设。 d.移植mipi接口的LCD屏,目前平板、手机的屏都是这个接口,驱动外设是DSI接口。 e.以太网接口。之前拿nucleo的F7板子只解决了用LWIP的TCP和UDP直传,没有使用netcon层接口。这次打算尝试一下使用netcon做。解决LWIP驱动这一块。 f.SD卡驱动,采用SDMMC外设驱动SD卡,同时使用FATfs文件系统,实现内存卡的读写。 第三篇评测主要做一下这几个高级外设的评测:FSMC、QSPI、SAI、DSI、LWIP、SDMMC等。如果过长,我会将它拆分成6个外设。
外设评测过之后准备做一下DSP核的评测,最直接的就是做个快速傅里叶分析。打算用MATLAB两个频率的信号合成一段数据给到M7,经过用CMSIS的DSP库进行分傅里叶分析。给出分析所用时间。第四篇打算做一下DSP内核的评测包括傅里叶分析,有空的话,再做下矩阵运算。
最后本人从事伺服控制,做的是永磁电机的无传感器的高频注入控制,在做完以上评测之后,准备移植下最新版本的电机驱动库,同时对比自己写的高频注入算法的效果。在已有的功率驱动板上换上F7的控制板,看看电机运行时电流的信噪比、转矩脉动,以及能做到的最小控制周期。第五篇写自己行业内的评测,侧重于驱动750W左右的伺服电机。
PS:本人崇尚开源共享的精神,虽然之前从没有写过评测,都是自己一个人闷头钻研,但想着正好能借这次机会把自己之前积累的东西分享给大家,同时也将自己之前做的零零散散的东西进行一个归纳总结,就写了这篇申请的帖子。坚持使用cube,将cube的东西分享给大家。
|