Upload
andres-vargas
View
217
Download
0
Embed Size (px)
DESCRIPTION
ucontrolers
Citation preview
#include <xc.h>
#include <stdio.h>
#include <stdlib.h>
#include <plib/xlcd.h>
#include <plib/delays.h>
#define _XTAL_FREQ 4000000
int main() {
ADCON1=15;
TRISA=1;
TRISC=0;
while(1){
if(PORTAbits.RA0==1 && PORTAbits.RA1==0){
PORTCbits.RC0=1;Delay1KTCYx(2);
PORTCbits.RC0=0;Delay1KTCYx(2);
}
if(PORTAbits.RA0==0 && PORTAbits.RA1==1){
PORTCbits.RC0=1;Delay10TCYx(30);
PORTCbits.RC0=0;Delay10TCYx(30);
}
}
}
Recepción
#include <xc.h>
#include <stdio.h>
#include <stdlib.h>
#include <plib/xlcd.h>
#include <plib/delays.h>
#define _XTAL_FREQ 4000000
void config_se();
int a=0;
void main(){
ADCON1=15;
TRISA=0;
TRISB=0;
config_se();
IPEN=0;
PEIE=1;
RCIE=1;
GIE=1;
//Recepción
while(1){
if(a==1){
PORTA=32;
}
if(a==2){
PORTBbits.RB0=1;Delay1KTCYx(2);
PORTBbits.RB0=0;Delay1KTCYx(2);
a=0;
}
if(a==3){
PORTBbits.RB1=1;Delay10TCYx(30);
PORTBbits.RB1=0;Delay10TCYx(30);
a=0;
}
}
}
void config_se(){
SPBRG=12;
SYNC=0;
BRGH=1;
BRG16=0;
SPEN=1;
CREN=1;
}
void interrupt interrupcion(){
if(RCIF==1){
PORTAbits.RA3=1;
a=RCREG;
PORTA=a;
RCIF=0;
}
}
Transmisión
#include <xc.h>
#include <stdio.h>
#include <stdlib.h>
#include <plib/xlcd.h>
#include <plib/delays.h>
#define _XTAL_FREQ 4000000
void config_se();
void main(){
config_se();
// Transmisión
ADCON1=15;
TRISA=1;
while(1){
if(PORTAbits.RA0==1){
if(PORTAbits.RA1==1 && PORTAbits.RA2==1){
TXREG=1;
}
if(PORTAbits.RA1==1 && PORTAbits.RA2==0){
TXREG=2;
}
if(PORTAbits.RA2==1 && PORTAbits.RA1==0){
TXREG=3;
}}
}
}
void config_se(){
SPBRG=12;
SYNC=0;
BRGH=1;
BRG16=0;
SPEN=1;
TXEN=1;
}