智能车制作
标题: 读程序的疑问。 [打印本页]
作者: shuizaiku7 时间: 2012-12-23 21:04
标题: 读程序的疑问。
下了一个别人的代码来读一读,发现以下不懂的地方,请大家为我解惑。
我怎么感觉有些数值不对啊。
比如:
SYNR = 0X40|0X05;
REFDV =0X80|0X01;
0X40不是0100 0000吗? 0X05不是0000 0101吗?
然后两个按位或不是0100 0101吗也就是0X45.
这里为什么不直接给出0X45,还有SYNR前两位表明范围后面表示数值,应该是5啊,
最后计算的时候他怎么说synr=2呢?
PWMPRCLK=0x01; //00010011时钟源
0X01不是1吗,注释怎么说是00010011啊?
作者: 似水流年、 时间: 2012-12-23 21:10
这应该是对应着寄存器中的数据吧,对应着不同的功能
作者: OPQ_XYQ 时间: 2012-12-23 21:41
datasheet,查一下,
作者: 青龙00 时间: 2012-12-23 22:08
那个按位或运算只是一些人编程的习惯!设置寄存器的时候先实现一个功能,再实现另一个功能!这样用起来就很方便
作者: shuizaiku7 时间: 2012-12-23 22:24
青龙00 发表于 2012-12-23 22:08
那个按位或运算只是一些人编程的习惯!设置寄存器的时候先实现一个功能,再实现另一个功能!这样用起来就很 ...
那数字不对应的问题呢?难道不是十六进制吗。
作者: gaonin9 时间: 2012-12-23 22:43
加一个或方便修改。
作者: 机遇 时间: 2012-12-24 00:03
我觉得是看起来方便比如synr 6-7位是vcofrq 后0-6位是syndiv 这样写就知道对谁操作了
作者: 青龙00 时间: 2012-12-24 00:16
shuizaiku7 发表于 2012-12-23 22:24
那数字不对应的问题呢?难道不是十六进制吗。
估计是注释过,然后又有人改过!
作者: li853141431 时间: 2012-12-24 07:46
作者: ~~.枭·}雄~~ 时间: 2012-12-25 19:16
欢迎光临 智能车制作 (http://111.231.132.190/) |
Powered by Discuz! X3.2 |