关于逻辑键盘点亮LED实验
保证会结贴!帐号之前别人用来发过两个问题,我刚结贴了!
C/C++ code
我很是奇怪,在用键盘点亮LED灯的实验中。我直接写1<<a[i],烧到板内4个LED都亮,按KEY没用。
当我把FOR循环拆开,写成4个if else语句,并且把a[i]响应的变成0,3,5,6。这样才能正常地一次按KEY1点亮LED1,按key2点亮LED2。
不知道是我有点迷糊,还是其它原因,或许大家能帮助我一下。
C/C++ code
int main(void) { int i=0, a[4] = {0,3,5,6}; unsigned long t; Init(); while(1) { t = GPGDAT; for(i=0; i<4; i++) { if(t & (1<<a[i])) { Off(i+1); } else { On(i+1); } } } return 0; }
我很是奇怪,在用键盘点亮LED灯的实验中。我直接写1<<a[i],烧到板内4个LED都亮,按KEY没用。
当我把FOR循环拆开,写成4个if else语句,并且把a[i]响应的变成0,3,5,6。这样才能正常地一次按KEY1点亮LED1,按key2点亮LED2。
不知道是我有点迷糊,还是其它原因,或许大家能帮助我一下。
作者: angrad 发布时间: 2011-05-25
从程序看,是直接根据GPIO的GPG0、GPG3、GPG5、GPG6口状态设置LED开关状态的吧?
作者: zhaokai3000 发布时间: 2011-05-25