📄 com.c
字号:
#ifndef com_c
#define com_c
#include"main.h"
//全局变量
uchar com_flag; //标志
uchar com_rece; //接受
//低层函数
//高层次函数
//--------------------
// 串口的初始化 入口:拨特率
//--------------------
void com_init(uint bt)
{
RCAP2H = bt/0x100;
RCAP2L = bt%0x100;
SCON = 0x50; //8bit
RCLK = 1; //t2con
TCLK = 1;
TR2 = 1;
ES = 1;
PS = 1;
TI = 1;
}
//--------------------
// 串口发送字节
//--------------------
void com_sendchar(uchar asc)
{
while(TI);
SBUF =asc;
}
//--------------------
// 串口发送字符串
//--------------------
void com_sendstr(uchar* ascstr,uchar asclen)
{
while(asclen--)
{
while ( TI )//确保可以发送
;
SBUF = *ascstr++;
}
}
//--------------------
// 串口接受中断
//--------------------
void chk_rt( void )interrupt 4 //中断接受和发送
{
if ( TI )//发送中断 没有写
{
TI = 0;
}
if ( RI ) //接受中断
{
RI = 0;
com_rece=SBUF; //受到数据
set_one(com_flag,comf_reok);
while(TI);
SBUF = com_rece; //回送 测试完删除
}
}
//--------------------
// 串口非中断接受
//--------------------
#endif
/*
相关说明
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -