?? main.c
字號:
#define MAIN_C
#include "includes.h"
/***************************/
/*串口通信*/
/*晶振為4MHz*/
/*波特率為9600bps*/
/*發(fā)送采用查詢方式,中斷采用接收方式*/
/*當(dāng)收到的字符達(dá)到所定義的長度時,則在LCD上顯示收到的字符*/
/***************************/
#define BufSize 10
unsigned char RsBuf[BufSize]; //定義接收緩沖器
int RsBytes = 0;
unsigned char flag = 0;
void main(void)
{
unsigned char *msg = "Usart Test!\n";
SREG |= (1<<7); //使能全局中斷
UsartInit();
Init_LCD();
SendNbyte(msg,12);
PutStr("Test Ok\n");
LCD_DisplayString(1,1,"Usart Test!");
delay_nms(2000);
LCD_Clear();
LCD_DisplayString(1,1,"Recive is :");
while(1)
{
if(flag)
{
PutStr(RsBuf);
LCD_DisplayString(2,1,RsBuf);
PutChar('\n');
flag = 0;
}
}
}
//接收中斷子程序
#pragma vector = USART_RXC_vect
__interrupt void RXC_isr( void )
{
RsBuf[RsBytes] = UDR;
RsBytes ++;
//PutChar(RsBuf[RsBytes]); //回顯
if(RsBytes > BufSize)
{
flag = 1;
RsBytes = 0;
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -