-
我以前是这样的,
uint8_t s = wait_signal(TIMEOUT | ADC | KEY, timeout);
if(s & TIMEOUT)
// ...
if(s & ADC)
// ...
if(s & KEY) {
switch(get_key()) {
case KEY_UP:
// ...
default:
// ...
}
}
-
不排斥OS,也不是所有的情况下OS都比裸奔好..
如果裸奔是徒步,那么OS就好比驾车..而车也要分自行车,摩托车,汽车,火车等..
个人以为这个比喻比较恰当。
-
定时器必须产生一个高频率的节拍(譬如50-100K),可以实现LZ要求的功能.
无源蜂鸣器可以变化音调,但是步长会比较大,秦乐可能不好实现.