你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
每日签到
STM32团队2
论坛吐槽优化专区
升级测试
ST意法半导体中文论坛
»
论坛
›
【技术区】
›
ST开发工具
›
【NUCLEO-L496ZG评测】+STM32CubeMX验证工程搭建 ...
返回列表
查看:
403
|
回复:
0
[STM32L496]
【NUCLEO-L496ZG评测】+STM32CubeMX验证工程搭建
[复制链接]
fly015
fly015
当前离线
在线时间
1 小时
UID
3341947
ST金币
0
蝴蝶豆
0
注册时间
2019-9-14
2
主题
3
回帖
0
蝴蝶豆
新手上路
新手上路, 积分 26, 距离下一级还需 24 积分
最后登录
2019-10-2
收听TA
发消息
发表于 2019-10-2 17:15:20
|
显示全部楼层
|
阅读模式
a4a.1 32b0c
之前参加了活动,买的板子。L496ZG-NUCLEO ,用起来还不错
先简单介绍下板上的资源:
STM32 microcontroller in LQFP144 package
3 user LEDs
2 user and reset push-buttons
32.768 kHz crystal oscillator
这个FLASH 有1MKB多,RAM有128KB足够用了。
RT-THREAD还算比较友好,虽然周围外设那么多,实际上跑起来,也就需要很少的。
STM32L496单片机,最高频率可达80MHz
提供USB(支持OTG 2.0全速和无需外接晶振USB OTG、LPM和BCD)
可以模拟一个1M的U盘,厉害了
好,接下来,可以进入今天的正餐了,
STM32CubeMX这个,大家用过吧。这个工具还可以,蛮好用的,有好处也有坏处。
好处是,可以很快验证硬件,和点亮小灯程序。坏处是,偷懒,那可能初学者上手比较快,知道其中原理可能会慢一些。
我目前拿到一块stm32的板子,先把灯点起来,这个是惯例。
STM32CubeMX这个工具就简单了:
选中手中的板子
就用default mode就可以了
看到没,已经帮你配好了。
NUCLEO板子就是有这个好处:
1. 板载调试器,
2. 不仅一根usb线直接连到调试器,而且这个usb还连了一个串口
就是这个
3. GPIO LD小灯也帮你标好了。
PB7 PB14 对应LD2 LD3
那其他的就不需要管了。
STM32CubeMX这个要跑起来一块板子,最复杂的也就是根据板载晶振配置CPU频率了。
看下原理图:
那PH0就是连到晶振的,X3就是晶振的位置,看了下板子上没贴,经费原因吧,可能,不过也不需要,这边STM32用调试器的MCO,直接输出PWM波。(里面的细节就不深究了),总之,一句话,你就当这个晶振在的,频率是多少呢?(通常MCO,就是8M左右)
HSE高速晶振选择BYPASS就好了,实际验证过,跟选择Crystal一样的,没有差别。
其他的再关注下 uart口用的哪个就好了。
这边用的LPUART1
下面选择对应的时钟配置:
咋一看很乱对不对,这边没帮你配。
主要关注两点:
输入时钟8M, 输出时钟80Mhz,最高频跑吧,没啥事情
只要把途中改成80,按回车就可以了,这个软件会自动帮你配好(RCC这边我也不想去深究,没啥意义,每家芯片商都会不同,属于hardware需要关心的事情)
下面就选一下常用的keil就可以用了
点general code
生成code。
好,生成之后,我们需要找到main函数:
int main(void)
这边给了客户BEGIN和end,只要在这个里面写代码,tool就不会改这段代码
提供个最简单的亮灯程序,和print程序
char ch ='A';
HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);//LED1 OFF
HAL_UART_Transmit(&hlpuart1, (uint8_t *)&ch, 1, 0xFFFF);
HAL_Delay(2000);
这个时候编译一下
.....
(是不是觉得编译很慢, 毕竟stm32的HAL库都包含进去了)
把下面的选项去掉
把这些选项都去掉,快很多,
还想再快的话,可以把优化-O3改成-O0
选择写入器:
这边有个要注意点:
这个reset和run通常默认不会点,那现象就是,烧入之后,没反应,程序不跑(经常有时候有些人可能会觉得自己程序没正常跑起来。勾上就好了)
烧入,看到running这个就是选项勾上了,可以看到板子上的灯亮了,2s两一次。
打开串口,会发现收到的数据不是‘A’ ,检查了一下是波特率及配置不一样,改成默认的就好了。
改完之后
在点一下生成code,之前代码不会被删掉,只要你写在code BEGAIN和code end之间
那这回看到了吧。2s一次打出来
回复
使用道具
举报
返回列表
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表