主题 : 求解 rUBRDIV0=( (int)(pclk/16./baud+0.5) -1 )!!!!!! 复制链接 | 浏览器收藏 | 打印
想要飞得更高就要忘掉地平线!
级别: 新手上路
UID: 42704
精华: 0
发帖: 6
金钱: 35 两
威望: 7 点
综合积分: 12 分
注册时间: 2011-04-10
最后登录: 2011-05-21
楼主  发表于: 2011-05-04 20:50

 求解 rUBRDIV0=( (int)(pclk/16./baud+0.5) -1 )!!!!!!

求解 rUBRDIV0=( (int)(pclk/16./baud+0.5) -1 );为什么这样设置????手册上的公式是UBRDIVn=(int)(UART clock/(buad rete×16))-1;望大家指点下的!怎么还出现了“16./”的,而且多了个“0.5”???????求解!!!!!!!!!!注:pclk=PCLK;
想要飞的更高就要忘掉地平线!
级别: 新手上路
UID: 46456
精华: 0
发帖: 2
金钱: 10 两
威望: 2 点
综合积分: 4 分
注册时间: 2011-05-13
最后登录: 2011-06-13
1楼  发表于: 2011-05-13 10:50
正在研究,呵呵,与LZ一起等答案
级别: 新手上路
UID: 43754
精华: 0
发帖: 9
金钱: 45 两
威望: 9 点
综合积分: 18 分
注册时间: 2011-04-19
最后登录: 2011-08-05
2楼  发表于: 2011-05-13 15:53
同求~~~~
级别: 新手上路
UID: 43754
精华: 0
发帖: 9
金钱: 45 两
威望: 9 点
综合积分: 18 分
注册时间: 2011-04-19
最后登录: 2011-08-05
3楼  发表于: 2011-05-13 16:09
UBRDIVn=( (int)((pclk1/16)/baud1+0.5) -1 );
我是遗漏了上面一句
if(pclk == 0)
    pclk    = PCLK;
。。。。。