智能车制作

标题: 读程序的疑问。 [打印本页]

作者: 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