OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4738|回复: 10

SPI的 SDO SDI SCLK

[复制链接]

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2017-5-20
在线时间
24 小时
发表于 2017-7-24 10:53:03 | 显示全部楼层 |阅读模式
我看例程里也没有对他们进行定义
例如    #define SDO_Get PAin(6)
那程序是怎么区分和使用它们的?

QQ图片20170724100507.png
QQ图片20170724100524.png
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2017-5-20
在线时间
24 小时
 楼主| 发表于 2017-7-24 12:28:00 | 显示全部楼层
回复 支持 反对

使用道具 举报

338

主题

385

帖子

0

精华

QQ游客

积分
1254
金钱
1254
注册时间
2016-12-9
在线时间
56 小时
发表于 2017-7-24 14:04:35 | 显示全部楼层
在sys.h里面
回复 支持 反对

使用道具 举报

35

主题

154

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
362
金钱
362
注册时间
2014-7-30
在线时间
49 小时
发表于 2017-7-24 14:09:57 | 显示全部楼层

楼上正解
我就是我,是颜色不一样的烟火。
回复 支持 反对

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2017-5-20
在线时间
24 小时
 楼主| 发表于 2017-7-24 14:39:04 | 显示全部楼层

你好,我在sys.h里面没有搜索到SDO SDI的宏定义 。方便截图或者复制代码给我看一下吗?
回复 支持 反对

使用道具 举报

338

主题

385

帖子

0

精华

QQ游客

积分
1254
金钱
1254
注册时间
2016-12-9
在线时间
56 小时
发表于 2017-7-25 08:21:07 | 显示全部楼层
一休 发表于 2017-7-24 14:39
你好,我在sys.h里面没有搜索到SDO SDI的宏定义 。方便截图或者复制代码给我看一下吗?

我是说PAin(6) ...你直接编译一下如果没有错误  然后右击跟踪就可以了啊
回复 支持 反对

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2017-5-20
在线时间
24 小时
 楼主| 发表于 2017-7-25 09:42:03 | 显示全部楼层
cxelove 发表于 2017-7-25 08:21
我是说PAin(6) ...你直接编译一下如果没有错误  然后右击跟踪就可以了啊

我是没有找到SDO SDI SCLK的定义  没地方跟踪啊
回复 支持 反对

使用道具 举报

338

主题

385

帖子

0

精华

QQ游客

积分
1254
金钱
1254
注册时间
2016-12-9
在线时间
56 小时
发表于 2017-7-25 14:38:53 | 显示全部楼层
一休 发表于 2017-7-25 09:42
我是没有找到SDO SDI SCLK的定义  没地方跟踪啊

不知道你想表达什么 比如stm32规定PA6就是SPI 的SDO功能引脚,但是他没说SDO这三个字可以直接使用啊,还有SDO SDI SCLK这些你在哪看到的呢
回复 支持 反对

使用道具 举报

4

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2017-5-20
在线时间
24 小时
 楼主| 发表于 2017-7-26 15:14:27 | 显示全部楼层
cxelove 发表于 2017-7-25 14:38
不知道你想表达什么 比如stm32规定PA6就是SPI 的SDO功能引脚,但是他没说SDO这三个字可以直接使用啊,还 ...

因为在网上找到一个传感器的例程里面他这样写

uint8_t SPI_Read(void)
{
        uint8_t i,data=0;
        //SDO_Set;SCLK_Set;
       
        for(i=0;i<8;i++)
        {
                SCLK_CLR;                //&#207;&#194;&#189;μ&#209;&#216;&#182;á3&#246;
                data <<= 1;
                if(SDO_Get)
                        data |= 1;
                SCLK_Set;
        }
       
        //SCLK_CLR;SCLK_Set;
       
        return data;
}


但是我看原子的例程里不用这样写,直接用u8 SPI2_ReadWriteByte()这个函数就完成了读写。所以我很疑惑,SPI是不是不用定义那些端口
回复 支持 反对

使用道具 举报

338

主题

385

帖子

0

精华

QQ游客

积分
1254
金钱
1254
注册时间
2016-12-9
在线时间
56 小时
发表于 2017-9-8 12:56:38 | 显示全部楼层
一休 发表于 2017-7-26 15:14
因为在网上找到一个传感器的例程里面他这样写

uint8_t SPI_Read(void)

网上的那个是模拟的spi不是硬件spi
回复 支持 反对

使用道具 举报

6

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
115
金钱
115
注册时间
2017-7-12
在线时间
26 小时
发表于 2017-9-8 14:52:11 | 显示全部楼层
同楼上,你贴的网上那个使用的IO口模拟的SPI总线,而原子的这个例程是使用单片机的硬件SPI,那些时序及位操作由硬件完成,不需要你编辑Io口的状态。。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 05:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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