如果将c52单片机的串口设置为115200波特率,进行收和发

在物联网开发中,为了与ESP8266芯片进行通讯,需要将C52单片机的串口设置为115200波特率。本文提供了使用11.0592MHz晶振的C52单片机串口接收和发送的完整程序,包括自定义波特率产生函数、发送单个字符和字符串的函数,以及中断服务程序。
摘要由CSDN通过智能技术生成

在物联网开发中,常要和esp8266wifi芯片通讯,因为8266默认为115200则要设置单片机为115200。

博主是用的是c52芯片,11.0592的晶振;以下为串口为115200的收和发的完整程序。

#include <reg52.h>
#include <stdio.h>

#include <stdlib.h>

#include <intrins.h>

char str[50];
int i=0, t=0,flag=0, en=0;

//只是适用于52系列,使用定时器2 

//以下为自定的波特率产生函数

//使用例子 set52_baudrate(11.0592, 115200)

void set52_baudrate(float frequency,long int baudrate){
unsigned int itmp; 
unsigned char tlow,thigh; 
TMOD = 0x20;
itmp=(int)(65536-(frequency*1000000)/(baudrate*32)); 
thigh=itmp/256; 
tlow=itmp%256; 
  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值