发新帖本帖赏金 30.00元(功能说明)我要提问
返回列表
打印
[STM32F7]

【ST资源大分享】+STM32F7-NUCLE 串口尝试

[复制链接]
2736|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
第一次拿到这么高级的板子,非常感谢二姨给的机会。


这次的F7-NUCLE板是144脚封装的,相比其他几款Nucleo-32 boards和Nucleo-64 boards体积是最大的。

如图,Nucle-F767ZI,板载一颗144引脚的STM32F767ZI微控制器,提供ST-LINK V2仿真调试器,3个用户LED和1个用户按键,1个USB接口和1个以太网接口,对外提供ST Zio(兼容Arduino™ Uno Revision 3)和ST morpho接口。

STM32F7系列采用新型Cortex-M7内核:
• 面向内核、外设和存储器互连的AXI和多AHB总线矩阵
• 高达16 KB + 16KB I-cache和D-cache
• 最大2 MB嵌入式闪存, 部分型号支持同时读写
• 两个通用DMA控制器和用于以太网、高速USB OTG 接口和Chrom-ART图形加速器的三个专用DMA
• 外设速度独立于CPU速度(双时钟支持),使得系统时钟变化不影响外设工作
• 更多外设,例如带有SPDIF输出支持的两个串行音频接口(SAI),带有SPDIF输入支持的三个I²S半双工传输,带有专用供电的两个USB OTG和双模QuadSPI Flash
• 分散结构的大容量SRAM
• 512 KB通用数据存储器,其中包括128 KB紧密耦合数据存储器(DTCM),用于时间关键数据处理(栈、堆......)
• 16 KB的紧密耦合指令存储器(ITCM),用于时间关键程序
• 4KB的备份SRAM,用于最低功耗模式下保存数据

能效
• 1.8 V下高达7 CoreMark / mW
• 在所有寄存器和SRAM内容都能继续保持的停止模式下,具有100µA的典型电流消耗

兼容性
• Cortex-M7向下兼容Cortex-M4指令集
• STM32F7系列与STM32F4系列引脚兼容

板子自带的测试程序为使用蓝色按钮在LD1、LD2、LD3三个LED灯之间切换闪烁。
现在,我将在板子上进行串口打印演示
需要的资料已经上传网盘,地址如下
http://pan.baidu.com/s/1nvMuHnV

文件介绍
1、MDK520,是KEIL公司为arm开发提供的5.20版本,原先我的电脑安装有4.02版本的,但是在st官网上下载的演示程序不支持4的版本了
当然,你可以直接打开.C文件直接复制到你之前搭建好的低版本的工程文件中,为了兼容性,我还是连夜去KEIL官网下载了他们最新的mdk
2、Keil.STM32F7xx_DFP.2.7.0   
mdk5的版本不在把芯片集成在软件中,而是单独开发了pack这个功能包,来放置不同厂商的不同硬件,其实这是一个很好地项目优化措施,不需要的硬件不需要安装到本地计算机上,如果你的网络足够好,你可以直接在pack中安装硬件,但是下载速度我就不敢保证了,所以我还是去官网下载离线包,然后在导入进pack;
3、en.stm32cubemx.zip
这个压缩包中是ST为缩短stm32开发周期为我们提供的代码生成工具,其实在使用st提供的官方程序时,他可以帮你迅速理清楚芯片的架构
4、en.stm32cubef7.zip
这个压缩包为st官网提供的测试程序包,它就像2对1一样,你可以直接在3的help——Install New Libraries中在线下载,也可以去下载这个离线包在导入进cubemx;
5、UM1974:STM32 Nucleo-144 board User manual.pdf
Nucleo-144 board 用户手册,其说明了板载资源、跳帽、接口等一些板子信息,同时提供了板子的原理图文件

操作步骤:
1、搭建好MDK环境
2、导入pack的库文件
3、安装cubemx
4、导入F7的库文件,浏览配置文件是否有误
5、将板子连接至电脑,然后查看电脑是否有一个虚拟串口产生
6、解压缩en.stm32cubef7.zip文件,打开。。\Projects\STM32F767ZI-Nucleo\Examples\UART\UART_Printf\MDK-ARM文件夹,然后你可以看到一个名称为Project的keil5工程文件,双击打开
7、如图,点击options,debug查看stlink是否连接成功



8、点击setting,将port设置为sw模式,确定返回主窗口



9、点击build或者按下F5进行工程编译,在编译完成后点击debug按钮进入仿真模式,stlink红绿闪烁,表示程序正在载入


10、进入仿真模式后,程序会自动运行至main函数并暂停,stlink绿灯常亮,这时点击run,程序将连续运行,可以看到stlink的灯也在红绿交替闪烁



11、打开串口助手,将波特率设置为9600,数据位设置为7位,按下板子复位按钮,再将仿真全速运行,就可以在串口助手中收到板子发过来的数据




12、点击stop按钮,然后点击debug按钮就可以退出仿真模式



总结

1、手册一定要看,不管是编译器的还是代码生成器的
2、官方例程中的readme文本也是要看的,起初,串口助手默认设置为八位数据,我收到了很多乱码,让我以为是波特率不多,反复调试还以一样,工程目录下的readme文件引起了我的注意,文档中明确的告诉我串口的相关配置

3、官方的代码生成器挺好用的
4、库文件更新建议还是采用离线了

打赏榜单

21ic小管家 打赏了 30.00 元 2016-08-25
理由:ST资源分享季,送书送板子~

沙发
捉虫天师| | 2016-8-7 12:38 | 只看该作者
4KB的备份SRAM,用于最低功耗模式下保存数据
是不是低功耗的时候运行内存的东西被清理了。

使用特权

评论回复
板凳
734774645| | 2016-8-7 19:03 | 只看该作者
Cortex-M7向下兼容Cortex-M4指令集
• STM32F7系列与STM32F4系列引脚兼容
F7应该是目前来说最高级的STM32了。

使用特权

评论回复
发新帖 本帖赏金 30.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

35

主题

482

帖子

2

粉丝