IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 基于Proteus的51单片机学习笔记之串口的使用 -> 正文阅读

[嵌入式]基于Proteus的51单片机学习笔记之串口的使用

串口是在单片机中用的比较多的通信方式,下面废话不多说直接上代码。

#include "reg52.h"
#include "uart.h"
/******************/
/*	函数名:void UART_Init()	
 *	日期:2021/4/24
 *	参数:无 	 	
 *	功能:串口初始化
 *     		设置波特率为9600,使用定时器1,晶振频率11.0592Mhz
 *	例子:
/*****************/
void UART_Init()
{
	//设置波特率9600
	TMOD |= 0x20; //定时器1工作于自动重装载模式
	TH1 = 0xfd;
	TH0 = 0xfd;
	TR1 = 1;	  //启动定时器1
	ET1 = 0;	  //禁止定时器1中断
	PCON &= 0x7f; //设置SMOD=0,波特率不加倍
	SCON = 0x50;  //工作于方式1  8位无校验异步通信的收发模式,并清空收发中断标志位
	EA = 1;		  //总中断允许
	ES = 0;		  //禁止串口收发中断(本程序中不使用串口中断)
}
/******************/
/*	函数名:void UART_Init()	
 * 	日期:2021/4/24
 *	参数:无
 *	功能:串口发送函数
 *	例子:
/*****************/
//
void UART_Send_Data(u8 byte)
{
	SBUF = byte;
	while (!TI)
		;	//等待串口数据发送完毕
	TI = 0; //将发送中断标志位清0,为下次发送数据做准备
}
/******************/
/*	函数名:void UART_Init()	
 *	日期:2021/4/24
 *	参数:无
 *	功能:串口接收函数
 *	例子:
/*****************/
//
u8 UART_Receive_Data()
{
	u8 temp;
	while (!RI)
		; //等待串口接收到数据(RI被置1)
	temp = SBUF;
	RI = 0; //清空接收中断标志位,为下次接收做准备
	return temp;
}

在51单片机中对于串口的初始化一定要分清楚各个寄存器的功能,因为是寄存器操作,串口的配置参数依赖与寄存器的配置是否正确。

具体关于51单片机的寄存器功能网络上资料很多各位可以自行查询。单片机的串口通讯也是一个学习的点,有机会分享一些奇奇怪怪的问题。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-08-08 11:29:42  更:2021-08-08 11:30:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 1:02:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计