## 嵌入式系统通用驱动程序接口及其实现-SPI驱动程序
* 此接口为具体项目中: 需要SPI通讯时,提供统一的操作函数。
### 文件说明:
* SpiDev.h:Spi多例化统一接口
* 各MCU实现:
+ SpiDev_Lpc_ARM 在NXP LPC硬件SPI上的实现
+ SpiDev_Avr: 在AVR上的实现
+ SpiDev_Pic: 在PIC16F19系列上的实现
+ SpiDev_Soft: 使用IO模拟时的实现。
* Sip_Cs1: 各MCU对应实现中的片选控制,仅1个设备时
### 软件结构说明:
此接口含以下几大部分
* SPI设备驱动程序部分:
+ **SPI通用操作接口:** 即对外接口调用文件:**SpiDev.h** ,其它软件部分操作SPI时,**包含此文件即可**。
+ **SPI操作接口的各种实现:** 以*SpiDev(下横线_)SPI硬件名称(或载体)(下横线_)专用编译环境(可选,严重不建议代码与编译环境相关连)*命名, 与具体使用的SPI硬件的接口有关,即有各种不同的实现。但一种硬件仅实现一次,项目中需要那个加入那个即可,具有通用性(*实现时需尽量排除编译器影响,使一个SPI驱动的实现能在各种编译器里运行*)。
* SPI设备实例化部分-通用接口:
+ **SPI通用实例化接口:** 即对外接口调用文件:**Spi.h** ,其它软件部分需要具体Spi设备时,**包含此文件即可**。
+ **SPI操作接口的各种实现:** 以*Spi(下横线_)Spi硬件名称(或载体)(下横线_)专用编译环境(可选,严重不建议代码与编译环境相关连)*命名, 与具体使用的SPI硬件有关,即有各种不同的实现。但一种硬件仅实现一次,项目中需要那个加入那个即可,具有通用性(*实现时需尽量排除编译器影响,使一个SPI驱动的实现能在各种编译器里运行*)。
* SPI设备实例化部分-通用单SPI硬件设备+单片选专用:
+ **SPI设备实例化部分-单例SPI硬件设备+单片选(定义为SpiCs)专用接口:** 即对外接口调用文件:**Spi_Cs1.h** ,其它软件部分需要具体Spi设备时,**包含此文件即可**。
+ **Spi_Cs1操作接口的各种实现:** 以*Spi_Cs1(下横线_)Spi硬件名称(或载体)(下横线_)专用编译环境(可选,严重不建议代码与编译环境相关连)*命名, 与具体使用的SPI硬件有关,即有各种不同的实现。但一种硬件仅实现一次,项目中需要那个加入那个即可,具有通用性(*实现时需尽量排除编译器影响,使一个SPI驱动的实现能在各种编译器里运行*)。
####使用说明:
* SpiDev部分:
+ 1.根据项目嵌入式硬件不同,将SpiDev.h和**与项目对应的**的具体实现文件。增加到开发环境中。
+ 2.(此步可选) 查看具体实现文件文件内,是否有“编译选项”部分,若有,根据“编译选项”提示,在系统预编译头文件中增加相应配置。**为保证SpiDev实现文件的通用性,严禁对此实现做任何的改动**(BUG或提升功能与性能除外),若有不适用性,请复制后,包含复制文件进行操作。
* SPI设备实例化部分(含通用与专用实现,根据情况包含其中之一):
+ 1.根据项目嵌入式硬件不同,将Spi.h(或Spi_Cs1)和**与项目对应的**的具体实现文件。增加到开发环境中。
+ 2.(此步可选) 查看Spi项目内实现文件文件内,是否有“编译选项”部分,若有,根据“编译选项”提示,在系统预编译头文件中增加相应配置。**为保证Spi.h通用性,严禁对此实现做任何的改动**(BUG或提升功能与性能除外),若有不适用性,请复制后,包含复制文件进行操作。
####目录结构组织:
* **小型项目时**: 即不区分组件层,放在“项目源文件目录\Spi”下,内部不再有子目录
* **大中型项目时**: 区分组件层,放在“项目源文件目录\components\Spi”下,若项目很多,且同一项目也有较多实现时,可将具体实现文件放在此目录“项目名称”目录下,以实现分类存放。
没有合适的资源?快使用搜索试试~ 我知道了~
嵌入式系统通用驱动程序接口及其实现-Spi设备驱动程序
共14个文件
c:8个
h:4个
md:1个
1 下载量 171 浏览量
2024-06-08
09:40:36
上传
评论
收藏 24KB ZIP 举报
温馨提示
嵌入式系统通用驱动程序接口及其实现-Spi设备驱动程序 嵌入式系统通用驱动程序接口及其实现-SPI驱动程序 此接口为具体项目中: 需要SPI通讯时,提供统一的操作函数。 文件说明: SpiDev.h:Spi多例化统一接口 各MCU实现: SpiDev_Lpc_ARM 在NXP LPC硬件SPI上的实现 SpiDev_Avr: 在AVR上的实现 SpiDev_Pic: 在PIC16F19系列上的实现 SpiDev_Soft: 使用IO模拟时的实现。 Sip_Cs1: 各MCU对应实现中的片选控制,仅1个设备时 软件结构说明: 此接口含以下几大部分 SPI设备驱动程序部分: SPI通用操作接口: 即对外接口调用文件:SpiDev.h ,其它软件部分操作SPI时,包含此文件即可。 SPI操作接口的各种实现: 以*SpiDev(下横线_)SPI硬件名称(或载体)(下横线_)专用编译环境(可选,严重不建议代码与编译环境相关连)*命名, 与具体使用的SPI硬件的接口有关,即有各种不同的实现。但一种硬件仅实现一次,项目中需要那个加入那个即可,具有通用性(实现时需尽量排除编译器影响,使一个SPI驱动
资源推荐
资源详情
资源评论
收起资源包目录
Spi-master (2).zip (14个子文件)
SpiDev_Soft.c 14KB
备注.txt 4KB
readme.md 4KB
SpiDev_Avr.c 6KB
SpiDev.h 6KB
SpiDev_Soft.h 8KB
Spi_Cs1
Spi_Cs1.h 3KB
Spi_Cs1_Soft.c 2KB
Spi_Cs1_Avr.c 2KB
Spi_Cs1_Pic.c 2KB
Spi.h 1KB
Spi_Lpc_Arm.c 1KB
SpiDev_Lpc_Arm.c 10KB
SpiDev_Pic.c 6KB
共 14 条
- 1
资源评论
程序媛小y
- 粉丝: 5625
- 资源: 213
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Typora(version 1.2.3)导出 pdf 自定义水印的 frame.js 文件
- 【重磅,更新!】全国省市指数、新质生产力等数字经济资源合集(2022年)
- 2024年下半年软考中级网络工程ipsec over gre配置思路文档
- Simulink数值稳定性全攻略:技巧与实践
- Easy to use karmadactl command
- 2024年下半年软考中级网络工程GRE与IPSEC的联动配置思路文档
- Transformer-BiLSTM多特征输入时间序列预测(Pytorch完整源码和数据)
- 2024年下半年软考中级网络工程GRE与IPSEC的联动配置
- 基于Selenium自动化测试工具的youtube和tiktok数据爬虫
- 2024年下半年软考中级网络工程GRE与IPSEC的联动配置
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功