#include<pic.h>
#include<pic16lf1933.h>
#define uchar unsigned char
#define uint unsigned int
//PIC16LF1933.H
__CONFIG(FOSC_INTOSC & WDTE_OFF & PWRTE_OFF & MCLRE_ON & CP_OFF & CPD_OFF & BOREN_OFF & CLKOUTEN_OFF & IESO_OFF & FCMEN_OFF);
__CONFIG(WRT_OFF & PLLEN_OFF & STVREN_ON & BORV_LO & LVP_OFF);
uchar recdata;
void delay()
{
uint k;
for(k=300;k>0;k--);
}
void init()
{
OSCCON = 0b01110000; // 4x PLL Is disabled,
//Internal Oscillator Frequency Select bits . 000x = 8MHz LF
//SCS<1:0>: System Clock Select bits. 1x = Internal oscillator block
TRISC=0XC0; // IO
TRISA=0XC0; //out
PORTA=0XC0;
ABDOVF=0;
RCIDL=0;
SCKP=0;
WUE=0;
ABDEN=0;
SYNC=0;
BRG16=0;
SPBRG=51;
// TXSTA=0X24; //chuankou shineng
TXSTA=0XA4;//内部震荡
RCSTA=0X90;//lianxu
RCIE=1;
// TXIE=1;
GIE=1;
PEIE=1;
// RCREG=0;
}
void interrupt usart()
{
if(RCIF==1)
{
RCIF=0;
recdata=RCREG;
TXREG=recdata;
}
}
void main ()
{
init();
while(1)
{
switch(recdata)
{
case 0X01:PORTA=0X01;break;
case 0X02:PORTA=0X02;break;
case 0X03:PORTA=0X04;break;
case 0X04:PORTA=0X08;break;
case 0X05:PORTA=0X10;break;
case 0X06:PORTA=0X20;break;
}
delay();
}
}
接收,使用proteus仿真,串口助手发送数据,接收和响应 都正常,。 但是串口助手收不到回发的数据。 从寄存器里看TXREG已经赋值了的
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>