打印

C8051的Silicon Laboratories IDE问题!!

[复制链接]
5040|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jt4117|  楼主 | 2008-11-28 14:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
jt4117|  楼主 | 2008-11-28 14:18 | 只看该作者

用他来定义串口波特率!!

写TH1 = 0x80就没问题。 
写TH1 = 0xff - T1Counter + 1;就不行这是怎么回事呢??
哪位知道问题所在? 请指教啊!! 

使用特权

评论回复
板凳
jt4117|  楼主 | 2008-11-28 14:26 | 只看该作者

难道是我的#define用法不对??

使用特权

评论回复
地板
isbit| | 2008-11-28 16:22 | 只看该作者

hehe,他们的历程定义我也没看明白!

使用特权

评论回复
5
5880527| | 2008-11-28 16:39 | 只看该作者

能通讯就行了,管它的例子是不是对的

我也碰到过这个问题,后来自己试出来的初始值和它给的参考值差很多

使用特权

评论回复
6
jt4117|  楼主 | 2008-11-28 17:20 | 只看该作者

是他的编译器不行啊!!

直接#define T1Counter  4159200/38400就可以
或者
#define  Band       192
#define  T1Clk      49152 
#define  Band2      (Band*2)
#define  T1Counter  (T1Clk/Band2)
把位数缩短就没问题  

使用特权

评论回复
7
isbit| | 2008-11-28 17:55 | 只看该作者

使用特权

评论回复
8
isbit| | 2008-11-28 17:57 | 只看该作者

我以前好像也碰到过,具体既不清楚了!

反正我是自己算出来的!
没用他的历程的设置方法!
本来想有空分析一下!
 时间一长我就忘记了!

使用特权

评论回复
9
jt4117|  楼主 | 2008-11-29 09:50 | 只看该作者

用keil仿真也是一样的问题!!


  

使用特权

评论回复
10
ayb_ice| | 2008-11-29 10:10 | 只看该作者

这是因为计算溢出的原因

#define  Band       19200ul
就可以了。

使用特权

评论回复
11
winloop| | 2008-11-29 11:31 | 只看该作者

他的IDE是个垃圾

还是用KEIL吧

使用特权

评论回复
12
ayb_ice| | 2008-11-29 12:37 | 只看该作者

这个和IDE没有关系

标准的C编译器都是这样的

使用特权

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

本版积分规则

234

主题

2897

帖子

1

粉丝