單片機定時器初始化不能用負號“-(1000/256)“寫法
下面這樣寫才是對的:有的書上用的負號寫法。誤導我了?。?/div> TH0=-(1000/256); TL0=-(1000%256); th0=TH0; //這里的結果是:253
tl0=TL0; //這里的結果是:24
sum=TH0*256+TL0;
//這里sum結果是 65021; 正確寫法: TMOD=0x01;
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
th0=TH0; //這里的結果是:252
tl0=TL0; //這里的結果是: 24
sum=TH0*256+TL0;
//這里sum結果是 64536;
負號是錯誤的,并不相當于65536-A;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
用負號出錯:
這個定時器0初始化就不是定時1000了。
關鍵詞:
單片機定時器初始化負


評論