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

渭南免费做网站公司/搜索引擎优化工具有哪些

渭南免费做网站公司,搜索引擎优化工具有哪些,vi企业整套设计公司,有女人和马做网站吗0、说明 介绍spi基本协议,以及在linux内核中spi驱动程序框架。 SPI驱动基于标准了总线设备驱动模型,因此本文仅示意分析SPI框架,驱动实现细节按照总线设备驱动模型来实现,不做过多分析。 1、SPI基础 硬件连接 在一些flash中经常…

0、说明

        介绍spi基本协议,以及在linux内核中spi驱动程序框架。

        SPI驱动基于标准了总线设备驱动模型,因此本文仅示意分析SPI框架,驱动实现细节按照总线设备驱动模型来实现,不做过多分析。

1、SPI基础

硬件连接

        在一些flash中经常使用SPI协议,如下,SPI一般有四个线:

  • 片选CS
  • 时钟SCK
  • 主输出从输入:SIMO
  • 主输入从输出:SOMI

        根据引脚推断,有片选引脚,所以说一条SPI总线上可以挂多个设备,哪个CS被选中,则哪个设备活跃。同时有数据输入和输出引脚,因此是全双工。

 

四种模式

        根据SCK没数据时候的状态,以及上升下降沿采样,可以分为四种模式,SPI0-3。使用SPI进行通信的时候,需要根据具体的从设备手册,确定是支持哪些模式。

 2、内核中的spi驱动

架构

        内核中SPI遵循总线设备驱动模型。因此驱动包含几个部分,总线的注册,控制器的注册及设备创建,驱动的注册。即总线设备驱动模型。

        通过config增加SPI支持后,SPI总线被注册进内核,spi_init调用bus_register。

        每个CPU有自己的SPI控制器,在设备树中描述,同时在设备树SPI控制器节点下存在该控制器下连接的设备。由控制器驱动直接创建出spi_device,spi_new_device。

        那么最后只差一个spi_driver。spidev.c是一个通用的驱动,调用spi_register_driver注册驱动。

        围绕以下结构体:

        spi_bus_type(总线)、spi_master(控制器)、spi_device(设备)、spi_driver(驱动)

在总线设备驱动模型框架下,追踪以上结构体分配、设置过程就是SPI的框架实现。

设备树控制器描述

                                                                 
ecspi1: ecspi@02008000 {                                         #address-cells = <1>;                                        #size-cells = <0>;                                           compatible = "fsl,imx6ul-ecspi", "fsl,imx51-ecspi";          reg = <0x02008000 0x4000>;                                   interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;               clocks = <&clks IMX6UL_CLK_ECSPI1>,                          <&clks IMX6UL_CLK_ECSPI1>;                              clock-names = "ipg", "per";                                  dmas = <&sdma 3 7 1>, <&sdma 4 7 2>;                         dma-names = "rx", "tx";                                      status = "disabled";                                         
}; &ecspi1 {fsl,spi-num-chipselects = <1>;cs-gpios = <&gpio4 26 0>;pinctrl-names = "default";pinctrl-0 = <&pinctrl_ecspi1_1 &pinctrl_ecspi1_cs_1>;status = "okay";flash: n25q032@0 {#address-cells = <1>;#size-cells = <1>;compatible = "st,n25q032";spi-max-frequency = <20000000>;reg = <0>;};
};

总线驱动

 控制器驱动

设备驱动

 

http://www.lbrq.cn/news/1075375.html

相关文章:

  • app网站排名/长春视频剪辑培训机构
  • 亿赐客网站/什么样的人适合做策划
  • 许昌企业网站建设公司/营销模式
  • 双鸭山网站建设企业/百度首页排名代发
  • 教做凉拌菜的视频网站/怎么做一个网站页面
  • wordpress搜索小工具/广州seo优化公司
  • wordpress+私信/上海网站营销seo方案
  • 四川住房建设厅网站增项查询/手机网页制作
  • 邢台网站建设服务商/今天的新闻最新消息
  • 微信网站开发源代码/百度官网下载安装免费
  • 晋江做鞋子批发的网站/东莞互联网推广
  • 谷歌推广网站/网络营销专业学什么课程
  • 电商网购系统/优化大师软件大全
  • 成立一个做网站的工作室/企业网站建设的一般要素
  • 网站开发与管理所对应的职位及岗位/郑州seo技术外包
  • 兼职网站建设收费/湛江seo网站管理
  • 合肥seo网站优化/快手流量推广免费网站
  • 网站建设冒用身份信息/合肥网络推广公司
  • 中方元建设工程 网站/网站如何优化流程
  • wordpress建站教程凌风/营销策划与运营方案
  • 做h5页面有哪些好网站/济南疫情最新消息
  • 郑州网站制作公司/净水器十大品牌
  • 网站删除模块/网络营销核心要素
  • 网站过期查询/网站推广公司推荐
  • 网站建设违约/百度广告平台电话
  • 宁波网站建设设计价格/网上怎么做推广
  • 网站建设包含哪些费用/首页关键词优化公司
  • 网站访客qq号码获取/网站seo设计
  • 正品手表官网/惠州百度seo地址
  • wordpress 设置显示中文/seo建站技术
  • OpenVLA复现
  • Java试题-选择题(6)
  • 深入解析Java Stream Sink接口
  • C# 中抽象类、密封类、静态类和接口的区别
  • 【Android】RecyclerView实现新闻列表布局(1)适配器使用相关问题
  • 数论:卢卡斯定理