
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
这里写目录标题volatile 用法struct 用法enum 用法预处理器与预处理指令文件包含#includevolatile 用法volatile原意是“易变的”,在嵌入式环境中用volatile关键字声明的变量,在每次对其值进行引用的时候都会从原始地址取值。由于该值“易变”的特性所以,针对其的任何赋值或者获取值操作都会被执行(而不会被优化)。由于这个特性,所以该关键字在嵌入式编译环境中经常用
我是韦东山,一直从事嵌入式Linux培训,最近打算连载一系列文章。正在录制全新的嵌入式Linux视频,使用新路线,不再从裸机/uboot开始,效率更高。对应文档也会写成书<<嵌入式Linux应用开发完全手册>>第二版,视频文档、书的样稿可以直接下载:https://vdisk.weibo.com/s/t6HbuIpx6zoa11.概念只要涉及编程,并且所用硬件不是电脑的话,
本篇的重点是解析paho mqtt官方例程,学习它的一些结构体、API和回调的处理,然后再学习下Linux中的线程和线程间数据通信,掌握相关API的使用,最后综合起来,使用多线程publish或处理subscribe的主题的消息,将订阅的温湿度消息解析出来在LVGL的表格中用折线图的方式显示出来。适用于百问网的STM32MP157开发板和IMX6ULL开发板及其对应的屏幕,需要注意的是编译链要
作者:韦东山全文分为三大部分1.设备树里中断节点的语法2.设备树里中断节点的示例3.在代码中获得中断参考:内核Documentation\devicetree\bindings\interrupt-controller\interrupts.txt1.设备树里中断节点的语法1.1 设备树里的中断控制器中断的硬件框图如下:在硬件上,“中断控制器”只有GIC这一个,但是我们在软件...
很多人喜欢从系统启动流程开始学习:先学习裸机,裸机集合起来就是 u-boot,再学习内核移植、驱动开发,接下来学习根文件系统,最后学习 APP 开发。学习裸机需要 2、3 个月,学习 u-boot 也需要 2、3 个月,结果工作中 u-boot 基本不用改,并且 u-boot比驱动开发还难!按这套流程下来,学了后面忘了前面,最惨的是:不能快速上手工作,消耗学习热情!入门讲究的是快速,入门之后再慢慢
在前几篇的文章中,我们已经学习了LVGL界面绘制以及paho mqtt的同步客户端和异步客户端的操作,那么本篇就会综合前面的知识,加上Linux系统的多线程以及线程间通信的知识,将LVGL、MQTT、多线程、消息队列这些知识使用起来,形成我们最终的产品。适用于百问网的STM32MP157开发板和IMX6ULL开发板及其对应的屏幕,需要注意的是编译链要对应更改。Linux的多线程编程如果要深入
妈妈怎么知道卧室里小孩醒了?① 时不时进房间看一下:查询方式简单,但是累② 进去房间陪小孩一起睡觉,小孩醒了会吵醒她:休眠-唤醒不累,但是妈妈干不了活了③ 妈妈要干很多活,但是可以陪小孩睡一会,定个闹钟:poll 方式要浪费点时间,但是可以继续干活。妈妈要么是被小孩吵醒,要么是被闹钟吵醒。④ 妈妈在客厅干活,小孩醒了他会自己走出房门告诉妈妈:异步通知妈妈、小孩互不耽误。这 4 种方法没有优劣之分,
在一个嵌入式系统里面,既要有输出也要有输入。那么到底什么是输入系统呢?1.1 什么是输入系统?先来了解什么是输入设备?常见的输入设备有键盘、鼠标、遥控杆、书写板、触摸屏等等,用户通过这些输入设备与 Linux 系统进行数据交换。什么是输入系统?输入设备种类繁多,能否统一它们的接口?既在驱动层面统一,也在应用程序层面统一?可以的。Linux 系统为了统一管理这些输入设备,实现了一套能兼容所有输入设备
6.1 前言Linux平台上有许多开源的嵌入式linux系统构建框架(框架的意思就是工具),这些框架极大的方便了开发者进行嵌入式系统的定制化构建,目前比较常见的有OpenWrt, Buildroot, Yocto,等等。其中Buildroot功能强大,使用简单,而且采用了类似于linux kernel的配置和编译框架,所以受到广大嵌入式开发人员的欢迎。本章重点介绍使用Buildroot_2020.