女人荫蒂被添全过程13种图片,亚洲+欧美+在线,欧洲精品无码一区二区三区 ,在厨房拨开内裤进入毛片

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

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

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

51單片機(jī)使用C語言點(diǎn)亮閃爍LED燈

天才小貍花 ? 來源:Sigle_chip ? 作者:Sigle_chip ? 2022-08-16 08:59 ? 次閱讀

導(dǎo)語

下面是點(diǎn)亮51單片機(jī)使用C語言閃爍LED燈的的一段代碼,也是我們邁入C51的第一步。我們將從頭開始,一步步講解下面的程序。

#include

#define uchar unsigned char
#define uintunsigned int

sbit LED= P1^0;

void main()
{
LED=0;
while(1)
{
LED=0;
delay(1000);
LED=1;
delay(1000);
}
}

void delay(uchar ms)
{
uint x=0, y=0;
for(x=xms;x>=0;x--)
for(y=110;y>=0;y--);
}

.C to .Hex

在從編寫的上述文本程序到實(shí)際燒錄到單片機(jī)的Hex二進(jìn)制機(jī)器語言,keil這個(gè)大家伙幫我們做了很多的東西。

單片機(jī)可以看作是一個(gè)功能完全的計(jì)算機(jī),同計(jì)算機(jī)一樣,單片機(jī)只能識別機(jī)器語言。也就是用二進(jìn)制代碼表達(dá)指令,但更確切一點(diǎn)來說,機(jī)器語言是由高低電位構(gòu)成的,指定高電位為1,低電位為0,而我們對電路進(jìn)行一定的設(shè)計(jì)后,電路中高低電位的輸入輸出正好與2進(jìn)制狀態(tài)相符,所以我們也就看到了 1、0的那種表現(xiàn)形式。

同時(shí),為了簡化二進(jìn)制的表現(xiàn)形式,我們使用16進(jìn)制來表示,即Hex文件。

但編寫機(jī)器語言太過繁瑣,人們開始用助記符代替機(jī)器指令的操作碼,用地址符號或標(biāo)號代替指令或操作數(shù)的地址。這就是匯編語言,但低級,不具有移植性,能直接訪問計(jì)算機(jī)硬件,效率高,占用資源少,學(xué)習(xí)入門較為困難,切移植性差。

C語言是一種高級編程語言,與低級語言相對。它是以人類的日常語言為基礎(chǔ)的一種編程語言,使用一般人易于接受的文字來表示,有較高的可讀性,以方便對電腦認(rèn)知較淺的人亦可以大概明白其內(nèi)容。

所編寫的C語言通過Keil進(jìn)行預(yù)處理,編譯,鏈接等就生成了Hex文件,我們將Hex文件燒錄到單片機(jī)中,復(fù)位就運(yùn)行起來了。

預(yù)處理

預(yù)處理以#開頭,在從.C到 .hex之前,擴(kuò)展C語言程序設(shè)計(jì)的環(huán)境。

#include 的作用將 reg52.h文件復(fù)制到編譯的源文件中,使用<>或" "包含文件名。

#define uchar unsigned char的作用是將unsigned char替換為uchar。

也常用#define定義一些函數(shù)宏、常量等。如#define PI 3.14、#define ABS(x) (x)<0?-(x):(x)

還有更多的預(yù)處理方式,暫無必要,勿增新知。

變量

變量格式

[存儲種類]數(shù)據(jù)類型[存儲器類型]變量名表 賦值;

其中存儲種類和存儲器類型在初學(xué)時(shí)不必了解,編譯器會(huì)自動(dòng)的賦予默認(rèn)值。

變量名是C51區(qū)分不同變量,為不同變量取的名稱。在C51中規(guī)定變量名可以由字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字母必須為字母或下劃線。

數(shù)據(jù)類型用于向單片機(jī)申請內(nèi)存大小,也決定了變量的數(shù)值范圍。在單片機(jī)的內(nèi)部是以字節(jié)為操作,一個(gè)字節(jié)八個(gè)位,即一個(gè)字節(jié)所表示的數(shù)據(jù)范圍在 0000 0000到 1111 1111;在此,二進(jìn)制沒有符號位,于是人為的使用最高位表示符號位,1為負(fù),0為1;即表示范圍為 1111 1111到 0111 1111,即十進(jìn)制的-128到127。但大多數(shù)時(shí)候,單片機(jī)很少用到賦值,因此我們在數(shù)據(jù)類型前加上修飾符unsigned來去掉符號位。

在C語言中,無法直接去操作變量中的單獨(dú)的某一位,但C51中添加了bit位,是 c51編譯器的一種擴(kuò)充數(shù)據(jù)類型,利用它可定義一個(gè)位標(biāo)量,它的值是一個(gè)二進(jìn)制位,不是 0就是 1,sbit同樣是單片機(jī)c語言中的一種擴(kuò)充數(shù)據(jù)類型,利用它能訪問芯片內(nèi)部的 RAM中的可尋址位或特殊功能寄存器中的可尋址位。

函數(shù)

void main()和 void delay(uchar ms)都是函數(shù);

返回類型函數(shù)名(數(shù)據(jù)類型形參名稱...){
功能代碼;
}

函數(shù)是指一段可以直接被另一段程序或代碼引用的程序或代碼。也叫做子程序、方法。

void表示沒有返回值,大多數(shù)的情況下,我們將使用void修飾的函數(shù),也可以使用有返回值的方式返回uint等;

其中main()是每一個(gè)函數(shù)中最重要的,單片機(jī)開機(jī)復(fù)位后將運(yùn)行main()函數(shù),當(dāng)他執(zhí)行完后,程序?qū)?huì)從頭開始,我們不希望這樣,因此我們添加了

while(1){

}

這時(shí)一行循環(huán)語句,并且是一個(gè)死循環(huán),即會(huì)一直循環(huán){ }內(nèi)的程序。

delay()是一個(gè)延時(shí)函數(shù),我們向括號中填寫ms,程序便會(huì)贊同多少ms,他用于實(shí)現(xiàn)的延時(shí)的子功能;

運(yùn)算符

LED=0;

給led賦值0,即將右邊的值填入左邊,填入的值不應(yīng)超過數(shù)據(jù)類型的表示范圍。

y--

運(yùn)行過后,y將減少1;

y>=0

布爾運(yùn)算,只有兩個(gè)值,0或 1,大于0為真1,反之為0。

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • led
    led
    +關(guān)注

    關(guān)注

    242

    文章

    23770

    瀏覽量

    671860
  • 51單片機(jī)
    +關(guān)注

    關(guān)注

    277

    文章

    5710

    瀏覽量

    126878
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7630

    瀏覽量

    140763
收藏 人收藏

    評論

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

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

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

    51單片機(jī)的兩種方法點(diǎn)亮LEDC語言程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用51單片機(jī)的兩種方法總線操作和位操作點(diǎn)亮LEDC語言程序免費(fèi)下
    發(fā)表于 08-19 17:31 ?1次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>的兩種方法<b class='flag-5'>點(diǎn)亮</b><b class='flag-5'>LED</b>的<b class='flag-5'>C</b><b class='flag-5'>語言</b>程序免費(fèi)下載

    使用51單片機(jī)閃爍LED的代碼免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用51單片機(jī)閃爍LED的代碼免費(fèi)下載。
    發(fā)表于 07-03 17:41 ?2次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>閃爍</b><b class='flag-5'>LED</b><b class='flag-5'>燈</b>的代碼免費(fèi)下載

    使用單片機(jī)實(shí)現(xiàn)不同頻率閃爍1個(gè)LEDC語言程序?qū)嵗赓M(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)實(shí)現(xiàn)不同頻率閃爍1個(gè)LEDC語言程序?qū)嵗赓M(fèi)下載。
    發(fā)表于 11-06 17:11 ?9次下載
    使用<b class='flag-5'>單片機(jī)</b>實(shí)現(xiàn)不同頻率<b class='flag-5'>閃爍</b>1個(gè)<b class='flag-5'>LED</b><b class='flag-5'>燈</b>的<b class='flag-5'>C</b><b class='flag-5'>語言</b>程序?qū)嵗赓M(fèi)下載

    使用單片機(jī)實(shí)現(xiàn)不同頻率閃爍多個(gè)LEDC語言程序?qū)嵗赓M(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)實(shí)現(xiàn)不同頻率閃爍多個(gè)LEDC語言程序?qū)嵗赓M(fèi)下載。
    發(fā)表于 11-06 17:11 ?15次下載
    使用<b class='flag-5'>單片機(jī)</b>實(shí)現(xiàn)不同頻率<b class='flag-5'>閃爍</b>多個(gè)<b class='flag-5'>LED</b><b class='flag-5'>燈</b>的<b class='flag-5'>C</b><b class='flag-5'>語言</b>程序?qū)嵗赓M(fèi)下載

    使用單片機(jī)點(diǎn)亮多個(gè)LED的方法C語言程序?qū)嵗赓M(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)點(diǎn)亮多個(gè)LED的方法C語言程序?qū)嵗赓M(fèi)下載。
    發(fā)表于 11-06 17:11 ?17次下載

    單片機(jī)led閃爍實(shí)驗(yàn)總結(jié)_單片機(jī)學(xué)習(xí)之C語言點(diǎn)亮控制led

    C語言是學(xué)習(xí)單片機(jī)的過程中必須要經(jīng)歷的一個(gè)環(huán)節(jié),但是并不是說學(xué)習(xí)單片機(jī)C語言就要像
    發(fā)表于 11-14 12:36 ?0次下載
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>led</b><b class='flag-5'>燈</b><b class='flag-5'>閃爍</b>實(shí)驗(yàn)總結(jié)_<b class='flag-5'>單片機(jī)</b>學(xué)習(xí)之<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>點(diǎn)亮</b>控制<b class='flag-5'>led</b><b class='flag-5'>燈</b>

    51單片機(jī)機(jī)學(xué)習(xí)筆記之LED閃爍

    51單片機(jī)機(jī)學(xué)習(xí)筆記之LED閃爍
    發(fā)表于 11-14 16:51 ?3次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>機(jī)</b>學(xué)習(xí)筆記之<b class='flag-5'>LED</b><b class='flag-5'>燈</b><b class='flag-5'>閃爍</b>

    51單片機(jī)如何跳出wile循環(huán)_51單片機(jī)閃爍LED

    閃爍LED 51單片機(jī)是較為簡單的8位單片機(jī),意思是一次能處理8位2進(jìn)制數(shù)據(jù)。這一
    發(fā)表于 11-23 10:06 ?21次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>如何跳出wile循環(huán)_<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>閃爍</b><b class='flag-5'>LED</b><b class='flag-5'>燈</b>

    51單片機(jī) LED點(diǎn)亮閃爍以及流水燈實(shí)現(xiàn)

    51單片機(jī)學(xué)習(xí)初體驗(yàn),點(diǎn)亮第一只LED和讓其閃爍,用四種方法實(shí)現(xiàn)流水燈。
    發(fā)表于 11-23 16:51 ?35次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>  <b class='flag-5'>LED</b><b class='flag-5'>點(diǎn)亮</b>、<b class='flag-5'>閃爍</b>以及流水燈實(shí)現(xiàn)

    51單片機(jī)——點(diǎn)亮一個(gè)LED

    51單片機(jī)——點(diǎn)亮一個(gè)LED文章目錄51單片機(jī)——
    發(fā)表于 11-23 18:06 ?16次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>——<b class='flag-5'>點(diǎn)亮</b>一個(gè)<b class='flag-5'>LED</b><b class='flag-5'>燈</b>

    基于89C51單片機(jī)的不同頻率閃爍1個(gè)LED源程序

    基于89C51單片機(jī)的不同頻率閃爍1個(gè)LED源程序
    發(fā)表于 05-16 09:44 ?9次下載

    基于89C51單片機(jī)的不同頻率閃爍多個(gè)LED源程序

    基于89C51單片機(jī)的不同頻率閃爍多個(gè)LED源程序
    發(fā)表于 05-16 09:43 ?4次下載

    基于單片機(jī)點(diǎn)亮LED

    單片機(jī)點(diǎn)亮LED就像用C語言輸出“hello world”一樣,是入門的第一課。
    的頭像 發(fā)表于 05-24 14:25 ?2084次閱讀
    基于<b class='flag-5'>單片機(jī)</b><b class='flag-5'>點(diǎn)亮</b><b class='flag-5'>LED</b><b class='flag-5'>燈</b>

    怎么采用C語言編程序通過單片機(jī)的I/O端口點(diǎn)亮一個(gè)LED

    怎么采用C語言編程序通過單片機(jī)的I/O端口點(diǎn)亮一個(gè)LED??
    的頭像 發(fā)表于 09-02 17:05 ?3908次閱讀
    主站蜘蛛池模板: 格尔木市| 分宜县| 华宁县| 梁河县| 西吉县| 吉隆县| 平舆县| 当阳市| 布拖县| 杂多县| 西华县| 新沂市| 嵩明县| 渝北区| 改则县| 延津县| 呼和浩特市| 孝义市| 瓮安县| 睢宁县| 义乌市| 克拉玛依市| 宁阳县| 清丰县| 海安县| 樟树市| 安康市| 丹棱县| 新沂市| 陵水| 巴东县| 太谷县| 东宁县| 库尔勒市| 周口市| 剑阁县| 安西县| 三门峡市| 甘泉县| 四平市| 潼关县|