打印

c5081f120的uart1波特率设置问题,就解释

[复制链接]
1366|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ywzqdpj|  楼主 | 2015-1-20 10:50 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
沙发
NE5532| | 2015-1-20 10:54 | 只看该作者
楼主需要参照这个单片机的手册,逐个查程序里寄存器的作用,这样提问,人家也不知道这个寄存器是干啥用的。

使用特权

评论回复
板凳
ywzqdpj|  楼主 | 2015-1-20 10:57 | 只看该作者
NE5532 发表于 2015-1-20 10:54
楼主需要参照这个单片机的手册,逐个查程序里寄存器的作用,这样提问,人家也不知道这个寄存器是干啥用的。 ...

哦,多谢了,可不可以大概说下是什么作用呢?

使用特权

评论回复
地板
NE5532| | 2015-1-20 12:06 | 只看该作者
设置串口的工作模式和波特率咯。

使用特权

评论回复
5
ywzqdpj|  楼主 | 2015-1-20 17:18 | 只看该作者
NE5532 发表于 2015-1-20 12:06
设置串口的工作模式和波特率咯。

是滴,但是我不明白那个if和elseif中的条件是什么意思?

使用特权

评论回复
6
menfiss| | 2015-1-20 18:26 | 只看该作者
几个if算式是常量表达式构成的比较式,计算结果是布尔型。所谓常量表达式,是由若干在编译时已经有确定值的量构成的表达式,常量表达式在编译后等同于常量。
SYSCLK等可以叫做“符号常量”,使用符号常量提高程序的可读性,
那几组if,elseif语句中的内嵌在确定条件下,只有一组会执行,其实就是不同波特率要进行不同设置。那些公式在数据手册中肯定能找到,至少是能推导出来。
建议研究一下SYSCLK的定义。

使用特权

评论回复
7
NE5532| | 2015-1-20 22:28 | 只看该作者
可以判断这个初始化程序是一个通用的初始化程序,这些if应该是配合不同状态下的需要进行波特率设置的。

使用特权

评论回复
8
pcbkey| | 2015-1-31 11:01 | 只看该作者
新手,只能支持一下

使用特权

评论回复
9
ywzqdpj|  楼主 | 2015-4-3 08:38 | 只看该作者
NE5532 发表于 2015-1-20 22:28
可以判断这个初始化程序是一个通用的初始化程序,这些if应该是配合不同状态下的需要进行波特率设置的。 ...

是滴

使用特权

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

本版积分规则

30

主题

140

帖子

2

粉丝