91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

單片機(jī)如何點(diǎn)亮LED燈

CHANBAEK ? 來源: Zi Jin Code ? 作者: 錕醬不是醬 ? 2023-11-01 11:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

學(xué)習(xí)單片機(jī)

從點(diǎn)亮第一顆LED燈開始

這一節(jié)學(xué)堂,我們來學(xué)習(xí)如何點(diǎn)亮一LED燈

首先是電路設(shè)計(jì)以及點(diǎn)亮這顆LED的方法

我們把LED燈接在P1.0上,使用的是上拉接法,如圖:

圖片

現(xiàn)在LED接好了,那么要怎樣點(diǎn)亮LED呢?

觀察我們的電路,這個電路里面LED的負(fù)極接在P1.0上,我們給P1.0寫低電平的時候P1.0相當(dāng)于一個負(fù)極,電流從LED正極流過,負(fù)極流出,LED導(dǎo)通,LED就點(diǎn)亮了

當(dāng)我們給P1.0寫高電平的時候,相當(dāng)于LED兩級都接上了正極,這時候LED不導(dǎo)通,所以LED就不能被點(diǎn)亮

這里可能有朋友會問,為何使用上拉接法,直接把LED的正極接在P1.0上,給P1.0寫高電平LED導(dǎo)通就點(diǎn)亮,不好嗎?

理論上這樣電路設(shè)計(jì)和操作更加簡便,但是由于C51的IO能提供的高電平電流很弱,如果把LED直接接在IO上,IO寫高電平時提供的電流不足以點(diǎn)亮LED燈或者點(diǎn)亮的LED燈亮度很低

因此我們使用上拉接法,這樣流過LED的電流就會更大,LED也就更亮

知道點(diǎn)亮LED就是給P1.0寫高電平,那么要怎樣才能操作P1.0呢?

這里我們就要操作C51的IO咯

在C51中,一共有四組IO:P0 P1 P2 P3

圖片

每一組IO有八只IO,一組IO在單片機(jī)內(nèi)對應(yīng)一個8位的寄存器,修改這個寄存器的值(0/1)單片機(jī)就能輸出0/1了

在reg52.h里面,已經(jīng)對這幾組IO的寄存器地址進(jìn)行了定義,我們要用的時候,可以直接使用關(guān)鍵字:P0,P1,P2,P3

我們可以對整組IO進(jìn)行修改,只需要給他賦上一個八位十六進(jìn)制數(shù)值即可

P1 = 0xFF;

也可以用sbit對一組IO中的一個IO定義一個名字,直接改變這個IO的0/1

比如說我們的LED接在P1.0,那么我給P1.0的IO定義一個叫LED的關(guān)鍵字

sbit LED = P1^0;

注意這里的格式

sbit 名稱 = IO組^IO標(biāo)號;

P1.0對應(yīng)的IO組是P1,P1上的.0,所以我們寫作“P1^0”

一切準(zhǔn)備就緒,上代碼

下面是整個程序的代碼

#include< reg52.h >


sbit LED = P1^0;


void mian()
{
  LED = 1;//復(fù)位LED狀態(tài),保證剛開始時候LED熄滅

  LED = 0;//拉低LED的負(fù)極引腳,點(diǎn)亮我們的LED
  while(1){}//執(zhí)行到這里,結(jié)束
}

上傳程序,你會發(fā)現(xiàn),LED點(diǎn)亮了!!

我們也可以對整個P1IO組進(jìn)行操作,

熄滅LED燈的時候,我們給P1所有的IO都寫上1,對應(yīng)0xFF

P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0

熄滅LED燈的時候,我們給P1.0單獨(dú)寫上0,對應(yīng)0xFE

P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0
#include< reg52.h >


void mian()
{
  P1 = 0xFF;//復(fù)位LED狀態(tài),保證剛開始時候LED熄滅
  P1 = 0xFE;//拉低LED的負(fù)極引腳,點(diǎn)亮我們的LED
  while(1){}
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6076

    文章

    45499

    瀏覽量

    670619
  • led燈
    +關(guān)注

    關(guān)注

    22

    文章

    1606

    瀏覽量

    111890
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5608

    瀏覽量

    130016
  • 電路設(shè)計(jì)
    +關(guān)注

    關(guān)注

    6742

    文章

    2703

    瀏覽量

    219554
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    STC15單片機(jī)為什么點(diǎn)亮LED的時候,點(diǎn)陣也要亮?

    STC15單片機(jī)為什么點(diǎn)亮LED的時候,點(diǎn)陣也要亮?
    發(fā)表于 12-21 11:22

    如何去完成一種基于51單片機(jī)點(diǎn)亮led的實(shí)驗(yàn)?

    如何去完成一種基于51單片機(jī)點(diǎn)亮led的實(shí)驗(yàn)?怎樣去編寫實(shí)驗(yàn)代碼?
    發(fā)表于 07-14 07:26

    51單片機(jī)點(diǎn)亮led實(shí)驗(yàn)

    keil + protues 51單片機(jī)點(diǎn)亮led實(shí)驗(yàn)環(huán)境:keil4 + proteus 8proteus操作:1.新建工程,名字隨意。工程已經(jīng)搞好。2.搞個芯片進(jìn)來,爽一波。添加
    發(fā)表于 07-15 08:38

    51單片機(jī)點(diǎn)亮led程序

    51單片機(jī)點(diǎn)亮led程序——點(diǎn)亮LED1、對照開
    發(fā)表于 07-21 08:11

    如何去實(shí)現(xiàn)一種基于STC89C52單片機(jī)點(diǎn)亮LED的設(shè)計(jì)

    如何去實(shí)現(xiàn)一種基于STC89C52單片機(jī)點(diǎn)亮LED的設(shè)計(jì)?有哪些操作步驟?
    發(fā)表于 09-23 06:28

    如何去實(shí)現(xiàn)一種基于51單片機(jī)點(diǎn)亮led的設(shè)計(jì)

    如何去實(shí)現(xiàn)一種基于51單片機(jī)點(diǎn)亮led的設(shè)計(jì)?如何對基于51單片機(jī)led
    發(fā)表于 09-28 08:20

    如何利用51單片機(jī)點(diǎn)亮LED

    如何利用51單片機(jī)點(diǎn)亮LED?
    發(fā)表于 10-09 06:18

    C51單片機(jī)如何點(diǎn)亮LED?

    C51單片機(jī)如何點(diǎn)亮LED?
    發(fā)表于 10-15 06:00

    如何利用TM4C123G單片機(jī)點(diǎn)亮LED?

    如何利用TM4C123G單片機(jī)點(diǎn)亮LED?
    發(fā)表于 10-20 07:24

    如何去實(shí)現(xiàn)基于一種51單片機(jī)點(diǎn)亮LED的程序

    如何去實(shí)現(xiàn)基于一種51單片機(jī)點(diǎn)亮LED的程序?
    發(fā)表于 10-20 08:05

    金沙灘開發(fā)板單片機(jī)如何點(diǎn)亮led?

    金沙灘開發(fā)板單片機(jī)如何點(diǎn)亮led
    發(fā)表于 10-26 07:16

    如何利用51單片機(jī)點(diǎn)亮LED?

    如何利用51單片機(jī)點(diǎn)亮LED?
    發(fā)表于 10-28 06:47

    如何利用51單片機(jī)點(diǎn)亮LED實(shí)現(xiàn)跑馬燈效果?

    如何利用51單片機(jī)點(diǎn)亮LED實(shí)現(xiàn)跑馬燈效果?
    發(fā)表于 11-08 06:19

    如何使用合泰HT32F52352單片機(jī)點(diǎn)亮LED?

    如何使用合泰HT32F52352單片機(jī)點(diǎn)亮LED?
    發(fā)表于 01-27 07:29

    使用單片機(jī)點(diǎn)亮LED的程序和工程文件免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)點(diǎn)亮LED的程序和工程文件免費(fèi)下載。
    發(fā)表于 09-25 17:33 ?16次下載
    使用<b class='flag-5'>單片機(jī)</b><b class='flag-5'>點(diǎn)亮</b><b class='flag-5'>LED</b><b class='flag-5'>燈</b>的程序和工程文件免費(fèi)下載