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. python存储MongoDB数据

    MongoDB是由C++语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似JSON对象,它的字段值可以包含其他文档.数组及文档数组,非常灵活(总体来看,python ...

  2. 关于C#的Dynamic调用方法前的一些准备的小Demo

    using System; using System.CodeDom.Compiler; using System.Collections.Generic; using System.Linq; us ...

  3. RBMQ案例五:主题模式

    在之前的教程中,我们改进了日志系统.我们没有使用只能进行虚拟广播的扇出交换器,而是使用了直接交换器,并获得了选择性接收日志的可能性. 虽然使用直接交换改进了我们的系统,但它仍然有局限性--它不能基于多 ...

  4. C++用Mutex实现读写锁

    近期答辩完成了,想回头看看之前没做过的2PL. 实现2PL有4种方式: 死锁检测.本篇是为了做这个而实现的,做这个事情的原因是c++标准库的shared_mutex无法从外界告知获取锁失败. 如果需要 ...

  5. 如何给Git设置ssh代理

    由于不可描述的原因,在某些情况下Github不可用(git push和git pull都显示远程服务器不可用或无权限),于是就想到上代理. 首先网上搜索一通,发现如下方法: git config -- ...

  6. 洛谷 P3792 由乃与大母神原型和偶像崇拜

    洛谷 P3792 由乃与大母神原型和偶像崇拜 Problem 糖果屋的故事讲的就是韩赛尔和格雷特被继母赶出家里,因为没饭吃了,然后进了森林发现了一个糖果屋,里面有个女巫,专门吃小孩子 然而如果我们仔细 ...

  7. 手把手教你实现PyTorch版ViT:图像分类任务中的Transformer实战

    作者:SkyXZ CSDN:SkyXZ--CSDN博客 博客园:SkyXZ - 博客园 ViT论文Arxiv地址:An Image is Worth 16x16 Words: Transformers ...

  8. 函数使用十三:BAPI_REQUISITION_CREATE

    *&---------------------------------------------------------------------**& Report  ZBAPI_REQ ...

  9. SpringBoot集成TOTP双因素认证(2FA)实战

    一.双因素认证的概念 双因素认证(2FA,Two Factor Authentication)又称双因子认证.两步验证,指的是是一种安全认证过程,需要用户提供两种不同类型的认证因子来表明自己的身份,包 ...

  10. 数栈技术分享:利用V8深入理解 JavaScript 设计

    一.JavaScript 代码运行 以大家开发常用的 Chrome 浏览器或 Node 举例,我们的 JavaScript 代码是通过 V8 运行的.但 V8 是怎么执行代码的呢?当我们输入 cons ...