STM8S105K4使用硬件spi读LSM9DS1的注意
SPI配置的几个要素:MSB、主从、PHASE_EDGE、POLARITY、NSS ;
主机时钟和SPI的速度的匹配,需要测试。
STM8的spi初始化函数中的CRC是个什么鬼?
SPI读取LSM9DS1时,需要先指定读取地址,然后再发一个直接的时序,读取该地址的数据。此时一定把第一次读地址的数据(虽然没有用)也读出来。
代码
SPI_Cmd(ENABLE);
CS_M_L;
while(SPI_GetFlagStatus(SPI_FLAG_TXE) == RESET);
SPI->DR = address|0x80;
while(SPI_GetFlagStatus(SPI_FLAG_RXNE) == SET);
tmp_rx = SPI->DR;//不读出来会出错!
while(SPI_GetFlagStatus(SPI_FLAG_TXE) == RESET);
SPI->DR = 0x00;
while(SPI_GetFlagStatus(SPI_FLAG_RXNE) == SET);
tmp_rx = SPI->DR;
CS_M_H;
SPI_Cmd(DISABLE);
上一篇:STM8S105K6T6单片机的IIC配置问题
下一篇:STM8S003F3 选项字
推荐阅读最新更新时间:2024-11-10 16:29
设计资源 培训 开发板 精华推荐
- DC956A,演示电路 956 采用 LTC2485、24 位高性能 DS 模数转换器
- L7824C 电流调节器的典型应用
- LT8611 的典型应用 - 具有电流检测和 2.5 uA 静态电流的 42V、2.5A 同步降压型稳压器
- LT3763IFE 3.3A、六节 (36V) SLA 电池充电器的典型应用电路
- LT6654BMPS6-3 八路 DAC 电压基准的典型应用
- 具有开路检测功能的 LT4254 正高压热插拔控制器的典型应用
- 使用 NXP Semiconductors 的 TDA8559 的参考设计
- cdsj relay
- 【课程设计】桌面小音响-D类功放
- MA3L120E12_EVAL,用于 EconoPACK 4 3 级 NPC2 模块的评估适配器板