ShallowGreen
码龄5年
关注
提问 私信
  • 博客:118,494
    视频:1
    118,495
    总访问量
  • 24
    原创
  • 1,596,006
    排名
  • 51
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2019-06-14
博客简介:

ShallowGreen的博客

查看详细资料
个人成就
  • 获得113次点赞
  • 内容获得9次评论
  • 获得682次收藏
创作历程
  • 1篇
    2023年
  • 23篇
    2022年
成就勋章
TA的专栏
  • LVGL
    3篇
  • 笔记
    2篇
  • 嵌入式笔记
    10篇
  • 驱动开发笔记
    3篇
  • 操作系统笔记
    4篇
  • Linux系统笔记
    2篇
兴趣领域 设置
  • 人工智能
    语音识别
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

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

动态申请的双向链表,目的在于用一种数据结构,面对多种应用场景。
原创
发布博客 2023.01.09 ·
969 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏

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

LVGL 中没有关于界面调度相关的接口,这一块需自己定义界面的跳转逻辑,本文章分享的是一种界面跳转的思路与实现。
原创
发布博客 2022.10.03 ·
10312 阅读 ·
28 点赞 ·
2 评论 ·
143 收藏

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

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

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

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

Abbreviations for common words in embedded programming.

发布资源 2022.09.30 ·
pdf

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

Visual Studio 2019 上搭建 LVGL 8.3 的运行环境
原创
发布博客 2022.08.07 ·
2200 阅读 ·
4 点赞 ·
5 评论 ·
15 收藏

C语言常见问题

C语言常见问题
原创
发布博客 2022.02.06 ·
743 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

MQTT协议

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

3种字符设备驱动编程

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

内核模块化编程

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

裸机启动流程

目录初识开发板: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 ·
4411 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

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 ·
9451 阅读 ·
1 点赞 ·
0 评论 ·
22 收藏

CAN总线协议

CAN : Controller Area Network(控制器局域网络)的缩写(以下称为 CAN),是 ISO*1 国际标准化的串行通信协议,
原创
发布博客 2022.01.27 ·
3560 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

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 ·
1030 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

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 ·
321 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

2.3 进程的同步与互斥

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

2.2 处理机调度与算法

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

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

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

二、进程管理

进程管理、内存管理、文件系统、设备管理、网络系统
原创
发布博客 2022.01.22 ·
332 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SPI协议

spi
原创
发布博客 2022.01.21 ·
3686 阅读 ·
1 点赞 ·
0 评论 ·
10 收藏
加载更多