发表了博客
2019/10/14 10:51

【LiteOS】LiteOS移植常见问题

发现很多人在LiteOS的移植过程中总会遇到一些问题,现在简单做一些总结。后续有新的问题提再继续补充。 1、CMSIS版本导致的问题 问题现象一般如下图所示,编译后报错,Undefined symbol __get_IPSR (找不到 符号__get_IPSR )。 分析:该问题一般出现在stm32f103系列的单片机使用标准库移植的情况下。F103系列单片机标准库只更新到3.5版本,cmsis版本较低。 内核相关的文件中缺少 __get_IPSR 函数。 解决办法有三种: 1、将标准库...

0
0
发表了博客
2019/05/26 23:01

liteos互斥锁(七)

1. 概述 1.1 基本概念 互斥锁又称互斥型信号量,是一种特殊的二值性信号量,用于实现对共享资源的独占式处理。 任意时刻互斥锁的状态只有两种,开锁或闭锁。当有任务持有时,互斥锁处于闭锁状态,这个任务获得该互斥锁的所有权。当该任务释放它时,该互斥锁被开锁,任务失去该互斥锁的所有权。当一个任务持有互斥锁时,其他任务将不能再对该互斥锁进行开锁或持有。 多任务环境下往往存在多个任务竞争同一共享资源的应用场景,互...

0
0
发表了博客
2019/06/16 11:44

liteos分散加载(十四)

1. 概述 1.1 基本概念 分散加载是一种实现特定代码快速启动的技术,通过优先加载特定代码到内存,达到缩短从系统开机到特定代码执行的时间。可被应用来实现关键业务的快速启动。 嵌入式系统通过uboot加载flash上的镜像文件到内存并执行,而镜像文件本身可能较大,由于flash读取速度的限制,将镜像全部加载完再执行可能无法满足时间敏感的业务对启动速度的要求。 分散加载的思想是先加载部分镜像并执行,这部分镜像包含了时间敏感...

0
0
发表了博客
2019/05/30 10:58

liteos信号量(八)

1. 概述 1.1 基本概念 信号量(Semaphore)是一种实现任务间通信的机制,实现任务之间同步或临界资源的互斥访问。常用于协助一组相互竞争的任务来访问临界资源。 在多任务系统中,各任务之间需要同步或互斥实现临界资源的保护,信号量功能可以为用户提供这方面的支持。 通常一个信号量的计数值用于对应有效的资源数,表示剩下的可被占用的互斥资源数。其值的含义分两种情况: 0,表示没有积累下来的Post操作,且有可能有在此信号...

0
0
发表了博客
2019/06/08 13:15

liteos双向链表(十二)

1. 概述 1.1 基本概念 双向链表是指含有往前和往后两个方向的链表,即每个结点中除存放下一个节点指针外,还增加一个指向其前一个节点的指针。其头指针head是唯一确定的。 从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点,这种数据结构形式使得双向链表在查找时更加方便,特别是大量数据的遍历。由于双向链表具有对称性,能方便地完成各种插入、删除等操作,但需要注意前后方向的操作。 2. 开发指导...

0
0
2019/11/28 11:53

LiteOS内核教程02 | Hello World

(小熊派IoT开发套件全部教程 ↑点击启阅↑) ▷ LiteOS内核教程01| 物联网一站式开发工具 IoT-Studio 1. 创建HelloWorld工程 打开IoT Studio,点击创建IoT Studio工程: Studio初始界面 填写工程设置,需要注意一下几点: 工程名称和目录中不可以有中文或者空格 SDK版本选择最新的IoT_LINK版本,当前最新1.0.0 硬件平台选择STM32L431RC_BearPi 示例工程选择hello_world_demo Studio创建工程 创建完成之后进入IoT Studio界面如图...

0
0
2020/12/03 10:58

LiteOS基于Sensorhub的超声波模组移植

摘要:本文为你带来LiteOS基于Sensorhub的超声波模组移植的应用。 1、Sensor Hub LiteOS传感框架即Sensor Hub,是一个基于Huawei LiteOS物联网操作系统的传感器管理框架。 随着物联网的发展,物联网终端越来越智能化,例如在个人穿戴、智能家居、家用医疗等终端上将配置越来越多的传感器,来获取更多传感数据,使终端更加智能,使得开发和维护变得复杂和困难。LiteOS传感框架将物联网终端设备上例如加速计(Accelerometer)、陀螺...

0
0
发表了博客
2019/06/18 10:03

liteos 异常接管(十五)

1 概述 1.1 基本概念 异常接管是操作系统对在运行期间发生异常的情况进行处理的一系列动作,譬如打印异常发生时当前函数调用栈信息、 cpu现场信息、任务的堆栈情况等。 异常接管作为一种调测手段,可以在系统发生异常时提供给用户有用的异常信息,譬如异常的类型、发生异常时系统的状态等,方便用户定位分析问题。 Huawei LiteOS的异常接管,在系统发生异常时的处理动作是显示异常发生时正在运行的任务信息(包括任务名、任务号...

0
0
2020/02/08 14:54

LiteOS云端对接教程07-LiteOS基于CoAP对接华为OC平台实战

1. LiteOS OC COAP 抽象组件 概述 为了适应各种各样的使用coap接入华为OC的模式,特采用该层次接口,对上提供应用所需的接口,对下允许接入方式的灵活适配。 OC COAP AL的api接口声明在<oc_coap_al.h>中,使用相关的接口需要包含该头文件。 配置并连接 对接服务器的所有信息保存在结构体oc_config_param_t中,其定义在oc_coap_al.h中,如下: typedef struct { en_oc_boot_strap_mode_t boot_mode; ///< bootmode,i...

0
0
2019/11/29 09:17

LiteOS内核教程03-任务管理

(小熊派IoT开发套件全部教程 ↑点击启阅↑) ▷01 | 物联网一站式开发工具 IoT-Studio ▷02 | Hello World 1. LiteOS内核的任务管理 Huawei LiteOS 内核提供任务的创建、删除、延迟、挂起、恢复等功能,以及锁定和解锁任务调度,支持任务按优先级高低的抢占调度及同优先级时间片轮转调度。 1.1. 任务 在 LiteOS 中,一个任务就是一个线程,多个任务按照优先级进行抢占式调度,达到多个任务“同时”运行的目的。 1.2. 任务的状态...

0
0
2020/05/18 16:18

漫谈Huawei LiteOS五大内核模块

【摘要】 Huawei LiteOS是华为面向IoT领域,构建的“统一物联网操作系统和中间件软件平台”,以轻量级(内核小于10k)、低功耗(1节5号电池最多可以工作5年),快速启动,互联互通,安全等关键能力,为开发者提供“一站式”完整软件平台,有效降低开发门槛、缩短开发周期。下面对LiteOS基础内核的 任务管理、内存管理、中断管理、信号量、互斥锁 五大模块进行简单介绍。 LiteOS内核的任务管理 基本概念和功能 任务是竞争系统资源...

0
4
发表了博客
2018/07/27 17:35

LiteOS创建任务的一个BUG

在任务创建的时候,参数无法传递,第二个参数本来是用来做参数传递的,但是却没用到,很尴尬啊,缺少了这个功能,很多无法写了? osThreadId_t osThreadNew (osThreadFunc_t func, void *argument, const osThreadAttr_t *attr) { UNUSED(argument); UINT32 uwTid; UINT32 uwRet; LOS_TASK_CB *pstTaskCB = NULL; TSK_INIT_PARAM_S stTskInitParam; if (OS_INT_ACTIVE) { ret...

0
0
发表了博客
2019/06/18 19:54

liteos CPU占用率(十六)

1. 概述 1.1 基本概念 CPU(中央处理器, Central Processing Unit)占用率可以分为系统CPU占用率和任务CPU占用率两种。 系统CPU占用率(CPU Percent)是指周期时间内系统的CPU占用率,用于表示系统一段时间内的闲忙程度,也表示CPU的负载情况。系统CPU占用率的有效表示范围为0~100,其精度(可通过配置调整)为百分比。 100表示系统满负荷运转。 任务CPU占用率指单个任务的CPU占用率,用于表示单个任务在一段时间内的闲忙程度...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页