为了验证 STM32F103 作为 QMK 固件的主控,作者制作了一个带编码器和 OLED 屏幕的数字小键盘,成功在 OLED 上显示动画。该小键盘通过 USB Type-C 连接,PCB 布局合理,功能齐全且便于焊接。
该项目基于UWB技术实现室内三维定位,使用STM32F103与DWM1000模块进行通信。通过双向测距(TWR)获取标签位置,误差控制在50cm以内,延迟不超过0.5s。实验在9.6m x 6m的环境中进行,xy轴误差约20cm,通信距离可达28m,效果良好。
文章讲述了在STM32F103上实现SPWM驱动的过程。作者分析了单相和三相SPWM的驱动时间,编写代码,并用示波器和逻辑分析仪测试信号。通过TIMER1的三个通道实现三相驱动,处理器时钟为72MHz,PWM死区时间为4微秒。生成半周期正弦数据表,计算占空比,并通过中断更新PWM信号的CCR寄存器,实现正弦信号输出。
在工业和农业自动化中,RTC功能很重要,如定时浇水。STM32F103的RTC模块耗电低,可用小电池维持208天。ESP8266无RTC,但可通过互联网校准时间。软件设计RTC模块可用mktime和localtime函数转换时间。服务器用心跳消息校准时间,确保控制准确。部分控制器可在断电后从FLASH读取时间,但FLASH擦写次数有限。
作者使用STM32F103C8T6 MCU和QMK固件制作数字小键盘,验证键盘原理图。成功修改QMK固件以启用I2C Remap,并配置I2C引脚,测试屏幕正常显示。
本文介绍了如何使用STM32F103C8T6微控制器替代ATmega32A制作键盘,以解决与MacBook连接不稳定的问题。通过STM32duino-bootloader,用户可以直接通过USB烧录固件,简化开发流程。文章详细说明了在macOS上的配置步骤,包括下载bootloader、使用ST-Link编程器以及在PlatformIO中的设置,最终实现了便捷的固件更新。
该文章介绍了基于STM32F103的0.96寸OLED显示屏驱动程序,支持硬件IIC/软件IIC接口,显示多种内容和图形,同时介绍了I2C通信协议的原理和使用方法。
STM32F103的默认最高主频为72M,可以扩充到80M。MCU主频由硬件和软件编程决定。STM8主频只能分频,不能倍频。超过16M主频时钟时,Flash /data EEPROM访问必须配置为1等待状态。STM32主频时钟同样由硬件和软件编程决定。STM32的时钟树相对复杂,增加了倍频功能。超过最大主频可能存在潜在风险,需考虑实际情况和环境因素。超频过多可能导致程序跑飞,出现死机现象。建议参考官网硬件和软件。
完成下面两步后,将自动完成登录并继续当前操作。