嵌入式操作系统
文章平均质量分 78
sunny.Bit
这个作者很懒,什么都没留下…
展开
-
cola_os|cola_os(v1.2.0)版本发布增加国产单片机SWM181例程
300行代码实现操作系统cola_os v1.2.0版本发布原创 2022-03-28 21:35:04 · 16840 阅读 · 3 评论 -
嵌入式开发|基于STM32+移远EC200S(Cat.1 4G模组)AT指令实现多路MQTT和TCP同时连接
123原创 2021-03-14 11:49:38 · 28753 阅读 · 5 评论 -
嵌入式开发|嵌入式软件框架《二》前后台任务框架-cola os系统
系列文章目录嵌入式开发|嵌入式软件框架《一》常用的软件框架介绍与选择文章目录系列文章目录前言一、cola os程序框架1.cola_init2.cola_device3.cola_os task任务创建4.cola_os stime定时器创建前言在嵌入式软件开发,包括单片机开发中,软件架构对于开发人员是一个必须认真考虑的问题。软件架构对于系统整体的稳定性和可靠性是非常重要的,一个合适的软件架构不仅结构清晰,并且便于开发。在嵌入式软件开发中,程序架构主要分为三种。本教程中使用的框架为前后台和时间原创 2021-01-21 20:18:12 · 22893 阅读 · 3 评论 -
嵌入式开发|嵌入式软件框架《一》常用的软件框架介绍与选择
1、前言在嵌入式软件开发,包括单片机开发中,软件架构对于开发人员是一个必须认真考虑的问题。软件架构对于系统整体的稳定性和可靠性是非常重要的,一个合适的软件架构不仅结构清晰,并且便于开发。我相信在嵌入式或单片机软件开发的初期大多数开发者采用的都是简单的前后台顺序执行架构在嵌入式软件开发中,程序架构主要分为三种,本篇文章将对这三种程序架构做出详解。2、软件架构存在的意义可以说一个好的程序架构,是一个有经验的工程师和一个初学者的分水岭。软件架构对于开发人员是友好的,你希望先执行什么任务后执行什么任务,转载 2021-01-21 16:44:45 · 4944 阅读 · 2 评论 -
linux的initcall机制(针对编译进内核的驱动)
linux的initcall机制(针对编译进内核的驱动)文章转自:https://www.cnblogs.com/downey-blog/p/10486653.htmlinitcall机制的由来我们都知道,linux对驱动程序提供静态编译进内核和动态加载两种方式,当我们试图将一个驱动程序编译进内核时,开发者通常提供一个xxx_init()函数接口以启动这个驱动程序同时提供某些服务。那么,根据常识来说,这个xxx_init()函数肯定是要在系统启动的某个时候被调用,才能启动这个驱动程序。最简单直观转载 2021-01-04 10:42:10 · 3179 阅读 · 0 评论 -
嵌入式开发|高效缓冲器设计(C语言)
一、前言 嵌入式开发中我们要时刻保持代码的高效与整洁。在嵌入式的开发中缓冲器是非常常用的,比如串口的数据,MCU处理数据的时候,只能先处理先来的,那么处理完后呢,就会把数据释放掉,再处理下一个。已经处理的数据的内存就会被浪费掉。因为后来的数据只能往后排队,如果要将剩余的数据都往前移动一次,那么效率就会低下了,肯定不现实,所以,环形队列就出现了。 ...原创 2020-01-17 09:48:10 · 4471 阅读 · 0 评论 -
嵌入式开发--实现应用层和硬件层分层管理
一、前言 以STM32为例,打开网络上下载的例程或者是购买开发板自带的例程,都会发现应用层中会有stm32f10x.h或者stm32f10x_gpio.h,这些文件严格来时属于硬件层的,如果软件层出现这些文件会显得很乱。使用过Linux的童鞋们肯定知道linux系统无法直接操作硬件层,打开linux或者rt_thread代码会发现代码中都会有device的源文件,没错,这就是驱动...原创 2019-09-29 09:57:15 · 24129 阅读 · 6 评论 -
嵌入式开发--STM32上实现驱动注册initcall机制(类linux)
一、前言 上一节我们实现了代码应用层和硬件层的分离管理,但是代码中还存在一个问题,每个硬件如LED控制,GPIO口需要初始化,初始化函数bsp_led_init();这个函数需要在主函数中调用初始化,类似这样:void bsp_init(void){ bsp_rcc_init(); bsp_tick_init(); bsp_led_init();...原创 2019-10-10 13:21:06 · 1818 阅读 · 4 评论