天嵌 ARM开发社区

 找回密码
 注册
查看: 1740|回复: 2

为什么1<<8得不到正确值?

[复制链接]
suolong123 发表于 2012-10-12 12:12:56 | 显示全部楼层 |阅读模式
unsigned int LEDS[] = {(1<<5),(1<<6),(1<<7),(1<<8)};
void Leds_On(int id)
{
        rGPBDAT &= ~LEDS[id-1];
}
如果ID是1-3(也就是数组的0-2)都没有问题,能正常亮,但是一到4就不亮了,即便是吧我把数组里的最后一个写成是0x100都不行,但是如果直接rGPBDAT &= ~(1<<8);就木有问题

哪位好心人给解决一下呗?
亚瑟王 发表于 2012-10-12 16:38:36 | 显示全部楼层
你把LEDS数组的值全部打印出来看看呢。
回复

使用道具 举报

 楼主| suolong123 发表于 2012-10-12 17:50:18 | 显示全部楼层
所有的值都没有问题,唯独数组中使用1<<8的时候就不行了
具体打印不会呀,我再开发板上测试的
回复

使用道具 举报

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

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2025-5-2 03:14 , Processed in 2.030779 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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