會員登陸
帳號:

密碼:

記住我



忘記密碼?

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


正在流覽:   1 名訪客





PIC18F24K42 MCC所產生的RS232 Read問題
高級會員
註冊日期:
2007/04/16 20:42
所屬群組:
註冊會員
文章: 72
等級: 7; EXP: 40
HP : 0 / 160
MP : 24 / 5455
離線
Dear Sir,
我採PIC18F24K42用MCC來開發RS232 Rd/Wr;Wr沒中用中斷,也沒問題;但Rd有/無中斷,卻一直無法正常。以下是很單純的從PC的COM Port丟入1個ASCII Code後加1,再透過PIC的RS232送出的main 程式,請先進們幫忙指正何處有誤呢?
1) UART1_Initialize(void) 中Rx是 enable 中斷,但Tx 是Disable 中斷 (MCC產生的)
PIE3bits.U1RXIE = 1;
2) 於main.c 中,我將Global Interrupts 打開:
INTERRUPT_GlobalInterruptEnable();
3) 於main.c 中,讀入RS232後加1,再透過RS232送出:
while(1)
{
rcv = UART1_Read();
putch(rcv+1);
}
4) 似乎少了中斷服務程式(ISR);若須要,該於何處加入?又該如何寫呢?
5) 因檔案過大,請收到附件後,將0723.zip rename為 0722.z01後,再一起連同0722.zip一起解壓縮。

感謝您撥冗處理。

附加檔案:


zip 0722.zip 大小: 759.65 KB; 下載次數: 31
zip 0723.zip 大小: 800.00 KB; 下載次數: 21

7月23日 17:04:45
轉換PDF檔 列印


Re: PIC18F24K42 MCC所產生的RS232 Read問題
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 14558
等級: 73; EXP: 15
HP : 1082 / 1803
MP : 4852 / 77029
離線
我這裡有一份 PIC18F45K22 UART 用 MCC 產生的範例程式。

在"http://www.microchip.com.tw/Data_CD/" 的連結:
8-Bits MCU 相關課程 ==>
MCC201 v1.00 MCC201 v3.0x MPLAB Code Configurator New!

這份教材裡有如何使用 MCC 所產生的 UART 函數,及中斷的 Ring Buffer 接收方式。即將發送轉向到 prinrtF( ) 的輸出。

7月24日 09:53:07
轉換PDF檔 列印


Re: PIC18F24K42 MCC所產生的RS232 Read問題
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 14558
等級: 73; EXP: 15
HP : 1082 / 1803
MP : 4852 / 77029
離線
UART1_Read(); 是需在 Receive 中斷裡左的讀取動作,你將它移到主程式裡它就會在每一個迴圈就讀去一個值,所以這是錯誤的。

7月24日 09:57:21
轉換PDF檔 列印


Re: PIC18F24K42 MCC所產生的RS232 Read問題
高級會員
註冊日期:
2007/04/16 20:42
所屬群組:
註冊會員
文章: 72
等級: 7; EXP: 40
HP : 0 / 160
MP : 24 / 5455
離線
感謝版主提供相關課程 ==>
MCC201 v1.00 MCC201 v3.0x MPLAB Code Configurator New! 之參考資訊,已解決RS232_Read問題。

7月24日 15:12:39
轉換PDF檔 列印


Re: PIC18F24K42 MCC所產生的RS232 Read問題
版主
註冊日期:
2004/04/30 10:53
來自 CAE, Microchip
所屬群組:
站務管理者
註冊會員
MICROCHIP
文章: 14558
等級: 73; EXP: 15
HP : 1082 / 1803
MP : 4852 / 77029
離線
恭喜!

MCC 所產生的 UART Function,其接收是採用中斷方式接收,並使用 Ring Buffer 方式做緩衝,讓主程式可以不忙接一定要急著讀去接收資料。

至於發送部分,如果有啟用 TXIE 的話,發送資料就會採用 Tx Ring Buffer 方式發送。如果沒有使用 TXIE 的中斷,那只要將一個 Byte 的傳送資料移到 TXREG 即可將資料送出。

7月25日 09:40:20
轉換PDF檔 列印


Re: PIC18F24K42 MCC所產生的RS232 Read問題
高級會員
註冊日期:
2007/04/16 20:42
所屬群組:
註冊會員
文章: 72
等級: 7; EXP: 40
HP : 0 / 160
MP : 24 / 5455
離線
再次感謝版主對於MCC在RS232功能上的詳細說明;令末學再次受益,長知識。

7月30日 23:47:01
轉換PDF檔 列印






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

[進階搜尋]


搜尋
Microchip連結

網頁捷徑
2019 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