1. 硬件
ATK DLRK3568开发板板载资源上有四个可用按键,原理图如下:
首先正点原子的出厂内核已经默认将这个按键注册成了 adc keys类型设备.
2. 软件
验证key的软件很简单,非常简单。只需在ui上加一个label显示信息即可。
然后重写keyPressEvent
和keyReleaseEvent
方法,如下:
void keycontrolwidget::keyPressEvent(QKeyEvent *event) {
int key = event->key();
this->ui->label->setText("key: 0x" + QString::number(key,16) + "按下");
QWidget::keyPressEvent(event);
}
void keycontrolwidget::keyReleaseEvent(QKeyEvent *event) {
int key = event->key();
this->ui->label->setText("key: 0x" + QString::number(key,16) + "抬起");
QWidget::keyReleaseEvent(event);
}
实验记录可以看到,正点原子把四个按键注册详情
id | name | No |
---|---|---|
key4 | Qt::Key_VolumeUp | 0x01000072 |
key5 | Qt::Key_VolumeDown | 0x01000070 |
key6 | Qt::Key_MenuKB | 0x010000dc |
key7 | Qt::Key_Escape | 0x01000000 |