新闻中心

EEPW首页>嵌入式系统>设计应用> 单片机中断装初值时为什么要对256求模和求余

单片机中断装初值时为什么要对256求模和求余

作者: 时间:2016-11-28 来源:网络 收藏
定时器工作在16位计数模式的时候有两个个参数TH跟TL
这2个参数都是8位(0-255)的,不能直接接受16位(0-65535)数据
为了使高8位赋值到TH里面就要采用除以256的方法,等效于>>8(2的8次方=256),就相当于把高字8位移动到低8位的位置了
求余数是为了把低8位赋值到TL里面,当不能被256整除留下的余数范围只有0-255以内。所以可以直接赋值给TL了。

所以
TH0=(65536-50000)/256;
TL0=(65536-50000)%6;
等效于
TH0=(65536-50000)>>8;
TL0=(65536-50000)&0x00ff;
在运算时单片机在逻辑运算方面效率高于算术运算。


评论


技术专区

关闭