接腳:p1.0~p1.2 LED燈(低態動作) P1.3 (喇叭) P1.4 (動作開關~豆子開關)
P0 (七斷顯示器)
動作: 首先P1.0 LED的燈亮開始從5秒倒數 . 數完後換P1.1 LED的燈亮 . 然後換 P1.2 在回到 P1.0這樣重複
p1.0 LED的燈亮開始(七斷顯示器)從5秒倒數 . 若在5秒內按下P1.4(動作開關~豆子開關)開始放第一首音樂 . 放完之後重頭開始(P1.0 LED的燈亮)
p1.2 LED的燈亮開始(七斷顯示器)從5秒倒數 . 若在5秒內按下P1.4(動作開關~豆子開關)開始放第二首音樂 . 放完之後重頭開始 (P1.0 LED的燈亮)
p1.3 LED的燈亮開始(七斷顯示器)從5秒倒數 . 若在5秒內按下P1.4(動作開關~豆子開關)開始放第三首音樂 . 放完之後重頭開始(P1.0 LED的燈亮)
問題狀況:
P1.0~P1.2的LED燈會亮 七斷顯示器也會從5秒倒數 但是一按下P1.4(動作開關~豆子開關)就不動了 程式除錯也沒找到錯
懇求個位稿高手幫助小弟 T_T
程式: http://home.kimo.com.tw/eva2322000/sb.txt
2007-01-21 15:57:56 · 2 個解答 · 發問者 ? 2 in 電腦與網際網路 ➔ 程式設計
我看了一下你的程式,先找出幾個錯誤
1.cheek2:的下一道指令應是jb而不是jnb
2.cheek3:的下一道指令應是jb而不是jnb,又為何要有startcc
建議改成
cheek3: jb p1.2,end
mov...
mov...
jmp...
end: ret返回你的主程式
3.cheek,2,3內的mov dptr,#tab沒有改成tab,tabb,tabc,唱不出不同的音樂
4.在wait:內的CPL P1.0也不對,因為你的喇叭在P1.4
.
.
.
雖然程式架構簡單,但是可以看出你是個初學者,程式問題還很多,你要按部就班做程式除錯才行
那音樂副程式,要能先獨立驗證可以放出音樂才行
不過你貼程式的方法很好很高明,願聞其法
2007-01-23 04:32:14 · answer #1 · answered by 有兩把刷子的ㄚ超 5 · 0⤊ 0⤋
程式除錯沒找到錯是語法正確,你的寫法要簡單化
而不是複雜化
2007-01-21 17:15:16 · answer #2 · answered by ©s©v ½ 4 · 0⤊ 0⤋