|
|
| | -文章搜索 - 最新文章 - | |
第2715篇:一个高效的模拟SPI的读写函数 |
| 发布时间:2006年8月2日 点击次数:2367 |
| 来源: 作者: |
unsigned char RW_SPI(unsigned char val){ unsigned char BitCounter; for (BitCounter=8;BitCounter!=0;BitCounter--){ CLK=0; //write DI=0; if(val&0x80) DI=1; val<<=1; CLK=1; } 此函数把SPI的读写功能集成在一块,传递的val既是向SPI写的数据,也是从SPI读取的数据,只需要在执行读或写之前把MCU的I/O脚设置成相应的输出或输入即可。(因为在大部分应用中,是把SPI的DI和DO相连并用MCU的一个IO口来读写)。 调用示例: #define NULL 0 SETIO=OUTPUT; //向SPI写0xab数据。
Byte=RW_SPI(NULL); //这里传递的NULL是没有任何意义的,可以是任何数据,只是为了保证函数 //的格式. //读取SPI数据。 此函数对于许多低档片子来模拟SPI非常有用,代码量小,功能齐全。稍微修改,可以模拟SPI的其它模式。 |
|
|
|
|
[单片机] 相关文章: 转:CRC算法原理及C语言实现简介: CRC算法原理及C语言实现 有一篇好文章,不敢独享! CRC算法原理及C语言实现(介绍了3种方法) CRC算法原理及C语言实现 -来自(我爱单片机) 摘 要 本文从理论上推导出CRC算法实现原理,给出三种分别适应不同计算机或微控制器硬件环境的C...... 初浅研究PIC之延时函数和循环体优化 在PICC中使用常数指针 [转载]8位单片机的16位外部总线扩展与应用 [转载]基于 TLC2543设计的采集系统 |
|
|
|