Re: 詢問pic18f452 USART傳送問題
|
||||
---|---|---|---|---|
新會員
|
一樣也是在邏輯分析儀上仍然是沒有收到訊號
我使用的是APP001實驗版 但是我是直接使用擴充PIN上的RC6和RC7 而沒有去使用RS232接頭 這對結果會有影響嗎? 但是我有試過如果跑MCC的範例程式經由rs232接頭來傳輸的話是正常可以使用的 所以真的是搞的一個頭兩ㄍ大
發表於: 2007/3/21 12:30
|
|||
|
Re: 詢問pic18f452 USART傳送問題
|
||||
---|---|---|---|---|
中級會員
|
那如果只單作傳送呢 ? (暫不接收)
發表於: 2007/3/21 12:06
|
|||
|
Re: 詢問pic18f452 USART傳送問題
|
||||
---|---|---|---|---|
新會員
|
有確定收到~而且有跳到傳送資料的if迴圈內
也有跳到USART的WriteUSART的函式中 可是當值傳到TXREG的時候就沒下文了 我使用邏輯分析儀去量測都沒有接收到傳送出去的數值
發表於: 2007/3/21 12:00
|
|||
|
Re: 詢問pic18f452 USART傳送問題
|
||||
---|---|---|---|---|
中級會員
|
可以先確認 接收的 array 0~14都是正確的 再做判斷的部分
發表於: 2007/3/21 11:17
|
|||
|
Re: 詢問pic18f452 USART傳送問題
|
||||
---|---|---|---|---|
中級會員
|
發表於: 2007/3/21 9:56
|
|||
|
Re: 詢問pic18f452 USART傳送問題
|
||||
---|---|---|---|---|
中級會員
|
沒有看到 Interrupt enable 的相關設定
RCIE & TXIE
發表於: 2007/3/21 9:29
|
|||
|
詢問pic18f452 USART傳送問題
|
||||
---|---|---|---|---|
新會員
|
void isr_high(void)
{ Rec_Data=ReadUSART(); Data_Buffer[i]=Rec_Data; Data_Temp[j]=Data_Buffer[i]; if(Data_Temp[12]==0xA7 && Data_Temp[13]==0xA5 && Data_Temp[14]==0x5A ) { while(TXSTAbits.TRMT=0); putcUSART(0xA7); while(TXSTAbits.TRMT=0); putcUSART(0xA5); while(TXSTAbits.TRMT=0); putcUSART(0x5A); } if (i<3) { i++; } else { i=0; } j++; } 這是我進入中斷後的副程式,當我判斷得知收到的資料為A7A55A時 我必須接著回傳A7A55A給傳輸端 但是當我使用MPLAB IDE的Watch來觀看TXREG這個變數時 雖然都有跟隨我的指令動作 可是在我使用邏輯分析儀實際測量USART的TX腳位時卻遲遲收不到訊號 所以想要請問各位大大這是那邊出了問題 還請麻煩一解迷津 下面是我USART的Initialize的Code void InitializeUSART(void) { OpenUSART( USART_TX_INT_OFF // Set TXSTA Reg. =0b00100100 & USART_RX_INT_ON // Set RCSTA Reg. =0b10010000 & USART_ASYNCH_MODE & USART_EIGHT_BIT & USART_CONT_RX & USART_BRGH_HIGH ,103); // Set SPBRG=103, Baud Rate = 9600 RCSTAbits.SPEN=1; TRISCbits.TRISC7=1; // Set input for RXD TRISCbits.TRISC6=0; // Set output for TXD TXSTA=0b00100100; PIR1bits.RCIF=0; PIR1bits.TXIF=0; IPR1bits.RCIP=1; // Set Receive of USART are High priority }
發表於: 2007/3/20 22:02
|
|||
|