首页 > 电脑专区 > 电脑教程 >

51单片机基本小灯控制

来源:互联网 2023-02-20 16:52:20 165

51单片机是最基础的单片机,用来学习 C 语言基础是最适合不过的,现在也有很多不同的开发板,这里从基础开始记录一下我学习 51 单片机开发的过程。最开始就是控制LED了YD6办公区 - 实用经验教程分享!

51单片机基本小灯控制YD6办公区 - 实用经验教程分享!

工具/原料

  • 51单片机开发板

方法/步骤

  • 1

    点亮一个 LED 代码:YD6办公区 - 实用经验教程分享!

    #include "reg52.h" YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    sbit led=P0^0;YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    void main()YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    while(1)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    led=1;//P0.0端口设置为低电平YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    上传到开发板中YD6办公区 - 实用经验教程分享!

  • 2

    实验现象如下:YD6办公区 - 实用经验教程分享!

    51单片机基本小灯控制YD6办公区 - 实用经验教程分享!

  • 3

    1 个 发光二极管闪烁实验代码:YD6办公区 - 实用经验教程分享!

    #include reg52.h>YD6办公区 - 实用经验教程分享!

    #define uchar unsigned charYD6办公区 - 实用经验教程分享!

    #define uint unsigned intYD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    sbit LED = P1^0;YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    void DelayMS(uint xms)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    uint i,j;YD6办公区 - 实用经验教程分享!

    for(i=xms;i>0;i--)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    for(j=110;j>0;j--);YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    void main()YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    while(1)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    LED = ~LED;YD6办公区 - 实用经验教程分享!

    DelayMS(500);YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    上传到开发板中YD6办公区 - 实用经验教程分享!

  • 4

    实验现象如下:YD6办公区 - 实用经验教程分享!

  • 4此文章未经许可获取自百度经验
  • 5

    流水点亮 LED 代码编辑:YD6办公区 - 实用经验教程分享!

    #include reg52.h>YD6办公区 - 实用经验教程分享!

    #include intrins.h>YD6办公区 - 实用经验教程分享!

    #define uchar unsigned charYD6办公区 - 实用经验教程分享!

    #define uint unsigned intYD6办公区 - 实用经验教程分享!

    uint x;YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    void delayms(uint xms)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    uint i,j;YD6办公区 - 实用经验教程分享!

    for(i=xms;i>0;i--)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    for(j=110;j>0;j--);YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    void main()YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    x = 0x01;YD6办公区 - 实用经验教程分享!

    while(1)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    P0 = x;YD6办公区 - 实用经验教程分享!

    delayms(500);YD6办公区 - 实用经验教程分享!

    x = _crol_(x,1);YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    上传到51开发板中YD6办公区 - 实用经验教程分享!

  • 6

    左右循环点亮 LED 代码编辑:YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    #include reg52.h>YD6办公区 - 实用经验教程分享!

    #include intrins.h>YD6办公区 - 实用经验教程分享!

    #define uchar unsigned charYD6办公区 - 实用经验教程分享!

    #define uint unsigned intYD6办公区 - 实用经验教程分享!

    uchar aa;YD6办公区 - 实用经验教程分享!

    void delayms(uint xms)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    uint i,j;YD6办公区 - 实用经验教程分享!

    for(i=xms;i>0;i--)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    for(j=110;j>0;j--);YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    void main()YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    uint k;YD6办公区 - 实用经验教程分享!

    P0 = 0x01;YD6办公区 - 实用经验教程分享!

    delayms(500);YD6办公区 - 实用经验教程分享!

    YD6办公区 - 实用经验教程分享!

    while(1)YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    for(k=0;k7;k )YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    delayms(500);YD6办公区 - 实用经验教程分享!

    P0 = _crol_(P0,1);YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    for(k=0;k7;k )YD6办公区 - 实用经验教程分享!

    {YD6办公区 - 实用经验教程分享!

    delayms(500);YD6办公区 - 实用经验教程分享!

    P0 = _cror_(P0,1);YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    }YD6办公区 - 实用经验教程分享!

    上传到开发板中YD6办公区 - 实用经验教程分享!

  • 7

    实验效果如下:YD6办公区 - 实用经验教程分享!

  • 注意事项

    • 简单的 LED 控制,应该还有更多的花样,大家一起做起来吧~
    • 希望经验可以帮到您,也希望您能帮我点个赞,谢谢

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!YD6办公区 - 实用经验教程分享!


    标签: 硬件基本控制

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码