IMX6ULL裸机篇之SPI实验-SPI主控代码实现

news/2024/12/26 4:58:09/

一.  SPI 实验

SPI实验:学习如何使用 I.MX6U 的 SPI 接口来驱动 ICM-20608,读取 ICM-20608 的六轴数据。

本文学习 SPI主控芯片的代码编写。其中,包括SPI工作模式设置,主从模式设置,时钟配置等实现。

二.  SPI 主控芯片代码

本实验的工程代码是在  "I2C实验" 的工程代码基础上继续实现的SPI的。将"I2C实验"工程代码拷贝一份。更名为 "18_spi"
在 工程目录中的 bsp 文件夹下创建名为 "spi" 文件。在 /bsp/spi 目录中,新建 bsp_spi.h bsp_spi.c 这两个文件。

1.  设置 SPI根时钟源

bsp/clk 目录的时钟代码中,即 /bsp/clk/ 目录下的 bsp_clk.c 文件添加 SPI根时钟配置代码。

SPI 的时钟树如下:

通过时钟树,可以知道 :

SPI 选择的是 PLL3_SW_CLK时钟,经过了 8分频,再经过一个1分频。最后得到 ECSPI_CLK_ROOT时钟,供 SPI外设使用。

bsp_clk.c 文件中的 imx6u_clkinit( ) 函数(即初始化系统时钟接口)中,添加如下 SPI根时钟代码:

    /* 设置SPI的根时钟源*/CCM->CSCDR2 &= ~(1 << 18);    //选择pll3_sw_clk/8= 480/8 = 60MHzCCM->CSCDR2 &= ~(0x3F << 19); //设置为1分频

2.  SPI主控代码

SPI通信中,片选信号可以有两种选择。可以选择硬件片选或软件片选。本实验使用软件片选。

-


http://www.ppmy.cn/news/376927.html

相关文章

【深度学习】Mask DINO四部曲—DETR潘多拉魔盒的正确打开方式

看本文之前&#xff0c;可以先看一下之前的文章&#xff1a;计算机视觉"新"范式: Transformer 检测框架的本质&#xff1a;从检测框编码的输入角度考虑&#xff0c;有密集到稀疏&#xff0c;密集和稀疏三种框架。Mask R-CNN属于先通过密集预测得到稀疏的采样&#xf…

潘多拉的魔盒 2006-12-09

我刚生下来的时候,得到一个魔盒,没人告诉过我这是潘多拉的魔盒,但后来我逐渐认识了它.我不想打开,也以为我没有打开过,但可惜,本性使我多次自以为在掀开盒子,得到罪恶的满足时候,并没有放出他们,可里面的恶魔已经悄然渗出.懒惰,淫欲,愚蠢,自私,嫉妒,狭隘,纷纷飞出,缠绕在我身体…

潘多拉 (Pandora),一个让你呼吸顺畅的 ChatGPT 相关文件ChatGPT Auth Helper

https://github.com/pengzhile/pandora Pandora 潘多拉 (Pandora)&#xff0c;一个让你呼吸顺畅的 ChatGPT。 潘多拉实现了网页版 ChatGPT 的主要操作。后端优化&#xff0c;绕过 Cloudflare&#xff0c;速度喜人。 体验地址 点击 https://chat.zhile.io最新拿 Access Tok…

MySQL-索引详解(五)

♥️作者&#xff1a;小刘在C站 ♥️个人主页&#xff1a; 小刘主页 ♥️努力不一定有回报&#xff0c;但一定会有收获加油&#xff01;一起努力&#xff0c;共赴美好人生&#xff01; ♥️学习两年总结出的运维经验&#xff0c;以及思科模拟器全套网络实验教程。专栏&#xf…

让Centos7(minimal install, kde)驱动惠普HP P1007打印机

我以为安装会挺顺利。果然&#xff0c;还是太天真了 参考文献&#xff1a; 1、https://nbabusyahid.wordpress.com/tag/hp-laserjet-p1007/ 2、https://tipsdaddy.blogspot.com/2015/05/installing-hp-laserjet-p1007-printer-on.html 有这两篇做指引就够了&#xff0c;但需要…

测试打印机性能的软件,首选项设置及打印速度测试

打印首选项设置 在“纸张/质量”页面中&#xff0c;用户可以通过该选项设置打印&#xff0c;如纸张尺寸、纸张类型、打印质量等。 打印首选项设置(一) 在“效果”页面中&#xff0c;用户可以设置打印尺寸、水印。除了软件本身提供的“保密”、“草稿”、“样本”三种水印外&…

M401a armbian下安装cups共享打印机

参考了以下两位大佬的文章&#xff1a; https://blog.csdn.net/inthesun29/article/details/105799656 https://blog.csdn.net/m0_45961169/article/details/125915188 1 安装Cups 更新系统 apt-get update apt-get upgrade安装相关的软件 apt-get install ghostscript apt…

树莓派做无线打印服务器,亲测可用 树莓派打造无线共享打印机

最近买了一个打印机,只有usb接口没有网口,也不支持网络打印,就打算用树莓派来做一个打印机服务器,废话不说,教程走起!!! 准备工作: 1.连接网络的树莓派 2.usb接口的打印机 虽然很多文章提到了raspberry树莓派如何安装cups实现共享打印机服务,但是我自己试下来发现HP …