埃斯提爱慕
发布时间:2025-2-24 18:50
|
第一次用这种双核的MCU,还是从点灯开始。用ST的最大的好处就是感觉入门没有难度,生态做得太好了。 打开STM32CubeIDE,选择官方板卡,生成项目工程,太简单了,哈哈哈哈。 当然,我只是试了一下,然后还是选择从芯片开始。 新建Project,选择STM32H745XIH6,配置名称、路径等,这些跟单核的没有区别。 生成工程后,代码里会有两个Project,一个CM4的、一个CM7的,这里就是有区别的地方,也就是我们后续需要针对每个核单独写程序。
分配GPIO,这里比单核的多了一个选项:Pin Context Assignement,我的理解是连到哪个核,刚开始没有选择(默认Free),生成的代码里就没有该IO的初始化。 这里把LD1连接到CM7,LD2连接到CM4
在CM7的main.c中添加闪灯代码,下载,没反应。。。。后来发现是CM4的代码没下载,芯片没有正常运行。 分别添加代码,各自点灯正常。
两个核不能各干各的呀,怎么同步呢?看了一下启动过程,也参考了网上的资料。可以全用HSEM(硬件信号量),参考代码,实现同步。
![alt text]( 尝试一下,两个核操作同一个IO口,需要自己手动初始化IO,好像Cube里没法配置两个核都初始化同一个IO。 代码里需要增加HSEM的获取与判断,以入释放操作。
|
STM32L562DK探索板——测试小结
STM32L562DK探索板——给Audio Play添加音量控制功能
STM32L562DK探索板——Audio Play使用的疑惑
STM32L562DK探索板——重写Led闪烁demo
STM32L562DK探索板——触摸菜单的实验
STM32L562DK探索板——简单的显示变量函数
STM32F746G-DISCO移植lvgl9.0性能基准测试
【福利三:逢7发帖赢大礼】使用MPU6050模块、img_dsc、img_btn机制实现一些简单有趣的动画效果
STM32L562DK探索板——建立演示菜单
STM32L562DK探索板——字符显示功能的剖析
微信公众号
手机版