智能车制作
标题:
PWME|=0x08如何理解?谢谢
[打印本页]
作者:
jiao19880804
时间:
2010-4-13 22:30
标题:
PWME|=0x08如何理解?谢谢
PWME|=0x08 等同于PWME=PWME|0x08,这里为什么要用到异或?直接赋值不是更好么???谢谢请高手回答~
作者:
lim1t
时间:
2010-4-13 22:30
初始化无所谓执行速度快不快啦,反正也就执行一次的嘛。
还是我说的这个原因啦,主要是对位操作的。
你给的这个代码写得不好,MCCTL有对应位的名称的嘛,用哪个就直接赋值就行了。
没必要像这样,搞得新手都读不懂。
作者:
DEMOK
时间:
2010-4-13 22:51
计算机逻辑运算速度要高于赋值运算速度
作者:
lim1t
时间:
2010-4-13 23:05
要是你的PWME之前赋了值的话,假设PWME=0xf0;
你直接PWME=0x08不就改写了高8位的值了么。。。结果PWME的值为0x08
如果PWME|=0x8,结果PWME的值为0xf8,懂了不。
作者:
jiao19880804
时间:
2010-4-14 09:32
1楼你好:你说的有道理
2楼你好:这个道理我知道。不知道模数递减产生中断你看了没有?
void MDCInit(void)
{
MCCTL = MCCTL&0Xfb; //模数计数器禁止运行
MCCTL = 0Xe3; //允许中断,模数计数方式
//返回时重新加载所用的常数,分频常数为16
MCCTL = MCCTL|0X04; //模数计数器使能
MCCNT = 1500; //(1/40M)*16*2500= 1ms
MCCTL = MCCTL|0X08 ; //把模数常数寄存器的值加载到模数计数器FLMC;
}
这是初始化,但是也用到了。
不理解。。。
2位能解释下这个程序么?十分感谢
作者:
jiao19880804
时间:
2010-4-14 19:49
谢谢你们!
我知道是怎么回事了。
但是楼上的你说这个代码写的不好是不对的。这个代码写的很漂亮,新手是看不懂的O(∩_∩)O~
作者:
crj19880917
时间:
2010-5-3 02:03
那就直接写
PWME=0;
就可以了么
作者:
向往智能
时间:
2010-5-5 00:04
luguo
欢迎光临 智能车制作 (http://111.231.132.190/)
Powered by Discuz! X3.2