F7-DISCOVERY 相关技术资料集合贴

  • 秦时茗月
  • LV5工程师
  • |      2015-08-27 17:52:29
  • 浏览量 4239
  • 回复:1

1  认识F7-DISCO

STM32F7-DISCOVERY是ST推出的最新的一款开发板,使用ARM最新的CORTEX-M7内核,CORTEX-M7提供了很多新的特性。 F7-DISCO充分发掘并将这些特性提供给用户,F7-DISCO是迄今为止最为强大的ST官方开发板。下面我们来认识一下它吧。

F7-DISCO使用简单的塑料包装,就像以往的NUCLEO和DISCO板一样,这样应该是为了节省成本吧,不过那么大一块LCD,小心被快递暴力了!建议以后带LCD的开发板包装里面,加一块防震海绵,应该会安全不少。不多说,下面先看图。

正面大图

反面大图

板载资源

  • STM32F746NGH6微处理器,BGA216封装,自带1MB FLASH,340K SRAM
  • ST-LINK/V2-1,这个可是以前的DISCO板没有的哦
  • USB接口,可以用于VCOM, USB HOST, USB OTG及调试
  • 4.3" LCD, 分辨率480X272,带触屏
  • 摄像头接口
  • SAI音频接口,带立体声输出, SPDIF RCA输入接口
  • ST MEMS麦克输入
  • 128Mb QSPI FLASH存储, 128Mb SDRAM
  • uSD接口
  • 以太网接口
  • MORPH接口,兼容ARDUINO
  • 5种供电接口,提供3.3/5V输出

软件环境及例程

ST提供了丰富的生态环境,其中之一就是开发工具。如果要使用IDE来做研发的的话,有成熟的IAR及MDK供开发者使用,最新的MDK V5.16甚至为CORTEX-M7专门做了优化和调整。除了这些商业软件之外,ST也和AC6一起协作开发了一个名为System Workbench for STM32的基于ECLIPSE的免费开发工具,另外还有大名鼎鼎的CooCox CoIDE开发环境。还有一个名为mbed的在线IDE,mbed称之为云开发环境,使用它,全世界的程序员都是你坚强的后盾。另外,如果你熟悉ARM自 己的开发工具链,也可以直接使用ARM GCC来编译下载自己的程序。

ST也提供自己的一些辅助开发工具,其中最有名的当数STM32CUBEMX了,这是一套生成代码的工具,它提供一个图形化配置界面,借助它,开发人员可 以在很短的时间内生成自己的代码框架。CUBEMX基于ST自己的HAL库,和传统的STD库来说,HAL库的优势在于,将一些通用的操作抽象出来,以一 种更高层次的API提供给开发者,低层的具体操作隐藏于这些HAL API之中。从传统的STD向HAL库转变,这有一个阵痛期。但毕竟,HAL库是以后ST提供的库的标准。

HAL库不仅仅是一个代码库,更重要的是它提供了一系列的例程。当一个新的MCU推出,资料相对有限,这些例程就是研发人员最珍贵的宝藏了!

2  F7-DISCO特色功能一览

F7-DISCO相对于以前的开发板来说,里面有很多新的特性值得我们关注。

ST-LINK/V2-1
这个其实不算新的特性了,只是相对于以前的DISCO板来说,它是新的。老版的DISCO板载的是ST-LINK/V2。ST-LINK/V2-1的特性 就是支持VCOM,还记得以前使用DISCO板的时候,如果要使用UART与电脑通信的话,必须外接一个UART转换器,将UART转换器的RX/TX与 板载的TX/RX连接,才可以实现串口通信,现在调试UART的时候就可能通过ST-LINK/V2-1直接来实现了,一般情况下,ST-LINK /V2-1使用UART2与外部通信。NUCLEO板上使用的都是ST-LINK/V2-1。NUCLEO板载的ST-LINK/V2-1甚至可以用来做 为一个外部调试器,这样就省去了专门购买ST-LINK的费用了,不过在F7-DISCO上,这一功能被去掉了,只能用于本设备的调试。

SDRAM
CORTEX-M7内核包含FMC控制器。FMC与以前的FSMC控制器相比较,就是支持SDRAM。不管对程序员还是对最终的用户来说,更多的内存意味 着更高的性能。F7-DISCO板载128M bit的SDRAM,结合FMC控制器,使用SDRAM就像使用SRAM一样的方便。根据官方文档的描述,SDRAM控制器支持两个独立的SDRAM BANK,可以在8/16/32位总线宽度之间独立选择;控制器包含13位行地址,11位列地址,4个内部BANK,这样的话,最高可以支持256MB的 外部SDRAM,不要以PC的眼光看来待这个值,在MCU的世界里,256MB可就是一令人震撼的数值了!

SDRAM可以工作在HCLK/2或HCLK/3的频率下,支持可编程的时序参数,重要的是,它还支持CACHE读写。

将SDRAM初始化后,SDRAM被映射到MCU的4G线性空间内,就可以像访问SRAM一样来访问SDRAM,非常的爽!举个例子来说,驱动板子上的 LCD,使用的是LTDC来驱动,需要指定VRAM地址,现在将初始化SDRAM的地址指定给VRAM。这样配置后,读写点就是操纵一个指针的事,爽歪 歪!

可以说在F7-DISCO板上,或者是基于CORTEX-M7的产品上,内存限制已被极大改善。程序员再也不用像地主老财一样,抠抠索索的的了!(《亮剑》李云龙语)。

不过坑爹的是,F7-DISCO板载的128M bit只连接了一半,是硬件上只连接了一半!

QSPI
QSPI的全称是Quad SPI,这是一种特殊的通信接口。按官方的描述,QSPI可以工作在三种模式下:间接模式、查询模式及内存映射模式。前面两种模式姑且不论,看到内存映射模式,有没有想到前面介绍的SDRAM工作,这也是一种内存映射模式啊!

请设想,将SPI FLASH初始化后,将它映射到4G的线性空间,然后将执行代码拷贝到该空间内,然后执行!是的,你没有看错,可以将执行代码拷贝到外部FLASH空间,然后执行代码!

如果要尝试一下此功能,请打开HAL固件库EXAMPLE目录下的QSPI目录,里面有例程,自己亲自体验一下吧!

再设想一下,程序功能升级换代时,主框架不变,变化的代码直接放入到外部FLASH中,主框架执行升级功能,其它逻辑都可以不变,这样是不是也不错?

这样说来,是不是内置的FLASH空间以后也不是问题了呢?

其它特色
F7-DISCO板载了丰富的外设,有下面这些:SD卡,ETHERNET接口,SAI AUDIO输出, SPDIF输入,摄像头接口, LCD。

这些其实都不是很有特色。一些三方的开发板,大都有这些功能。只不过对于一块DISCO板来说,很不错了!

SD卡接口,可以配合FATFS,体验一把当初BILL GATE写MSDOS系统的感觉!

ETHERNET接口,从此开发板不再孤单,世界是互联的,LWIP可以助你一臂之力!

SAI AUDIO, SPDIF, 摄像头, LCD等等,从些F7-DISCO也可以跨入多媒体世界!

所有上面的这一切,都在等待你进入F7-DISCO的精彩世界,探索吧!





  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:1
dadangjia 2015-08-27
是够强大。
0   回复
举报
发布
x
收藏成功!点击 我的收藏 查看收藏的全部帖子