查看原文
其他

笔记汇总(不断更新中)

ZhengNL 嵌入式大杂烩 2021-01-31


点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记!



本篇笔记汇总帖有一些是本人的总结笔记,有一些是本人觉得比较好的比较容易吸收的转载文章,还有一些资料分享等。统一归类到这里,一来方便我自己查看,因为有些知识一旦很长时间不用,会很容易忘掉了。做一些简单的记录,以便日后查看。二来也希望这些文章能给一些朋友提供帮助。


本篇汇总笔记持续更新,欢迎持续关注。知识在于积累,技术在于沉淀。让我们共同积累嵌入式大杂烩知识,共同进步!


我的博客:www.lizhengnian.cn,微信不支持外链,可复制至浏览器进行打开,公众号的一些内容也会同步至我的博客中,欢迎来访。



嵌入式大杂烩


【STM32】在SRAM、FLASH中调试代码的方法

【STM32】一种实用的测量程序运行时间的方法

【STM32】替代串口打印,另一种打印调试方法

【STM32】ISP下载的原理是什么呢?

【STM32】串口IAP分享

【STM32】串口打印知多少?

STM32】复用时钟何时开启呢?

【STM32】STM32F429的USB是个坑?

【STM32】内部FLASH读写操作详解(附代码)

【STM32】串口空闲中断接收不定长数据

【STM32】串口中断的4种接收数据的实现方式

【STM32】启动过程--启动文件--分析

【STM32】两种printf函数重定向方法

【STM32】数据手册中的那些重要内容

【STM32】map文件学习

【STM32】hex文件、bin文件、axf文件的区别

【STM32】两块STM32之间的SPI主从通信实例

STM32】硬件SPI主从通信(附代码)

【STM32】普通灯泡调光控制器

【RT-Thread】BH1750软件包的使用

【RT-Thread】OneNET软件包的使用

【RT-Thread】智慧路灯案例实验分享

【RT-Thread】UART设备驱动框架

【RT-Thread】对象容器与双链表

【RT-Thread】对FLASH进行分区管理

【RT-Thread】内核对象模型

【RT-Thread】IO设备模型及PIN设备

【RT-Thread】PIN设备中断实验

【RT-Thread】线程的基本知识

【RT-Thread】内核基础

【RT-Thread】临界区问题及IPC机制

【RT-Thread】裸机系统与多线程系统

【RT-Thread】启动问题

RT-Thread】在  Nano 上添加控制台与 FinSH

《干货 | protobuf-c之嵌入式平台使用》

《干货 | 结构体、联合体嵌套使用的一些实用操作》

《C语言、嵌入式中几个非常实用的宏技巧》

《C语言、嵌入式应用:TCP通信实例分析》

C语言、嵌入式位操作精华技巧大汇总

《C语言、嵌入式重点知识:回调函数》

《例说嵌入式实用知识之JSON数据》

《干货 | 嵌入式必备技能之Git的使用》

《你的单片机裸机程序框架是怎样的?》

《bug解决不了?使用日志法》

《Protobuf:一种更小、更快、更高效的协议》

《wireshark抓包工具的使用及分析》

ARM MCU错误代码自动追踪库的使用经验分享

《自定义协议的这些典型例子你会了吗?》

《一文带你认识FPGA~》

《AT指令测试ESP8266通信模组》

《网络调试助手的简单使用》

《基于LiteOS的智慧农业案例实验分享》

《干货 | 嵌入式必备技能之Git的使用》

《面试官:Linux下如何编译C程序?》

【计算机网络】TCP、UDP通信总结

【计算机网络】基于C语言的天气客户端的实现

【计算机网络】 基于Linux、C、JSON的编程实例

《小熊派4G开发板初体验》

《基于4G Cat.1的内网穿透实践》

《移远4G模组拨号+socket获取天气数据》

【DSP笔记】切换RAM、FLASH工程版本的方法

【DSP笔记】下载程序遇到的问题

【知识点】什么是大小端模式?

【知识点】什么是通讯?

【知识点】什么是可重入函数?

【知识点】JSON的简单认识

【知识点】一个超轻量级的JSON解析器

【知识点】什么是ARM?

【知识点】电磁干扰EMI与去耦电容

【知识点】gcc、arm-linux-gcc和arm-elf-gcc?

【知识点】RAM知识,搞明白了吗?

【知识点】自定义协议的这些典型例子你会了吗?

智能桌面天气预报系统(一)

智能桌面天气预报系统(二)

智能桌面天气预报系统(三)

智能桌面天气预报系统(四)

智能桌面天气预报系统(终)

编写优质嵌入式C程序(一)

编写优质嵌入式C程序(二)

省电子设计竞赛一等奖作品分享(一)

省电子设计竞赛一等奖作品分享(二)

省电子设计竞赛一等奖作品分享(三)

嵌入式软件工程师经典面试题(一)

嵌入式软件工程师经典面试题(二)

《物尽其用,分享一个很棒的工具》

《一个严谨的STM32串口DMA发送&接收机制》

【实践】显示板开发

《一些常用的工具函数(附C代码)

《一个程序模板,用于收集C语言知识点》

《局部变量、 全局变量、 堆、 堆栈、 静态

《常见的几种AD滤波算法(附代码)

《了解一下AWTK这款GUI系统

《盘点嵌入式常见的GUI:emWin、TouchGFX等

开源项目SmartTimer

分享一个简单易用的软件定时器模块

《STM32 | 无感FOC方案原理机器控制难点分析

同步电机是如何达到同步的?工作原理是什么?

【TencentOS tiny】又有一个操作系统开源

《嵌入式学长10min教你编写C#上位机

《SFUD | 帮你轻松搞定SPI Flash

《Linux利器:QEMU!》

《C语言实现状态机》

《一种Cortex-M内核中的精确延时方法(ns级别)》

《ARM-Linux开发与MCU开发有何不同?》

《AWTK Designer快速使用指南》

项目分享| STM32打造“云”音乐播放器(源码开源)

完全由C编写,高度可移植,超级牛逼的菜单架构!

《分享GitHub上一些嵌入式相关的高星开源项目》

《一些函数、变量命名法及代码规范》

《STM32系统中2种数据掉电保护的方法》

《五分钟读懂TCP 协议》

《stm32cubeMX学习、USB DFU固件更新》

《基于STM32分析栈、堆、全局区、常量区》

《RT-Thread Studio 项目实战教程 | mini网络时钟》

《嵌入式程序员的编程修养》

《STM32也能玩高大上:实现目标分类》

【开源】省资源、高稳定的MQTT客户端

《一些操作系统的概念》

《如何使用Arduino IDE玩转STM32》

《单片机的状态机框架》

《小熊派开箱记录》

《单片机常用程序框架之分时轮询》

《平衡小车PID,就该这么调!!!》

《ARM到底是冯诺依曼结构还是哈佛结构》

《零基础入门Git&Github》

《物联网IoT终端设备如何选择接入协议》

《RTOS中的任务是线程?进程?还是协程?》

《函数return,有些地方你可能还没掌握》

《ESP8266两种工作模式数据传输测试》

《物联网通信协议全解析》

《FreeRTOS的入门材料》

《嵌入式四大通信接口的神解释》

《动态内存分配时需要注意哪些坑?》

《在SMT32程序HEX文件中加入固件版本信息》

《访问 GitHub 的速度很慢?试试这几种方法》

《干货 | TCP/IP的十个问题》

《什么是状态机?》

《嵌入式,真的不需要单元测试?》

《FreeRTOS如何减少RAM占用空间》

《热门问题:C++在嵌入式中表现如何?》

《记一个OLED编程中文显示函数的坑》

《干货 | 把编译时间加入到目标文件》

《看看µC/OS代码规范》

《CRC校验原来这么简单》

《例说 I2C 通信》

《鸿蒙及那些精品嵌入式资源》

《有哪些工具可以让嵌入式开发事半功倍?》

《实例分析如何远离漫天飞舞的全局变量》

《CPU中的程序是怎么运行起来的》

《嵌入式系统软件架构设计》

《一文搞懂ADC裸机和基于Linux驱动编写方法》

《联合体用的多吗?》

《C 语言对象化设计实例 —— 命令解析器》

《gdb调试段错误》

《复位标志解析,对MCU的程序的健康更有把控》

《 一文了解SPI总线工作原理、优缺点和应用案例》

《嵌入式C编程之错误处理》

《嵌入式开发中常见的3个C语言技巧》

《extern "C"的用法解析》

《干货 | 深度剖析C语言的main函数》

《STM32串口发送数据和接收数据方式总结》

《工具 | 手把手教你在VSCode中使用Git》

《三种常见嵌入式设备通信协议》


Linux笔记


【Linux】嵌入式Linux驱动基础

【Linux】LED驱动程序

【Linux】软件分层、分离、抽象思想

【Linux】挂载网络文件系统

【Linux】pc机_开发板_ubuntu互ping实验

【Linux】总线设备驱动模型

【Linux】LED驱动实验(总线设备驱动模型)

【Linux】设备树基础知识

【Linux】设备树实例分析

【Linux】Pinctrl子系统与GPIO子系统

【Linux】应用开发基础

【Linux】简单认识认识mqtt及mosquitto

【Linux】mqtt应用于进程间通信

【Linux】GDB调试器原来那么简单

【Linux】你的设备CPU温度是多少,能烤肉吗?

【Linux】文件系统有很多,但这几个最为重要

【Linux】往proc中留下一个脚印

【Linux】Linux下编译成功,而Windows下不成功?

【Linux】面试官:Linux下如何编译C程序?

【Linux】如何同时输出调试信息到终端及文件?

【Linux】如何查看Linux命令工具的源码?

【Linux】一个不该被遗忘的打印输出函数

【Linux】文件及目录管理命令

【Linux】文本文件查看命令

【Linux】文件的权限

【Linux】系统目录结构

【Linux】Vi/Vim编辑器

【Linux】Linux下编译C程序

【Linux】make工程管理工具(一)

【Linux】make工程管理工具(二)

【Linux】Windows与Linux文件互传

【Linux】Linux内核概述

《从单片机工程师的角度看嵌入式Linux》

《我的单片机转嵌入式Linux之路》

《笔记:编写简单的内核模块

《Linux文件系统及文件缓存知识点》

《嵌入式Linux项目开发的几个步骤》

《Linux 内核如何描述一个进程?》

《从串口驱动到Linux驱动模型》

《什么是Linux内核空间与用户空间?》

《万事开头难 - 介绍IMX6ULL启动方式》

《Makefile、Kconfig和.config文件有什么关联》

《三个简单实用的编译小技巧》

《嵌入式 Linux下永久生效环境变量bashrc》

《Linux 的启动流程》


程序人生、经验类


《应届生求职的那些事》

《十年经验工程师为何被裁?》

《从单片机工程师的角度看嵌入式Linux》

《一名95后嵌入式软件工程师的成长之路》

《记我的我得一次裸辞

《是否要从单片机转嵌入式Linux?

《从大学生到职场人的思维认知升级补丁--番外篇》

《嵌入式之技术专精与广博的一些思考》

《一位大牛的单片机笔记

《嵌入式应用层开发要学习什么

《注重这些细节可以提高我们的编程水平

《模块化编程总结

到底什么是嵌入式?什么是单片机?

《一位Linux工程师给程序员的几点小建议

《学习嵌入式软件,C语言要掌握到什么程度?

《空间换时间,查表法的经典例子》

《一些不可不知的计算机网络基础》



C语言笔记


【C语言】几个非常实用的宏技巧

【C语言】动态、静态链接

【C语言】动态、静态链接(二)

【C语言】经典、易错的结构体内存对齐的问题

【C语言】认识认识#pragma、#error指令

【C语言】什么是不完全类型?

【C语言】内存总结

【C语言】关于数组的一个陷阱!

【C语言】你知道C语言编译的过程吗?

【C语言】指定初始化器

【C语言】操作位的技巧

【C语言】位域

【C语言】经典:交换a、b值较好的方法?

【C语言】C基础、经典:字符串逆序

【C语言】干货 | 函数宏的三种封装方式

【C语言】C语言高效编程与代码优化

【C语言】assert()怎么用?

【C语言】#运算符与##运算符

【C语言】学习使用带参宏(一)

【C语言】学习使用带参宏(二)

【C语言】#define的高级用法

【C语言】联合体怎么用?

【C语言】结构体

【C语言】枚举

【C语言】整数溢出

【C语言】你的黑窗口闪退?

【C语言】测试程序模板

【C语言】如何查看数据类型范围?

【C语言】什么是ANSI C标准?

【C语言】ASCII码可见、不可见字符

【C语言】变参函数

【C语言】关于随机数的总结

【C语言】时间日期函数

【C语言】函数指针作为函数的参数

【C语言】函数指针作为结构体成员

【C语言】指针函数与函数指针?

【C语言】数组与指针不等价

【C语言】关于有符号数与无符号数

【C语言】数组问题:a与&a有何不同?

【C语言】static有几种用法?

【C语言】二维数组作为函数参数?

【C语言】关于数组与指针的总结

【C语言】C语言指针变量的运算

【C语言】C语言结构体内存对齐问题

【C语言】指针的基本概念

【C语言】C语言变量默认的初值是?

【C语言】来看一看volatile关键字

【C语言】你应该用复合赋值语句?

【C语言】char *str与char str[]的区别

【C语言】extern怎么用?

【C语言】getchar、getch的区别?

【C语言】#define与typedef的区别?

【C语言】函数参数压栈的顺序是?

【C语言】关于main()函数的问题

【C语言】Windows命令行编译C程序

《C语言代码优化的一些技巧(一)》

《C语言代码优化的一些技巧(二)》

《C语言代码优化的一些技巧(三)》

《C语言代码优化的一些技巧(四)》

《C语言对象编程第一弹:封装与抽象

《C语言对象编程第二弹:继承》

经典问题:return不可返回指向栈内存的指针!

NULL,0,'\0',“0”,"\0"你真的分得清吗?

高级指针话题-函数指针

把notepad++配置成一个能编译C代码的记事本

《一道简单但易错的C语言面试题

《C语言入坑指南-被遗忘的初始化

《sizeof你真的弄明白了吗?来看看这个例子

《a是一个数组,&a是什么?&a+1的值又是什么?

《什么是编译器、集成开发环境?一文讲明白

C语言const 关键字

为什么Linux内核里大量使用goto,而很多书籍却不提倡使用?

《void*到底是怎样的存在?

C语言结构体用法很多,坑也很多

《面试题:C语言验证大小端的几个方法》

《遇到指针别害怕!先把这篇笔记看一遍》

《C语言,字符串指针做函数参数》

《指针和数组有何联系及区别?》

【资源】C语言经典示例

《干货 | C语言头文件组织与包含原则》

《宏##粘贴函数的使用》

《C语言精华知识:表驱动法编程实践》

《C语言设计模式--状态模式(状态机)》

《C语言设计模式--简单工厂模式》

《C语言:防止缓冲区溢出》

《ANSI是什么编码?》

《C语言函数指针之回调函数》

《函数指针,指针函数,函数指针数组》

《C语言内存泄露很严重,如何应对?》

《段错误产生的原因~》


C编程练习


C编程实践:贪吃蛇游戏

C编程实践:推箱子游戏

C编程实践:简单的通讯录

C语言每日一练(001)

C语言每日一练(002)

C语言每日一练(003)

C语言每日一练(004)

C语言每日一练(005)

C语言每日一练(006)

C语言每日一练(007)

C语言每日一练(008)

C语言每日一练(009)

C语言每日一练(010)

C语言每日一练(011)

C语言每日一练(012)

C语言每日一练(013)

C语言每日一练(014)

C语言每日一练(015)

C语言每日一练(016)



数据结构笔记


【数据结构笔记】顺序表——静态分配

【数据结构笔记】顺序表——动态分配

【数据结构笔记】线性表

【数据结构笔记】单链表

【数据结构笔记】头插法与尾插法创建单链表

【数据结构笔记】双链表基本操作示例

【数据结构笔记】什么样的算法才是好的算法?

【数据结构笔记】栈,C语言实现

【数据结构笔记】队列,C语言实现


实用工具、技巧、资源


《分享一个很酷的上位机软件

《分享一份超棒的LittlevGL GUI资料

分享一个超级强大的编程手册软件

分享几款简单易用的文本编辑器

《百度搜索怎么去广告?

《分享几个强大的网站(建议收藏)

提取代码中的关键信息生成技术文档

《教你写一个定时关机程序

《Windows下体验Linux环境

把notepad++配置成一个能编译C代码的记事本

《只需一条命令即可快速生成文件清单

《清理电脑垃圾

《分享一个很酷的技巧

《电脑如何查看已连接WiFi的密码?

《程序员的桌面,好酷!!

做个计算器

《这么好用的代码阅读器你装了吗?

《分享一个实用的小工具》

【工具篇】非常好用的在线工具







    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存