没有合适的资源?快使用搜索试试~ 我知道了~
//---------------------------------------------------------------------- // UART.C // 通用模拟串口程序 // 资源需求:一个硬件计数器,两个I/O口 // 硬件计数器的计数时间设定为三倍波特率 // 定义的两个I/O口,用于发送和接收,分别用在receive()和transmit(char)中 // 设立了专门的接收缓冲区,用于存储接收数据 // 注意:必需根据波特率来设定定时器; // 每次通信开始必须调用初始化函数init_uart()
资源详情
资源评论
资源推荐
单片机与单片机与DSP中的单片机通用模拟串口中的单片机通用模拟串口C程序程序
//---------------------------------------------------------------------- // UART.C // 通用模拟串口程序 // 资源需
求:一个硬件计数器,两个I/O口 // 硬件计数器的计数时间设定为三倍波特率 // 定义的两个I/O口,用于
发送和接收,分别用在receive()和transmit(char)中 // 设立了专门的接收缓冲区,用于存储接收数据
// 注意:必需根据波特率来设定定时器; // 每次通信开始必须调用初始化函数init_uart()
//----------------------------------------------------------------------
// UART.C
// 通用模拟串口程序
// 资源需求:一个硬件计数器,两个I/O口
// 硬件计数器的计数时间设定为三倍波特率
// 定义的两个I/O口,用于发送和接收,分别用在receive()和transmit(char)中
// 设立了专门的接收缓冲区,用于存储接收数据
// 注意:必需根据波特率来设定定时器;
// 每次通信开始必须调用初始化函数init_uart()
//----------------------------------------------------------------------------------------------------------------
//----------------------------------管脚定义、库函数声明-------------------------------------------------
#include <reg51.h>
#include <stdio.h>
//端口定义
sbit RXD3=P1^0;
sbit TXD3=P1^1;
//-----------------------------------------------变量声明-----------------------------------------------------
#define IN_BUF_SIZE 10 //输入缓冲区长度定义
#define TRUE 1
#define FALSE 0
static unsigned char inbuf[IN_BUF_SIZE]; //输入缓冲区
static unsigned char qin = 0;
static unsigned char qout = 0;
static char flag_rx_waiting_for_stop_bit;
static char flag_rx_off;
static char rx_mask;
static char flag_rx_ready;
static char flag_tx_ready;
static char timer_rx_ctr;
static char timer_tx_ctr;
static char bits_left_in_rx;
static char bits_left_in_tx;
static char rx_num_of_bits;
weixin_38748721
- 粉丝: 2
- 资源: 901
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0