PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   dsPIC - Bộ điều khiển tín hiệu số 16-bit (http://www.picvietnam.com/forum/forumdisplay.php?f=29)
-   -   Help UART dsPIC30F4011 (http://www.picvietnam.com/forum/showthread.php?t=3867)

lecanhhuy 07-04-2009 09:24 PM

Help UART dsPIC30F4011
 
Code:

#include "p30f4011.h"

        _FOSC(CSW_FSCM_OFF & HS);       
        _FWDT(WDT_OFF);
        _FBORPOR(MCLR_EN & PBOR_OFF & PWMxL_ACT_HI & PWMxH_ACT_HI);
        _FGS(CODE_PROT_OFF);

//Cac prototype cho cac chuong trinh con
void Init_UART1_Module(void);

//Cac bien toan cuc
unsigned short temp=0;

//------------------------------------------------------------------------------
//Chuong trinh chinh
int main(void) {
        Init_UART1_Module();
        LATB=0x00FF;
        while (1) {
                if (U1STAbits.URXDA) {                //Cho den khi nhan duoc mot ky tu
                        temp = U1RXREG;       
                                                                        //Doc ky tu da nhan duoc vao temp
                        U1TXREG = temp + 1;                //Gui tra ky tu da duoc sua doi (cong 1 vao)
                        while(!U1STAbits.TRMT);
                };
        };
}

//Chuong trinh con khoi tao module UART1
void Init_UART1_Module(void) {
        TRISB = 0xFF00;
        TRISCbits.TRISC13 = 0;        // U1TX
        TRISCbits.TRISC14 = 1;        // U1RX
       
        U1MODE = 0x8000;                //Main I/O, 8-bit, no parity, 1 stop bit
        U1STA = 0x0400;                        //bit10=UTXEN
        U1BRG = 11;        //Baud rate = 9600 ZTAL=7.3728 MHZ
}


Em dùng Terminal để send kí tự nhưng kô thấy jì .Xin các cao thủ trợ giúp!!!

namqn 07-04-2009 09:35 PM

Trích:

Nguyên văn bởi lecanhhuy (Post 24455)
...

Em dùng Terminal để send kí tự nhưng kô thấy jì .Xin các cao thủ trợ giúp!!!

Bạn nối phần cứng ra sao? Với dsPIC30F4011, các chân main I/O cho UART1 là RF2 (U1RX) và RF3 (U1TX) chứ không phải là RC13 và RC14 như bạn chú thích trong code đâu.

Thân,

lecanhhuy 07-04-2009 09:46 PM

1 Attachment(s)
Code:

#include "p30f4011.h"

        _FOSC(CSW_FSCM_OFF & HS);       
        _FWDT(WDT_OFF);
        _FBORPOR(MCLR_EN & PBOR_OFF & PWMxL_ACT_HI & PWMxH_ACT_HI);
        _FGS(CODE_PROT_OFF);

//Cac prototype cho cac chuong trinh con
void Init_UART1_Module(void);

//Cac bien toan cuc
unsigned short temp=0;

//------------------------------------------------------------------------------
//Chuong trinh chinh
int main(void) {
        Init_UART1_Module();
        LATB=0x00FF;
        while (1) {
                if (U1STAbits.URXDA) {                //Cho den khi nhan duoc mot ky tu
                        temp = U1RXREG;       
                        LATB=0x0000;                                       
                                                                                //Doc ky tu da nhan duoc vao temp
                        U1TXREG = temp + 1;                        //Gui tra ky tu da duoc sua doi (cong 1 vao)
                        while(!U1STAbits.TRMT);
                };
        };
}

//Chuong trinh con khoi tao module UART1
void Init_UART1_Module(void) {
        TRISB = 0xFF00;
        TRISFbits.TRISF2 =1;        // U1RX
        TRISFbits.TRISF3 =0;        // U1TX
       
        U1MODE = 0x8000;                //Main I/O, 8-bit, no parity, 1 stop bit
        U1STA = 0x0400;                        //bit10=UTXEN
        U1BRG = 11;        //Baud rate = 9600 ZTAL=7.3728 MHZ
}

Em đã sữa lại mà vẫn kô có jì xảy ra .

namqn 07-04-2009 10:21 PM

Vấn đề không phải ở code của bạn (trong ví dụ 4-2 tôi đâu có cần thiết lập các bit TRISF đó), mà ở phần cứng của bạn. Bạn hãy xem lại mạch thử nghiệm của bạn.

Thân,

lecanhhuy 07-04-2009 11:23 PM

Trích:

Nguyên văn bởi namqn (Post 24462)
Vấn đề không phải ở code của bạn (trong ví dụ 4-2 tôi đâu có cần thiết lập các bit TRISF đó), mà ở phần cứng của bạn. Bạn hãy xem lại mạch thử nghiệm của bạn.

Thân,

Em cảm ơn thầy Nam ! Sợi dây cổng COM em nó bị hư !! nên kô nhận được chỉ truyền đi đươc .


Múi giờ GMT. Hiện tại là 02:20 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam