如何解决我如何在带有 mbed 的 C++ 中使用附加函数
我实际上在 mbed 卡上工作,我有将 os 版本 5 上的代码更新到版本 6。但是我在 Uart 类上的附加功能有问题我没有编译错误,当我没有错误时测试代码,但我从来没有在我的 getuserinput 函数中。我不知道在 C++ 中是否可行,但我尝试了一些我将 classe 称为 Uart 的方法。如果有人知道答案或有解决方案,那就太好了。
代码版本 5
void on_rx_interrupt() {
char c;
if (serial_port.read(&c,1)) {
if (c == '/') {
NVIC_SystemReset();
}
}
}
int main(void) {
serial_port.baud(115200);
serial_port.format(8,SerialBase::None,1);
serial_port.attach(&on_rx_interrupt,SerialBase::RxIrq);
}
新代码 C++ UART 类
void getUserInput() {
printf("get input\n");
char c;
while (pc.readable()) {
pc.read(&c,1);
if (c == '#') {
printf("mdr");
}
if (c == '/') {
printf("lol");
NVIC_SystemReset();
}
}
return;
}
void Uart::algo() {
this->initUartPort();
pc.attach(&getUserInput,SerialBase::RxIrq);
}
主要
int main( int ac,char** av) {
Uart uart;
uart.algo();
}
感谢回答
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。