自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 用AI对一段代码进行单元测试

利用AI工具对以上代码编写单元测试用例。

2025-01-31 16:12:01 2215

原创 qt知识点总结1

通过一个Qt项目总结一些Qt的知识点

2025-01-11 10:47:45 472

原创 【SoC设计指南 基于Arm Cortex-M】学习笔记2——AHB概述

AHB系统在内核时钟HCLK信号驱动下运行,AHB总线上连接的寄存器访问均在AHB的上升沿触发。AHB总线信号中有一个低电平有效的复位信号HRESETn,即HRESETn信号为低电平时,AHB系统立即复位。典型AHB系统主要信号如下:HREADYOUT信号与HREADY信号在不是同一个信号线。

2024-11-22 18:25:40 551

原创 【Linux驱动开发】裸机点亮LED灯实验

本实验使用的是正点原子I.MX6ULL开发版的汇编LED灯实验,通过GPIO1_IO03引脚输出低电平点亮小灯。通过操作寄存器使GPIO1_IO03输出低电平包括以下几步:1、开启时钟。2、设置IO口的复用功能为gpio。3、对IO进行配置,如上下拉、速度等。4、设置GPIO1_IO03为输出。5、向GPIO1的data register中IO03对应位写入0,使得GPIO1_IO03输出低电平。

2024-11-22 18:23:59 1144

原创 git学习笔记1

本文为B站视频教程的学习笔记。

2024-11-19 13:28:46 480

原创 某款扫地机器人源码分析1——指令数据解析处理部分

本文对一款基于stm32实现的扫地机器人程序进行分析。扫地机器人通过串口接收或发送数据,数据包括控制端向扫地机器人发送的控制指令,扫地机器人向控制端反馈当前状态等。

2024-11-19 13:27:32 1186

原创 【SoC设计指南 基于Arm Cortex-M】学习笔记1——AMBA

先进微控制器总线架构(Advanced Microcontroller Bus Architecture,AMBA)是用在arm处理器上的片上总线协议规范集。AMBA总线协议规范集包含AHB、APB、AXI等。AHB:先进高性能总线(Advanced High-performance Bus)APB:先进外设总线(Advanced Peripheral Bus)AXI:先进可扩展接口(Advanced eXtensible Interface)

2024-11-10 11:32:17 377

原创 stm32以太网接口:MII和RMII

MII和RMII就是stm32与PHY芯片之间的通信接口,类似于I2C、UART等。stm32以太网模块有专用的DMA控制器,通过AHB接口将以太网内核和存储器相连。数据发送时,先将数据从存储器以DMA传输到TX FIFO中进行缓冲,然后由MAC内核通过MII或RMII接口发送;数据接收时,RX FIFO先通过MII或RMII接收以太网数据帧,再由DMA传输至存储器。

2024-11-10 10:50:12 1106

原创 【LwIP源码学习5】网口接收数据处理过程

本文对lwip中TCPIP_MSG_INPKT类型消息的处理过程进行分析。

2024-11-03 14:38:45 1154

原创 【LwIP源码学习4】主线程tcpip_thread

本文对lwip的主要线程tcpip_thread进行分析。

2024-11-03 11:23:56 1009

原创 STM32L031F6P6基于CubeMX的串口通信调试笔记

对CubeMX生成的STM32L031串口通信项目代码进行调试

2024-10-17 18:22:46 431 5

原创 【LwIP源码学习3】TCP协议栈分析——数据接收流程

本文接受代码在tcp_in.c文件中,主要介绍TCP协议栈中数据的接收流程。

2024-10-15 22:42:44 1214

原创 【LwIP源码学习2】调试输出相关宏

本文对lwip中debug.h文件里的调试相关宏进行分析。

2024-10-12 18:37:08 714

原创 【开源项目赏析】遥控四旋翼直升机项目——MiniQ

本项目包括遥控器和四旋翼两部分,遥控器是一个安卓app,四旋翼主要包括:蓝牙模块:用于接收遥控器指令。IMU:惯性测量单元(Inertial Measurement Unit),也就是MPU6050,用于获取当前四旋翼状态。电机:通过对其输出PWM信号,控制其转速快慢。

2024-09-02 13:13:36 489

原创 【LwIP源码学习笔记1】LwIP网络接口管理

netif是Lwip抽象出来的网卡,结构体的声明在文件中。Lwip将每个用netif描述的网卡连接成一个链表(单向链表)。以下是在netif.h头文件中定义的一些netif的操作函数操作函数中第一个参数是netif指针,用这种方式达到了C++中类的封装效果,有设计模式中工厂模式的设计思想,也就是该结构体表示对象的数量是不确定的,随时可能变多或者单少,这种情况下可以使用的方式,方便对多个同类对象管理。

2024-08-26 17:15:14 600

原创 【链接、装载与库】动态链接中的延迟绑定(PLT)

动态链接是在运行时将各个模块的代码进行整合,静态链接是在编译时对各个模块的代码进行整合。而运行时整合使得动态链接相对消耗了一些性能,为了减小这点带来的影响,动态链接中引入了延迟绑定(PLT),其基本思想是当函数第一次被用到时才进行绑定(符号查找、重定位等),如果没有用到则不进行绑定,接下来通过一个示例对延迟绑定进行分析。

2024-07-13 14:46:50 1177

原创 【链接、装载与库】程序的编译过程

程序的编译过程包含4步:预编译、编译、汇编、链接。本文通过一个实例对这一过程进行详细讲解。

2024-07-13 11:04:31 881

原创 【UCOSIII源码阅读笔记】第四篇——临界区

本文对ucosiii中的临界区代码进行分析。

2024-07-13 09:00:00 400

原创 【UCOSIII源码阅读笔记】第三篇——PendSV异常处理分析

本文对ucos中为什么使用PendSV,以及如何使用PendSV进行分析。

2024-07-12 14:56:46 1321

原创 Xilinx SDK创建项目时报错“Error generating bsp sources. Please check the SDK Log view for further details.”

Xilinx SDK创建项目时报错“Error generating bsp source. Please check the SDK Log view for further details.”

2024-07-12 13:08:20 713

原创 【链接、装载与库】动态链接相关结构

本文对动态链接中比较重要的几个段进行分析。

2024-07-10 17:49:48 739

原创 【链接、装载与库】动态链接初体验

动态链接基本思想是把程序按照模块拆分成各个相对独立部分,在程序运行时才将他们链接在一起形成一个完整的程序。Linux系统中,动态链接文件以".so"为扩展名,so表示Shared Objects,称为动态共享对象。Windows系统中,动态链接文件以".dll"为扩展名,dll表示Dynamic Linking Library,称为动态链接库。

2024-07-10 15:49:13 379

原创 【CMake】CMake入门(二)

本文在: 【CMake】CMake入门(一)的基础上继续讲解一些CMake的基础知识

2024-07-10 15:47:21 316

原创 【CMake】CMake入门(一)

一文入门CMake

2024-07-04 07:00:00 278

原创 【Cortex-M3】中断处理时栈空间操作过程分析

中断发生后,压栈行为分两步:第一步:处理器自动压栈“调用者保护寄存器”,顺序为xPSRLRR12R3R2R1R0。第二步:中断服务函数首先压栈LR(这时的LR已经和进入中断前的LR不一样了),然后压栈一些用到的“被调用者保护寄存器”R4-R11。

2024-06-29 11:55:41 1413 2

原创 【Cortex-M3】C语言函数调用过程汇编层面分析

本文通过一个代码示例,介绍函数调用过程在汇编层面是如何实现的。

2024-06-28 19:32:19 831

原创 【UCOSIII源码阅读笔记】第二篇

本文主要分析ucosiii中管理优先级表的os_prio.c文件。

2024-06-18 20:01:38 436

原创 【UCOSIII源码阅读笔记】第一篇

分析ucos3消息队列的代码实现方式,和值得学习的地方

2024-06-15 13:55:53 479

原创 stm32 485接收数据异常调试过程

stm32f407与传感器通过485总线进行通信,stm32向传感器发送索要数据的指令,传感器本应传回的数据与实际接收到的数据不一致。像是被485芯片修改过一样。

2024-06-13 18:03:05 1296

原创 stm32 ADC信号采集失败调试过程

在调试用DMA采集ADC数据时,发现有的通道数据采集不上来。

2024-06-11 19:37:53 502

原创 stm32 DMA接收串口数据实现与深度分析

本文实现一个通过DMA接收串口数据的功能,并且对实现原理进行分析。

2024-06-10 12:17:57 853

原创 【stm32、ESP8266、华为云】搭建一个简单的物联网系统

本文介绍搭建一个简单的物联网系统,系统包括服务器、stm32单片机、手机三部分。

2024-06-08 14:39:11 1271 1

原创 stm32f407 ADC采集速度深度分析

通过实验证明,ADC的采集速度与ADC时钟周期、ADC采样周期、ADC分辨率有关。

2024-06-06 21:21:03 1036

原创 boot程序中启动主程序bug,一线调试过程

boot程序首先从flash中把主程序的数据读取出来,如果校验没问题则启动主程序,但是发现boot在主程序校验正确后卡死,不再有任何反应。

2024-04-09 17:51:17 386 1

原创 排序算法-归并排序

将nums数组从中间分割成两部分,将分割后的两个数组按照升序排列起来,前提是分割的两部分已经是排好序的了,类似于合并升序链表。最后整个数组分割成5 2 和 3 和 4 1 三个部分。5 2 3 4 1 分割成 5 2 3 和 4 1。5 2 3还可以继续分割成5 2 和 3。mergeSort函数只起到分割的作用。......

2022-09-01 09:39:17 169 3

某款stm32扫地机器人程序

某款stm32扫地机器人程序

2024-11-19

野火的ESP8266配套例程

本资源是配套作者博客【stm32、ESP8266、华为云 搭建一个简单的物联网系统】

2024-06-08

空空如也

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

TA关注的人

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