首先要说声抱歉,在爱板网看到四周年活动投稿的大奖,忍不住先去投稿了。 接着再次感谢下管理员给我这次评测机会。 在与非ST社区看到STM32F769 Discovery Kit开发板申请试用的时候有些晚了,活动快截止了,但按捺不住想试用的心情,赶紧把自己的申请理由满满的提交给管理员大大,没想到还真成功了,看来真是,“苦心人,天不负,百二秦关终属楚”,哈哈哈,有些扯远了,相信各位看官要忍不住朝我拍砖了,赶紧搬上今天的主角STM32F769 Discovery Kit (STM32官网)。 外观 高大上的东西,一看到屏幕就欣喜不已。
4英寸的电容式触摸屏,完美。
来张板子侧面角度欣赏下
硬件资源 STM32F769 Discovery开发板正面的板载资源 STM32F769 Discovery开发板背面的板载资源 其中可以看到这板子也是兼容Ardunio扩展接口 file:///C:\Users\simon\AppData\Local\Temp\ksohtml\wps296C.tmp.png
开发板的主控的话留后面再说,先来看下开发板其它接口的细节图。ST-LINK不陌生,基本上目前所有的ST开发板都自带,另一个MicroUSB接口带有USB高速以及OTG功能,是通过板载的USB3320收发器实现的。
STM32F769 Discovery可以说有3种音频输出方式,比如通过SPDIF音频输出的RCA接口,或者是3.5mm的音频输出接口,另外板子也预留了立体声输出的输出孔接口。其中RCA输出接口是通过主控器STM32F76969NI实现的,而3.5mm的音频输入输出接口是通过板载的WM8894音频codec实现的。
STM32F769 Discovery开发板比较特别的地方是支持POE(Power over Ethernet)传输,除了支持10/100M的以太网功能,还可以通过以太网实现供电,说到供电,此次的STM32F769 Discovery开发板确实给了我一个大大的惊喜,板卡可以通过5种不同的方式供电,比如说刚说到的POE供电,当然,这需要相应的外围电路支持,供电电压为48V DC,然后电压通过板载的POE模块转化成5V的直流供电提供给板卡供电,这是一种供电方式。
另外,板卡可以通过ST-LINK的MicroUSB接口供电,这个大家不陌生;通过上面介绍的USB OTG功能的MciroUSB接口供电,这又是另外一种供电方式;还有通过板载的Arduio扩展接口的5V供电,通过板子本身的5V外部接口供电,最后,有必要提一下,很多时候我们只有最常用的MicroUSB线材供电,然后很多时候因为受制于电脑端口的500mA输出电流,板子搭载更多的外设可能无法有效运行,这时我们也可以搭配适配器实现在ST-LINK端接口更大功率的供电,非常方便。有一点要特别注意,STM32F769 Discovery开发板的不同供电都需要调节板子相应的跳冒接口。
看完STM32F769 Discovery开发板背面的一些接口,再来看看拿掉屏幕之后的正面。
4英寸的屏幕模组与STM32F769 Discovery开发板的连接是通过MIPI DSI接口实现的。如果没记错的话,全球首款集成MIPI-DSI接口的MCU就是ST搞出来的,MIPI-DSI即移动产业处理器接口的显示标准规范,该串行接口通过少量引脚即可连接显示器,并能够提高支持的显示分辨率。我们通常能在网上智能手机、平板的拆解中看到,至于微控制器集成MIPI接口,也是那些有胆量的半导体商才敢搞。
屏幕下还能看到搭载的MXIC 512Mb的Quad-SPI Flash芯片。
file:///C:\Users\simon\AppData\Local\Temp\ksohtml\wps296D.tmp.png主控制器STM32F769NIH6
最后,来看下板载的主控芯片,ST的又一大基于ARM Cortex-M7微控制器的力作,具体型号STM32F76969NIH6,采用了TFBGA216封装。
STM32F76969NIH6产品参数如下,想了解更具体的可以去下载ST官方的规格书。
所以说呢,整个STM32F769 Discovery开发板就是基于STM32F76969NIH6微控制器的扩展,硬件系统框图如下。
开发板上电 第一次上电采用比较传统的ST-LINKV2-1电路模块上的MicroUSB接口,上电后运行出厂内置的固件,这个内置的固件在之前的STM32F4系列的Discovery开发板上也体验过,如下图所示。
图形化显示界面,非常友好的交互方式,预置音频播放、视频播放、录音、VNC、智能家居、Touch GFX 、Embedded Wizard等功能。
WAV无损格式音频
播放录音功能
以太网功能
可以通过局域网ping通板卡 file:///C:\Users\simon\AppData\Local\Temp\ksohtml\wps296E.tmp.png 重点介绍下本人非常喜欢的Touch GFX图形界面。
TouchGFX是一个独特的软件框架,可以在低性能的硬件上实现媲美智能手机上的图形用户界面(GUI),当然这里的低性能指相对于Cortex-A系列的处理器来说的,怎么说这块Coretx-M7处理器的微控制器在Cortex-M系列处理器中还是最强的。 即便是简单的菜单栏选项,也可以在列表和预览式图形显示模式切换菜单显示效果,非常炫酷,之前记得一个客户,看了这个界面就认定了要搞这么一套系统,由此可见,对于还算中低端的MCU产品应用,这种图形界面简直是杀手级的功能。
Touch GFX内置了几个小的游戏demo和软件,这里又会体现到ST微控制器一个非常厉害的功能,Chrom-ART Accelerator。看下面这个小鸟吃金币躲避石头的游戏。界面左下角有一个开启和关闭Chrom-ART功能的按钮。 关闭ST的Chrom-ART Accelerator功能,MCU的负载将达到70%。
开启Chrom-ART Accelerator功能,MCU的负载仅有3%左右,差距之大令人咋舌。
所以说呢,Chrom-ART Accelerator是一个非常牛逼的硬件图形加速器,它是一个2D直接记忆体存取外设,在非常低的CPU负载条件下即可实现先进的图形处理功能,能够直接存取、解码以及混合图像资料,并直接输出到LCD液晶显示器,配合微控制器内部的TFT LCD控制器以及MIPI-DSI接口,大大提升了即时处理速度以及图形处理显示性能,可以说,是为那些需要实现图形交互界面的物联网应用提供了杀手级的功能。
体验了下STM32F769 Discovery开发板内置的系统功能,突然发觉有些耳鸣,再仔细一听,我去,这开发板有问题!!!硬件有缺陷,开发板有明显的鸣叫声,怪不得怎么感觉耳朵边嗡嗡嗡的声音,这让我想起了iphone7中出现的“叫啸门”,硬件电路或者说某个器件在高电流下产生振动引起的,反正再我看来这板子有点问题,不知道其他的网友拿到的板子有没有这问题,上电的时候一定要仔细听听。 STM32F769 Discovery开发
说到开发,首先需要的是安装驱动、相应的开发环境,然对于我这个小白来说这些还不够,还需要SDK,需要尽可能多的资料。除了第三方的IDE工具,其他的资料基本都可以在ST官方获得,这里重点推荐一个图形化界面的编程工具STM32CubeMX,非常方便实用,它可以生成供其它第三方IDE工具(如KEIL、IAR)使用的代码。 使用STM32CubeMX主要的优势在于: - 可以直观地进行STM32选择
- 图形化配置
- C代码项目产生,涵盖STM32初始化部分,兼容IAR, KEIL和GCC编译器4.支持Eclips
用大白话讲,即便你不是很了解C语言,通过STM32CubeMX也能实现简单的程序开发,这么好的工具放着不用是不是很可惜?所以啊,各位同志赶紧用起来,即便是你是大大牛,通过STM32CubeMX一样可以缩短你的研发时间,进一步提高开发效率。 然后是IDE工具的配置。 我比较喜欢用MDK-KEIL,所以毫不犹豫就使用了,新系列的MCU产品通常先要安装器件的database包,推荐去KEIL的官方下载然后通过载入的方式,用迅雷下速度杠杠的。 安装完成后可以看到STM32F76969NIHx的器件图形被点亮了。 配置完IDE工具,然后是驱动的安装,驱动可以直接在ST官方找到,ST-LINK调试器的驱动以及虚拟串口的驱动如下。 另外通过MicroUSB线连接PC端的话可以看到板子的U盘符,但目前没说支持ARM mbed项目,看样子今后会也支持mbed项目开发,预计2017。 下载SDK,除了ST提供的STM32CubeF7,还有第三方的DRA-TouchGFX以及TARA-Embd-Wizard, 于是乎,就下了前两个软件包,Embed-Wizard不是太熟,也不太喜欢它这界面风格,没精力玩,先弃着,以后有时间再玩。 先来看看ST自带的软件包中有些啥,有应用程序、文档说明、微控制器的例程、模板 file:///C:\Users\simon\AppData\Local\Temp\ksohtml\wps297F.tmp.png 因为之前一直没测试过MicroSD卡的功能,这次用官方提供的应用例程来测试下。例程采用的是应用程序下Display文件夹下的LCD_PicturesFromSDCard。
编译下载 调试功能 将相应分辨率的bmp格式图片拷贝到MicroSD卡的/Media目录下,就可以实现LCD循环显示SD存储中的图片。
接下来就使用STM32CubeMX工具来DIY一个小程序。打开CubeMX,首先需要安装STM32F769系列的Libraries,因为之间我已经下载过了,直接导入本地即可。
但真正却发现这上面显示的最新版本为1.5.1,而我这个SDK也是最新才从ST官网下的,却是1.4.1的版本,真是坑爹啊,ST的更新都不同步的?另外版本更新说明框也不能调整,这么小看起来也不方面,很不人性化。
看了几个更新的提示也不影响我要使用的小功能,就算了,直接导入1.4.1的版本得了。完成后可以直接在新建的Project下找到对应的板卡,非常方便。
打开后可以看到包括菜单栏、功能栏、模块栏以及微控制器的引脚定义图,图形化界面,非常直观。在这里就可以设置相应的引脚信号。
比如我想点亮原理图中如下的两颗LED,于是在上图就设置这两个引脚的信号为GPIO口输出。
在GPIO口配置界面设置相应的参数。
时钟配置,选择默认或者按照需求设置都可以,完成后生成代码。 file:///C:\Users\simon\AppData\Local\Temp\ksohtml\wps2981.tmp.png 按照自己使用的IDE工具生成相应的代码。
用KEIL打开生成的代码,编译下载到板卡。
可以看到板卡上的LED正确点亮,是不是非常的简单,都不用建模板,建工程,非常方便好用。
从这个简单的小程序来看,STM32CubeMX让你省去了新建项目、配置、等一些列繁琐、新手又不容易上手的过程,而且在实际体验中也可以适当的精简部分代码的撰写,进一步提高开发人员的效率,灰常不错。
Touch GFX
最后来看下拿到的touchgfx-4.6.1-eval软件包,解压出来如下的目录结构如下 其中 app/目录里面放的是各种demo ,example 和一个空的工程 doc/目录放的是说明文档 touchgfx/目录放的是功能文件,比如板级文件,配置文件,转换工具,lib文件(这是核心文件),os源码(就是freeRTOS) 另外 ,可以在\touchgfx-4.6.1-eval\app\demo\touchgfx_demo2015_800x480\target\ST\STM32F76969I-DISCO\Keil下找到针对STM32F76969 Discovery开发板直接使用的TouchGFX程序。
file:///C:\Users\simon\AppData\Local\Temp\ksohtml\wps2983.tmp.png程序非常大,编译需要很久,但从编译到下载到板子上还是非常顺利的。
但是在板子上实际运行的时候却出现了些意外情况,图片以及菜单栏都花掉了,非常奇怪。
找了半天没找出原因,于是就试着使用windows下的编译环境模拟这个程序。当然,首先还是要安装windows下的开发环境。这个在你向官方申请TouchGFX SDK的时候会一并通过邮件发给你,如下图所示,整个编译环境还没SDK大,只有90M左右。
安装好windows下的编译环境就是如所示的一个。
打开运行,还是定位刚刚我们下载到板子里的这个程序,选择编译。
编译完成后会在build/bin目录下生成模拟器。
运行模拟器,可以发现刚刚编译的程序是正常的运行的,图片菜单什么都没有问题。
搞了半天没明白为什么下载到ST的板子上就出现问题了,有知道的大牛可以解惑下,由于STM32F769 Discovery板卡可玩的东西实在太多,后续有进展会陆续更新,暂时先到这里。
小结 STM32F769 Discovery开发板,搭载强大的STM32F76969NIH6微控制器,基于ARM Cortex-M7处理器,最高主频216MHz,性能强劲,而且还具有丰富的功能,如4英寸电容式触摸屏、完整的音频电路、板载128Mb SDRAM、512Mb SPI FLASH等资源,兼容流行的Arduino扩展接口,可灵活的搭配各种各样的外设,配套STM32CubeMX工具,ST官方提供的SDK以及第三方提供的软件包支持,值得任何新手、电子爱好者或者大牛折腾、开发使用。
图片传得手痛,有些地方编辑的不合理,大家凑合着看吧
|