18f_232.c
来自「18 pic18f实现232串行通信工程实例(调试通过)」· C语言 代码 · 共 50 行
C
50 行
//*********************************************
//232通信示例程序,晶振为10MHZ,波特率9600,通过
//*********************************************
#include "p18f6585.h"
void InterruptHandlerHigh(void);
void initial();
void initial(void)
{
SPBRG=0X40; //波特率设置为9600
TXSTA=0X04; //告诉波特率
RCSTA=0X80; //串行口势能
TRISC=0X80; //RC7输入,RC6输出
TRISA=0;
TXSTAbits.TXEN=1; //开发送中断
RCSTAbits.CREN=1; //开接受中断
PIE1bits.RCIE=1; //势能接收中断
INTCON=0xc0;
}
#pragma code InterruptVectorHigh=0x08
void InterruptVectorHigh(void)
{
_asm
goto InterruptHandlerHigh
_endasm
}
#pragma code
#pragma interrupt InterruptHandlerHigh
void InterruptHandlerHigh()
{
while(PIR1bits.RCIF==1)
{
TXREG=RCREG;
PORTAbits.RA4=0;
}
}
void main(void)
{
initial();
TXREG=0X55; //发送数据0x55
for(;;); //循环等待中断产生
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?