- 博客(23)
- 收藏
- 关注
原创 %2d,%-2d,%.2d,%02d;%2x, %02x, %-2x, %.2x;%mf,%m.nlf,%.nf
如图所示,2表示输出宽度。。当%2d%-2d%.2d%02d。
2025-03-19 17:01:55
205
原创 TIM | 为什么要TIM->cnt=0,手动清零计数器
在输入捕获模式下,CNT。计数器是的,无论是否发生捕获事件,计数器都会根据定时器的时钟频率不断累加,直到溢出或手动清零。
2025-03-16 16:20:16
341
原创 if(htim->Channel==HAL_TIM_ACTIVE_CHANNEL_1)在判断了是哪个时钟后,又判断了是哪个通道,在判断了是通道1之后,为什么这个里面还有获取通道2的代码
源代码在输入捕获模式下,代码中出现了的判断,但在判断为通道 1 后,仍然读取了通道 2 的捕获值(),。实际上,这种设计是为了实现(即同时捕获上升沿和下降沿),从而计算 PWM 信号的和。
2025-03-16 15:41:49
262
原创 我们在知道占空比为10%的时候,但是我们还要获取占空比,然后我们定义变量PA16_duty=10;ARR+1=100,为什么我们还要即时把PA16_duty传送给Tim16->CRR1
在实际应用中,PWM 的占空比可能需要动态调整。定时器的 PWM 信号是由硬件生成的,硬件需要明确的数值(的值需要设置为 10,才能实现 10% 的占空比。,代码的可读性会降低,且后续修改占空比时会变得复杂。:设置 PWM 的周期(即计数器的最大值)。:设置 PWM 的占空比(即高电平的时间)。是一种清晰的编程方式,便于理解代码的逻辑。,表示 PWM 的周期为 100。,硬件就无法知道占空比应该是多少。PWM 信号的占空比是通过比较。,表示占空比为 10%。,以更新 PWM 信号。
2025-03-16 11:07:32
178
原创 IIC通信 24C02存储器 EEPROM
IIC总线有两根总线:SCL(时钟线),SDA(数据线)只有一根数据线,所以是半双工 而且它是一个在我们这个板上,主机就是stm32芯片 从机24c02这个存储器就是其中一个从机。
2025-03-15 16:07:53
533
原创 stm32与24C02存储器通过I2C通信。I2C是stm32里面的嘛?读的函数,有三个参数,一个是存储区,一个是地址,还有一个是读取次数,是stm32读24C02,还是24C02读
I2C 是 STM32 内部的硬件模块,用于与其他 I2C 设备通信。读操作:STM32 从 24C02 读取数据。写操作:STM32 向 24C02 写入数据。STM32 是主设备,24C02 是从设备,通信由 STM32 发起和控制。
2025-03-14 20:14:46
937
原创 LCD模块 | LCD屏基本配置,LCD函数,LCD界面切换,LCD高亮显示屏幕
例如,如果没有配置 GPIO 引脚的功能,LCD 屏幕无法接收数据;如果字符串长度超过了LCD的显示宽度,可能会导致显示异常或数据溢出。如果没有初始化,LCD 屏幕可能无法显示任何内容,或者显示异常(如花屏、闪烁等)。如果 LCD 控制器和驱动芯片没有初始化,硬件处于未知状态,无法响应任何操作。LCD 驱动芯片需要接收特定的初始化命令序列,才能正确解析显存中的数据并显示。注意:每次换页的清屏操作写在哪里,不能写在下面图片的空格处,所以用%03d,然后前面加空格,后面加空格 让它居中。
2025-03-06 16:28:20
421
原创 嵌入式中哪些外设用WritePin哪些用ReadPin
使用 时,GPIO 引脚必须配置为 输入模式(如 )。使用 时,GPIO 引脚必须配置为 输出模式(如 )。在输入模式下,通常需要启用上拉或下拉电阻,以确保引脚在未连接外部设备时有确定的电平状态。在输出模式下,通常不需要上拉/下拉电阻。确保外部设备的电平与 MCU 的电平兼容(如 3.3V 或 5V) 用于从 GPIO 引脚读取数据,适用于检测外部信号(如按键、传感器)。 用于向 GPIO 引脚写入数据,适用于控制外部设备(如 LED、继电器)。两者在功能、实现和应用场景上有明显区别,但在实际开发中通
2025-03-06 14:14:54
324
原创 key按键 | 按键控制灯亮灭,按键的长按短按,按键的双击单击
///用于判断是否可以开始计时,0表示可以,1表示不可以。如果是每个按键,只要双击就是亮led2,单击亮led1。//用于定义刚才按键是什么。上面这个是按键1按下的长按短按判断。不能写在如果是双击,第二个灯亮后面。
2025-03-05 15:01:20
262
原创 蓝桥杯嵌入式① | 工程框架搭建
该模块允许用户配置时钟树,包括主时钟源、PLL、分频器等,以及配置低功耗模式和电源管理。SYS模块还提供了一些可选的驱动程序,如时钟控制器、电源控制器等,方便用户进行系统级别的配置和管理。通过配置SYS模块,用户可以优化系统的性能和功耗,提高系统的可靠性和稳定性。是 ARM 提供的一种两线调试接口,它是 JTAG 接口的替代品,主要用于 Cortex-M 系列芯片的调试工作。是一个非常重要的工具,是一个图形化的配置工具,用于快速生成 STM32 微控制器的初始化代码。第二个框:添加我们的工程路径。
2025-02-28 20:24:47
411
原创 蓝桥杯嵌入式比赛里要电路板子嘛?嵌入式蓝桥杯比赛需要什么?
蓝桥杯嵌入式比赛需要参赛者使用指定的硬件平台(如CT117E-M4开发板)和软件工具(如Keil MDK和STM32CubeMX)。比赛内容主要围绕STM32的外设配置和功能实现展开,参赛者需提前熟悉硬件资源和开发工具,以高效完成比赛任务。
2025-02-28 19:37:48
594
原创 寄存器一定在cpu内部嘛?那为什么在stm32中的的ADC等外设不在cpu内部
CPU寄存器位于CPU核心内部,用于存储临时数据和状态信息,速度极快。外设寄存器位于外设模块内部,用于配置和控制外设的行为,通过内存映射I/O访问。外设寄存器不在CPU内部是为了实现模块化设计、功能分离和降低成本。在STM32中,外设寄存器通过固定的内存地址访问,具体地址由芯片厂商定义。
2025-02-28 15:43:30
609
原创 寄存器是特殊的存储器
寄存器是特殊的存储器,因为它们:速度极快,直接参与CPU运算。容量小,数量有限。用途特殊,用于存储关键数据和状态信息。位于CPU内部,访问方式与普通存储器不同。寄存器是计算机体系结构中不可或缺的一部分,它们的特殊性和高效性使得CPU能够快速执行指令和处理数据。
2025-02-28 15:42:00
403
原创 cpu的位数决定了寻址位数
寻址位数为64位,理论上最大寻址空间为2^64字节,实际受操作系统和硬件限制。总结:CPU位数直接影响其寻址能力,位数越高,可访问的内存空间越大。:寻址位数为32位,最大寻址空间为2^32字节,即4GB。:指CPU一次能处理的数据位数,如32位或64位。:操作系统和硬件可能进一步限制实际可用的内存空间。:决定了CPU能访问的内存地址空间大小。:决定CPU一次能传输的地址位数。:影响地址存储和处理能力。
2025-02-28 14:23:41
184
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人