打印

给spi的数据寄存器赋值后,寄存器的值怎么还是默认值呢 ?

[复制链接]
1637|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
给spi的数据寄存器赋值后,寄存器的值怎么还是默认值呢 ?
沙发
aozima| | 2013-3-24 18:35 | 只看该作者
从SPI读数据时该怎么做呢 这样想就明白了吧。

使用特权

评论回复
板凳
cjhk| | 2013-3-24 18:38 | 只看该作者
设置的寄存器不正确  或者就是   设置后没有成功   呵呵

使用特权

评论回复
地板
拿起书本|  楼主 | 2013-3-25 09:48 | 只看该作者
是spi配置错了吗?直接printf数据寄存器

使用特权

评论回复
5
aozima| | 2013-3-26 23:02 | 只看该作者
根据楼主的ID,以及楼主经常发些思考问题的贴子,所以楼主应该是爱学习爱思考的同学。
但为什么这次不多认真思考一下呢? 看驱动程序
void SPI_I2S_SendData(SPI_TypeDef* SPIx, uint16_t Data)
{
  /* Write in the DR register the data to be sent */
  SPIx->DR = Data;
}

uint16_t SPI_I2S_ReceiveData(SPI_TypeDef* SPIx)
{
  /* Return the data in the DR register */
  return SPIx->DR;
}



使用特权

评论回复
6
王紫豪| | 2013-3-26 23:14 | 只看该作者
本帖最后由 王紫豪 于 2013-3-26 23:23 编辑

赋值后,就发出去了哦。。。

你读的寄存器,根本不是你写的那个,名字一样,读写是不同寄存器的请看官方 user manual说明。



不得不说,st提供的库函数给用户带来了极大的方便,但是也使得初学者失去了解底层的机会。。。

使用特权

评论回复
7
aozima| | 2013-3-27 00:09 | 只看该作者
不思考的话,没有库只会更难学。
懂点芯片设计知识,写驱动就容易多了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:好好学习,天天向上!

519

主题

4195

帖子

31

粉丝