




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单元九ADXL362-三轴加速度传感器主讲人:汤宇娇上海城建职业学院本单元内容SPI通信原理及库函数配置基于SPI接口的三轴加速度传感器的软硬件设计编程实现获取ADXL362三轴加速度传感器数值教学目标了解SPI通信原理及库函数配置熟悉基于SPI接口的三轴加速度的传感器软硬件设计掌握使用ADXL362的API接口函数获取加速度数值9.1SPI通信原理及库函数配置基本概念SPI概念SPI通信的基本原理SPI是英语SerialPeripheralinterface的缩写,顾名思义就是串行外围设备接口,是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在EEPROM、FLASH、实时时钟、AD转换器,还有数字信号处理器和数字信号解码器之间。SPI是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议,比如AT91RM9200。SPI分为主、从两种模式,一个SPI通讯系统需要包含一个(且只能是一个)主设备,一个或多个从设备。SPI接口的读写操作,都是由主设备发起。当存在多个从设备时,通过各自的片选信号进行管理。优点:支持全双工通信、通信简单、数据传输速率快;缺点:没有指定的流控制,没有应答机制确认是否接收到数据,所以跟IIC总线协议比较在数据的可靠性上有一定的缺陷。基本概念SPI概念SPI通信的基本原理SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时)。这四根线分别是MISO、MOSI、SCLK、CS。名称描述MISO主设备数据输入,从设备数据输出MOSI主设备数据输出,从设备数据输入SCLK时钟信号,主设备产生CS片选信号,主设备控制CS:控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(一般默认为低电位),对此芯片的操作才有效,这就允许在同一总线上连接多个SPI设备成为可能。基本概念SPI概念SPI通讯模式模式CPOL(时钟极性)CPHA(时钟相位)MODE000MODE101MODE210MODE311SPI通信有4种不同的模式,不同的从设备可能在出厂时就是配置为某种模式,这是不能改变的;但我们的通信双方必须是工作在同一模式下,所以我们可以对我们的主设备的SPI模式进行配置,通过CPOL(时钟极性)和CPHA(时钟相位)来控制我们主设备的通信模式,具体如下:时钟极性CPOL是用来配置SCLK的电平出于哪种状态时是空闲态或者有效态,时钟相位CPHA是用来配置数据采样是在第几个边沿:CPOL=0,表示当SCLK=0时处于空闲态,所以有效状态就是SCLK处于高电平时;CPOL=1,表示当SCLK=1时处于空闲态,所以有效状态就是SCLK处于低电平时;CPHA=0,表示数据采样是在第1个边沿,数据发送在第2个边沿;CPHA=1,表示数据采样是在第2个边沿,数据发送在第1个边沿。基本概念SPI概念SPI工作机制对照一个SPI单主机与单从机连接图,理解其内部工作机制:硬件上为4根线;主机和从机都有一个串行移位寄存器,主机通过向它的SPI串行寄存器写入一个字节来发起一次传输;串行移位寄存器通过MOSI信号线将字节传送给从机,同时从机也将自己的串行移位寄存器中的内容通过MISO信号线返回给主机。这样,两个移位寄存器中的内容就被交换;外设的写操作和读操作是同步完成的。如果只进行写操作,主机只需忽略接收到的字节;反之,若主机要读取从机的一个字节,就必须发送一个空字节来引发从机的传输。基本概念SPI概念SPI通讯模式CPOL=0,CPHA=0:此时空闲态时,SCLK处于低电平,数据采样是在第1个边沿,也就是SCLK由低电平到高电平的跳变,所以数据采样是在上升沿,数据发送是在下降沿。
CPOL=0,CPHA=1:此时空闲态时,SCLK处于低电平,数据发送是在第1个边沿,也就是SCLK由低电平到高电平的跳变,所以数据采样是在下降沿,数据发送是在上升沿。
CPOL=1,CPHA=0:此时空闲态时,SCLK处于高电平,数据采集是在第1个边沿,也就是SCLK由高电平到低电平的跳变,所以数据采集是在下降沿,数据发送是在上升沿。CPOL=1,CPHA=1:此时空闲态时,SCLK处于高电平,数据发送是在第1个边沿,也就是SCLK由高电平到低电平的跳变,所以数据采集是在上升沿,数据发送是在下降沿。基本概念SPI概念STM32SPI库函数配置SPI接口的框图基本概念SPI概念STM32SPI库函数配置外设的GPIO配置基本概念SPI概念STM32SPI库函数配置SPI相关配置库函数1个初始化函数voidSPI_Init(SPI_TypeDef*SPIx,SPI_InitTypeDef*SPI_InitStruct);作用:初始化SPI的相关参数,比如方向(全双工)、主从模式、数据大小、CPOL、CPHA、片选软件模式、预分频系数等。3个使能函数voidSPI_Cmd(SPI_TypeDef*SPIx,FunctionalStateNewState);voidSPI_I2S_ITConfig(SPI_TypeDef*SPIx,uint8_tSPI_I2S_IT,FunctionalStateNewState);voidSPI_I2S_DMACmd(SPI_TypeDef*SPIx,uint16_tSPI_I2S_DMAReq,FunctionalStateNewState);作用:使能SPI接口;使能SPI中断;使能SPI的DMA功能。2个数据传输函数voidSPI_I2S_SendData(SPI_TypeDef*SPIx,uint16_tData);uint16_tSPI_I2S_ReceiveData(SPI_TypeDef*SPIx);作用:分别用于SPI传输数据、接收数据。基本概念SPI概念STM32SPI初始化配置相关引脚的复用功能,使能SPIx时钟;调用函数:voidGPIO_Init();初始化SPIx,设置SPIx工作模式。调用函数:voidSPI_Init();使能SPIx;调用函数:voidSPI_Cmd();SPI传输数据;调用函数:voidSPI_I2S_SendData();uint16_tSPI_I2S_ReceiveData();SPI一般步骤9.2基于SPI接口的三轴加速度的传感器软硬件设计硬件设计ADXL362ADXL362硬件电路ADXL362(SPIslave)通过SPI接口与STM32(SPImaster)进行通信软件设计ADXL362ADXL362初始化初始化STM32的SPI接口,通过SPI读取DVEICEID和PARTID来来判断是否建立连接。软件设计ADXL362获取X/Y/Z轴加速度值#defineADXL362_REG_XDATA_L0x0EADXL362_GetRegisterValue(xyzValues,ADXL362_REG_XDATA_L,6);从ADXL362的datasheet中获取到的16bitX/Y/Z加速度地址值。9.3编程实现获取A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024人力资源管理师特色试题及答案
- 超星尔雅学习通《先秦君子风范(首都师范大学)》2025章节测试附答案
- 企业人力资源制度的优化方法试题及答案
- 二零二五年度文化创意产业贷款购销合同
- 二零二五年度人工智能企业部分股份购买与研发协议
- 2025年度门面转让及商业街区整体开发合同
- 二零二五年度室内设计色彩搭配委托合同样本
- 2025年度金融行业试用期劳动合同范本汇编
- 2025年度新能源储能技术股权转让及项目合作合同
- 2025年度高空作业安全协议承诺书与高空作业现场临时用电合同
- 甲亢课件教学课件
- 典籍里的中国课件
- 国家电网招聘考试试题及答案
- Unit 2 Special Days(说课稿)2023-2024学年人教新起点版英语五年级下册
- 【MOOC】国际交英文写作-湖南大学 中国大学慕课MOOC答案
- 脑室镜手术配合
- 《移动通信》任务10 5G基站勘查
- 浓香白酒采购合同范例
- GB/T 11981-2024建筑用轻钢龙骨
- 鹦鹉主题课件教学课件
- 药店信息化管理制度
评论
0/150
提交评论