ARM 裸机开发 DAY10 学习笔记

一、通信速率

1.I2C:100K、400K、1.xM、3.4MHZ

2.SPI:1MHZ ~ 几百 MHZ,OLED 设备常使用 SPI 通信

二、SPI 硬件引脚定义

1.SCLK:时钟线

2.MOSI:主发从收,主机输出、从机输入

3.MISO:主收从发,主机输入、从机输出

4.CS/SS:片选线,选中要通信的从机设备

三、SPI 时序两个核心参数

1.CPOL(时钟极性):定义 SCLK 空闲状态电平

①CPOL = 0:空闲时 SCLK 为低电平

②CPOL = 1:空闲时 SCLK 为高电平

2.CPHA(时钟相位):定义接收方在哪一边沿采样数据

①CPHA = 0:接收方在 SCLK 第一个边沿采样

②CPHA = 1:接收方在 SCLK 第二个边沿采样

四、SPI 的四种工作模式

1.模式 1:CPOL = 1,CPHA = 0:空闲 SCLK 高电平,下降沿采样

2.模式 2:CPOL = 1,CPHA = 1:空闲 SCLK 高电平,上升沿采样

3.模式 3:CPOL = 0,CPHA = 0:空闲 SCLK 低电平,上升沿采样

4.模式 4:CPOL = 0,CPHA = 1:空闲 SCLK 低电平,下降沿采样

五、协议对比

六、SPI 核心特性

1.全双工同步串行,写即是读,读即是写,收发同步进行

2.架构为一主多从,依靠 CS 片选选择目标从机

3.数据传输规则:高位先行

七、imx6ull SPI 内部模块

1.TXFIFO:发送 FIFO 缓冲区

2.shift register:移位寄存器

3.RXFIFO:接收 FIFO 缓冲区

4.Dummy:占位符虚拟字节,常用 0xFF、0x00

八、SPI 读写操作流程

1.SPI 写:主机发送寄存器地址 → 主机发送待写入数据

2.SPI 读:主机发送寄存器地址 → 主机发送 Dummy 占位字节 → 从机回复返回数据

九、ADXL345 加速度传感器参数

1.分辨率:13 位,数值范围 0 ~ 2¹³‑1

2.量程:±16g,1g = 9.8m/s²

3.单位换算:32g / (2¹³‑1) = 0.0039g,采样数值每加 1 代表 0.0039g

4.加速度计算

x 轴 = x 采样值 * 0.0039

y 轴 = y 采样值 * 0.0039

z 轴 = z 采样值 * 0.0039

十、硬件框架要点

mx6ull 作为 SPI 主机,可挂载多个 SPI 从设备,每个从机使用独立 CS 片选

SCLK 时钟可分频,例:60MHZ 分频输出 1MHZ SPI 时钟

相关推荐
蒸蒸yyyyzwd10 分钟前
邓明 Agent 系统面试-意图识别学习笔记
笔记·学习
Zhao-Jichao3 小时前
AI Prompting for Everyone 课程笔记 - P21 总结 Conclusion
人工智能·笔记
欢欢李3 小时前
【LTE L3 笔记 05】LTE同步信号
笔记·无线通信·物理层·lte·空口协议
La Pulga5 小时前
【FreeRTOS源码学习笔记】空闲任务与阻塞延时
笔记·mcu·学习·嵌入式·freertos·实时操作系统
蒸蒸yyyyzwd5 小时前
秋招学习笔记 day106
笔记·学习
小李不想当小白6 小时前
WDG看门狗(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
欢欢李7 小时前
【LTE L3 笔记 04】LTE帧结构
笔记·无线通信·物理层·lte·空口协议
Zhao-Jichao9 小时前
AI Prompting for Everyone 课程笔记 - P20 实验与期末项目 Lab and Final Project
前端·人工智能·笔记
lisw0510 小时前
作为人类代理的大语言模型及其角色分类!
人工智能·学习·语言模型
Z21-X10 小时前
云原生运维实战笔记:企业网站综合上云部署与云运维服务全景解析
运维·笔记·学习·云原生