Скачать исходник в Visual Studio 2010

Скачать исходник в MPLAB X

#include <p18cxxx.h>
#include <delays.h>
#include <usart.h>
#include <timers.h>
#pragma config OSC=IRCIO67
#pragma config FCMEN=OFF
#pragma config IESO=OFF
#pragma config PWRT=OFF
#pragma config BOREN=OFF
#pragma config BORV=3
#pragma config WDT=OFF
#pragma config WDTPS=32768
#pragma config PBADEN=OFF
#pragma config LPT1OSC=OFF
#pragma config MCLRE=OFF
#pragma config STVREN=ON
#pragma config LVP=OFF
#pragma config BBSIZ=1024
#pragma config XINST=OFF
#pragma config CP0=OFF
#pragma config CP1=OFF
#pragma config CPB=OFF
#pragma config CPD=OFF
#pragma config WRT0=OFF
#pragma config WRT1=OFF
#pragma config WRTC=OFF
#pragma config WRTB=OFF
#pragma config WRTD=OFF
#pragma config EBTR0=OFF
#pragma config EBTR1=OFF
//**********************************************************
#pragma code
void MyHighInt(void);
#pragma interrupt MyHighInt
#pragma code high_vector=0x08
void high_vector(void){
    _asm GOTO MyHighInt _endasm
}
#pragma code
void SetInterrupt(void);
void InitUsart(void);
void main(void)
{
    ADCON1=0;
    ADCON1=0x0f;
    InitUsart();
    SetInterrupt();
    while(1)
    {
    }
}
void MyHighInt(void)
{
    if(PIR1bits.RCIF)
    {
        while(!TXSTAbits.TRMT);
        putcUSART(ReadUSART());
    }
}
void InitUsart(void)
{
    OSCCONbits.IRCF0=0;
    OSCCONbits.IRCF1=1;
    OSCCONbits.IRCF2=1;
    OSCTUNEbits.PLLEN=1;
    baudUSART(BAUD_16_BIT_RATE&BAUD_WAKEUP_OFF&BAUD_AUTO_OFF);
    OpenUSART( USART_TX_INT_OFF&USART_RX_INT_ON&USART_ASYNCH_MODE
            &USART_EIGHT_BIT &USART_CONT_RX &USART_BRGH_LOW,25);//38400//8);//HIGH 460800 кбит/с

 

}
void  SetInterrupt(void)
{
    RCONbits.IPEN=0;
    INTCONbits.GIE=1;
    INTCONbits.PEIE=1;
}