- 今天,我们分享的内容主要是物联网操作系统中的任务管理。在开始正式的阅读分享帖之前,按惯例,我们需要思考几个问题:进程和线程,你是否了解其区别与联系?什么是任务?物联网操作系统中的任务管理主要包含那几个方面?如果你认真的思考了上面的问题,那么请你阅读下面的分享,也希望你能Get到属于自己的盲点知识!一、任务管理基本概念 进程:正在运行程序的一个实例 线程:进程中的一个实体,是被系*... 今天,我们分享的内容主要是物联网操作系统中的任务管理。在开始正式的阅读分享帖之前,按惯例,我们需要思考几个问题:进程和线程,你是否了解其区别与联系?什么是任务?物联网操作系统中的任务管理主要包含那几个方面?如果你认真的思考了上面的问题,那么请你阅读下面的分享,也希望你能Get到属于自己的盲点知识!一、任务管理基本概念 进程:正在运行程序的一个实例 线程:进程中的一个实体,是被系*...
- 预告的读书笔记专题,今天正式开更,谢谢期待…… 今天,我们分享的内容主要是关于物联网操作系统的概述。 在正式阅读分享帖之前,我们思考3个问题: 1.什么是操作系统? 2.你接触过的操作系统有哪些?它们有什么特征? 3.物联网操作系统是什么? 如果你认真的思考了上面的问题,那么请你阅读下面的分享,也希望你能Get到属于自己的盲点知识! 一、操... 预告的读书笔记专题,今天正式开更,谢谢期待…… 今天,我们分享的内容主要是关于物联网操作系统的概述。 在正式阅读分享帖之前,我们思考3个问题: 1.什么是操作系统? 2.你接触过的操作系统有哪些?它们有什么特征? 3.物联网操作系统是什么? 如果你认真的思考了上面的问题,那么请你阅读下面的分享,也希望你能Get到属于自己的盲点知识! 一、操...
- 参与活动,请移步原帖参与,原帖子链接:https://bbs.huaweicloud.com/forum/thread-70095-1-1.html【乘风破浪赋能学习季】学IoT课程get干货,“盖楼发帖”赢取大奖这个暑假你有什么计划吗?当然是用来学习了,乘风破浪学课程,get技术干货,了解更多IoT知识! 【活动时间】2020年8月7日-2020年8月24日 12:00【参与方式】1.报名... 参与活动,请移步原帖参与,原帖子链接:https://bbs.huaweicloud.com/forum/thread-70095-1-1.html【乘风破浪赋能学习季】学IoT课程get干货,“盖楼发帖”赢取大奖这个暑假你有什么计划吗?当然是用来学习了,乘风破浪学课程,get技术干货,了解更多IoT知识! 【活动时间】2020年8月7日-2020年8月24日 12:00【参与方式】1.报名...
- 提到操作系统,第一时间我们就会想到运行在电脑上的Windows,想起运行在手机上的安卓。这些系统直接运行在“裸机”设备的最低层,搭建起其他软件、应用运行的环境与基础。操作系统的兴起、完善,促成了软件与应用的兴起,铸就了辉煌的PC时代与移动互联网时代。 谈到物联网,最大的问题之一就在于沟通,不同设备、不同标准之间的沟通、软件与硬件的沟通。如何解决这种 “沟通”问题,操作系统变得尤为重要。物联网... 提到操作系统,第一时间我们就会想到运行在电脑上的Windows,想起运行在手机上的安卓。这些系统直接运行在“裸机”设备的最低层,搭建起其他软件、应用运行的环境与基础。操作系统的兴起、完善,促成了软件与应用的兴起,铸就了辉煌的PC时代与移动互联网时代。 谈到物联网,最大的问题之一就在于沟通,不同设备、不同标准之间的沟通、软件与硬件的沟通。如何解决这种 “沟通”问题,操作系统变得尤为重要。物联网...
- 以小熊派为例,使用TIM16(通用定时器)产生pwm,使用TIM2(通用定时器)的通道1、通道2捕获pwm的高电平时间、周期。 以小熊派为例,使用TIM16(通用定时器)产生pwm,使用TIM2(通用定时器)的通道1、通道2捕获pwm的高电平时间、周期。
- 摘要:由于前面几篇文章都属于源码级解析,本篇文章带领大家实践使用整个AT框架,将前面的知识串联在一起讲解,让大家能真正将AT框架运用到实际开发当中。 初始化:我们的初始化流程和上图一致,由下到上进行初始化。1. 在Uart.c文件实现将uart注册进driver层中的函数并调用宏定义等待初始化driver层时自动注册: 2. 调用driver层中的初始化函数,初始化d... 摘要:由于前面几篇文章都属于源码级解析,本篇文章带领大家实践使用整个AT框架,将前面的知识串联在一起讲解,让大家能真正将AT框架运用到实际开发当中。 初始化:我们的初始化流程和上图一致,由下到上进行初始化。1. 在Uart.c文件实现将uart注册进driver层中的函数并调用宏定义等待初始化driver层时自动注册: 2. 调用driver层中的初始化函数,初始化d...
- AT框架关闭打印调试信息函数该函数用于关闭AT打印调试信息,如果关闭了AT框架在收到数据时就不会进行相应的打印了。1. int at_debugclose(void) 2. { 3. //for the debug 4. g_at_cb.rxdebugmode = en_at_debug_none; //本质上就是修改了结构体中的成员变量5. g_a... AT框架关闭打印调试信息函数该函数用于关闭AT打印调试信息,如果关闭了AT框架在收到数据时就不会进行相应的打印了。1. int at_debugclose(void) 2. { 3. //for the debug 4. g_at_cb.rxdebugmode = en_at_debug_none; //本质上就是修改了结构体中的成员变量5. g_a...
- 设备开启函数我们在使用某个设备之前,如果该设备具有open和close的能力,就要先去打开该设备,用完之后关闭该设备。 设备关闭函数在使用完设备之后,我们可以调用设备关闭函数。向设备中读取数据向设备中写入数据 设备开启函数我们在使用某个设备之前,如果该设备具有open和close的能力,就要先去打开该设备,用完之后关闭该设备。 设备关闭函数在使用完设备之后,我们可以调用设备关闭函数。向设备中读取数据向设备中写入数据
- 摘要:本贴详解driver层,相信大家肯定有疑问,为啥我不说完AT层再说driver层?因为AT层就是通过调用driver层中的API来操作串口的,所以不得不在AT层的详解中先把driver层说了。编程的抽象思想我们在接到一个客户的需求时,帮客户制作一份程序,大家有没有想过“我能不能把这个客户需要的代码下次卖给其他客户,节约自己的工作量”。要如何才能将刚刚我们提出的想法实现呢?这就需要通过编... 摘要:本贴详解driver层,相信大家肯定有疑问,为啥我不说完AT层再说driver层?因为AT层就是通过调用driver层中的API来操作串口的,所以不得不在AT层的详解中先把driver层说了。编程的抽象思想我们在接到一个客户的需求时,帮客户制作一份程序,大家有没有想过“我能不能把这个客户需要的代码下次卖给其他客户,节约自己的工作量”。要如何才能将刚刚我们提出的想法实现呢?这就需要通过编...
- 摘要:本贴以前面3篇帖子作为基础(由下至上Uart.c、driver.c),讲解AT框架,这三层之间由下到上是一个依次调用关系,如果对前面的内容不熟悉,请回头看一看(可以通过汇总帖中的链接查看),再来看本贴,你就会更加明白和清晰了。本系列汇总贴:https://bbs.huaweicloud.com/forum/thread-51806-1-1.html下图红框中的位置是本帖所讲解内容在整个... 摘要:本贴以前面3篇帖子作为基础(由下至上Uart.c、driver.c),讲解AT框架,这三层之间由下到上是一个依次调用关系,如果对前面的内容不熟悉,请回头看一看(可以通过汇总帖中的链接查看),再来看本贴,你就会更加明白和清晰了。本系列汇总贴:https://bbs.huaweicloud.com/forum/thread-51806-1-1.html下图红框中的位置是本帖所讲解内容在整个...
- 摘要:本节以解析UART.c文件中的代码为主,为了后面讲解AT框架及Driver框架做铺垫。关于串口的背景知识:https://bbs.huaweicloud.com/forum/thread-53612-1-1.html由于该文件中设计到了ring_buffer也就是环形数据结构的操作,你可以先阅读该篇文章,理解环形数据结构:https://bbs.huaweicloud.com/foru... 摘要:本节以解析UART.c文件中的代码为主,为了后面讲解AT框架及Driver框架做铺垫。关于串口的背景知识:https://bbs.huaweicloud.com/forum/thread-53612-1-1.html由于该文件中设计到了ring_buffer也就是环形数据结构的操作,你可以先阅读该篇文章,理解环形数据结构:https://bbs.huaweicloud.com/foru...
- 如果你想彻底搞清楚LiteOS_Lab,我以下分享的知识你都应该去了解一下,不需要彻底掌握,但是至少要会看懂、能修改。一、GNU Make (Makefile) 这是在LiteOS_Lab中用于控制编译文件的工具,比如你在一个工程中添加了某些文件或者删除了某些文件,你需要修改相应的Makefile来达到控制编译的目的,你还可以在Makefile中添加一些特定的选项,比如-O来调节优化等... 如果你想彻底搞清楚LiteOS_Lab,我以下分享的知识你都应该去了解一下,不需要彻底掌握,但是至少要会看懂、能修改。一、GNU Make (Makefile) 这是在LiteOS_Lab中用于控制编译文件的工具,比如你在一个工程中添加了某些文件或者删除了某些文件,你需要修改相应的Makefile来达到控制编译的目的,你还可以在Makefile中添加一些特定的选项,比如-O来调节优化等...
- 专注于分享权威的IoT知识,给予你最好的赋能! 专注于分享权威的IoT知识,给予你最好的赋能!
- 摘要:为了能和大家说清楚LiteOS的硬件接管机制,不得不在这里谈一谈STM32上电后的启动机制。 基础知识大家应该注意到stm32开发板上都是几个跳线帽或者拨码开关,用于切换BOOT0和BOOT1的管脚电平,其目的是为了选择启动模式:MODEBOOT0BOOT1FLASH0XSRAM11ISP10这里的0是指将对应管脚和GND连接,1是指将对应管脚和VCC连接,X是指任意状态都可以,默认情... 摘要:为了能和大家说清楚LiteOS的硬件接管机制,不得不在这里谈一谈STM32上电后的启动机制。 基础知识大家应该注意到stm32开发板上都是几个跳线帽或者拨码开关,用于切换BOOT0和BOOT1的管脚电平,其目的是为了选择启动模式:MODEBOOT0BOOT1FLASH0XSRAM11ISP10这里的0是指将对应管脚和GND连接,1是指将对应管脚和VCC连接,X是指任意状态都可以,默认情...
- 摘要:由于前面几篇文章都属于源码级解析,本篇文章带领大家实践使用整个AT框架,将前面的知识串联在一起讲解,让大家能真正将AT框架运用到实际开发当中。 初始化:我们的初始化流程和上图一致,由下到上进行初始化。1. 在Uart.c文件实现将uart注册进driver层中的函数并调用宏定义等待初始化driver层时自动注册: 2. 调用driver层中的初始化函数,初始化drive... 摘要:由于前面几篇文章都属于源码级解析,本篇文章带领大家实践使用整个AT框架,将前面的知识串联在一起讲解,让大家能真正将AT框架运用到实际开发当中。 初始化:我们的初始化流程和上图一致,由下到上进行初始化。1. 在Uart.c文件实现将uart注册进driver层中的函数并调用宏定义等待初始化driver层时自动注册: 2. 调用driver层中的初始化函数,初始化drive...
上滑加载中
推荐直播
-
华为云IoT开源专家实践分享:开源让物联网平台更开放、易用
2024/05/22 周三 16:30-18:00
张俭 华为云IoT DTSE技术布道师
开源,意味着开放、共享、互助、共赢。作为万物上云及各行业数字化的物联网底座,华为云IoT积极拥抱开源,借助行业开源的最佳实践,构建可靠、易用的物联网平台,并通过开放南北向SDK,助力开发者快速构建物联网应用。本期直播,华为云IoT开源专家、物联网平台资深“程序猿”张俭,带你了解华为云IoT的开源生态,并手把手教你玩转开源社区!
去报名 -
华为云开发者日·广州站
2024/05/23 周四 14:30-17:30
华为云专家团
华为云开发者日HDC.Cloud Day是面向全球开发者的旗舰活动,汇聚来自千行百业、高校及科研院所的开发人员。致力于打造开发者专属的技术盛宴,全方位服务与赋能开发者围绕华为云生态“知、学、用、创、商”的成长路径。通过前沿的技术分享、场景化的动手体验、优秀的应用创新推介,为开发者提供沉浸式学习与交流平台。开放创新,与开发者共创、共享、共赢未来。
去报名
热门标签