NUC970实现SPI通信
自我扫盲
首先直观点说说SPI的概念,是Motorola提出的,主要用于芯片级的通信。全程呢叫Serial Perpheral Interface串行外设接口。通用的是主从四线全双工,一根选择线,一根时钟线,一根输出,一根输入,支持一主多从,选择与时钟都由主提供。
灵魂画法如下:
唉,这里面我们一步步来:
- NSS选择,可以约定高电平选择还是低电平选择;
- CLK可以约定是上升沿还是下降沿触发;
- 数据就没什么说的。
硬件资源
好,到这里为止就是简单的扫盲,下面基于NUC970怎么实现。
先看看他上面的资源:
翻手册中~NUC970首先支持两个SPI接口/设备;然后
- 支持主模式
- 可以全双工
- 支持1-32位的传输;高载模式下一次传输两个数据,所以最高是64位(这个没验证)
- 支持大端与小端模式
- 支持双/四IO传输模式(说是FLASH情况下用)
哗啦啦是归根结底可以在下面几个端口玩点花出来:
具体功能我就简单如下说说:
- 可以进行触发电平配置、从机选择等基本配置
- 可以设置自动模式(待填坑)
- 可以设置一次多次传输(1-4)
- 可以设置双/四通道传输
- 可以中断
以上内容都有相关的代码支撑,翻手册查~
操作思路
然后下面讲大致的操作流程(当然,也是待我填坑认证)
- 先设置时钟寄存器,走多少频率的定一定;
- 设置要不要走自动模式,时钟是高电平还是低电平算空闲,时钟的触发沿,选择的触发沿;
- 配置下大端还是小端,每次的传输长度,一次传多少个;
- 淡定的把数据写入寄存器;
- 激动人心的设置GO_BUSY,启动SPI
- 等待SPI中断,或者轮询看看GO_BUSY有没有清零,等待结束;
- 读一下输入寄存器;
- 结束
操作前提:
- 把GPIO管脚配置成SPI,主要是往MPF寄存器对应位置写入0xB。
- 设置时钟CLK_PCLKEN1,有关的是CLK_PCLKEN1[4]与CLK_PCLKEN[5]
NUC970实现SPI通信相关推荐
- STM32 SPI通信(读写flash)
SPI通信 四线制 MISO:主设备数据输入,从设备数据输出 MOSI:主设备数据输出,从设备数据输入 SCLK:时钟信号 CS:片选引脚(低电平有效) 时序图 读写程序 flash读写函数: u8 ...
- android spi串口调试,PIC入门3,SPI通信和串口调试实验
原标题:PIC入门3,SPI通信和串口调试实验 MSSP模块工作于SPI主控方式,这个可以直接在实验板上执行. 程序: //适合3EPIC实验板,配置PIC的MSSP模块工作于SPI主控方式下, // ...
- TLE5012B ESP32驱动程序、硬件电路设计、4线SPI通信,驱动完美兼容4线SPI不用改MOSI开漏推挽输出
一.TLE5012B 简介 TLE5012B 是一种款高分辨率旋转位置传感器,用于在整个 360 度范围内进行角度测量. 它通过使用单片集成 巨磁阻 (iGMR) 元件,来测量正弦和余弦角分量,这些原 ...
- AS5047P磁编码器ESP32驱动程序、硬件电路设计、SPI通信时序、逻辑波形分析、注意事项
1.AS5047P硬件设计 1.1 简介.性能参数 AS5047P 是一种款高分辨率旋转位置传感器,用于在整个 360 度范围内进行高速(高达 28krpm)角度测量.这种新型位置传感器配备了革命性的 ...
- SPI通信实验---verilog(FPGA作为从机,使用可读可写)
文章原地址: http://www.cnblogs.com/fhyfhy/p/4429302.html SPI通信实验---verilog(FPGA作为从机,使用可读可写) 本实验讲究实用性,故设计思 ...
- stm32f405rgt6与as5048a的SPI通信问题
与as5048a的SPI通信问题 本人最近在学习无刷直流电机的FOC,其中用了一个带有磁编码器as5048a作为角度反馈的电机,其中pwm接口输出是正常的,但是在SPI通信的时候出现了问题.研究了几天 ...
- ADI官方解释在SPI通信期间,数据的发送(串行移出到MOSI/SDO总线上)和接收(采样或读入总线(MISO/SDI)上的数据)
串行外设接口(SPI)是微控制器和外围IC(如传感器.ADC.DAC.移位寄存器.SRAM等)之间使用最广泛的接口之一.本文先简要说明SPI接口,然后介绍ADI公司支持SPI的模拟开关与多路转换器,以 ...
- CC3200 与 CC2530的SPI通信
目的:实现CC2530作为master,CC3200作为slave的SPI 通信 连接图如下 /*--------------------------– Master Slave ----- ---- ...
- 通信协议整理之 SPI 通信
通信协议整理之 SPI 通信 文章目录 通信协议整理之 SPI 通信 简介 工作原理 通信连接方式 补充 硬件 SPI 和模拟 SPI 简介 SPI是串行外设接口(Serial Peripheral ...
最新文章
- 神经元之间是如何形成“社交网络”的
- Swift - 经纬度位置坐标与真实地理位置相互转化
- HZOJ 赤(CF739E Gosha is hunting)
- 【转】2.5SharePoint服务器端对象模型 之 访问网站和列表数据(Part 5)
- SparkStreaming - 无状态与有状态 updataStateByKey
- var let this的区别
- windows无法移动修复此计算机,无法安装Windows 10移动创作者更新[修复] | MOS86
- mysql 创建时间 只能设置一个_在MySQL中创建数据表时,可以设定主键、外键。那么对于一个数据表,能设置的主键和外键个数最多分别是...
- 一个类似权限挂载的设计
- java.lang.InternalError: internal error: SHA-1 not available.
- [微信小程序]swiper保持宽高比
- 【第七课】Smart 3D集群教程
- QGIS插件开发详细教程
- SPSS(七)非线性回归过程
- 笔记本电脑桌面的计算机图标不见了,win7系统笔记本电脑桌面计算机图标不见了的解决方法...
- 后台传给小程序的时间对象如何转为“YYYY/MM/DD“格式渲染
- 解决 primordials is not defined 问题
- adb 查看手机闪存类型
- 【慕课网】人工智能-语音入门|公开课知识整理
- win10安装配置JDK11
热门文章
- 段永朝,比较2012-2016,深度解读互联网女皇《互联网趋势报告》
- php js页面刷新,JS刷新页面方法总结
- java实现尾递归优化,你们都知道递归,尾递归呢?什么又是尾递归优化?
- ptgui创建全景图设置_使用Microsoft图像合成编辑器创建高级全景图
- 2013年上半年系统集成项目管理工程师(软考)培训视频、资料、历年试题、电子书教程
- 用计算机制作板报教案,浅析“用Word制作电子板报”的教学设计
- 一个网工获得CCNP认证后的成功求职记
- java toast_详解Android中的Toast源码
- linux装入u盘分区失败,linux下U盘分区表修复解决识别问题
- [源码和文档分享]基于QT实现的联网国际跳棋游戏