#include <STC12C5A60S2.H>typedef unsigned char uchar       ;
typedef unsigned int uint       ;uint Smog = 0 ;void Uart_Init(void)
{EA=1;             //打开总中断PCON &= 0x7F;     //波特率不加倍/*定时器  串口模式和51一样允许独立波特率发生器运行串口2波特率不加倍允许使用内部扩展RAM独立波特率发生器作为波特率的发生器*/AUXR  = 0x11;BRT = 0xFD ;   //波特率为9600/*串口1*/ES=1;             //打开串口1中断回执/*工作在方式一允许串行接收SCON复位后全是0可位寻址 TI RI*/SCON |= 0x50;      //0101 0000/*串口2*//*工作在方式一允许串行接收S2CON复位后全是0不可位寻址S2TI   S2RI*/S2CON |= 0x50;IE2 |= 1 ;      //IE2不可位寻址,使能ES2串口中断回调}void Uart1Bit(char dat)
{SBUF=dat;while(!TI);TI=0;
}void Uart1Byte(char *byte)
{while(*byte != '\0'){Uart1Bit(*byte++);}
}
void Uart2Bit(char dat)
{S2BUF=dat;while(!(S2CON&2));   //等待S2TI=1 说明发送完成S2CON &= ~2 ;      //清除 S2TI发送标志位
}void Uart2Byte(char *byte)
{while(*byte != '\0'){Uart2Bit(*byte++);}
}void main()
{Uart_Init(); //涓插彛1鍒濆鍖?while(1){}
}
//=====================================================
void interUart1() interrupt 4
{if(RI){RI = 0 ;Smog = SBUF ;Uart1Byte("Uart1:");Uart1Bit(Smog);Uart1Byte("\r\n");}}void interUart2() interrupt 8
{if(S2CON&1)   //S2RI=1说明接收完成{S2CON &= ~1 ;  //清除接收完成标志位Smog = S2BUF ;Uart2Byte("Uart2:");Uart2Bit(Smog);Uart2Byte("\r\n");}}

链接:https://pan.baidu.com/s/1FJbavsypA5jrPvuOCikW5g
提取码:1111
复制这段内容后打开百度网盘手机App,操作更方便哦

STC12单片机双串口共用独立波特率发生器发生波特率相关推荐

  1. STC12C5A60S2单片机-双串口通信

    STC12C5A60S2单片机是一款功能比较强大的单片机,它拥有两个全双工串行通信接口,串口1的功能及操作与传统51单片机串行口相同:特殊的是STC12C5A60S2单片机内部有一个独立波特率发生器, ...

  2. STC12C5A60S2串口通信(使用独立波特率发生器)

    快速导航 STC12已封装好的函数库 使用STC12C5A60S2做串口通信波特率初始化可以使用STC-ISP波特率计算器自动生成 本Demo使用STC12独立波特率发生器,晶振11.0592,波特率 ...

  3. stc12串口收发计算机,半双工串口通信实例36:STC12单片机和STC12单片机串口通信...

    半双工串口通信实例36:STC12单片机和STC12单片机串口通信 一.串口通信实例目的: STC12单片机主站数字量输入DI01~DI08控制STC12单片机从站数字量输出DO01~DO08: ST ...

  4. STC11/10xx系列单片机独立波特率发生器设置

    51的定时器本来就很不够用,用串口时再使用定时器1来产生波特率,那系统使用定时器就更加捉襟见肘了,STC11/10xx系列单片机内部自带的串口独立波特率发生器,使用它就可以将定时器1释放出来当定时器来 ...

  5. 51单片机定时器2做串口波特率发生器

    利用定时器计数器2作为串口波特率发生器(reg52.h文件缺少对T2CON的定义,需自己定义,在reg52.h头文件加sfr T2CON = 0xC8;). 程序如下: #include " ...

  6. 51单片机之串口波特率配置

    51单片机之串口波特率计算 方式0的波特率配置 方式2的波特率配置 方式1和3的波特率配置 232串口模式,共有4钟方式,其中方式0.方式2的波特率是固定的.方式1.方式3的是可变波特率,这两个是用T ...

  7. 【STM32学习】——串口通信协议STM32-USART外设数据帧/输入数据策略/波特率发生器串口发送/接受实操

    文章目录 前言 一.串口通信 1.通信接口 2.串口通信 (1)串口简介 (2)串口硬件电路 (3)串口软件部分 二.STM32的USART外设 1.USART简介 2.图示详解 三.细节问题 1.数 ...

  8. 51单片机——UART串口通讯-波特率可选,增添定时器2产生波特率1.0

    1.51单片机自带硬件串口接口,使用时只需要进行寄存器配置即可. 2.定时器1波特率有4种可选择,默认9600bps.另外还有1个字节的发送函数,字符串发送函数. 3.增添:定时器2波特率有5种可选择 ...

  9. STC12单片机串口U盘测试程序源码

    2019独角兽企业重金招聘Python工程师标准>>> 开发工具: C++ 对象:  51单片机 文件: STC12单片机串口测试程序源码 文件说明: www.usbing.net ...

最新文章

  1. 基于深度学习网络的运动想象BCI系统及其应用
  2. 【Eclipse 插件】JD-Eclipse
  3. OSGi简介–模块化Java
  4. 磁盘阵列 (RAID)简介
  5. 部门树_神奇!十堰这个小山村竟然藏着两棵500多年的爱情树!
  6. ORACLE EXP/IMP的使用详解 (解决9i(window)导入到10G的乱码问题)
  7. 论文笔记_S2D.19_2018-PR_基于膨胀卷积神经网络与软加权和推理的分层融合单目深度估计
  8. Python 字典 get() 方法
  9. AD18安装教程 附软件安装包和汉化包
  10. 深入理解JVM虚拟机笔记——类加载机制
  11. UNITY 对话系统
  12. 小工具-悬浮窗LogViewer在android手机上查看数据日志
  13. Android新浪微博分享
  14. 0matlab计算锚泊系统,一种基于蒙特卡洛仿真的计算锚地容量的方法与流程
  15. PR期刊投稿要求(整体要求、Title page、Highlight)
  16. one-hot向量形式
  17. 2018-8-10-win10-uwp-使用资源在后台创建控件
  18. 使用WinDbg —— .NET篇 (一)
  19. css字体样式渐变导致360浏览器vue兼容性问题
  20. 零基础ESP8266学习篇-认识esp8266

热门文章

  1. electron_笔记
  2. 视觉SLAM十四讲CH8代码解析及课后习题详解
  3. access中的IIf函数
  4. google adsence收款超过5w美金额度该怎么继续收款?
  5. Linux配置Wifi模块
  6. 查看联通GPON/4+1+WiFi(2.4G)光猫管理员密码的一种思路
  7. 此计算机无法与域 cluster,创建0xc000005e群集时出现错误 - Windows Server | Microsoft Docs...
  8. 最新的VMware Workstation Pro 17安装教程+安装包下载
  9. c语言单字符输入和输出函数分别为,c语言第六章字符数据
  10. 树莓派与DS18B20获取环境温度(Linux)