主管交待我要寫一段程式,我只會把程式貼到KEIL C去跑這樣而已
我實在不知道怎麼寫,只好上來求救,我知道有人問過被罵得很慘,我知道這是不對的
但是還是請各位大大幫幫忙,真的是火燒屁股了
腳位 P0.1 DCR ON/OFF 送出H 要有60Hz 50%duty的方波
P0.2 ON/OFF送出H
P0.3 Vadj 送出H
P0.4 SCAN MODE 送出 H
delay 500ms~300ms
以上怎麼寫,拜託我才剛進來而已,感恩不盡
先去查你們 51 跑的頻率, 然後查 datasheet, 知道每個 timer tick 的時間會多久. 而你需要的, 是 120 Hz 的 timer interrupt, 這樣你就知道應該多久產生一次 timer interrupt.
寫一段 timer interrupt service routine (搞不好已經有了), 裡頭呢, 就是負責重新 program TLx 還有 THx 這兩個 SFR, 讓它倒數產生下一次的 timer interrupt, 順便 toggle P0.1 這隻腳的 output.
最後呢, 只要寫一段起始 code, 設定好起始的 TLx, THx (應該跟上面一樣), 再把 timer interrupt enable, EA 設定起來, 就會開始產生你要的波形啦. 建議再用 scope 量一次波形, 確定 timing 是對的, 有誤差的話只要修正 TLx, THx 的值應該就行了.
看不懂我說什麼的話, 建議去找本 51 的 datasheet, 把 timer interrupt 還有 interrupt service routine 的部份看懂.
內文搜尋

X