arduino 使用 SPI

原创
2015/07/08 16:50
阅读数 1W

连线篇

  板子 arduino mega2560,非此型号的板子可查看官网说明 传送门

  mosi  对应 51脚

  miso  对应 50脚

  sck    对应52脚

  csn、ss 对应53脚,使能信号脚

代码篇

  在arduino sketch中加入头文件 SPI.h 内置libiary就有,无需另外下载

  #include <SPI.h>

  SPI使用前arduino惯例代码  setup中先执行

  SPI.begin();

  因为SPI是双向传输数据,所以只有一个传输数据的接口

  receive=SPI.transfer(data);    这里送入data,送出receive

 

 在与SPI设备通信时需要利用上面的函数加上包装即可。

 一般常用的SPI读写寄存器操作,需要在setup中先配置好io口状态

 pinMode(csn,OUTPUT);

 pinMode(miso,INPUT);

unsigned char wr_reg_by_addr(unsigned char addr,unsigned char data)
{
    digitalWrite(csn,LOW);
    while(digitalRead(miso));  //等待信号线可用
    SPI.transfer(addr);
    unsigned char value=SPI.transfer(data);
    digitalWrite(csn,HIGH);
    
    return value;
}
 
展开阅读全文
加载中

作者的其它热门文章

打赏
1
2 收藏
分享
打赏
0 评论
2 收藏
1
分享
返回顶部
顶部