单片机
返回首页

关于IO口模拟SPI

2016-11-22 来源:eefocus

       IO口模拟SPI的问题,其实光模拟来说,就时序问题,读取和写入一个字节的时序。

       首先选4个IO口,作模拟用,分别模拟CS、SCLK、SI、SO.即是片选、时钟、数据输入、数据输出。

       IO口初始化,分别把对应的IO口设置输入输出。CS、SCLK、SO、设置为输出,SI设置为输入。

       然后就是时序问题了,一般如下:

//设要写的数据是abyte表示。

CS_1;              //片选高,
SCLK_1;        //时钟高
CS_0;              //片选低,开始工作。
for(i=0;i<8;i++)//循环产生时钟,写入数据。

{
SCLK_0;          //时钟低,下降沿
if(0x80&abyte)
SO_1;         
else
SO_0;
SCLK_1;
abyte<<=1;
}
SCLK_0;
CS_1;

 

//设要读的数据是abyte表示。

CS_0;

SCLK_1;

for(i=0;i<8;i++)//读取数据值。
{
SCLK_0;
;;
SCLK_1;
abyte<<=1;
if(in_SI)
abyte++;
}
SCLK_0;
CS_1;


进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

最新器件
精选电路图
  • 光控音效发生器电路

  • 优化电路板布局的简单方法

  • 一个简单的立体声平衡指示器电路

  • 分享一个电网倾角计电路

  • 使用NE555和磁簧开关的橱柜照明电路

  • 一种构建12V和230V双直流电源的简单方法

    相关电子头条文章