找回密码
 注册
关于网站域名变更的通知
查看: 335|回复: 1
打印 上一主题 下一主题

基于S3C2440的Linux驱动 -- SPI子系统解读(四)(上)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-8-28 14:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
   本系列文章对Linux设备模型中的SPI子系统进行讲解。SPI子系统的讲解将分为4个部分。
* |; a' Y. q6 ^# ]
. w6 e  l2 ^# A9 I: o   第一部分,将对SPI子系统整体进行描述,同时给出SPI的相关数据结构,最后描述SPI总线的注册。
基于S3C2440的Linux驱动 -- SPI子系统解读(一)
& g! d4 M9 \1 L" o( C5 o) f) y; b7 z2 z
   第二部分,该文将对SPI的主控制器(master)驱动进行描述。
基于S3C2440的Linux驱动 -- SPI子系统解读(二)(上)基于S3C2440的Linux驱动 -- SPI子系统解读(二)(下)
9 H+ h1 Q/ `% A   第三部分,该文将对SPI设备驱动,也称protocol 驱动,进行讲解。
基于S3C2440的Linux驱动 -- SPI子系统解读(三)
( N; w$ Q8 d# U
: g* x, N/ A; `( A! J2 U0 T) c% {# ?   第四部分,即本篇文章,通过SPI设备驱动留给用户层的API,我们将从上到下描述数据是如何通过SPI的protocol 驱动,由bitbang 中转,最后由master驱动将数据传输出去。7 N2 }8 f; u8 e
& J/ ?6 a! s- M% B- q! t. f
本文属于第四部分(上)。
7 ]: c$ h: u) D9 t0 g0 [5 S% z. p: i7 u# v% _; C9 ?
7. write,read和ioctl综述0 N% p5 I* W# J" ]7 |$ P/ n

: p5 Z5 Z. m- l. ?      在spi设备驱动层提供了两种数据传输方式。一种是半双工方式,write方法提供了半双工读访问,read方法提供了半双工写访问。另一种就是全双工方式,ioctl调用将同时完成数据的传送与发送。+ Y& K! k( Y" {3 _  `1 p! |

4 Y" J  `; Z* G0 c0 t     在后面的描述中,我们将对write和ioctl方法做出详细的描述,而read方法和write极其相似,将不多做介绍。1 w& }- ~9 Y' m3 p4 U( d

  K1 l( L' V4 A. k2 o# ]! L& P     接下来首先看看write方法是如何实现的。, H( A/ l7 a" |
# @" \( b3 d/ r! r' h
8. write方法
& F0 a; v4 p5 j' M! z/ {* }+ e) N# P8 U7 ~
8.1 spidev_write
4 ]* I+ G; H) U2 f; L

/ _. ~: [8 d3 k
游客,如果您要查看本帖隐藏内容请回复
5 R- r. _" m" w0 ^
7 `; ^: v6 ~4 C
( G9 }* J: U1 s4 c

该用户从未签到

2#
发表于 2019-8-28 18:02 | 只看该作者
好东东,谢谢楼主分享。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 22:13 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表