3401|4

1万

帖子

16

TA的资源

版主

楼主
 

【NUCLEO-L4R5ZI评测】——4,利用CubeMX跑一下FreeRtos点灯程序 [复制链接]


很高兴按照我的评测计划,评测到第四贴了。
这个是我自己发挥的贴子,我想跑一下FreeRtos。现在CubeMX生成FreeRtos程序已经很方便了。所以利用这次机会在这里跑一下。

首先,我打开了我以前安装的CubeMX,我已经从ST网站下了L4的CUBE库。我就从本地安装。

在CubeMX的HELP,安装PATCH,下边的从本地安装



安装完了什么也没有,也就是说L4是空的,我就奇了怪了,明明装进去了。
我这个不死心加不痛快,我又花血本从网上装,就点L4最新的库,直接就安装了。
缺点是时间有点长。


等安装完了,我又开始找L4,还是没有。。。。。。
我有点鸡眼了。怎么就装不上了。
我把CubeMX删掉,从ST网站下个最新版本的。这回同上回有点不一样了:

可以看出有许多更新的东东,我就按装吧,可是死慢啊,我就让它自己下,自已先去干别的了。

等了好长时间。我看下最后一个,我就停了它,反正我需要的已经下来了。

我再一次打开CUBEMX,这回同我以前版本,根本就不一样了。

选择新建工程。弹出如下画面:

菜单第二项为BOARD,就是开发板我就从开发板选,正好我评估的板子一定是官方的板子。

出现弹出窗口问是否是管脚按开发板的默认定义,还糊涂个北自然选择YES。

然后弹出如下图画面:可以看出开发板的管脚都已经定义好了


嘿嘿!都做好了,我就不用做了,然而失误就在这里。
默认的是外部晶振,而本板根本就不带外部晶振。
只有一个X2


默认的如下图所示:

我使用内部16MHZ晶振:


然后在FreeRtos那块选使能:


若有错误,可以用推荐的晶振:反正在晶振这块没有红色提示就算过关

最后生成代码:


然后,用MDK5直接打开:
在主程序里已经有FreeRtos的启动代码:
  1. /* definition and creation of defaultTask */
  2.   osThreadDef(defaultTask, StartDefaultTask, osPriorityNormal, 0, 128);
  3.   defaultTaskHandle = osThreadCreate(osThread(defaultTask), NULL);

  4.   /* USER CODE BEGIN RTOS_THREADS */
  5.   /* add threads, ... */
  6.   /* USER CODE END RTOS_THREADS */

  7.   /* USER CODE BEGIN RTOS_QUEUES */
  8.   /* add queues, ... */
  9.   /* USER CODE END RTOS_QUEUES */


  10.   /* Start scheduler */
  11.   osKernelStart();
复制代码


我们做的是在后边的 StartDefaultTask函数里边,加个任务:
  1. /* StartDefaultTask function */
  2. void StartDefaultTask(void const * argument)
  3. {

  4.   /* USER CODE BEGIN 5 */
  5.          osThreadDef(LED_Thread, testled, osPriorityNormal, 0, configMINIMAL_STACK_SIZE);
  6.   osThreadCreate (osThread(LED_Thread), NULL);
  7.   /* Infinite loop */
  8.        
  9.   for(;;)
  10.   {
  11.     osDelay(1);
  12.   }
  13.   /* USER CODE END 5 */
  14. }
复制代码


然后在main前面添个任务的函数: testled

  1. /* USER CODE END PFP */
  2. void testled(void const * argument)
  3. {
  4.     for(;;)
  5.                          {         
  6.              HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_14|GPIO_PIN_7);
  7.              osDelay(500);
  8.        }                                 
  9. }
复制代码




传一下main因为就改这个文件了:
main.c (15.74 KB, 下载次数: 1)

发一下视频:

http://v.youku.com/v_show/id_XMz ... j.8428770.3416059.1



最后总结一下:

1,CubeMX一定要最新版
2,若选开发板,一定要配置一下时钟。否则出现不运行的结果(其实质是晶振找不到出现硬件错误)







此内容由EEWORLD论坛网友ddllxxrr原创,如需转载或用于商业用途需征得作者同意并注明出处


此帖出自stm32/stm8论坛

最新回复

感谢分享,有图很详细。  详情 回复 发表于 2018-1-26 09:25
点赞 关注
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 

回复
举报

9792

帖子

24

TA的资源

版主

沙发
 
新版CubeMX选择开发板都带图片了?
此帖出自stm32/stm8论坛

点评

恩,很诱人  详情 回复 发表于 2018-1-26 10:17
 
 

回复

119

帖子

1

TA的资源

一粒金砂(中级)

板凳
 
感谢分享,有图很详细。
此帖出自stm32/stm8论坛
 
 

回复

1万

帖子

16

TA的资源

版主

4
 
littleshrimp 发表于 2018-1-26 07:58
新版CubeMX选择开发板都带图片了?

恩,很诱人
此帖出自stm32/stm8论坛
 
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 

回复

1万

帖子

16

TA的资源

版主

5
 
ID.LODA 发表于 2018-1-26 09:25
感谢分享,有图很详细。

此帖出自stm32/stm8论坛
 
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表