Chinaunix首页 | 论坛 | 博客
  • 博客访问: 150859
  • 博文数量: 28
  • 博客积分: 1476
  • 博客等级: 上尉
  • 技术积分: 356
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-11 11:39
文章分类
文章存档

2011年(1)

2010年(18)

2009年(9)

我的朋友

分类: 嵌入式

2010-06-08 18:17:07

     在使用S3C6410 SPI进行通信时,首先要设置SPI的控制寄存器,但是经过查看大量代码后,发现在设置SPI的一系列的寄存器时要先设置S3C6410中PCLK_GATE和SCLK_GATE寄存器与SPI相关的位,在大量的调试之后终于发现了规律:

假如使用的是SPI0进行通信:
    设置PCLK_GATE的21位:当该位为0时,不能往SPI相关的寄存器写值;为1时,可往SPI相关的寄存器写值。
    设置SCLK_GATE的20位:当该位为0时(若设置了PCLK_GATE的21位为1),不能从SPI的移位寄存器读取值;为1时(
若设置了PCLK_GATE的21位为1),可以从SPI的移位寄存器读出值。
    所以当要使用S3C6410 SPI的一系列的控制寄存器时,要先设置这两个寄存器。SPI1同理,在PCLK_GATE与SCLK_GATE中分别为21和22位

阅读(3259) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-04-22 19:34:03

你好,能不能把你的6410下SPI的裸机代码发给我一份呢,谢谢了! bobommsky@163.com