zoukankan      html  css  js  c++  java
  • 点亮LED

     之前一篇文章介绍了LED发光的原理,只需要将发光二极管对应的STC89C52引脚电平设置为低电平就可以了,好,我们把D1 D3 D5点亮。

     怎么知道哪个引脚控制哪个发光二极管呢? 这个我想配套的电路原理资料会有解释的,我这里也是看视频知道的。

    具体步骤是 先编写代码,编译,然后用开发板对应的烧录程序把最后生成的HEX文件写进去。

    先看下代码:

    #include "reg52.h"
    
    sbit ledD1=P2^0; //P20     
    sbit ledD3=P2^2; //P22
    sbit ledD5=P2^4; //P24
    
    void main()
    {
    
        while(1)
        {
             ledD1=0;
             ledD3=0;
             ledD5=0;
        
        }
    
    
    }

    代码解释:

    sbit ledD1=P2^0; //P20

    要控制哪个引脚,就给这个引脚起一个名字,然后用这个名字设置引脚的数据。值得注意的是,P20引脚在程序中要写成P2^0,其他引脚也是类似的做法。

    我给P20这个引脚起了一个名字,叫ledD1,因为它控制D1这个发光二极管是否发光。

    ledD1=0;

    这是把P20这个引脚设置为低电平,这样D1就亮了。

     while(1)
        {
             ledD1=0;
             ledD3=0;
             ledD5=0;
        
        }

    为什么要有一个循环,因为我们想让D1 D3 D5一直亮,所以就必须一直给P20 P22 P24低电平,重复做一件事情,那不就是用循环吗?事实上我试过,直接把代码写成

     ledD1=0;
     ledD3=0;
     ledD5=0;

    D1 D3 D5也会一直亮,我猜测是编译器给我们自动加上了循环的代码。

    烧录

    电脑用USB线连接开发板之后安装驱动,打开烧录程序,依次点击 选择心片类型 串口号 打开文件 程序下载 

    最后看下效果图:

  • 相关阅读:
    iOS埋点统计
    iOS CrashLog Analysis
    ffmpeg for iOS
    Charles抓包http和https
    reveal查看任意APP
    TesseractOCR
    JSPatch
    Mac如何找到从AppStore下载的正版Xcode安装包、以及Xcode清理缓存
    reveal
    TestFlight
  • 原文地址:https://www.cnblogs.com/yfish/p/10841522.html
Copyright © 2011-2022 走看看