免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1994 | 回复: 7
打印 上一主题 下一主题

spi驱动问题求教,谢谢各位! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-01-14 11:43 |只看该作者 |倒序浏览
最近开始做linux 下spi 驱动,不过本人才疏学浅,找了好几天资料,看了两天源码,还是很茫然:每个spi从设备的片选是怎么跟spi驱动联系起来的,在内核和一些例子里面也没有看到阿。按我的理解,片选不是使用的gpio嘛每个slave的片选又都是在硬件上自己人为规定的,所以这个必须要通过一些方法通知系统每个slave使用的片选吧,这个是怎么做到的呢?

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
2 [报告]
发表于 2011-01-14 11:49 |只看该作者
了解一下各个 slave 和 master 是怎么连接在一起的。master 应该有编址的吧

论坛徽章:
0
3 [报告]
发表于 2011-01-14 12:27 |只看该作者
了解一下各个 slave 和 master 是怎么连接在一起的。master 应该有编址的吧
Godbach 发表于 2011-01-14 11:49



    其实就是一个slave,一个master,mosi miso sclk 是对应着连的,master的spisel上拉设置为无效,slave的spisel接一个gpio,仅此而已。硬件平台是mpc8315e。
master编址是怎么回事? 看有的资料说是要改spi_platform_info 结构体,具体是怎么做的呢?
谢谢!

论坛徽章:
0
4 [报告]
发表于 2011-01-14 13:20 |只看该作者
建议你直接操纵master上spi相关的寄存器, 不要利用kernel内的东西.

论坛徽章:
0
5 [报告]
发表于 2011-01-14 13:31 |只看该作者
不是说kernel的东西有问题, 而是出于减小复杂性的考虑(就像不利用kernel的I2C架构, 而去自己处理一切, 关键是这样做也未必复杂.)
按照spec的说明, 该拉高的拉高, 该置低的置低. 片选用GPIO即可, 保证在收发数据前使slave有效即可.
应熟悉spi的规范, 四种模式, 靠写来驱动读等.

论坛徽章:
0
6 [报告]
发表于 2011-01-14 16:09 |只看该作者
不是说kernel的东西有问题, 而是出于减小复杂性的考虑(就像不利用kernel的I2C架构, 而去自己处理一切, 关键 ...
gilof 发表于 2011-01-14 13:31



    但还是感觉kernel的东西稳定性好一些啊。

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
7 [报告]
发表于 2011-01-14 18:37 |只看该作者
前几天我也在看spi的代码,kernel的太复杂了..

论坛徽章:
0
8 [报告]
发表于 2011-02-16 11:06 |只看该作者
在年前把这个弄好了,还需要在内核中修改下spi_board_info等内容,大概是设置spi片选,设备名称等,网上还是能搜到一些资料的,由于我这上网不方便,公司不给上外网,所以一些具体细节就不能发上来啦,抱歉……。所以不光是driver的编写。
如果有人需要的话给我发消息吧,我再抽时间写下来。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP