定时器赋初值的问题

[复制链接]
6508|21
 楼主| gdqinci 发表于 2010-5-14 22:37 | 显示全部楼层 |阅读模式
TH0=(65536-50000)/256;            //定时器T0的高八位赋值
TL0=(65536-50000)%256;           //定时器T0的低八位赋值

//====================================

TH0=-(50000/256);            //定时器T0的高八位赋值
TL0=-(50000%256);           //定时器T0的低八位赋值

//===上面这两种写法一样吗???
efen 发表于 2010-5-14 22:56 | 显示全部楼层
TH0=(65536-50000)/256;            //定时器T0的高八位赋值
TL0=(65536-50000)%256;           //定时器T0的低八位赋值

TH0=-15536/256;            //定时器T0的高八位赋值
TL0=-15536%256;           //定时器T0的低八位赋值
lxyppc 发表于 2010-5-14 22:58 | 显示全部楼层
由于都是常数计算,你看他们生成的hex文件是否一样就知道这两种写法是不是一样的了
lxyppc 发表于 2010-5-14 23:00 | 显示全部楼层
或者是
#if ((65536-50000)/256) == (-15536/256)
#warning same value
#endif

如果有警告则这两种写法是一样的
ayb_ice 发表于 2010-5-15 09:00 | 显示全部楼层
建议用第一种
第二种应该
-5000/256
zhzy724 发表于 2010-5-15 15:15 | 显示全部楼层
用第一种比较直观
第二种应该是-5000/256
维维豆奶 发表于 2010-5-15 17:08 | 显示全部楼层
还是用第一种吧!
smile_luo 发表于 2010-5-16 10:40 | 显示全部楼层
你只要把程序烧写进去对比下就可以了啦
NE5532 发表于 2010-5-16 12:11 | 显示全部楼层
不放心最好写明的代码,否则容易跟自己过不去。
一棵小草 发表于 2010-5-16 12:20 | 显示全部楼层
没试过,不敢说。

我只知道,-1  =  FFH         ,    -2  =   没试过,    -  其他的,没试过,觉得没意义。

初学者没必要在这样的地方钻牛角,没意义。
smile_luo 发表于 2010-5-16 20:16 | 显示全部楼层
mqp108 发表于 2010-5-16 20:54 | 显示全部楼层
laslison 发表于 2010-5-16 21:25 | 显示全部楼层
加计数用第二种较好
yidou 发表于 2010-5-16 22:24 | 显示全部楼层
两种都可以
 楼主| gdqinci 发表于 2010-5-19 17:09 | 显示全部楼层
好的谢谢楼上众兄弟
luolanying127 发表于 2010-5-19 18:39 | 显示全部楼层
10# 一棵小草

呵呵  这话说得精哈……

也不是什么难的问题,试试就知道了,才学的时候可以到处试试,实在不行再请教。因为自己整出来的**深刻,在这儿问出来的是解决这次的问题了,下次碰到说不定还是纠结。不花多少时间的事,很有好处的……
 楼主| gdqinci 发表于 2010-5-20 08:49 | 显示全部楼层
好的谢谢
kqtt222 发表于 2010-5-20 08:51 | 显示全部楼层
学习啦
brief110 发表于 2010-5-21 13:57 | 显示全部楼层
知道结果了也告诉我
loveguigui0929 发表于 2010-5-21 16:49 | 显示全部楼层
第二种好像不对也   最好就用第一种赋值吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

36

主题

341

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部