//--------------------------------------------------------------------------
// Copyright(c) 2012, Qin_Pin_Ele http://51mcu2008.taobao.com
//--------------------------------------------------------------------------
// 版权申明
// 本程序版权 属于 广西勤品电子科技 所有!
//任何个人或组织 在未经许可情况下,用于商业用途
//都将追究其法律责任!
// 勤品电子科技
// 2012年1月26日
//--------------------------------------------------------------------------
// File Name : UART.c
// Author : Qin_Pin_Ele
// Version : V0.01
// Date : 2012-1-26
// Description : 包括串行通信初始化等函数
// Changes : None
//--------------------------------------------------------------------------
#include <reg51.h>
#include "uart.h"
#include <stdio.h>
#define FOSC 11059200L
#define BAUD 9600 //Define baudrate :9600bps
#define T1_value -(FOSC/384/BAUD)
void UART_Init() //通讯有关参数初始化
{
PCON&=0x7f; //SMOD=0 波特率不加倍
TH1=T1_value; //定时器T1的初值:0XFD 波特率为:9600bps Fosc=11.0592MHz
TL1=T1_value;
TMOD=0x21; //T1:工作方式2,8位自动重装定时器
PS=1; //串行中断优先级设为高
EA=1; //开总中断
ET1=0; //关定时器1的中断,只用作波特率发生器
SM0=0;
SM1=1; //串行方式1
SM2=0; //不用多机通信,所以SM2=0
TR1=1; //启动T1
REN=1; //允许串行接收数据
RI=0; //清除串行接收标志位
TI=0; //清除串行发送标志位
ES=1; //允许串行中断
}
/*-------------------------------------------------------
函数名:send_string()
功能:用户函数,发送一个字符串
----------------------------------------------------------*/
void send_string_to_uart(char *char_point)
{
ES=0;
do
{
SBUF = *char_point++; //发送数据
while(!TI); //等待发送完成标志为1
TI =0; //标志清零
}while(*char_point); //保持循环直到字符为'\0'
SBUF ='\r'; //在发送的字符串后面加上回车和换行
while(!TI);
TI =0;
SBUF ='\n';
while(!TI);
TI =0;
ES=1;
}
/*-------------------------------------------------------
函数名:send_char_data()
功能:用户函数,把数据以字符形式发送(把数据转成字符)
----------------------------------------------------------*/
void send_data_to_uart(unsigned long int send_data)
{
static unsigned char variable_loop=0;
unsigned char xdata buf[30];
variable_loop++;
sprintf(buf,"The %3.0f byte data is:%3.0f",(float)variable_loop,(float)send_data);
send_string_to_uart(buf);
}
aaa.rar_stc12c5a60s2_读取STC12C5A60S2_读取序列号
版权申诉
6 浏览量
2022-09-14
20:24:46
上传
评论
收藏 32KB RAR 举报
![avatar](https://profile-avatar.csdnimg.cn/3542a6830a364bf6a0adb34bfd72ce9d_weixin_42662605.jpg!1)
APei
- 粉丝: 65
- 资源: 1万+
最新资源
- 基于C语言的文件操作代码.zip
- Python基于YOLOv7的农作物病虫害识别项目&防治系统(源码&教程)
- miniproject2.py
- 基于YOLOv7的植物虫害识别&防治系统(源码&教程)
- Java项目-基于SSM+Vue的大学生企业推荐系统的设计与实现(源码+数据库脚本+部署视频+代码讲解视频+全套软件)
- 基于FreeRTOS+STM32CubeMX+LCD1602+MCP4162(SPI接口)的数字电位器Proteus仿真
- Java项目-基于SSM+Vue的大学生兼职信息系统的设计与实现(源码+数据库脚本+部署视频+代码讲解视频+全套软件)
- PHP开发学生成绩管理系统例子.rar
- Java项目基于SSM实现的学生竞赛模拟系统+代码+论文+答辩PPT
- 基于FreeRTOS+STM32CubeMX+LCD1602+MCP4162(SPI接口)的数字电位器Proteus仿真
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)