发新帖我要提问
12
返回列表
打印
[C语言]

奇怪的#define

[复制链接]
楼主: fnh02
手机看帖
扫描二维码
随时随地手机跟帖
21
fnh02|  楼主 | 2013-12-31 10:10 | 只看该作者 回帖奖励 |倒序浏览
gx_huang 发表于 2013-12-31 08:31
C语言里本来就可以强制转换的,(freq/1000*4.2)改为:
((unsigned int)(freq/1000*4.2))
另外,(freq/1000* ...

#define 里面也适用吗?

使用特权

评论回复
22
fnh02|  楼主 | 2013-12-31 10:34 | 只看该作者
gx_huang 发表于 2013-12-31 08:31
C语言里本来就可以强制转换的,(freq/1000*4.2)改为:
((unsigned int)(freq/1000*4.2))
另外,(freq/1000* ...

谢谢您的解答!

使用特权

评论回复
23
Wayner| | 2013-12-31 13:53 | 只看该作者
freq 值是long类型了啊

使用特权

评论回复
24
fafactx| | 2013-12-31 15:08 | 只看该作者
这个自己应该能看到的4.2.。。。。

使用特权

评论回复
25
lanfenglv| | 2013-12-31 16:05 | 只看该作者
把TH0=  PWM_limt >> 8;修改成下列语句即可:
TH0 = ((Uint16)PWM_limt >> 8);
Uint16:16位无符号数,或用Uint32;

使用特权

评论回复
26
dragonhux| | 2013-12-31 16:18 | 只看该作者
TH0=  ((U32)PWM_limt) >> 8
浮点数不能右移
另外,你是想 / 256呢,还是想对浮点数运行移位呢?这两种不一样

使用特权

评论回复
27
longfenghugui| | 2013-12-31 17:26 | 只看该作者
路过

使用特权

评论回复
28
longfenghugui| | 2013-12-31 17:29 | 只看该作者
fnh02 发表于 2013-12-30 23:26
temp=(TH1

弱弱的问一句,哪里不一样啊
你的是什么单片机
TH1是几位的寄存器,左移8位还有没啊

使用特权

评论回复
29
fnh02|  楼主 | 2013-12-31 17:35 | 只看该作者
longfenghugui 发表于 2013-12-31 17:29
弱弱的问一句,哪里不一样啊
你的是什么单片机
TH1是几位的寄存器,左移8位还有没啊 ...

第一个问题已经解决,谢谢...第二个还在研究中...

使用特权

评论回复
30
fnh02|  楼主 | 2014-1-2 10:18 | 只看该作者
第二个问题大家都无解吗?

使用特权

评论回复
31
fnh02|  楼主 | 2014-1-3 10:38 | 只看该作者
不能结贴..."分数未分配完,或分数分配存在错误!
"

使用特权

评论回复
32
fnh02|  楼主 | 2014-1-3 10:39 | 只看该作者
我都分配了分数了,还是提示一样,不知道怎么弄

使用特权

评论回复
33
fnh02|  楼主 | 2014-1-10 11:54 | 只看该作者
操作失败关闭分数未分配完,或分数分配存在错误
没有办法结贴,版主帮一下忙结贴一下吧~

使用特权

评论回复
34
光晔秋秋| | 2014-4-28 07:10 | 只看该作者
学习了

使用特权

评论回复
35
fnh02|  楼主 | 2014-7-17 13:46 | 只看该作者
没有办法结贴给分...

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则