[問題] 量測脈波寬度

看板ASM (組合語言)作者 (藍色感覺)時間15年前 (2009/04/12 00:42), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/8 (看更多)
請教一下, 如果我要設計一個.... pin2 輸入負脈波寬度>1ms , pin1 = 1 <1ms , pin1 = 0 的功能 剛開始以為 pin2用INT0(外部中斷)做 在中斷函式內 寫個 計數器, 當跳開後,會依計數值做pin1判斷1還是0 後來發現,我誤會中斷的意義 它是 "下緣觸發".....就跳進中斷函式,做計數沒錯 但這計數....值並非並非是負脈波寬度 怎麼說?? 跳到中斷計數....這計數只計1次.....非我想像的一直計數到 rising才停 所以想跟大大請教一下 這樣的應用該怎麼做呢?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.195.194.110 ※ 編輯: BlueFeel 來自: 123.195.194.110 (04/12 01:00)

04/12 01:38, , 1F
INT0有IT0(TCON)可以設定負緣處發或低準位處發
04/12 01:38, 1F

04/12 03:01, , 2F
簡單的作法就是中斷觸發後在ISR記數並Poll到準位為1結束
04/12 03:01, 2F

04/12 03:01, , 3F
再離開.只是這樣程式效率比較低就是了.
04/12 03:01, 3F

04/13 20:37, , 4F
直接找一顆有input capture的uC,何必折磨自己?
04/13 20:37, 4F
文章代碼(AID): #19uCXTPg (ASM)
討論串 (同標題文章)
文章代碼(AID): #19uCXTPg (ASM)