STM32F429BI单片机读写HMC5883L三轴磁力计例程工程源码,可以做为你的学习设计参考。 本例程使用GPIO模拟I2C时序访问三轴磁力计芯片 HMC5833L 通过串口实时打印磁力计芯片的采样数据,每秒刷新一次显示。 请将开发板水平旋转一周(记录X,Y的最大最小值), 然后将开发板竖起再旋转一周(记录Z周的最大最小值), 程序将记录X, Y, Z 三个轴向的最大值和最小值。 比如: X= 542( -389, 543),Y= -153( -669, 398),Z= -507( -594, 332) = 后是当前的磁力值, ( ) 内 -389是最小值,543是最大值。 最大最小值是在底层 bsp_hmc5833l.c 中自动记录的。 每个芯片的离散性很大,芯片附近的铁磁性物体对测量结果影戏很大,不同尺寸的显示屏对输出结果也有很大的影响, 这是正常的。一般需要校准后使用。 核心文件为: bsp_hmc5833l.c/.h : MMPU-6050 底层驱动程序 bsp_i2c_gpio.c/h : GPIO模拟I2C总线的驱动程序
STM32F429BI单片机按键检测和LED控制软件例程工程源码,可做为你的学习设计参考。 该例使用systick定时器作为系统滴答定时器, 每隔1ms执行依次systick定时中断服务程序。 此后所有的例程都会和这个滴答定时器相关。 本例程可以用来检测按键和摇杆以及LED指示灯、串口1的硬件功能是否正常。 定时器的代码在 bsp_timer.c 文件。提供一次性定时器、周期性自动定时器接口函数;提供毫秒级延迟函数和us级 延迟函数。 按键的处理代码在 bsp_key.c 文件。软件定时扫描每个按键,按键事件(按下,弹起,长按)存放在一个按键FIFO 缓冲区。提供获取按键事件代码的API接口函数。 LED指示灯的代码在 bsp_led.c 文件。提供点亮、熄灭、翻转状态的API接口函数。 程序执行结果通过串口1(USART1)送到计算机的串口。可以通过PC机的串口终端软件观察程序执行结果。 上电后,LED4将按照1Hz的频率闪烁。串口将输出CPU的唯一序号、例程版本信息和操作提示信息。 按下开发板上的K1键点亮LED1,松开熄灭LED1,同时打印按键事件到串口。 按下开发板上的K2键点亮LED1,松开熄灭LED2,同时打印按键事件到串口。 按下开发板上的K3键点亮LED1,松开熄灭LED3,同时打印按键事件到串口。