我正在使用 icc12 (ImageCraft) 和 hc6812 微控制器。我想提示用户按下 LCD 键盘上的零键,以便下一个菜单出现在 LCD 显示屏上。我似乎无法让我的代码做到这一点。(按下零键 = 0b11110000)
if ((PTH & 0x1f) != 0x10) // if zero key pressed...
{
lcd_init(); // initialise the lcd module
lcd_clear(); // clear the lcd module
lcd_putstr(" *New menu is displayed* ");
}
键盘利用端口 H 的高 5 位,它有 16 个键(0-f),当按下的键为奇数时,最高位为高,按下的键为高时为低。端口 H 是一个输入端口,连接到我的 LCD 模块上的键盘。我正在尝试使用掩码来显示按下零键的时间,但是当我运行程序时,LCD 模块显示直接进入新菜单。屏蔽是最好的方法吗?如果是这样,我怎样才能更改我的 IF 语句以使代码正常运行?