[文章]在STM32F407上跑OpenHarmony操作系统

阅读量0
0
4
前言
openharmony移植示例 基于最新的master版本,目前支持的芯片有:
STM32F407
gd32F303
GD32F450
目标是移植更多的开发板更多的MCU支持OpenHarmony
经过几天的努力,终于成功把最新版本的OpenHarmony轻量系统内核移植到ARM单片机上,现在代码开源、移植文章也完成7篇,后续会考虑增加视频讲解,直播。以便大家也可以自己移植。


效果


开发板照片如下,自己在网上随便买的一块

目前OpenHarmony内核已经跑起来了,可以实现开发板上的LED灯闪烁。
串口调试打印信息:

系统创建了两个线程,如下:

  • //线程2,用于点灯和打印
  • VOID TaskSampleEntry2(VOID)
  • {
  •         printf("______>>>>>>>>> %s %drn", __FILE__, __LINE__);
  •         led_init();
  •     while (1) {
  •         printf("___>>>>>> %s %drn", __FILE__, __LINE__);
  •                 led_on(0);
  •                 led_on(1);
  •                 led_on(2);
  •                 led_on(3);
  •         LOS_TaskDelay(1000);
  •                 led_off(0);
  •                 led_off(1);
  •                 led_off(2);
  •                 led_off(3);
  •                 LOS_TaskDelay(1000);
  •     }
  • }
  • //线程1,用于打印
  • VOID TaskSampleEntry1(VOID)
  • {
  •         printf("______>>>>>>>>> %s %drn", __FILE__, __LINE__);
  •     while (1) {
  •         printf("___>>>>>> %s %drn", __FILE__, __LINE__);
  •         LOS_TaskDelay(1000);
  •     }
  • }
  • //创建线程
  • VOID TaskSample(VOID)
  • {
  •     UINT32 uwRet;
  •     UINT32 taskID1;
  •     UINT32 taskID2;
  •         UINT32 taskID3;
  •     TSK_INIT_PARAM_S stTask = {0};
  •     stTask.pfnTaskEntry = (TSK_ENTRY_FUNC)TaskSampleEntry1;
  •     stTask.uwStackSize = 0x1000;
  •     stTask.pcName = "TaskSampleEntry1";
  •     stTask.usTaskPrio = 6; /* Os task priority is 6 */
  •     uwRet = LOS_TaskCreate(&taskID1, &stTask);
  •     if (uwRet != LOS_OK) {
  •         printf("Task1 create failedrn");
  •     }
  •     stTask.pfnTaskEntry = (TSK_ENTRY_FUNC)TaskSampleEntry2;
  •     stTask.uwStackSize = 0x1000;
  •     stTask.pcName = "TaskSampleEntry2";
  •     stTask.usTaskPrio = 7; /* Os task priority is 7 */
  •     uwRet = LOS_TaskCreate(&taskID2, &stTask);
  •     if (uwRet != LOS_OK) {
  •         printf("Task2 create failedrn");
  •     }
  • }





代码开源


本次移植所有代码都将会开源给大家,同时也会持续做适配,后面会适配网卡、LCD、触摸屏等驱动。
同时会整理一场直播,教会大家如何移植和使用

开源仓库:
https://gitee.com/qidiyun/openharmony-bsp-example/tree/master

回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友