![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
zephyr
无限之生
飞跃太平洋
展开
-
zephyr中消息队列和邮箱的主要区别点
简单列一下而已,想到什么就列了什么:1邮箱既可以同步也可以异步,消息队列只可以异步;2邮箱包含Send和Recv两个消息队列,消息队列仅仅包含一个用于消息传输的队列3邮箱不可用ISR中使用,消息队列可以再ISR中发送数据项到队列;4消息队列适合线程间传递小的数据项;...原创 2020-08-18 17:10:27 · 1316 阅读 · 0 评论 -
zephyr 学习资源
1 官网https://docs.zephyrproject.org/latest/2 中文网站https://zephyr-doc.readthedocs.io/zh_CN/latest3 github仓库https://github.com/zephyrproject-rtos/zephyr一些学习blog:1 west命令详解:init&updatehttp://www.sunyouqun.com/2020/04/west-cmd-init-update/.原创 2020-07-15 15:37:00 · 248 阅读 · 0 评论 -
zephyr 内核之工作队列(workqueue)
工作队列(workqueue)概述zephyr中的工作队列与Linux的工作队列功能类似,用于实现中断的底半部。也就是说中断ISR中比较耗时的操作,放到工作队列中去执行。zephyr中工作队列是基于线程的,简单来说,就是有一个线程一直在等待工作队列的api发来的工作项,当有工作项时(一个待 执行的函数)就处理(把函数调用了),当有多个工作项时就按顺序处理,没有工作项时就休眠。工作队列线程工作队列是一个内核对象,用专用的线程以先进先出(FIFO)的方式去处理被提交的工作元项(work it原创 2020-07-15 14:30:26 · 1340 阅读 · 0 评论 -
zephyr 内核时钟
内核时钟(timing)概述支持的时钟类型硬时钟(32位)单位为周期(cycle) 一个周期的长度取决于内核所使用的板卡硬件 可用于更高精度的计时系统时钟(64位)单位为滴答(tick) 嘀嗒的时长是可配置的,其典型值为1~100毫秒。...原创 2020-07-15 14:03:40 · 220 阅读 · 0 评论 -
Zephyr 内存分配机制
zephyr 内存分配机制,内存片、内存池、堆内存池三个部分组成;1 内存片概述内存片(memory slab) 是一个内核对象 允许从指定的内存区域上动态地分配内存块 同一内存片上所有的内存块尺寸都是固定的API 定义内存片2 内存池概述内存池(memory pool)是一个内核对象 允许从指定的内存区域上动态地分配内存块(memory block) 内存池中的内存块的大小是不固定的 内存池使用"伙伴"(buddy)内存分配算法AP...原创 2020-07-15 14:02:05 · 857 阅读 · 0 评论 -
Zephyr 上手(windows )
目录1 官方参考文档2 开发环境搭建2.1 安装Chocolatey2.2 通过choco安装cmake、ninja等软件3 下载zephyr 源码4 安装zephyr 所需要的python 插件5 安装zephyr所支持的开发板的modules6 编译Demo1 官方参考文档https://docs.zephyrproject.org/latest/getting_started/index.html2 开发环境搭建2.1 安装Chocolatey.原创 2020-07-07 10:15:40 · 1192 阅读 · 0 评论 -
zehpyr 搭建开发环境遇到的一些问题
问题一:west build指令提示不支持build 操作问题描述如下:解决:官网描述参考:https://docs.zephyrproject.org/latest/guides/west/troubleshooting.html根据官网描述,build、flash等指令属于扩展指令,这些扩展指令必须在west workspace中有两种解决方法: Run the command from inside a workspace (e.g. thezephyrproje...原创 2020-07-07 10:06:09 · 3132 阅读 · 2 评论