• 51单片机之串口通信(二)


    现在来了解一下单片机作为发送程序的讲解:
    实现内容:实现单片机从0开始发送,累加,并在电脑串口助手上显示
    注意:在显示的时候应该以HEX文件形式显示

    /*
    项目名称:串口发送实验
    项目内容:串口发送数据,从0开始累加。电脑接收并显示
    时间:2015年12月23日
    项目负责人:YUAN
    */
    #include <reg52.h>
    typedef unsigned char uChar8;
    typedef unsigned int uInt16;

    void DelayMS(uInt16 ValMS);
    void UartInit(void); //串口初始化
    void UartSendData(void); //串口发送数据,即单片机发送数据
    void main(void)
    {
    /*初始化:包括定时器中断的设置,
    串口寄存器设置,波特率设置*/
    UartInit();
    while(1)
    {
    /*发送数据到电脑,并在电脑上显示*/
    UartSendData();
    DelayMS(500);
    }
    }
    void DelayMS(uInt16 ValMS)
    {
    uInt16 uiVal,ujVal;
    for(uiVal=0;uiVal<ValMS;uiVal++)
    for(ujVal=0;ujVal<113;ujVal++);
    }
    void UartInit(void)
    {
    TMOD &= 0x0f; //只改变要改变的
    TMOD |= 0x20; //设置定时器0为工作方式2
    TL1 = 0xfd;
    TH1 = 0xfd; //设置波特率为9600bps
    TR1 = 1; //允许T1开始计数

    SCON &= 0x5f;
    SCON |= 0x50; //设置串口工作在方式1,允许接收数据
    }
    void UartSendData(void)
    {
    static uChar8 num = 0;
    //发送数据,并累加
    SBUF = num;
    num++;
    TI = 0;

    }

     
     
  • 相关阅读:
    typescript 装饰器
    typescript 中的模块
    深入理解typeScript中的泛型类
    泛型 泛型类
    vue跨域
    我喜欢的网站
    vuex
    路由导航守卫
    最多显示两行
    git命令
  • 原文地址:https://www.cnblogs.com/yuanbao825/p/5107668.html
Copyright © 2020-2023  润新知