📄 serial.c
字号:
#include <reg52.H>
#include <stdio.h>
#include <string.h>
//#include <rtx51tny.h>
//#include "dir\config.h"
#include "serial.h"
#include <ABSACC.H>
//uchar serial_rec_byte;
//extern uchar code num_dis[10];
/****************************************************************************
* 名称:void int_serial(void) interrupt 4
* 功能:串口中断
* 入口参数:无
* 出口参数:无
****************************************************************************/
/*
void int_serial(void) interrupt 4
{
uchar a;
EA=0;
if(RI)
{
RI=0;
serial_rec_byte++;
a=SBUF;
LCM1602(0,0,1,&num_dis[(serial_rec_byte/100)]);
LCM1602(1,0,1,&num_dis[(serial_rec_byte/10)%10]);
LCM1602(2,0,1,&num_dis[serial_rec_byte%10]);
LCM1602(4,0,1,&a);
}
if(TI)
{
TI=0;
}
EA=1;
}
*/
/****************************************************************************
* 名称:void test_serial(void)
* 功能:测试串口,向超级终端发送一串字符。
* 入口参数:无
* 出口参数:无
****************************************************************************/
void test_serial(void)
{
//printf("test serial ok!\n");
//printf("\n\n***************************************************************\n");
//printf("***** Serial Test OK! *****\n");
//printf("***** 串口测试完成 *****\n");
//printf("***** 系统复位 *****\n");
printf("***************************************************************\n");
}
/****************************************************************************
* 名称:void test_ram(void)
* 功能:测试RAM,先向RAM中写入一定量已知数据,然后向超级终端发送数据
* 入口参数:无
* 出口参数:无
****************************************************************************/
/*
void test_ram(void)
{
uint a;
for(a=0;a<32*1024;a++)
{
XBYTE[a]=a%0xff;
printf("NO%d:%d\n",(int)a,(int)XBYTE[a]);
}
}
*/
/****************************************************************************
* 名称:void serial_init(void)
* 功能:串口初始化。
* 入口参数:无
* 出口参数:无
****************************************************************************/
void serial_init(void)
{
SCON = 0X52; /* SCON: SM0|SM1|SM2|REN|TB8|RB8|TI|RI */
PCON = 0X80 | PCON; /* PCON: SMOD | - | - | - | GF1|GF0|PD |IDL| */
TMOD = 0X20; /* TMOD: GATE|C/T|M1|M0|GATE|C/T|M1|M0 */
TCON = 0x69; /* TCON: TF1|TR1|TF0|TR0|IE1|IT1|IE0|IT0 */
//TH1 = 0xE5; /* 2400@12M */
TH1=0x97; /* 300@6M */
//TH1 = 0xF9; /* 9600@12M 这时误差太大,还是用上面的比较好 */ ]
//ES=1;
//EA=1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -