自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Source Insight 安装与高效使用指南:嵌入式代码开发神器

本文详细介绍嵌入式开发必备工具 Source Insight 的安装流程、核心功能及实用技巧,帮助开发者快速掌握代码浏览与分析方法,提升项目开发效率。

2025-03-11 09:33:35 431

原创 采用jink烧录器烧录工程文件——简化办法

传统使用 Keil5 IDE 进行单片机烧录需要安装完整开发环境、注册机和芯片包,流程繁琐。本文将介绍如何通过 SEGGER 官方工具链,仅需 HEX 文件加烧录器即可实现高效烧录,大幅简化操作流程。以便于远程现场非技术人员电脑进行程序更新。(SEGGER 是 J-Link 烧录器的制造商,为其提供技术支持和相关软件配套;而 J-Link 烧录器是 SEGGER 公司的一款重要产品)

2025-03-10 14:00:16 424

原创 bootloader学习笔记

你需要重新的让这个机器人接收学习一下,这个时候你就不需要重新教它激活,启动,说话,运动这些基础的了,因为在之前,你已经含辛茹苦的把他带大给它刷了boot秘籍,你现在需要把他之前接收的“指令秘籍”(应用程序),擦除掉,用同样的办法把这一版会写PPT的“指令秘籍”(更新的应用程序)填充烧录进入就好了。应用程序的烧录起始地址是就是通过boot程序指定跳转到具体某一个地址的。机器人接收了你传输的秘籍之后,会说话,会动,此时你想让他替你上班,显然它还不行,因为你给它的秘籍只是基础,一分价钱一分货的道理懂得懂得。

2025-02-20 21:55:47 1039

原创 U盘弹出失败?教你快速解决!

3、结束占用进程把搜索出来的所有结果都右键点击,然后选择“结束进程”。注意,有些进程可能无法立即结束,再次点击右键时可能会变成灰色,这是正常的。2、找到占用设备的文件接下来,确定你要弹出的U盘盘符。比如,如果你的U盘是E盘,就在CPU这栏中搜索E:\。这样会显示出所有占用该设备的进程。4、安全弹出设备现在,你可以安全地弹出U盘了。右键点击U盘的图标,选择“弹出”或者“移除”,这次应该就不会再失败了。1、打开任务管理器 然后在性能选项卡中,选择CPU,再点击右上角的三个点(···),选择资源监视器。

2025-02-06 11:32:56 353

原创 安装CodeWarrior流程

安装CodeWarrior流程

2025-02-06 11:28:19 624

转载 在 VM 虚拟机中安装 Windows XP 操作系统

Windows XP是由微软公司开发的操作系统,于2001年10月发布。它是家族中的一个版本,是Windows 2000的继任者。Windows XP提供了稳定和可靠的操作环境,并支持各种硬件设备和软件应用。它具有良好的兼容性,可以运行许多旧版本的。

2025-02-05 15:26:30 385

原创 VMware虚拟机安装

因为需要使用CodeWarrior编译环境IDE比较老,所以下载一个虚拟机来装一个WINXP系统用来下载CodeWarrior,这里记录一下步骤。这里VMware虚拟机资料比较多,所以就安装VMware虚拟机,花20分分钟在网盘下载一个。这里再吐糟一下百度网盘的限速。

2025-02-05 10:02:13 238

原创 一天看懂一个原理图(基础day5)

为使光耦正常工作,会给 1、2 脚施加合适电压以满足正向电流需求。通常,当正向电流达到一定程度,如达到典型测试条件下的值时,光耦能正常导通工作。输入正向电压 VF 在 IF = 10mA 时,典型值为 1.25V ,这表明在该电流下,1、2 脚间电压差约为 1.25V 能保证发光二极管正常工作。(TLP291S数据手册)。press_alarm与地导通。单片机检测该引脚状态即可。

2025-01-24 11:19:50 252

原创 __IO记录

编译器在优化代码时,可能会为了提高性能而对变量的访问进行优化。例如,如果一个变量在短时间内被多次读取,编译器可能会将其值缓存在寄存器中,后续的读取操作就直接从寄存器中获取,而不再访问该变量的实际内存地址。但在嵌入式系统中,有些变量的值可能会被硬件自动修改,或者被其他线程、中断服务程序修改,如果编译器进行了优化,就可能导致读取到的是过时的值。,它的主要作用是告诉编译器不要对使用该修饰符的变量进行优化,保证每次对该变量的读写操作都是直接访问其对应的内存地址,而不是使用寄存器中的缓存值。从上述定义可以看出,

2025-01-23 11:18:05 226

原创 CRC校验使用记录

【代码】CRC校验使用记录。

2025-01-23 10:03:54 225

原创 .hex 文件和.bin 文件的区别?

我们在使用 ISP 软件进行程序下载的时候,一般使用的是.hex 文件,由 ISP 软件解析.hex 文件包含的地址信息来实现程序下载。而我们在进行 BootLoader 升级的时候,一般使用.bin 文件,地址由 Bootloader 程序指定。文件是一种二进制文件格式,它包含了以二进制形式存储的数据或程序代码。文件是一种文本格式,它以 ASCII 码的形式表示二进制数据,并且包含了地址信息和校验信息。.hex也是一种常用的存储可执行代码的文件格式,与。文件通常包含了可以直接被处理器执行的机器码。

2025-01-22 18:22:19 169

原创 一天看懂一个原理图(基础day4)4-20ma信号输入

输入电流4ma * R118 = 0.004 X 160 = 0.64v。输入电流20ma * R118 = 0.02 X 160 = 3.2v。输入电流10ma * R118 = 0.01 X 160 = 1.6v。

2025-01-22 14:05:02 95

原创 一天看懂一个原理图(基础day2)

输入电压检测原理图

2025-01-22 11:51:15 360

原创 一天看懂一个原理图(基础day1)

D2(3AV99)的作用是钳位保护,当 “V Sense” 端的电压超过 + 3.3V 时,D2 反向导通,将电压钳位在 + 3.3V 左右,防止过高的电压损坏后续可能连接的对电压敏感的电路元件。“voltage” 是输入电压端,电容 C2(104/50V,即 0.1μF,耐压 50V)接地,起到滤波作用,可去除输入电压中的高频噪声,使输入到后续电路的电压更加稳定。在电路中,阻抗(Impedance)是对电路中电流所起的阻碍作用的一种度量,用符号 Z 表示,单位是欧姆(Ω) ,它是一个复数,包含。

2025-01-22 10:37:32 394

原创 记录一个keil清除编译文件的功能

在工程中新建一个文件将下面代码粘贴到里面,把TXT文件类型修改为.bat类型。双击keilkill.bat文件就可以将编译文件清除,减少内存的占用。

2024-12-30 11:15:46 219

原创 数码管真值表

2024-12-26 15:40:55 135

转载 PID从0到1

PID,听着就不明觉厉,一直只知道它是一个具备调节功能的算法,今天来看看怎么一回事。在了解PID之前可能需要提前去了解两个概念:积分和微分。

2024-12-24 17:58:14 54

原创 循环队列的实际运用

循环队列的要素: 在头文件构造循环队列结构体。 上面是从对尾写入队列上面是从队首读出数据

2024-12-24 15:34:15 244

原创 工作常遇到的位运算(持续补充中)

【代码】工作常遇到的位运算(持续补充中)

2024-12-23 20:04:37 278

原创 单片机定时,延时执行功能设计

延时,倒计时功能。

2024-12-19 19:28:43 391

原创 c语言关键字-inline

注意:关键字inline 必须与函数定义体放在一起才能使函数成为内联,仅将inline 放在函数声明前面不起任何作用。尽量将函数的调用展开为函数体的实际代码,从而消除函数调用的开销。关键字在C语言中引入是为了提高函数的执行效率。是提高小型函数的执行效率。与普通函数调用相比,

2024-12-19 15:54:10 126

原创 上拉电阻的原理和作用

实验发现让单片机引脚输出5v高电平,假如接一个100欧姆电阻,电压会变成3.8v。为什么上面接一个5v,和一个100欧姆电阻,中间电压会变大?第二个问题:因为这个5v,和单片机输出的5v,好比一个电源,将电源内阻和100欧姆电阻并联,减小阻止。当单片机引脚为开漏输出时,输出的电压是不确定的,因为此时引脚相当于接了两个无穷大的电阻。当外接一个上拉10k电阻时,上面两个电阻并联阻值为10k,下面无穷大,所以输出5v高电平。总结一句话:上拉电阻就是并联一个电阻,降低阻值增加电路驱动能力。

2024-12-18 09:23:55 389

原创 开关电源基本工作原理

当12V开关电源导通瞬间,电感为了阻止电流增加,会产生和电源方向相反的电压,电感会分得部分电压,因此输出电压第一时间就不会达到12v,随着时间增加电感电压下降到0 v形同导线,输出电压逐渐达到12v。当12v电源开关突然截止,回路中缺少电源,电感为了阻止电流减少,近似回路电源给回路供电,因此输出电压第一时间就不会达到0v,随着时间增加电感能量消散,输出电压逐渐达到0v。若12v电源开关反复快速导通,截止。输出电压会稳定在一个固定的电压。电路中的电容起到储能,滤波作用没有电容波形会很尖锐。

2024-12-18 09:17:56 454

原创 单片机最小系统设计

32.768KHZ晶振产生的振荡信号经过内部分频器进行15次分频后可以得到1HZ/秒的信号。NRST低电平(外部复位)、窗口看门狗复位、独立看门狗复位、软件复位、低功耗管理复位。芯片内部VSS_X都是连接的,VDD_X都是连接的。因为内部时钟精度不高,误差大,所以外置一个精度高的外部高速晶振8MHZ。启动电路:下面可以跳帽手动的选择BOOT引脚高低。复位有三种形式:系统复位、上电复位、备份区复位。电源模块、复位电路、晶振模块、下载模块。

2024-12-02 15:58:39 425

原创 单片机裸机常用的时间片轮训系统

基本逻辑就是每ms执行一次中断,将数组的数据都减1,在main.c里面的while{1}里,循环的判断数组的数据什么时候减到为0,等于0的立马给填充回原先设定的时间。现在再想处理最初的30s延时功能,只需要在1s的条件下,设定一个标志累加30次,到30的时候清除,去打开继电器就好了。那我学习初期遇到一种问题就很棘手,比如我想在ADC采集温度到88度时,打开一个继电器,延时30后,打开第二个继电器。我学单片机初期的时候是没有接触过什么操作系统的,后续接触过FreeRTOS,了解过一下时间片轮训和抢占式。

2024-11-28 18:25:45 502

原创 移植FreeRTOS到GD32F407单片机项目

移植FreeRTOS流程

2024-11-25 14:31:24 433

转载 关于单片机启动流程和原理(存储认识)

一般来说,我们选用这种启动模式时,是为了从串口下载程序,因为在厂家提供的BootLoader中,提供了串口下载程序的固件,可以通过这个BootLoader将程序下载到系统的Flash中。一般BOOT0和BOOT1跳线都跳到0(地),在ISP下载的情况下,BOOT0=1,BOOT1=0,下载完成后,把BOOT0的跳线接回0,也就是BOOT0 = 0,BOOT1 = 0;Step3:程序下载完成后,又有需要将BOOT0设置为GND,手动复位,这样,STM32才可以从Flash中启动。

2024-11-25 11:17:51 336

原创 STM32F4独立看门狗

IWDG:(Indpendent Watch Dog)独立看门狗,本身是一个定时器(TIM,SysTick)类似,当软件程序故障导致程序跑飞,这个时候就要及时复位芯片,独立看门狗递减计数,计数到0没有执行一个喂狗操作,这个时候就会导致芯片复位。IWDG_PR 和 IWDG_RLR 寄存器具有写访问保护。若要修改寄存器,必须首先对 IWDG_KR 寄存器写入代码 0x5555。而写入其他值则会破坏该序列,从而使寄存器访问保护再次生效。的值就会被重载到计数器,从而避免产生看门狗复位。)也会启动写保护功能。

2024-11-20 14:00:32 236

原创 一天看懂一个原理图(基础day3)输入电压原理图分析

电压跟随器,分压原理

2024-11-18 18:34:40 153

原创 关于GD32F407单片机输出PWM实际问题

这我看的云里雾里,但大概理解是这3位是配置PWM输出模式的,常了解的有PWM0,PWM1和有效电平的高低有关系。但是我现在需要处理的是同时配置2路,那么自然而然我先把通道2,3对应的这3位都配置为000,然后通过位操作,一起都配置为111,或者110不就成了。从上面可以看出来,通道控制寄存器0,包含了通道0,和通道1两个通道的配置。这个函数是底层已经封装好的配置PWM通道输出模式的函数,不会写我还不会抄吗?分别用到通道2和通道3。既然关于只关于通道的不同配置,那肯定先看通道控制寄存器有什么说法。

2024-11-18 14:58:45 748

原创 单片机关于485调试时,自动进入接受中断原因以及处理办法

我在调试GS32F407单片机串口接收中断的时候,遇到了一个很奇怪的问题,我配置485默认为接收模式,在切换模式发送数据时,会导致不停进入接收中断服务函数。后来自己检查软件,没发现问题。找人问,还得是软硬都懂的工程师干嵌入式好。发现我现在用的485芯片接收引脚外围居然是下拉电阻。把这个R112电阻去掉,配置成上拉输入就好了。如果有上拉电阻,配置为浮空输入就可以。一般不会有下拉电阻。

2024-11-15 14:51:26 443

原创 关于GD32F407,CAN初始化和中断问题

用GD32F407调试CAN时,发现第二个CAN进入不了中断,可能就和上面两个因素有关系

2024-11-11 17:53:57 676 1

原创 Keil编译常见问题

在keil中遇到的问题慢慢汇总

2024-11-07 10:21:11 145

原创 空调制冷原理

接触了一些工业控温产品,涉及到一些空调制冷知识,现在整理一下。

2024-11-06 13:14:46 468

原创 关于GD32F407单片机ADC初始化采集电压代码

【代码】关于GD32F407单片机ADC初始化采集电压代码。

2024-11-05 09:07:41 418

转载 关于GD32F407基本定时器配置问题

我配置完基本定时器后,让运行灯按照一秒的频率闪烁,但实际效果是频率慢。频率涉及到时钟,所以去看时钟树。从时钟树可知,定时器1、2、3、4、5、6、11、12、13是在APB1总线下面,定时器0、7、8、9、10是在APB2总线下面。在时钟树下面有句话关于TIMER时钟,既然提了,就查来看看。好好好,套娃是吧,找到 RCU_CFG1寄存器第一句话就是RCU_CFG0,那能怎么办继续看看怎么回事。理论分析:下面结合具体时钟树和上面的内容来看看怎么回事不÷就不×÷2×2。

2024-11-01 16:20:00 416

原创 GD32F407串口调试显示乱码

GD32F407串口调试显示乱码

2024-11-01 14:19:18 335 1

空空如也

空空如也

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

TA关注的人

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