×
单片机 > 单片机程序设计 > 详情

PIC单片机串口发送与按键

发布时间:2020-12-28 发布时间:
|

这是我学习PIC单片机调试过程中尝试的PIC单片机串口发送实验,当按键RB0有按下时,num自加,同时RC0端口接的LED翻转,并把num的数传给发送寄存器发送至电脑端,波特率为9600,4M晶振.


代码如下:

#include

__CONFIG(0x3B31);


unsigned int num=0;


void GPIO_init()

{

TRISB=0xff;

TRISC=0xfe;

TRISC0=0;

OPTION_REG=0x07;

}


void delay(unsigned int x)

{

unsigned int i,j;

for(i=x;i>0;i–)

for(j=110;j>0;j–);

}


void serialinit()

{


TXSTA=0x24;

RCSTA=0x90;

SPBRG=25;

GIE=1;

PEIE=1;

TXIE=0;


}

void key_scan()

{

if(RB00)

{

delay(15);

if(RB00)

{

num++;

TXIE=1;

TXIF=1;

if(!(num%2))

{

RC0=~RC0;

}


while(!RB0);

}

}


}


void interrupt serial0()

{

if(TXIE&&TXIF)

{

TXIF=0;

TXIE=0;

//RCREG=num;

if(num==30)

{

num=0;

TXREG=0x80;

}

else

TXREG=num;

while(!TRMT);

}


}


void main()

{

GPIO_init();

serialinit();

while(1)

{

key_scan();

}

}



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
如何升级STM32单片机的代码