美文网首页
单片机小白学习之路(二十五)---串口通信的编程

单片机小白学习之路(二十五)---串口通信的编程

作者: 飞向深空 | 来源:发表于2018-09-11 19:53 被阅读0次

目标:串口通信的编程

(2)串口初始化步骤
①确定T1的工作方式(TMOD寄存器);
②确定串口工作方式(SCON寄存器);
③计算T1的初值(设定波特率),装载TH1、TL1;
④启动T1(TCON中的TR1位);
⑤如果使用中断,需开启串口中断控制位(IE寄存器)。

#include<reg52.h>

typedef unsigned int u16;
typedef unsigned char u8;

void UsartInit()
{
    SCON = 0x50;   //串口通信工作方式1
    TMOD = 0x20;   //计数器工作方式2
    PCON = 0x80;   //波特率加倍
    TH1 = 0xf3;    // 计数器的初值设置,波特率是4800b/s
    TL1 = 0xf3;    
    ES = 1;        //接受中断标志位之一,在scon里
    EA = 1;        // 打开总中断
    TR1 = 1;       //打开计数器
}

void main()
{
    UsartInit();
    while(1);
}


void Usart() interrupt 4
{
    u8 receiveData;  //随便申请个变量

    receiveData = SBUF;  //外部数据传入单片机的SBUF
    RI = 0;    //观察串口方式1的的工作方式发现接受完RI置1,这里的步骤是软件清0,位下一次传入数据做准备
    SBUF = receiveData; //这个步骤是输出数据,把数据放进SBUF中
    while(!TI); //当TI=1时跳出此循环,表示数据全部传入SBUF了
    TI = 0;  //软件清0,为下一次做准备 
}

相关文章

  • 单片机小白学习之路(二十五)---串口通信的编程

    目标:串口通信的编程 (2)串口初始化步骤①确定T1的工作方式(TMOD寄存器);②确定串口工作方式(SCON寄存...

  • 19 串口通信

    单片机STC89C52学习——19 串口通信 汇总:00 单片机STC89C52学习参考教程:普中科技 1 原理 ...

  • 浅谈串口通信

    我个人在学习和使用单片机做过一些开发后由很多体悟,我很偏执的认为(其实也未必偏执):不会串口通信就等于不会单片机。...

  • 单片机小白学习之路(二十四)---单片机串口通信理解(四)

    目标:单片机串口通信理解(四) 4.串口工作方式 (1)方式0方式0时,串行口为同步移位寄存器的输入输出方式。主要...

  • STM32F103之串口配置

    串口应该是单片机必玩的东西啦,而且每个单片机都会至少有1个串口,可以将它们用来与其他设备通信。 接下来我们以最常用...

  • 串口通信

    关于android单片机串口通信 网上有很多关于android串口读写的结果,但是搜出来的都不太让我满意 ,下面贴...

  • 命题-十四章-填空

    关于51单片机的串口,在空闲状态下,TX引脚上的电平为______电平。 【解析】 按照串口通信规则,起始位为低电...

  • QT5串口通信(Hex格式传输)

    参考博客: 博客园-菜头大大:QT串口通信 CSDN-宗师之路:QT实现串口通信(附源码下载) CSDN-xz-c...

  • 51单片机采用中断进行串口通信

    51单片机采用中断方式的串口通信过程及程序分析: 所谓中断方式,就是串口收/发标志位出发中断后,在中断中执行既定操...

  • 1月8日

    今天学的串口通信,知道了很多知识,还做了编程,今天自己还想要加深一下,在串口通信中用中断做了一下编程,但并没有达到...

网友评论

      本文标题:单片机小白学习之路(二十五)---串口通信的编程

      本文链接:https://www.haomeiwen.com/subject/xkcpgftx.html