Q21.
Arduino 程式碼如下,其中執行中斷服務常式PCINT0_vect 的中斷觸發來源為
數位電子 · 甲級 · 程式語言 · Q21
難易度分析
2 / 5
此題只測試對 ATmega328P PCINT0_vect 與 Port B(D8-D13)之間關係的記憶,無需推理或計算,難度屬於基礎。
正確答案:④D8 to D13
④ D8 to D13:D8 to D13 對應 Port B,在 ATmega328P 中 PCINT0_vect 正是處理 Port B 引腳變更中斷 的 ISR 向量。
錯誤選項解析
- ① A0 to A5:A0 to A5 類比腳位對應的是 PCINT1_vect 中斷向量,屬於 Port C 的引腳變更中斷,而非 PCINT0。
- ② D0 to D7:D0 to D7 對應的是 PCINT2_vect 中斷向量,屬於 Port D 的引腳變更中斷,與 PCINT0 無關。
- ③ C0 to C6:C0 to C6 為 Port C 的完整腳位範圍,其中斷向量為 PCINT1_vect,並非 PCINT0 的觸發來源。
Learning Tip
"ATmega328P 的 引腳變更中斷 (Pin Change Interrupt) 分為三組:PCINT0 (Port B, D8-D13)、PCINT1 (Port C, A0-A5)、PCINT2 (Port D, D0-D7)。此類題型常考 Port 與中斷向量的對應關係,需熟記各 Port 所屬的腳位範圍,避免混淆。"
學員答題分佈
①A0 to A50%
②D0 to D70%
③C0 to C60%
④D8 to D130%
此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!