硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1916|回复: 3
收起左侧

关于例程SPI驱动函数读和写的问题

[复制链接]

9

主题

12

回帖

39

积分

新手上路

积分
39
发表于 2020-11-13 16:04:34 | 显示全部楼层 |阅读模式

uint8_t bsp_spiRead1(void)和uint8_t bsp_spiRead0(void),这两个函数有什么区别啊?
还有这两个函数void bsp_spiWrite1(uint8_t _ucByte)和void bsp_spiWrite0(uint8_t _ucByte),有什么区别?


回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115667
QQ
发表于 2020-11-13 16:12:39 | 显示全部楼层
QQ截图20201113161237.png
回复

使用道具 举报

9

主题

12

回帖

39

积分

新手上路

积分
39
 楼主| 发表于 2020-11-13 16:58:26 | 显示全部楼层

这个图我能看懂,但是我依旧不明白,函数命名里面的read1和read0是什么意思?
我对比了两个函数的代码,硬件SPI部分的代码是相同的,软件SPI部分的代码不同,您能够详细说说吗?
  1. #ifdef SOFT_SPI                /* 软件SPI */
  2.         uint8_t i;
  3.         uint8_t read = 0;

  4.         for (i = 0; i < 8; i++)
  5.         {
  6.                 SCK_0();
  7.                 bsp_spiDelay();
  8.                 read = read<<1;
  9.                 if (MISO_IS_HIGH())
  10.                 {
  11.                         read++;
  12.                 }
  13.                 SCK_1();
  14.                 bsp_spiDelay();
  15.                
  16.         }
  17.         return read;
  18. #endif

  19. #ifdef SOFT_SPI                /* 软件SPI */
  20.         uint8_t i;
  21.         uint8_t read = 0;

  22.         for (i = 0; i < 8; i++)
  23.         {
  24.                 read = read<<1;

  25.                 if (MISO_IS_HIGH())
  26.                 {
  27.                         read++;
  28.                 }
  29.                 SCK_1();
  30.                 bsp_spiDelay();
  31.                 SCK_0();
  32.                 bsp_spiDelay();
  33.         }
  34.         return read;
  35. #endif
复制代码

还有硬件SPI部分的发送一个字节,SPI_I2S_SendData(SPI1, 0);这个0是什么意思?
回复

使用道具 举报

9

主题

12

回帖

39

积分

新手上路

积分
39
 楼主| 发表于 2020-11-13 18:57:06 | 显示全部楼层
我明白了,谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-10 19:12 , Processed in 0.796258 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表