com.c
来自「该例程使用51单片机读写8019完成网络传输」· C语言 代码 · 共 77 行
C
77 行
#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 + =
减小字号Ctrl + -
显示快捷键?