int single_key_press(void) { keyboard_clear_buffer(); clear_state(); TEST_ASSERT(press_key(0, 0, 1) == EC_SUCCESS); TEST_ASSERT(FIFO_NOT_EMPTY()); TEST_ASSERT(press_key(0, 0, 0) == EC_SUCCESS); TEST_ASSERT(FIFO_NOT_EMPTY()); clear_state(); TEST_ASSERT(verify_key(0, 0, 1)); TEST_ASSERT(FIFO_NOT_EMPTY()); TEST_ASSERT(verify_key(0, 0, 0)); TEST_ASSERT(FIFO_EMPTY()); return EC_SUCCESS; }
int test_enable(void) { keyboard_clear_buffer(); clear_state(); TEST_ASSERT(set_kb_scan_enabled(0)); TEST_ASSERT(press_key(0, 0, 1) == EC_SUCCESS); TEST_ASSERT(FIFO_EMPTY()); TEST_ASSERT(set_kb_scan_enabled(1)); TEST_ASSERT(press_key(0, 0, 1) == EC_SUCCESS); TEST_ASSERT(FIFO_NOT_EMPTY()); TEST_ASSERT(verify_key(0, 0, 1)); return EC_SUCCESS; }
//从串口1接收,即数据来自电脑 void rxUart1(INT8U dat) { if(FIFO_NOT_FULL(&rx1FIFO)) { rx1FIFODat[utIndWrtFIFO(&rx1FIFO)] = dat; utStTmr(rxUart1Tout); //接收一段字符完毕,里面已经包含了to_at处理 } else //错误数据,看看是什么 { utPtb('&'); while(FIFO_NOT_EMPTY(&rx1FIFO)) //清空 { utPtb(rx1FIFODat[utIndRdFIFO(&rx1FIFO)]); } } }