hello,大家好,这次分享基于S32K148-SDK的SPI的驱动配置方法,最近一段时间开发BMS的单体电压温度采集,用到SPI,所以我就顺便把SPI驱动方法记录下来

SPI配置部分重要部分:

1)时钟分频(与传输波特率有关);

2)SPI工作模式,一共有四种方式,具体看项目要求进行配置。

3)片选信号CS,S32K148具有内部硬件片选,但是一般我不用。S32K148每次发送完之后,片选信号自动拉低,针对连续发送问题有点麻烦。所以一般我片选信号CS会找一个GPIO口做软件控制就行。

专家系统生成代码之后(包括引脚复用部分),SPI初始化非常简单

void SPI0_Masterinit(void)
{
LPSPI_DRV_MasterInit(LPSPICOM1,&lpspiCom1State,&lpspiCom1_MasterConfig0); }

SPI原理最基础部分,它属于移位寄存器,TX每发送一个字节,RX同步接收一个字节,

SPI发送函数

void SPIO_MasterSendData(uint8_t *SendData, uint8_t ByteLength)
{
uint8_t RecBuffer[ByteLength];
for(uint8_t i=0;i<ByteLength;i++)
{
LPSPI_DRV_MasterTransferBlocking(LPSPICOM1, &SendData[i], &RecBuffer[i], 1, TIMEOUT);
SPI0_RecBuffer[i] = RecBuffer[i];
} }

S32K148-SPI驱动的更多相关文章

  1. 基于TQ2440的SPI驱动学习(OLED)

    平台简介 开发板:TQ2440 (NandFlash:256M  内存:64M) u-boot版本:u-boot-2015.04 内核版本:Linux-3.14 作者:彭东林 邮箱:pengdongl ...

  2. SPI 驱动分析

    断更博客两个月后我又回来了,眯着躺倒就能睡熟的小眼睛,在这儿敲键盘.这篇文章给你快乐,你有没有爱上我! SPI驱动由三部分组成,分别为drivers.core.device.通过bus总线连接.困了不 ...

  3. Linux Spi驱动移植小结

    2012-01-07 22:21:29 效果图: 理论学习后,主要是linux中spi子系统设备框架的了解后,主控制器与设备分离的思想,那么我要开始动手了. 1,  make menuconfig添加 ...

  4. SPI 驱动框架

    SPI 驱动框架 1. 枚举过程 drivers/spi/spi.c: spi_register_board_info /* 对于每一个spi_master,调用spi_match_master_to ...

  5. Linux驱动:SPI驱动编写要点

    题外话:面对成功和失败,一个人有没有“冠军之心”,直接影响他的表现. 几周前剖析了Linux SPI 驱动框架,算是明白个所以然,对于这么一个庞大的框架,并不是每一行代码都要自己去敲,因为前人已经把这 ...

  6. Am335x SPI 驱动测试

    内核版本:3.14.65 CPU:Am335x 1.编译内核: make menuconfig Device Drivers -> <*>SPI support -> < ...

  7. spi驱动框架全面分析,从master驱动到设备驱动

    内核版本:linux2.6.32.2  硬件资源:s3c2440 参考:  韦东山SPI视频教程 内容概括:     1.I2C 驱动框架回顾     2.SPI 框架简单介绍     3.maste ...

  8. S3C2440 SPI驱动框架

    S3C2440 SPI驱动代码详细解读: https://www.linuxidc.com/Linux/2012-08/68402p4.htm 一.platform device and board_ ...

  9. linux驱动基础系列--linux spi驱动框架分析

    前言 主要是想对Linux 下spi驱动框架有一个整体的把控,因此会忽略某些细节,同时里面涉及到的一些驱动基础,比如平台驱动.设备模型等也不进行详细说明原理.如果有任何错误地方,请指出,谢谢! spi ...

  10. linux驱动基础系列--linux spi驱动框架分析(续)

    前言 这篇文章是对linux驱动基础系列--linux spi驱动框架分析的补充,主要是添加了最新的linux内核里设备树相关内容. spi设备树相关信息 如之前的文章里所述,控制器的device和s ...

随机推荐

  1. 解决Andaconda创建虚拟环境出现的“无法定位程序输入点”的问题

    解决Andaconda创建虚拟环境出现的"无法定位程序输入点"的问题 需要查看两个相同名称的文件:libssl-1_1x64.dll 第一个文件的路径:anaconda\DLLs\ ...

  2. 利用 SSE 实现流式 AI 聊天交互(三)

    在 AI 赋能的时代,即时交互式对话体验成为众多应用的核心功能之一.本文将介绍如何使用 流式 SSE (Server-Sent Events) 技术,实现高效的 AI 聊天交互,提供更加丝滑的用户体验 ...

  3. 关于cc3复现以及绕过思路

    关于cc3复现以及绕过思路 (文章简略许多,可以的话,可以看看之前之前发布的文章) 绕过思路:动态加载字节码绕过Runtime,exec被过滤 在前面两个篇章中我们学习了cc1,cc6和动态加载字节码 ...

  4. FastAPI日志审计:你的权限系统是否真的安全无虞?

    title: FastAPI日志审计:你的权限系统是否真的安全无虞? date: 2025/06/20 16:21:09 updated: 2025/06/20 16:21:09 author: cm ...

  5. DotTrace系列:2. 理解四大经典的诊断类型(下)

    一:背景 1. 讲故事 前面我们已经聊过四大诊断类型中的前三个 Sampling,Tracine,Line-by-Line,这篇补上最后一个诊断类型 Timeline,这也是真实场景中使用最多的,它能 ...

  6. UFT send request & get response

    str 为发出去的request :

  7. Aug. 2023 普及组模拟赛 3

    题面 T1 最大生成树 Meaning 给定一个完全图,两点之间的边权为这两个点点权之差的绝对值,求这个图的最大生成树. Solution 对于最小生成树,我们可以考虑 Kruskal 算法. Kru ...

  8. java基础--自定义异常类、包、模板模式

    自定义异常类 需求: 模拟feiQ上线的时候,如果没有插上网线,那么就抛出一个没有插上网线的异常, 如果已经插上了网上,那么就正常显示好友列表. 自定义异常类的步骤: 自定义一个类继承Exceptio ...

  9. 解决Chrome打印对话框中没有布局设置横向问题

    本文方法来源于stackoverflow: https://stackoverflow.com/questions/36322109/chrome-printing-website-missing-l ...

  10. 转载的 linux 下的搜狗拼音问题

    转载自http://blog.csdn.net/jilijelon/article/details/53759965 炎热的夏日  拼音问题搞的我很烦躁 之前一段时间正常使用的搜狗输入法突然无法输出中 ...