[STM32] 单片机IO口模拟SPI,读取不到发回来的数,确认管脚上有高...

[复制链接]
3008|24
ayb_ice 发表于 2015-8-21 10:01 | 显示全部楼层
zhaoyu2005 发表于 2015-8-21 08:36
STM32库函数
uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
{

看这段代码是转换了的,返回确实是0或1,
那就可能是其它地方的问题
 楼主| any012 发表于 2015-8-21 17:22 | 显示全部楼层
zhaoyu2005 发表于 2015-8-21 08:36
STM32库函数
uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
{

谢谢回复。
找到了bit_set的定义,是在个枚举里。
  1. typedef enum
  2. { Bit_RESET = 0,
  3. Bit_SET
  4. }BitAction;


可是变量定义不是要先声明类型吗?BIT_RESET和BIT_SET都没有变量类型定义,并且BIT_SET也没有确定值,万一是0呢?
ayb_ice 发表于 2015-8-21 18:46 来自手机 | 显示全部楼层
any012 发表于 2015-8-21 17:22
谢谢回复。
找到了bit_set的定义,是在个枚举里。


你这C语言基础还要加强啊
 楼主| any012 发表于 2015-8-22 09:10 | 显示全部楼层
ayb_ice 发表于 2015-8-21 18:46
你这C语言基础还要加强啊

查了下枚举,枚举里第一个值默认是0,往后依次加1。
 楼主| any012 发表于 2015-8-22 14:29 | 显示全部楼层

怀疑是经过光耦后有延时,但用示波器测量单片机的相关引脚,得到上图。
黄色是SCLK,蓝色是MISO,在比较宽的16个SCLK脉冲阶段,有高电平持续时间,按理说应该能检测到。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

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

本版积分规则

快速回复 在线客服 返回列表 返回顶部