打印
[STM8]

笔记与问题2

[复制链接]
742|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
like`a`G6|  楼主 | 2018-8-8 21:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

Question:1、 有没有例程如何操作寄存器完成I2C发送(接收)地址、数据。

2、 有没有例程如何操作寄存器来校准时钟。

3、 据了解在稍微复杂一点的项目尽量不要使用延迟,那么请问有没有定时器cha定时查询状态判断按键按下的例程

             


笔记:

一、 char const *x 定义一个指向字符常量的指针x 。

二、 if(a)     b;c;      //b语句在if语句里,c不在。

三、 SPI通讯 : 占用3+(n)引脚(1个可不用(接地),2个以上占n个脚):

⒈   MISO:主设备输入,从设备输出

⒉   MISI:主设备输出,从设备输入

⒊   SCK:时钟(主产生)  

⒋   NSS:片选,从机被主机拉低电平后传输(从模式可用软件节省引脚,一般不用需要用时再了解)

发送模式:例如主移位寄存器是01,从是02,发送完后将互换,如果主机不需要从机数据忽略即可。

CPHA位可选4种模式,具体看56讲

主模式配置步骤:

1. 通过SPI_CR1寄存器的BR[2:0]位定义串行时钟波特率。

2. 选择CPOL和CPHA 位,定义数据传输和串行时钟间的相位关系。

3. 配置SPI_CR1寄存器的LSBFIRST位定义帧格式。

4. 硬件模式下,在数据帧的全部传输过程中应把NSS脚连接到高电平;在软件

模式下,需设置SPI_CR2寄存器的SSM和SSI位为‘1’。

5. 必须设置MSTR(SPI主模式)和SPE位(SPI使能位)(只当NSS脚被连到高电平,

这些位才能保持为‘1’)。在这个配置中,MOSI脚是数据输出,而MISO脚是

数据输入。


沙发
wahahaheihei| | 2018-8-8 23:30 | 只看该作者
总结的很好

使用特权

评论回复
板凳
wakayi| | 2018-8-9 10:52 | 只看该作者
操作寄存器来校准时钟  对第二个问题的回复 我没看明白

使用特权

评论回复
地板
wowu| | 2018-8-9 10:55 | 只看该作者
内部的计时很不准的

使用特权

评论回复
5
renzheshengui| | 2018-8-10 12:57 | 只看该作者
为甚稍微复杂的不要用延时的呢

使用特权

评论回复
6
zhuotuzi| | 2018-8-10 17:24 | 只看该作者
这个准不准都是相对的。你没有真正准的时钟参考其他都白给。

使用特权

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

本版积分规则

8

主题

12

帖子

0

粉丝