自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 FreeRTOS的裁剪与移植

RTOS,GPOS,移植

2024-06-29 16:32:31 803

原创 GPIO和PIN

​ 单片机有很多的引脚,为了操控每一个引脚,我们对引脚进行分组,例如GPIOA,GPIOB,…,GPIOG等等(Group),这一个组就称为一个GPIO端口,一般一个端口包含十六个PIN引脚[0~15]。(一个引脚占2bits,而stm32是32位的,所以一组是16个)。GPIO引脚具有可复用和重映射的特点。

2024-06-29 16:19:33 352

原创 STM32笔记之NORFLASH,NANDFLASH,EEPROM大体认识

首先我们了解一下内存的分类(从上到下越来越远离cpu,同时单位造价越来越便宜)一般EEPROM,FLASH都用来做单片机的“硬盘”。首先我们来看看EEPROM和FLASH的区别。总的来说,EEPROM和FLASH各有优缺点,选择哪种存储器取决于具体应用的需求。

2024-05-16 16:16:09 511

原创 STM32笔记之stm32命名规则,RCC时钟树,boot启动模式

内部晶振:内部晶振存在于单片机cpu内部,用来在板子刚上电的时候完成初始化工作(例如初始化外部时钟),但是会有温度引起的零漂问题,所以一般在初始化后使用外部晶振。南桥与北桥:各个时钟总线的速率不一样,那么工作起来肯定就会不同步,为了解决这个问题,有的板子上会有南桥,北桥的芯片。stm32单片机启动时,通过控制boot0和boot1两个引脚的电平,有三种常见的启动方式。CubeMx时钟树:相当于人的心跳,为各个部件提供不同的“节奏”。向单片机中烧录的是.elf文件或.bin文件。

2024-05-16 16:11:58 417

原创 Linux下软硬链接的区别

【代码】Linux下软硬链接的区别。

2024-05-06 20:25:12 94

原创 简单介绍IIC通信协议

​ IIC I2C i2c Bus是飞利浦公司推出的,在电子控制领域的通信协议典型的电压准位是3.3v和5v。**IIC 是串行,同步的半双工协议。**IIC的电路简单,连接线少,控制简单,通信速率高。

2024-05-06 20:24:07 874

原创 json库源码阅读

【代码】json库源码阅读。

2024-04-30 21:57:02 1017

原创 串口协议(例如usart,iic,spi)基础概念汇总

同步,异步 同步通信: 异步通信: 串行,并行 串行: 并行: 全双工,半双工,单工 单工: 半双工: 全双工: 电平信号,差分信号 电平信号(TTL): 差分信号: LSB,MSB LSB: MSB:同步,异步

2024-04-30 21:54:13 396

原创 JSON语法,简单介绍。

​ JSON( JavaScript Object Notation,JavaScript对象标记法)是一种轻量级,基于文本,可读的数据交换格式。它是一种字符流的数据交换格式协议。

2024-04-27 11:42:44 216 2

原创 十大经典排序算法之插入排序。

​ 插入排序(Insertion Sort)是一种简单直观的排序算法,它的基本思想是逐步构建最终的排序列表,每次将一个未排序的元素插入到已排序的部分的适当位置。

2024-04-25 23:01:12 244 2

原创 十大经典排序算法之希尔排序。

​ 希尔排序(Shell Sort)是一种改进的插入排序算法,它的基本思想是通过将待排序列表分割成若干个子列表,对每个子列表进行插入排序,然后逐步缩小子列表的间隔,直到间隔为1,最终完成整个列表的排序。接下来我们给出示例代码。

2024-04-25 22:58:49 238 3

原创 十大经典排序算法之选择排序。

​ 选择排序(Selection Sort)是一种简单直观的排序算法,它的基本思想是通过重复从未排序的部分选择最小(或最大)的元素,并将其放到已排序部分的末尾,直到整个列表都排序完成,也就是说,他先把数组先分成了两个部分,一个是有序的,一个是无序的,如果我们是从小到大排序,那么每次都从未排序的部分中找到最小的,然后放到有序的部分中。接下里我们给出一段选择排序的示例c代码。

2024-04-24 22:08:13 282

原创 十大经典排序算法之冒泡排序

​ 冒泡排序(Bubble Sort)是一种简单直观的排序算法,它遍历要排序的列表,一次比较两个相邻的元素,并且如果它们的顺序错误就交换它们(比如从小到大排序时,若4,3。会交换为3,4),直到没有需要交换的元素为止。冒泡排序的名称由于在排序过程中较小或较大的元素会逐渐“浮”到数组的顶端,类似于气泡上浮的过程,所以称为冒泡排序。接下来我们给出冒泡排序的示例c代码。

2024-04-24 22:03:55 733

原创 INI配置,和Iniparser库的基本使用

ini配置文件,Iniparser库的基本使用,函数原型。

2024-04-23 16:41:51 595

原创 IPC进程间通信函数原型总结(方便查询)

进程间通信,函数原型,信号,管道,命名管道,unixsocket,信息量,共享存储,消息队列

2024-04-23 11:09:28 1013

原创 IO多路复用函数原型总结(方便查询)

select,poll,epoll,io多路复用函数原型。

2024-04-23 08:00:00 736

原创 多进程,选项参数实现函数原型总结(方便查询)

fork,vfork,多进程函数原型。

2024-04-23 06:00:00 544

原创 多线程,锁,与syslog系统函数原型总结(方便查询)

多线程,锁,与syslog系统函数原型总结

2024-04-22 12:35:49 643

原创 socket网络编程函数原型总结(方便查询)

socket编程所用到的大部分函数原型

2024-04-22 11:13:41 968

原创 同步,异步,阻塞,非阻塞

非阻塞与阻塞相对应,他不会等待我们,还是某个程序,需要我们去取某一段数据时,若程序是非阻塞的,程序只会询问我们现在处于什么状态了,从内核取没取完数据。需要注意的是,异步和非阻塞是不一样的,例如当我们数据取回来可以使用的时候,异步会给我们发通知,而非阻塞不会,一旦错过了,就是真的错过了。而同步事件我们可以简单的理解为,知道什么时候会发生的事情,例如你的朋友和你约好今天下午五点来找你,我们就明确的知道,五点你的朋友会来找你,类似这样的事件在程序中也叫做同步事件。阻塞很浪漫,即:你不返回,我就一直等你。

2024-04-21 23:54:01 278 1

原创 文件io基础函数总结(方便查询)

文件io,文件目录相关的函数原型总结,方便大家学习和查询。

2024-04-21 22:51:22 545 1

原创 Linux :vim ,gcc ,makefile 三件套之vim的基本使用

​ vim 是 Linux 系统上的最著名的文本/代码编辑器,也是早年的 Vi 编辑器的加强版,而 gVim 则是其 Windows 版。它的最大特色是完全使用键盘命令进行编辑,脱离了鼠标操作虽然使得入门变得困难,但上手之后键盘流的各种巧妙组合操作却能带来极为大幅的效率提升。尽管 Vim 已经是古董级的软件,但由于 Vim 的可配置性非常强,各种插件、语法高亮配色方案等多不胜数。

2024-04-21 11:20:10 880 1

原创 valgrind,memcheck的使用

​ valgrind是一个开源的,检测内存泄漏的工具,通常在linux下使用,除此之外,他还能检测内存管理错误,线程bug等错误。粗浅的来讲,valgrind由两部分构成,一部分用来模拟cpu和内核,被称为framework(框架),一部分是他用来检测各种错误信息的插件工具。memcheck:是valgrind最重要的工具之一,是一个重量级的内存检查器,它可以帮我们检测是否有使用未初始化的内存,以及内存泄漏,访问越界之类的问题。callgrind:可以用来统计函数的互相调用情况。memcheck使用。

2024-04-21 11:06:40 902 1

原创 简单介绍物联网MQTT协议

MQTT协议头,QOS服务等级

2024-04-16 19:49:18 704

原创 Linux :vim ,gcc ,makefile 三件套之makefile的基本使用

makefile的基本使用

2024-03-01 18:41:24 436 1

原创 Linux :vim ,gcc ,makefile 三件套之gcc

gcc,编译过程,动态库与静态库

2024-02-29 21:31:18 1620

原创 linux:socket编程

ip,端口,linux,socket通信,socket(),bind(),listen(),accept(),connect()

2023-11-29 15:21:20 293 1

原创 Linux:文件IO基础

文件描述符,标准输入,输出,错误,open(),read(),write(),lseek()。

2023-11-06 16:04:12 60 3

空空如也

空空如也

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

TA关注的人

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