看不懂装初值的公式TH0=-(n)/256 TL0=-(n)%256
最近看老板写的定时器装初值的代码:
假设要计的个数是n,
TH0=-(n)/256
TL0=-(n)%256
按理说应该是
TH0=(65535-n)/256
TL0=(65535-n)%256
这样的形式呀,
为什么老板总写成TH0=-(n)/256 TL0=-(n)%256 的形式呢?用的是STC单片机,板子功能运行正常,其它的设置都能看懂,唯独这两句看不懂,请高人解释一下。
[解决办法]
1)TH0=-(n)/256
TL0=-(n)%256
2)TH0=(65535-n)/256
TL0=(65535-n)%256
1)和2)还是不一样的。
如果2)写成
TH0=(65536-n)/256
TL0=(65536-n)%256
才是一样的,
2)其实一个是8位的补码形式,1)是一种比较直接的10进制表示方法。
[解决办法]