- 博客(139)
- 资源 (3)
- 收藏
- 关注
原创 使用STM32CubeMX创建闪灯程序
摘要:本文介绍使用STM32CubeMX和STM32CubeIDE开发基于HAL库的闪灯程序。以STM32F103C8T6为例,配置PC13引脚为LED输出,详细说明工程创建步骤:包括调试接口设置、时钟源配置、GPIO引脚定义、时钟树调整及工程导出。重点讲解在main.c文件中添加闪灯逻辑代码(HAL_GPIO_TogglePin配合HAL_Delay实现),并说明编译烧录注意事项。最后提示常见问题解决方法,如LED极性检查和引脚确认。整个流程涵盖了从工程创建到代码实现的完整开发过程。(149字)
2026-04-13 18:11:29
43
原创 安卓iOS应用后端平台
如果不想搭建自己的后端 VPS, 可以通过一些APP后端平台快速完成后端产品的开发。Google Firebase是Google提供的移动和Web应用开发平台,旨在帮助开发者快速构建、发布和运营高质量的应用。它提供了一套完整的后端服务,让开发者无需管理服务器基础设施,可以专注于前端开发。
2026-03-03 10:23:40
625
原创 Windows Claude Code 在您所在的国家/地区不可用
"hasCompletedOnboarding": true // 新增字段放在这里,注意位置。
2026-03-02 10:16:52
1858
1
原创 MounRiver Studio CH32V00x printf 输出浮点数
MounRiver Studio CH32V00x printf 输出浮点数
2024-11-21 10:50:05
341
原创 什么是 GPIO 开漏输出
另一个例子是如果你需要一种简单的方法来接口使用低于MCU电源VDD电压的逻辑输入。如果你使用推挽输出,可能会在高电平状态下提供过高的电压。这种方法虽然慢,因为只有一个电阻上拉,但如果你只想要一两个1.8V输出,而其他输出为3.3V,这种方法很简单。推挽输出时,上图中的 P-MOS 和 N-MOS 配合形成高低电平,不赘述。答案是外接上拉电阻。粗看起来开漏输出好像没什么用,只能输出低电平,不能输出高电平。像I2C这样的总线需要开放漏极输出,任何设备都可以将总线拉低。开漏输出时,上图中的 P-MOS 会关闭。
2024-11-20 10:21:35
465
原创 MCU 编译结果中的 text, data, bss, dec 是什么意思?
留言:CSDN 嵌入式入群,加入嵌入式技术交流群。加作者微信:jiyuyun18, 交流电子技术。
2024-11-18 10:18:57
2199
原创 ZYNQ中 PL 使用 PS 端晶振实现流水灯
上图中 MIO 的序号是 [15:0] [53:16], 也就是一共有 54 个 IO。存储容量:128M*16=2048M bit = 2Gbit = 256M byte。其中的 FCLK_CLK0 是默认的 PS 给到 PL 的时钟。把自己的模块转换成 Block Design中的模块。型号是: EM6GD16EWKG-12H.可以看到默认是50M, 我们就不改了.然后一路 Next 就可以了。把自己的模块打包成 IP 核。1 设置 DDR3 的型号。其余的采用默认设置即可.
2024-09-29 10:17:59
750
原创 ST188单光束反射式红外光电传感器心率测量原理
由于脉搏跳动时,血液的体积和压力会发生变化,导致血液的透光性也随之变化。传感器中的光敏元件(如光敏三极管)会接收到反射回来的红外光,并将其转换为电信号。由于脉搏跳动引起的血液透光性变化,导致光敏元件接收到的红外光量也发生周期性变化,从而产生微弱的电脉冲信号,即脉搏信号。单片机通过检测这个信号的频率或周期,就可以计算出每分钟脉搏跳动的次数,即心率。ST188传感器测量脉搏的原理是基于红外光的反射与血液透光性的变化,通过检测反射红外光量的周期性变化来间接测量脉搏跳动,从而实现心率的实时监测。
2024-09-27 21:06:11
1869
原创 碳性电池和碱性电池的区别
当电池工作时,正极的二氧化锰与负极的锌发生化学反应,产生电流。碱性电池:其工作原理与碳性电池类似,但使用了不同的电解质和反应物。碱性电池具有较低的内阻,可以提供较大的电流输出,适用于高耗电的设备。此外,它们具有更长的保质期,而且相比碳性电池来说,它们在存放期间的 漏液风险较小。碳性电池的内阻较高,因此其输出电流较小,适合用于低耗电的设备中。同样使用二氧化锰作为正极材料,但负极材料为金属锌,并且电解质是碱性的KOH溶液。碳性电池和碱性电池是两种常见的电池类型,它们在多个方面存在显著的差异。
2024-09-27 21:04:16
3506
原创 【无标题】
Amaranth 是一种现代的、基于 Python 的硬件描述语言(HDL),旨在让描述和构建数字逻辑电路更加简单直观。:Amaranth 使用 Python 作为宿主语言,这意味着在设计硬件的同时可以充分利用 Python 的强大功能。:Amaranth 拥有一个不断增长的开发者社区,这些开发者贡献于其发展并提供论坛和支持文档等资源。:Amaranth 支持 FPGA 的综合,允许您设计可以在实际硬件上运行的复杂系统。如果您对使用 Amaranth 感兴趣,您可以开始安装必要的包并探索一些基本的例子。
2024-08-24 09:25:26
312
原创 Quartus 编译错误 Can‘t place multiple pins assigned to pin location
Quartus 编译错误 Can‘t place multiple pins assigned to pin location
2024-06-25 09:53:08
847
原创 简化的人体检测:一个DIY雷达控制的灯光项目
基于红外传感器(PIR)的存在检测系统虽然流行,但无法检测静止物体。本文介绍了一种DIY雷达控制的照明项目,该项目使用HLK-LD2410雷达模块,解决了PIR传感器存在的问题
2024-06-20 07:45:28
735
原创 RISC-V MCU IDE MRS(MounRiver Studio)开发 编译后打印FLASH及RAM使用占比信息
留言:CSDN 嵌入式入群,加入嵌入式技术交流群。加作者微信:jiyuyun18, 交流电子技术。
2024-06-10 18:25:40
1116
3
原创 VSCode iverilog GTKwave 仿真
执行:iverilog tb_full_adder.v 生成 a.out。执行:vvp a.out 生成:wave.vcd。执行:gtkwave wave.vcd 查看波形。
2024-05-20 18:56:02
575
原创 ModuleSim 仿真找不到模块 module is not defined
关闭 ModelSim , 在 Quartus 中把未定义的模块设置为顶层文件,重新编译, 重新运行仿真。
2024-05-10 14:36:06
1393
1
原创 STM32 定时器最佳分频
例如,如果时钟频率为72 MHz,您想要一个250 Hz的方波输出(50% 占空比),那么时钟周期中的总输出波形周期(周期周期)将是 72 MHz / 250 Hz = 288000 个周期。计时器的溢出值通常最多为16位(0xFFFF,即65535),预分频器必须满足预分频器 * 溢出值 >= 周期周期,而 288000.0 / 0xFFFF => 4.39459...,因此预分频器应为5。计算 PWM 的预分频器和 溢出值 的一个好方法是选择最小可能的预分频器,然后将溢出值调整到所需的总频率。
2024-05-09 14:17:02
1431
原创 固态浸压计
固态浸入式仪表比其栅极浸入式仪表对应器更通用且更易于使用。此外,固态浸入式仪表可以在更宽的频率范围内工作。- 调整天线: 通过测量天线的谐振频率,浸入式仪表可用于确保天线已调谐到所需的工作频率。- 查找短路和断路: 浸入式仪表可通过测量电路谐振频率的变化来定位电路中的短路和断路。- 匹配电路: 浸入式仪表可用于匹配天线或其他设备的阻抗与传输线的阻抗。- 识别元件: 通过测量未知元件的谐振频率,浸入式仪表可帮助识别元件的值。1. 浸入式仪表包含一个内部振荡器,可以调谐到宽范围的频率。
2024-03-20 19:21:56
327
原创 FPGA FIFO 读取模式
在这里,“rdreq” 信号充当一个确认信号,表明数据已经被读取。当 “rdreq” 变为非活动状态时,数据输出提供 FIFO 中的第一个数据。总之,show-ahead 模式预期下一次读取,并提前提供第二个数据,这在某些情况下非常有用。在正常模式下,“rdreq” 信号用作读取请求或读取使能。基本上,在正常模式下,数据在有效的 “rdreq” 信号之后的时钟上升沿处可用。虽然 show-ahead 模式提供了即时读取的特性,但它也存在一个缺点:与正常模式相比,它可能会稍微降低性能。
2024-03-08 17:14:52
909
原创 I2C 调试心得
主控发送了一个字节8位(8个 SCL 时钟)的数据后,在第9个时钟周期,释放 SDA 控制权(IO 引脚输出改为输入),读取 SDA 状态,读到低电平表示通信成功,为高通信失败。
2024-02-02 10:46:42
293
原创 VSCode 设置代理
Open Visual Studio Code, click the settings icon in the lower left corner, and click Settings.
2024-02-01 10:08:19
4614
原创 ARM .list 和 .map 文件
arm .map file 是 ARM 架构的编译器生成的链接器映射文件,它包含了编译后的目标文件的地址、大小、符号表等信息。它通常用于调试和优化程序,帮助开发人员了解程序的内存布局、函数调用关系等信息。arm .list file 是Arm汇编语言的源代码文件。它包含了用于Arm架构处理器的汇编指令和数据定义。这些文件通常用于嵌入式系统和嵌入式软件开发中。Arm .list文件可以使用文本编辑器打开和编辑,常见的文件扩展名包括 .s 和 .asm。加作者微信: jiyuyun18 交流电子技术。
2024-01-27 10:46:03
499
原创 arm-none-eabi 全局初始化的变量出现了不正确的值。
主芯片:F1C100s交叉编译器:arm-none-eabi操作系统:Windows。
2024-01-27 10:37:48
240
原创 全志 F1C100s、V3s 对比
连接性:V3s拥有多种连接选项,如LCD,HDMI,CVBS,CSI,MIPI,I2S,PCM,SPDIF,SD/MMC,USB OTG,以太网和WiFi,而F1C100s的选项较少,如LCD,CVBS,DAC,SD/MMC和USB OTG。- VPU:V3s拥有一个视频处理单元(VPU),支持H.264编码和解码,最高可达1080p@60fps,而F1C100s拥有一个未知的VPU,可能只支持一些基本的视频格式。V3s是一款比F1C100s更强大和功能丰富的SoC,但它也更贵,而且开源支持较少。
2024-01-26 14:22:24
9156
原创 PCB布局布线小建议(1)
另外采样线也应该远离high di/dt dv/dt的loop,举个例子如图7所示,左边为较为合适的布局,远离电感,并且R1和R2的位置是反馈点,要注意的是,先从输出端拉出反馈线,在离输入端比较近的位置在去放置反馈电阻。通常来说分为以上3种类型,不同类型需要不同的GND回路,通常在连接器处共地,以保证信号线不被相互干扰,要知道GND并非理想,地上面通常包含阻抗和电感,当接地器件电流快速变化时候,GND上面可能会产生压降,从而导致器件损毁,在不那么恶劣的情况下,GND只是电阻可能会引起模拟信号的精度下降。
2024-01-25 21:35:51
1092
原创 Github 不能访问,提示:port 22: Connection timed out
有时防火墙会完全拒绝允许SSH连接。如果不能使用带有凭据缓存的HTTPS克隆,你可以尝试使用在HTTPS端口上进行的SSH连接来进行克隆。大多数防火墙规则应该允许这样做,但代理服务器可能会干扰。C:\Users\用户名\.ssh 目录下新建 config 文件,用户名替换为你的用户名。添加和Windows 同样的内容。
2024-01-24 14:17:24
623
原创 Windows 下使用 SSH 登录 Linux
我使用的Linux 是 Mint20, Ubuntu 应该是一样的。Linux 设置静态IP, 比如:192.168.1.14。
2024-01-23 16:29:44
471
原创 VSCode 更换默认的 terminal(终端)
Win10 中 VSCode 默认的 terminal 为 PowerShell, 想要更换为 Git bash。1. 按快捷键:Ctrl + Shift +P。3. 你会看到可选的终端列表,然后选择。
2024-01-20 14:34:26
11008
LT1073 中文数据手册
2021-11-09
LM2577开关稳压器中文数据手册
2021-11-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅