找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 9095|回复: 4
收起左侧

单片机 sum=TH0*256+TL0 这个是什么意思?

[复制链接]
ID:494908 发表于 2019-3-31 18:26 | 显示全部楼层 |阅读模式
如题
回复

使用道具 举报

ID:164602 发表于 2019-4-1 08:32 | 显示全部楼层
这个意思,就是把两个8位的数据,合成一个16位数据。
一个8位数据,如11111111,就是255,那么一个16位数据,就是高8位和低8位,低8位加一,就到高8位,所以要乘256。
例如:00001111  11111111,这个16位数据,低8位就是255,高8位就是15,整个数据的值十进制就是
15*256+255=4095
你可以用PC机 Win系统中的计算器自己算算啦
回复

使用道具 举报

ID:502399 发表于 2019-4-1 16:26 | 显示全部楼层
2楼说的太复杂了, sum=TH0*256+TL0,就是把TH0左移8位再或上TL0,合并成16bit的数,该数高8位是TH0,低8位是TL0。专业且高效的写法应该是这样的:sum=(TH0<<8) | TL0;
回复

使用道具 举报

ID:229821 发表于 2019-4-1 19:59 | 显示全部楼层
学习楼上2位的解答。学习了。
回复

使用道具 举报

ID:160500 发表于 2019-4-1 20:53 | 显示全部楼层
计算T0定时器的值赋值给sum变量,因为T0是分为高8位和低8位,所以要用后面的表达式
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表