自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 LVGL的核心结构体 - 动态内存申请链表

动态申请的双向链表,目的在于用一种数据结构,面对多种应用场景。

2023-01-09 18:06:48 775

原创 LVGL 界面跳转逻辑的设计与实现

LVGL 中没有关于界面调度相关的接口,这一块需自己定义界面的跳转逻辑,本文章分享的是一种界面跳转的思路与实现。

2022-10-03 15:14:21 8612 2

原创 嵌入式日志管理系统的设计与实现

日志应用定位问题、跟踪数据、采集数据等多个方面,比如定位一些时序性较强的 bug、分析系统运行时的性能、对系统产生的数据进行保存分析等等,这些都是在线调试不能解决的。所以日志在一个系统的扮演一个很重要的角色,一般在开发不支持在线调试的单片机是,第一个要实现在功能就是日志了。

2022-10-01 23:23:49 2400

原创 关于C代码规范,如何制定自己的编码规范

“一个专业的程序员不仅因该能写出有效和正确的代码,他还因该能以一种可能在多年以后,需要维护它的人能够理解的风格编写的代码”。所以不管是自己独立开发的项目,还是与其他人共同开发的项目,都应该做好代码规范,这样开发和维护的过程就也会变得轻松一点。

2022-09-30 20:09:00 721

原创 1. LVGL 8.3 在 Visual Studio 2019 模拟器中的环境搭建

Visual Studio 2019 上搭建 LVGL 8.3 的运行环境

2022-08-07 13:30:08 1825 5

原创 C语言常见问题

C语言常见问题

2022-02-06 19:57:40 696

原创 MQTT协议

MQTT协议(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(Publish/Subscribe)模式的轻量级通讯协议,MQTT 最大的优点在于可以以极少的代码和有限的带宽,为远程设备提供实时可靠的消息服务

2022-01-30 23:39:47 29822

原创 3种字符设备驱动编程

目录1 杂项字符设备核心结构体操作函数杂项字符设备注册应用2 早期经典方式注册操作函数经典设备注册应用3 Linux2.6字符设备核心结构体操作函数Linux2.6设备注册应用Linux系统借鉴了面向对象的思想来管理设备驱动,每一类设备都会有定义一个特定的结构体来描述它,这个结构体包含了设备的基本信息,以及操作设备方法(函数指针)所以,编写程序实际上就是实现核心结构体,然后把这个结构体注册到内核中。 驱动程序就是向下控制硬件,向上提供接口,这...

2022-01-29 18:30:05 1649

原创 内核模块化编程

目录内核模块的概念介绍模块化编程框架模块加载函数模块卸载函数模块的开源协议与声明模块编译 Makefile 模板单模块的编程步骤1 编写内核模块文件test.c2 编写Makefile3 编译生成test.ko内核模块的概念介绍Linux 内核整体结构已经很庞大,包含了很多的组件,而对于我们工程师而言,有两种方法将需要的功能包含进内核当中。一:将所有的功能都编译进 Linux 内核(静态加载模块)。二:将需要的功能编译成模块...

2022-01-29 17:00:27 2074 1

原创 裸机启动流程

目录初识开发板:1裸机启动流程:2烧录代码命令3交叉编译工具4编译点亮led灯的代码初识开发板:核心板:三星exynos4412猎户座系统芯片;CPU主频 1.4GHZ,基于ARM-cortex A9;四核处理器,同时处理四个进程;内部IROM:内部集成的一个存储的 64k;内部IRAM:256k;外部扩充ROM:4G存储空间,RAM:1G的内存空间。底板:蜂鸣器:1个;UART口:3个;usb:2个;网口:1个;拨码开关:2个(左边控制电源,右边控制启动位置);IIC:4套

2022-01-28 20:33:38 4262

原创 8080协议

目录8080协议概述写周期序列读周期序列8080协议概述8080协议是一种并行、异步、半双工通信协议,可用于单片机控制器与LCD驱动芯片之间的通信。8080的通信端包括:The chip-select CSX (activelow) is used to enable or disable ILI9341 chip. The RESX(active low) is an external reset signal. WRX is theparallel data write st.

2022-01-28 18:57:34 8815

原创 CAN总线协议

CAN : Controller Area Network(控制器局域网络)的缩写(以下称为 CAN),是 ISO*1 国际标准化的串行通信协议,

2022-01-27 22:28:24 3477

原创 Linux工程编译、管理和调试

目录工程编译动态库与静态库的制作静态库动态库补充调试工具gdb工程管理工具makefile工程编译Ubuntu编译C程序采用的是gcc编译器 gcc xxx.c //编译xxx.c文件,默认输出可执行文件a.out gcc xxx.c -o xxx //输出可命名的执行文件 C语言程序编译的四个阶段1编译预处理:处理伪指令(头文件\宏\条件编译) gcc -E xxx.c -o xxx.i 2编译:将代码编译为汇

2022-01-26 23:02:56 985

原创 Linux vim编辑器

vim的安装apt install vimvim打开文件操作vim filename (+num) //直接打开名字为filename的文件,光标显示的的num行vim的配置文件 /root/.vimrc、/etc/.vimrcvim的三种模式命令模式:使用 Vim 编辑文件时,默认处于命令模式。在此模式下,可以使用上、下、左、右键或者 k、j、h、l 命令进行光标移动,还可以对文件内容进行复制、粘贴、替换、删除等操作。(n) yy Y (...

2022-01-26 21:23:40 291

原创 2.3 进程的同步与互斥

目录一、进程同步与互斥的基本概念二、进程互斥访问临界区算法1 单标志法2 双标志先检查法3 双标志后检查法4 Peterson算法三、信号量互斥访问临界区一、进程同步与互斥的基本概念在多道程序环境下,进程是并发执行的,不同进程之间存在着不同的相互制约关系。为了协调进程之间的相互制约关系,引入了进程同步的概念。我们举一个简单例子帮大家理解这个概念,比如,让系统计算1+2*3,假设系统产生两个进程:一个是加法进程、一个是乘法进程。为了让计算结果是正确的,那么一...

2022-01-24 20:25:40 480

原创 2.2 处理机调度与算法

目录一、调度的概念1 概念2 调度的层次二、调度的时机、切换、过程与方式三、调度算法的基本指标四、典型的调度算法一、调度的概念1 概念当有一堆任务要处理,但由于资源有限,这些事情没法同时处理。这就需要确定某种规则来决定处理这些任务的顺序, 这就是“调度” 研究的问题。在多道程序系统中,进程的数量往往是多于处理机的个数的,这样不可能同时并行地处理各个进程。处理机调度,就是从就绪队列中按照一定的算法选择一个进程并将处理机分配给它运行,以实现进...

2022-01-23 23:58:06 1151

原创 2.1 进程的概念与详情、线程

目录一、进程的概念和特征1 进程的概念2 进程的特征二、进程的状态与转换三、进程控制1 进程的创建2 进程的终止3 进程的阻塞和唤醒4 进程的切换四、进程的组织1 进程控制块2 程序段3 数据段五、进程的通信1 共享存储2 消息队列3 管道通信六、线程和多线程模型1 线程的基本概念2 线程与进程的比较3 线程的属性4 线程的实现方式5 多线程模型一、进程的概念和特征1 进程的概念在多道程序...

2022-01-22 20:36:11 155

原创 二、进程管理

进程管理、内存管理、文件系统、设备管理、网络系统

2022-01-22 12:09:40 289

原创 SPI协议

spi

2022-01-21 21:45:09 3441

原创 单总线协议

单总线协议

2022-01-21 17:23:15 1781

原创 rs485与modbus协议

rs485与modbus协议

2022-01-20 13:07:36 22905 1

原创 rs232、rs422和rs485的特点与区别

目录RS-232RS-485RS-422三者区别RS-232RS-232标准接口(又称EIA RS-232)是常用的串行通信接口标准之一,它是由美国电子工业协会(EIA)联合贝尔系统公司、调制解调器厂家及计算机终端生产厂家于1970年共同制定。RS-232-C标准规定的数据传输速率为每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特。rs232特点:(1)接口的信号电平值较高,易损坏接口电路的芯片。RS232...

2022-01-19 16:59:20 8648

原创 IIC协议

IIC协议(Inter-Integrated Circuit)其实是IICBus简称,所以中文应该叫集成电路总线,它是一种串行同步半双工通信总线。I2C一般有两根信号线,一根为双向的数据线SDA,另一根是时钟线SCL,所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上

2022-01-19 16:06:32 2186

原创 UART/USRAT协议

嵌入式常见几种协议UARTIICSPI单总线UARTUARTIICSPI单总线下面展示一些 内联代码片。// A code blockvar foo = 'bar';// An highlighted blockvar foo = 'bar';

2022-01-19 12:32:32 1619

Abbreviations for common words in embedded programming.

内容概要:常用嵌入式单词缩写 适合人群:嵌入式软件工程师 能学到什么:更标准化的编程 阅读建议:配合着C语言风格指导和标准

2022-09-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除