會員登陸
帳號:

密碼:

記住我



忘記密碼?

現在註冊!
網站導航
最新下載
訪問統計 (自2012/5/3)


正在流覽:   1 名訪客





[p18f25k22] RC0 port無法輸出
初級會員
註冊日期:
4月19日 23:58:04
所屬群組:
註冊會員
文章: 27
等級: 3; EXP: 93
HP : 0 / 73
MP : 9 / 108
離線
p18f25k22 XIDE 3.5

RC0 控制mos開關(耗電流約18mA)

PORTC=0;
ANSELC=0;
TRISC=0;

while(1)
{
if(flag300ms)//定時器開啟
{ LATCbits.LATC1=!LATCbits.LATC1;delay1ms();
LATCbits.LATC0=!LATCbits.LATC0;delay1ms();
LATCbits.LATC2=!LATCbits.LATC2;delay1ms();
}
}-->LATCbits.LATC0沒有反應 c1 c2中間有1ms


while(1)
{
LATCbits.LATC1=!LATCbits.LATC1;delay1ms();
LATCbits.LATC0=!LATCbits.LATC0;delay1ms();
LATCbits.LATC2=!LATCbits.LATC2;delay1ms();

}-->LATCbits.LATC0 有反應

請問還有哪邊要注意設定

7月12日 23:27:35
轉換PDF檔 列印


Re: [p18f25k22] RC0 port無法輸出
初級會員
註冊日期:
4月19日 23:58:04
所屬群組:
註冊會員
文章: 27
等級: 3; EXP: 93
HP : 0 / 73
MP : 9 / 108
離線
引用:

aaron_0201 寫道:
p18f25k22 XIDE 3.5

RC0 控制mos開關(耗電流約18mA)

PORTC=0;
ANSELC=0;
TRISC=0;

while(1)
{
if(flag300ms)//定時器開啟
{ LATCbits.LATC1=!LATCbits.LATC1;delay1ms();
LATCbits.LATC0=!LATCbits.LATC0;delay1ms();
LATCbits.LATC2=!LATCbits.LATC2;delay1ms();
}
}-->LATCbits.LATC0沒有反應 c1 c2中間有1ms


while(1)
{
LATCbits.LATC1=!LATCbits.LATC1;delay1ms();
LATCbits.LATC0=!LATCbits.LATC0;delay1ms();
LATCbits.LATC2=!LATCbits.LATC2;delay1ms();

}-->LATCbits.LATC0 有反應

請問還有哪邊要注意設定


附註 我是用timer1

7月13日 08:52:47
轉換PDF檔 列印


Re: [p18f25k22] RC0 port無法輸出
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 14501
等級: 73; EXP: 6
HP : 1080 / 1801
MP : 4833 / 76200
離線
這樣我實在看不出問題出在哪裡。為簡化尋找問題的方向,可以將 Timer1 的 delay1ms() 改成用軟體延遲的方式 (for 迴圈) 來替代嗎?

請問你有使用 Timer1 的中斷方式來計時嗎?

依據你的程式,一般中斷的延遲不會這樣的使用。通常會在中斷裡設定一個 1ms 中斷延時的旗號後再交由主程式判斷。如果只是做簡單的 I/O 切換可以在 1mS 的中斷時直接在中斷函式完成。

7月13日 12:04:56
轉換PDF檔 列印


Re: [p18f25k22] RC0 port無法輸出
初級會員
註冊日期:
4月19日 23:58:04
所屬群組:
註冊會員
文章: 27
等級: 3; EXP: 93
HP : 0 / 73
MP : 9 / 108
離線
sorry,是我闡述不夠詳細

我是啟動TIMER1後,RC0的I/O pin 就失效,
後來發現TIMER1 有一個設定跟RC0是有關係。只要不開啟TIMER1 外部 clk就ok.

另外請教

RC0已經被當成IO功能使用。系統使用外部4Mhz,
請問還可以使用TIMER1 進行sleep的 wake up嗎。

7月15日 22:30:16
轉換PDF檔 列印


Re: [p18f25k22] RC0 port無法輸出
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 14501
等級: 73; EXP: 6
HP : 1080 / 1801
MP : 4833 / 76200
離線
aaron_0201 寫道:
sorry,是我闡述不夠詳細

我是啟動TIMER1後,RC0的I/O pin 就失效,
後來發現TIMER1 有一個設定跟RC0是有關係。只要不開啟TIMER1 外部 clk就ok.

Ans:
RCO 當一般 I/O 腳使用時,其設定的優先權是最低的,只要有其他的周邊動到了 RCO 其 I/O 功能就會被關閉變成由周邊來是用。
所以啟用了 Timer1 的外部震盪功能,RC0 的 I/O 功能就會被 Disable。


另外請教

RC0已經被當成IO功能使用。系統使用外部4Mhz,
請問還可以使用TIMER1 進行sleep的 wake up嗎。

Ans:
不行。因為進入 Sleep Mode 後,系統的時脈會立即停止。所有使用到系統時脈的周邊也會跟著停止運作。這時只有使用獨立的震盪的周邊或觸發式的周邊才可以喚醒 MCU。
像: ADC 轉換使用 ADC 專用的內部 RC 震盪器。
Timer1 使用外部的震盪設定,一般使用 32768Hz 的 Crystal
外部中斷腳尾觸發。
UART 接收
....

7月16日 10:31:24
轉換PDF檔 列印






無法在此發表文章
可以在此觀看文章
無法回覆文章
無法編輯自己的文章
無法刪除自己的文章
無法發起投票調查
無法在此投票
無法上傳附加檔案
無法不經審核直接發表文章

[進階搜尋]


搜尋
Microchip連結

網頁捷徑
2018 Winter Elite 報名
教育訓練
其它網站連結
電話: 02-25000405
產品技術問題產品技術支援專線:0800-717718 台北02-25088600 新竹03-5778366 Ext. 8600 高雄07-2137830 MicrochipDIRECT 專線: 07-2137830
Powered by XOOPS © 2001-2012 The XOOPS Project