- 博客(39)
- 收藏
- 关注
原创 GD32或STM32使用vscode通过Cortex-Debug调试
在launch.json中配置正确的路径,使用.axf文件也可以进行调试。若遇到如下报错,说明.elf文件的路径不对,或者没有.elf文件,2.删除launch.json中之前关于jlink的配置。3.重新配置一下Jlink。可大致进行如下操作,
2025-12-22 14:53:12
161
原创 ADC采样时间计算
ADC时钟分频:2 (ADC时钟 = 84/2 = 42 MHz,接近最大36MHz限制)- ADC时钟分频:4 (ADC时钟 = APB2/4 = 84/4 = 21 MHz)单次转换时间 = (112 + 12) / 21 MHz。采样时间可配置:3~480个ADC时钟周期。总转换时间 = 采样时间 + 转换周期数。- 采样时间:56个ADC周期(较短)固定转换周期:12个ADC时钟周期。- 采样时间:112个ADC周期。- 转换周期:12个ADC周期。- 转换周期:12个ADC周期。
2025-12-16 08:43:56
101
原创 python打包
pyinstaller --onefile --windowed main.py 打包成单个文件。pyinstaller --onedir --windowed --clean main.py exe和依赖文件分开。
2025-11-03 14:14:05
116
原创 AT24C02
型号: AT24C02容量2 Kbit(注意单位是比特)换算为字节256 Bytes页大小8 Bytes(这是最重要的划分概念)页数量32 Pages。
2025-09-06 16:53:57
834
原创 W25Q128
参数值说明芯片型号W25Q128JV(常见版本)总容量128 Mbit /16 MB16,777,216 字节页大小 (Page)256 字节写入/编程的基本单位扇区大小 (Sector)4 KB(4096 字节)擦除的基本单位(包含16页)块大小 (Block)64 KB (65536 字节)大擦除单位 (包含16个扇区)总页数65,536。
2025-09-06 16:45:16
481
原创 FMC与FSMC
出现在更现代、性能更强的STM32产品中,主要是基于Cortex-M4、Cortex-M7等内核的系列(如STM32F4、STM32F7、STM32H7系列)。它继承了FSMC的所有功能,并增加了新的功能。它提供了专用的SDRAM控制器(包括SDRAM时钟、行列地址、刷新控制等所有必要信号),可以轻松连接16位或32位宽度的SDRAM芯片,极大地扩展了STM32的内存能力。: 出现在较早的STM32产品中,特别是基于Cortex-M3内核的系列(如STM32F1系列)。
2025-09-06 16:05:03
434
原创 二极管基本电路
当输入Vi1或Vi2中有任何一个为5V时(逻辑1),则其对应的二极管导通,输出电压VO为5-0.7=4.3V(4.3V大于TTL规定的2.4V,属于逻辑1)。当输入Vi1和Vi2中都为0时,二极管截止,VO为0V。与门的分析也比较简单,当输入Vi1和Vi2都为5V时,两个二级管都截止,输出VO为与下面E提供的5V。当输入Vi1和Vi2中有任何一个为0V时,其对应的二极管会导通,输出VO为0.7V。
2025-09-04 16:16:32
284
原创 keil编译信息
data.text:对应段,这里可以查看每个函数占用了多少字节。.constdata:对应段,查看字符串和常量的大小。.data:对应段,查看已初始化的全局/静态变量。.bss:对应段,查看未初始化的全局/静态变量。.bss段在运行时会被初始化为0。字节为什么包括RW-data?因为初始值需要保存在Flash中,上电后再拷贝到RAM。字节RW-data和ZI-data在运行时都存在于RAM中。
2025-09-03 15:21:00
225
原创 16进制转换内存大小
其实就是将16进制转换为十进制,十进制数表示的就是以byte为单位的内存大小了。十六进制转换为十进制:0X20 0000->2097152byte=2048Kbyte=2M。*0X8000 0000~0X8020 0000,这段16进制范围表示的大小是多少呢?求出这段范围的大小:0X8020 0000-0X8000 0000=0X20 0000。*例如:0X8000 0000~0X8020 0000这段范围表示多大内存?*编程书籍中,经常会用到内存大小,那么内存大小是如何表示的呢?
2025-09-03 09:45:09
272
原创 大小端基础概念
**大端**:高位在前,适合人类阅读。- **小端**:低位在前,硬件处理高效。- **实际应用**:需注意数据交换时的字节序转换。
2025-09-03 09:21:20
372
原创 电阻基础记录
额定功率有多种规格,如 1/16W、1/8W、1/4W、1/2W、1W 等,功率越大,电阻的体积通常也越大,能承受的电流和热量越多。常见的精度有 ±5%、±1%、±0.1% 等,精度越高,电阻的阻值越准确,在对电路精度要求高的场合(如精密测量、信号处理)会使用高精度电阻。指电阻对电流的阻碍能力大小,单位是欧姆(Ω),常用的还有千欧(kΩ)、兆欧(MΩ)等。元件长期、稳定、安全工作的推荐电压上限,是厂商基于设计寿命(如 1000 小时、10 年)和正常工况(如常温、标准负载)设定的 “最佳工作阈值”。
2025-09-02 08:33:28
147
原创 常用电平标准
Vcc:5V;VOH>=2.4V;VOL=2V;VIL<=0.8V。因为 2.4V 与 5V 之间还有很大空闲,对改善噪声容限并没什么好处,又会白白增大系统功耗,还会影响速 度。所以后来就把一部分“砍”掉了。也就是后面的 LVTTL。LVTTL 又分 3.3V、2.5V 以及更低电压的 LVTTL(Low Voltage TTL)。
2025-09-01 16:45:44
373
原创 <基尔霍夫定理>
单位正电荷从回路某一点出发,沿回路绕行一周再回到原点,其获得的能量与失去的能量必须相等,总能量变化为零。如图,有i2+i3=i1+i4,或者可以写成 i2+i3−i1−i4=0 的形式。如图,有 v1+v2+v3=v4,或者可以写成 v1+v2+v3−v4=0的形式。电荷在节点处既不能凭空产生,也不能消失,流入多少电荷,必定要流出多少电荷。如果规定流入节点的电流为正,则流出为负。将所有元件的电压降相加,令其和为零。,所有元件的电压降的代数和为零。的方向与绕行方向一致,则电压降为。
2025-08-31 17:15:43
406
原创 <叠加定理>
在线性电路中,多个独立电源共同作用时,某一支路的电流或电压等于每个独立电源单独作用时在该支路产生的电流或电压的代数和。电压源视为短路电流源视为开路。
2025-08-30 12:08:09
182
原创 PCB信号阻抗控制相关的外层走线阻抗类型
这些都是 PCB 外层信号的阻抗控制类型,区别在于信号模式(单端 / 差分)、是否带 “共面接地” 结构,本质是为了让高速信号传输时阻抗匹配,减少干扰、保证信号质量。实际设计中,会根据协议要求(如 USB 规定差分阻抗 90Ω )、信号类型(单端 / 差分)选对应的阻抗类型做规则约束~
2025-08-29 16:59:17
670
原创 MDK代码格式化
w:多行条件语句加括号(比如 if(a&&b) 变成 if(a&&b){})。--add-braces:为单行 if、else、while 等语句添加大括号。--style=allman:大括号另起一行(Allman 风格)。-p:运算符两边加空格(比如 a+b 变成 a + b)。-S:switch里面的case缩进一层,结构更分明。-xw:while/do-while循环体再缩进一层。E:这是 Keil 的占位符,表示当前编辑的文件。-f:空的{}强制换行,统一格式。-s4:缩进用 4 个空格。
2025-08-21 11:25:43
414
原创 vscode编译多个C文件设置
例如 main.c test.c test.h。在运行时可能会显示无法找到Callback()这个函数,使用vscode开发c语言时,如果有多个文件,
2025-07-07 12:02:23
317
原创 LT Spice如何导入仿真模型
1.在AD官网下载需要的芯片模型。2.下载后文件如下,文件后缀是.lib3.打开LT Spice,将.lib文件直接拖入LT Spice中。4.右键红色下划线部分,一定是这里才可以。然后点击Creat Symbol,此时会生成一个.asy文件,保存到桌面即可,该文件就是用于仿真的模型。5.在器件库里选择桌面路径。就可以看到生成的器件模型了。
2024-05-28 08:32:35
3788
原创 高侧电流感测放大器:MAX4372FEUK+T
01.在手册中可以看到MAX4372FEUK+T的增益为50。02.假设负载电流在0.5A,根据负载电流选择合适的采样电阻Rsense为100mΩ,注意电阻的功率选择,本文选择0.25W。03.选择合适的供电电压。04.根据以上,搭建出合适的电路。05.在输出端加上肖特基二极管,做必要的钳位保护。
2024-05-27 13:26:31
619
原创 STM32进入系统bootloader方法
不同芯片有不同的bootloader地址,该地址可以在芯片手册Memory map章节中获取,比如stm32F1xx和F4xx的地址如图。该地址在进入Bootloader的代码中也有体现。
2024-01-07 15:43:41
2253
5
原创 防反接电路
使用二极管的成本优势还是非常明显的,根据合适的场景选择合适的方案。正接时,会先经过Q1的体二极管,再经过两个电阻后,使PMOS导通。反接时,由于PMOS无法导通,也就达到了保护电路的目的。
2024-01-04 11:54:26
2183
1
原创 IIC“驱动”芯片
IIC多用于板内通信,在某些特殊情况下,需要两块板使用IIC进行通信,假设两板之间距离有一米或者两米,如果直接使用IIC通信,会出现通信异常问题,根源在于IIC不能进行长距离的通信,所以需要加一款“驱动”芯片,以此提高IIC的通信距离。介绍一款提高IIC通信距离的芯片。2位20Mb/s双电源电平转换器。NLSX4373是安森美的一款。
2024-01-04 10:07:57
1196
1
原创 单片机驱动MOSFET
MOS型号是DTC3058,该型号MOS是低阈值的,单片机输出3.3V驱动无任何问题,经过大量使用。DO1是指示灯,表明MOS工作状态,Y1是个用来连接负载的端子,比如电磁阀,继电器等。DS33是续流二极管,当负载是感性负载时提供续流回路。单片机驱动N沟道MOSFET,
2024-01-02 08:49:55
1472
原创 Clion找不到头文件
上面的user和config是我自己创建的文件夹,如果不包含这些文件夹,编译时就会报错,还有个问题就是,当我们在cubemx添加了一些新的功能后,需要重新生成一下代码,此时之前自己添加的文件,user和config就会丢失,需要再次添加到file()里面,还没找好的解决办法。file(GLOB_RECURSE SOURCES "startup/*.*" "Drivers/*.*" "Src/*.*" "Inc/*.*" "user/*.*" "config/*.*")中间空格隔开。
2023-05-11 14:13:57
2441
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅