当前位置: 首页 > wzjs >正文

建设部网站官网施工合同文本seo优化网站的注意事项

建设部网站官网施工合同文本,seo优化网站的注意事项,公司网站建设制作价格,门户网站对应序号是什么前言: 硬件平台:X9H 软件版本:PTG4.0 当应用层的 SPI 通讯失败时,需要弄清楚问题出现在哪个环节才能进行下一步动作。以下为 SPI 通讯时应用层到驱动层的代码调用流程。 一、整体架构 SPI 设备驱动:挂载在 SPI 总线…

前言:

硬件平台:X9H
软件版本:PTG4.0
当应用层的 SPI 通讯失败时,需要弄清楚问题出现在哪个环节才能进行下一步动作。以下为 SPI 通讯时应用层到驱动层的代码调用流程。

一、整体架构

SPI 设备驱动:挂载在 SPI 总线上的设备的驱动,根据设备类型的不同有多种多样的驱动
SPI 通用接口:通用的 SPI 操作接口,API 库,SPI 设备驱动和 SPI 控制器驱动之间的纽带
SPI 控制器驱动:芯片内部的 SPI 控制器的驱动,封装了最基础的 SPI 操作接口,直接控制寄存器和中断响应
SPI 寄存器:硬件单元,使用 SPI 控制器驱动文件(kernel/drivers/spi/spi-dw.c)中的接口(dw_spi_show_regs)可以获取相关寄存器的值

SPI 控制器驱动注册时向 SPI 通用接口(spi.c)提供了 spi_controller 的数据结构,这个结构体里封装了对硬件 SPI 的操作函数。

SPI 设备驱动可以通过调用 spi.c 里提供的 API 接口来间接地调用 SPI 控制器驱动的函数。

SPI 控制器驱动和 SPI 设备驱动通过 spi.c 连接,耦合度低,可以随意搭配。


二、应用到驱动的代码调用

以下程序为例分析应用到驱动的代码调用:

应用程序:kernel/tools/spi/spi_test.c ,linux 内核自带的 spi_test 程序
SPI 设备驱动: kernel/drivers/spi/spidev.c 
SPI 通用接口:kernel/drivers/spi/spi.c
SPI 控制器驱动:kernel/drivers/spi/spi-dw-mmio.c 和 kernel/drivers/spi/spi-dw.c, spi-dw-mmio.c 主要负责设备注册,spi-dw.c 负责模式配置和数据传输。

spi 子节点注册完成后,会在 /dev/ 下创建一个设备节点。应用层通过这个节点和 ioctrl 接口调用驱动层的代码。

ioctrl 接口的参数可以分为两种: spi 模式配置和数据传输。

spi 模式配置 :

配置 spi 的 MAX_SPEED_HZ,BITS_PER_WORD,LSB_FIRST,WR_MODE 等属性。

代码流程:

spi 数据传输:

驱动在 spi.c 的 spi_transfer_one_message 函数中对片选线进行选中或取消,由程序可知,设备驱动每调用一次 spidev_sync,如果数据没有丢失,那么每 sync 一次则产生一次 spi 通讯。
一个 message 包含多个 xfer,一个 message 为一次通讯,一个 xfer 调用一次 spi 控制器驱动中的 dw_spi_transfer_one 接口,dw_spi_transfer_one 则通过 dw_writel 函数写入寄存器。

代码流程:

一次传输的大小即为一个 struct spi_message ,使用 spi_test 测试,携带的数据最大为 4096 bytes。

struct spi_message {struct list_head    transfers;struct spi_device   *spi;unsigned        is_dma_mapped:1;void            (*complete)(void *context);void            *context;unsigned        frame_length;unsigned        actual_length;int         status;struct list_head    queue;void            *state;struct list_head        resources;
};​

总结:以上为应用 spi_test.c 到设备驱动、控制器驱动、寄存器读写的大概代码调用流程。

欢迎登录大大通,获取更多精彩技术内容!

http://www.dtcms.com/wzjs/424858.html

相关文章:

  • 初中生怎样做网站赚钱全网整合营销外包
  • 苏州网站建设公司哪家好深圳网络推广工资
  • 360网站卫士代备案流程女生学电子商务好吗
  • 基础微网站开发代理网络营销策划书2000字
  • 武汉外贸网站建设公司排名关键词排名优化官网
  • 西安建设学院网站首页收录网站排名
  • 详情页模板哪个网站好企业网络营销系统分析报告
  • 动漫做那个视频网站推广游戏怎么拉人最快
  • 网站开发所用的技术广东新闻今日大件事
  • 今日国际新闻最新新闻seo比较好的公司
  • java开发工程师工资一般多少seo模拟点击有用吗
  • win7电脑做网站服务器人工智能培训班收费标准
  • 做网站用的图片网站推广方式
  • 做黏土的网站谷歌浏览器下载安装2023最新版
  • 贵阳专业做网站的公司有哪些制作小程序的软件
  • 网站登录怎么保存用户名密码海淀seo搜索优化多少钱
  • 做外贸用什么网站好网站注册步骤
  • 政府网站后台如何管理十大免费cms建站系统介绍
  • 微信推广网站建设app拉新推广代理平台
  • 珠海做网站的公司打开全网搜索
  • 昆明app开发制作黑帽seo技术有哪些
  • 数学家 wordpressseo是干嘛的
  • 半瓶的wordpress之旅论坛seo招聘
  • 做网站业务员如何跟客户沟通网站超级外链
  • 福州+网站建设+医疗如何建立自己的网站?
  • 做网站的框架模版怎么开发一个网站
  • 徐州 网站 备案 哪个公司做的好做网站关键词优化的公司
  • 学技术包分配的培训机构网络优化工作应该怎么做
  • 手机端网站尺寸规范西安百度推广优化
  • 网站开发案例教堂html佛山网站优化排名推广