| 10 | 1/1 | 返回列表 |
| 查看: 1765 | 回復(fù): 9 | ||
愛蓉新蟲 (初入文壇)
|
[求助]
關(guān)于飛思卡爾單片機(jī)的TPM輸入捕捉功能 已有1人參與
|
|
找不到哪里可以請教一些關(guān)于單片機(jī)的知識,發(fā)到這里不知道可不可以= = 用MC9S08JM60的板子寫了個程序,目的是測兩個信號之間的時間差,想法是利用板子的兩個按鍵(PTBD4&PTBD5)來提供下降沿,按下按鍵,輸入電平從高變?yōu)榈,提供下降沿,利用TPM1的通道1和2來捕捉下降沿,分別利用兩個LED(PTBD0&PTBD1)來顯示進(jìn)入了中斷, 如果進(jìn)入中斷,則點(diǎn)亮對應(yīng)的LED。 這樣,通過兩次中斷,分別去讀對應(yīng)的計(jì)數(shù)器的值,可以計(jì)算出兩個信號(兩個下降沿)之間的時間差,應(yīng)該是一個很簡單的程序,卻不知道哪里出了問題,LED不會亮,應(yīng)該是沒進(jìn)中斷。 程序附在下面,希望好心的老師同學(xué)可以幫幫忙看看,謝謝。! #include <hidef.h> /* for EnableInterrupts macro */ #include "derivative.h" /* include peripheral declarations */ void PTBDD_INIT(void); long i,j,c,x; void main(void) { DisableInterrupts;//關(guān)閉中斷 SOPT1=0x03;//關(guān)狗 PTBDD_INIT(); //對管腳初始化 x=TPM1SC; TPM1SC_TOF=0;//對TPM1SC溢出標(biāo)志清除 TPM1SC_TOIE=0; //TPM1中斷禁止 TPM1SC_CPWMS=0;//加法計(jì)數(shù)器方式 TPM1SC_CLKSB=0; //總線時鐘 TPM1SC_CLKSA=1; TPM1SC_PS0=0;//1分頻 TPM1SC_PS1=0; TPM1SC_PS2=0; TPM1CNT=0x0000;// TPM計(jì)數(shù)器清零 TPM1MOD=0x0000; //自由計(jì)數(shù)模式 TPM1C1SC_CH1F=0; TPM1C2SC_CH2F=0; TPM1C1SC_CH1IE=1; //1.2通道中斷使能 TPM1C2SC_CH2IE=1; TPM1C1SC_MS1B=0; //通道輸入捕捉 TPM1C1SC_MS1A=0; TPM1C2SC_MS2B=0; TPM1C2SC_MS2A=0; TPM1C1SC_ELS1B=1;//下降沿捕捉 TPM1C1SC_ELS1A=0; TPM1C2SC_ELS2B=1; TPM1C2SC_ELS2A=0; EnableInterrupts; /* enable interrupts */ /* include your code here */ for( ; ; ) { //__RESET_WATCHDOG(); /* feeds the dog */ } /* loop forever */ /* please make sure that you never leave main */ } void PTBDD_INIT(void){ PTBDD_PTBDD4=0; PTBDD_PTBDD5=0; PTBDD_PTBDD0=1; PTBDD_PTBDD1=1; PTBD_PTBD0=1; PTBD_PTBD1=1; } void interrupt 10 tpm_isr1(){ i=TPM1C1VH*256+TPM1C1VL; PTBD_PTBD0=0; TPM1C1SC=TPM1C1SC&0x48; //TPM1頻道1中斷標(biāo)識清除 } void interrupt 11 tpm_isr2(){ j=TPM1C2VH*256+TPM1C2VL; PTBD_PTBD1=0; TPM1C2SC=TPM1C2SC&0x48; //TPM1頻道2中斷標(biāo)識清除 } |
新蟲 (初入文壇)
金蟲 (小有名氣)

新蟲 (初入文壇)
金蟲 (小有名氣)

新蟲 (初入文壇)
新蟲 (初入文壇)
金蟲 (小有名氣)
|
一步一步來吧: 1. 每次按鍵的時候,用示波器或者萬用表測量看高低電平是否正確 2. 如果上一步正確,在中斷中設(shè)置斷點(diǎn),看是否每次都能進(jìn)入中斷,如果不能進(jìn)入,則檢測IO口中斷配置是否有問題 3. 如果上一步正確,那么繼續(xù)運(yùn)行的時候LED燈就應(yīng)該是常亮的。如果燈不亮,那么檢測單片機(jī)是否正確輸出了低電平。 進(jìn)一步應(yīng)該能確定問題所在 |

新蟲 (初入文壇)
金蟲 (小有名氣)

| 10 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研]
|
2117205181 2026-03-21 | 8/400 |
|
|---|---|---|---|---|
|
[考研] 317求調(diào)劑 +12 | 申子申申 2026-03-19 | 18/900 |
|
|
[考研] 一志愿西安交通大學(xué)材料工程專業(yè) 282分求調(diào)劑 +11 | 楓橋ZL 2026-03-18 | 13/650 |
|
|
[考研] 289材料與化工(085600)B區(qū)求調(diào)劑 +3 | 這么名字咋樣 2026-03-22 | 4/200 |
|
|
[考研] 324求調(diào)劑 +6 | lucky呀呀呀鴨 2026-03-20 | 6/300 |
|
|
[考研] 一志愿 西北大學(xué) ,070300化學(xué)學(xué)碩,總分287,雙非一本,求調(diào)劑。 +3 | 晨昏線與星海 2026-03-20 | 3/150 |
|
|
[考研] 319求調(diào)劑 +4 | 小力氣珂珂 2026-03-20 | 4/200 |
|
|
[考研] 求調(diào)劑 +5 | Zhangbod 2026-03-21 | 7/350 |
|
|
[考研] 303求調(diào)劑 +5 | 安憶靈 2026-03-22 | 6/300 |
|
|
[考研]
|
酥酥魚.. 2026-03-21 | 3/150 |
|
|
[考研] 材料求調(diào)劑 +5 | @taotao 2026-03-21 | 5/250 |
|
|
[考研] 313求調(diào)劑 +4 | 肆叁貳壹22 2026-03-19 | 4/200 |
|
|
[考研] 求調(diào)劑 +3 | .m.. 2026-03-21 | 4/200 |
|
|
[考研] 321求調(diào)劑 +9 | 何潤采123 2026-03-18 | 11/550 |
|
|
[考研] A區(qū)線材料學(xué)調(diào)劑 +5 | 周周無極 2026-03-20 | 5/250 |
|
|
[考研] 材料學(xué)碩318求調(diào)劑 +5 | February_Feb 2026-03-19 | 5/250 |
|
|
[考博] 申博26年 +3 | 八6八68 2026-03-19 | 3/150 |
|
|
[考研] 0703化學(xué)調(diào)劑 +4 | 18889395102 2026-03-18 | 4/200 |
|
|
[考研] 085600材料與化工求調(diào)劑 +6 | 緒幸與子 2026-03-17 | 6/300 |
|
|
[考研] 本科鄭州大學(xué)物理學(xué)院,一志愿華科070200學(xué)碩,346求調(diào)劑 +4 | 我不是一根蔥 2026-03-18 | 4/200 |
|