Alios-Things分析
对Alios-Things的一些研究学习分享,希望能够获得交流批评指正。
zhang_heaven
这个作者很懒,什么都没留下…
展开
-
AliOS-Things+ESP32 BLE篇 (1)BLE peripheral
由于STM32的板子没有自带蓝牙和wifi模组,所以外设方面的demo,我选择放到乐鑫的ESP32模组上。一方面是由于这部分原创 2020-05-31 11:59:07 · 1633 阅读 · 0 评论 -
AliOS-Things+STM32 (八) 进程管理(下)
上一章,我们已经分析过一些基本的task初始化,以及让第一个task调度后运行起来了。这只是一个开始,我们还需要关注三个问题:在SCHED_RR模式下,进程时间片消耗完毕了,怎么切换给同一优先级的另一个待运行的进程呢?当进程主动自己调度,调度器如何切换呢?当进程因为sleep/等待同步时间被block住,调度器怎么调度呢?带着这三个问题,我们往下看先看下当时间片用完,也就是触发了...原创 2020-04-11 11:46:59 · 1333 阅读 · 0 评论 -
AliOS-Things+STM32 (七) 进程管理(上)
在alios things启动过程中,krhino_init中,做完memory堆初始化,就会初始化进程相关的东西。在分析的过程中,默认RHINO_CONFIG_KOBJ_LIST,RHINO_CONFIG_KOBJ_DYN_ALLOC,RHINO_CONFIG_SCHED_RR都使能,RHINO_CONFIG_CPU_NUM为1。RHINO_CONFIG_SCHED_RR表示高优先级会抢占低优先...原创 2020-03-31 09:28:51 · 1410 阅读 · 0 评论 -
AliOS-Things+STM32 (六) 堆内存管理(下)
在上一篇中分析了RHINO_CONFIG_MM_BLK/RHINO_CONFIG_MM_TLF_BLK_SIZE没有打开的情况下,堆内存的初始化,和分配释放,现在再了解一下开启这两个宏后的情况。还是从krhino_init_mm_head开始(略去上一篇分析过的部分):kstat_t krhino_init_mm_head(k_mm_head **ppmmhead, void *addr, s...原创 2020-03-25 16:35:11 · 1262 阅读 · 0 评论 -
AliOS-Things+STM32 (四) 同步机制(buf_queue)
Alios中的buf_queue,相当于Freertos中的msg queue,是一种很常用的消息同步机制,原创 2020-03-03 21:35:43 · 1162 阅读 · 0 评论 -
AliOS-Things+STM32 (三) 同步机制(mutex)
一个操作系统中,进程的同步机制很多,这篇先介绍比较基础的mutex,因为有些后续的内容也会用到mutex,所以先介绍。Alios中的mutex结构体如下:typedef struct mutex_s { blk_obj_t blk_obj; /*blk对象,记录task调用mutex如果被阻塞住时的一些信息记录*/ ktask_t *mutex_tas...原创 2020-02-25 17:17:53 · 1400 阅读 · 0 评论 -
AliOS-Things+STM32 (二)一个带命令行的helloworld
上一篇简要的整理了一下环境搭建。一般调嵌入式代码,最好配好命令行输入,这样就能在调试的时候,方便执行固定的测试命令。Alios-Things里面已经有现成的CLI命令输入框架,只要打开相应的宏就能够直接用,我们在app/example/helloworld/Config.in中,加上select AOS_COMP_CLI,再像上一章那样,导出keil工程,编译就可以了。--- a/app/exa...原创 2020-02-23 18:31:57 · 1250 阅读 · 0 评论 -
AliOS-Things+STM32 (五) 堆内存管理(上)
开发过程中,写代码用得最多的就是对堆的malloc和free了, 在alios这样的小系统中,我们看下是如何处理堆内存的。跟堆内存相关的有如下几个宏:RHINO_CONFIG_MM_TLFRHINO_CONFIG_MM_BLKRHINO_CONFIG_MM_TLF_BLK_SIZERHINO_CONFIG_MM_DEBUG其中RHINO_CONFIG_MM_BLK和RHINO_CO...原创 2020-03-14 21:04:50 · 1490 阅读 · 1 评论 -
AliOS-Things+STM32 (一)运行环境搭建
AliOS Things 是一款由阿里巴巴开发的轻量级物联网操作系统, 在我理解毕竟是大厂推的IOT操作系统,未来潜力巨大,所以有空实践了一下,做个专题分享。硬件平台选了STM32板子,后续为了实践BT/WIFI会使用ESP32,都是比较经典的平台,目的就是让大家容易上手了解alios things这款系统。Alios环境配置首先下载alios的code: git clone https:/...原创 2020-02-22 17:30:01 · 3133 阅读 · 0 评论