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

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

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

單片機(jī)簡(jiǎn)敘!單片機(jī)可以做什么?

GReq_mcu168 ? 來(lái)源:玩轉(zhuǎn)單片機(jī) ? 2020-08-05 10:57 ? 次閱讀

第1課:單片機(jī)簡(jiǎn)敘

1.單片機(jī)可以做什么?

目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片機(jī)的蹤跡。小到電話,玩具,手機(jī),各類刷卡機(jī),電腦鍵盤,彩電,冰箱,空調(diào),電磁爐,大到汽車,工業(yè)自動(dòng)控制,機(jī)器人,導(dǎo)彈導(dǎo)航裝置,甚至是美國(guó)的火星車,這些設(shè)備里面都含有一個(gè)或者多個(gè)單片機(jī) 。單片機(jī)的數(shù)量不僅遠(yuǎn)超過(guò)PC機(jī),甚至比人類的數(shù)量還要多。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一大批軟硬件工程師。

2. 學(xué)習(xí)單片機(jī)需要哪些基本條件?

模擬電路,數(shù)字電路基礎(chǔ),對(duì)C語(yǔ)言匯編語(yǔ)言有一定的了解。當(dāng)然,這些也可以在學(xué)習(xí)過(guò)程中掌握。對(duì)此這套教程均有講解.

硬件條件的話:電腦一臺(tái),實(shí)驗(yàn)開發(fā)平臺(tái)一套。

3、單片機(jī)的結(jié)構(gòu)

一臺(tái)能夠工作的計(jì)算機(jī)要有這樣幾個(gè)部份構(gòu)成:CPU(進(jìn)行運(yùn)算、控制)、RAM(數(shù)據(jù)存儲(chǔ)-內(nèi)存)、ROM(程序存儲(chǔ))、輸入/輸出設(shè)備(例如:串行口、并行輸出口等)。在個(gè)人計(jì)算機(jī)上這些部份被分成若干塊芯片,安裝一個(gè)稱之為主板的印刷線路板上。而在單片機(jī)中,這些部份,全部被做到一塊集成電路芯片中了,所以就稱為單片機(jī)。

單片機(jī)是一種控制芯片,一個(gè)微型的計(jì)算機(jī),而加上晶振,存儲(chǔ)器,地址鎖存器,邏輯門,七段譯碼器(顯示器),按鈕(類似鍵盤),擴(kuò)展芯片,接口等那是單片機(jī)系統(tǒng)。

天!PC中的CPU一塊就要賣幾千塊錢,這么多東西做在一起,還不得買個(gè)天價(jià)!再說(shuō)這塊芯片也得非常大了。

不,價(jià)格并不高,從1元人民幣到幾十元人民幣,體積也不大,一般用40腳封裝,當(dāng)然功能多一些單片機(jī)也有引腳比較多的,如68引腳,功能少的只有10多個(gè)或20多個(gè)引腳,有的甚至只8只引腳。

為什么會(huì)這樣呢?

功能有強(qiáng)弱,打個(gè)比方,市場(chǎng)上面有的組合音響一套才賣幾百塊錢,可是有的一臺(tái)功放機(jī)就要賣好幾千。另外這種芯片的生產(chǎn)量很大,技術(shù)也很成熟,51系列的單片機(jī)已經(jīng)做了十幾年,所以價(jià)格就低了。

既然如此,單片機(jī)的功能肯定不強(qiáng),干嗎要學(xué)它呢?話不能這樣說(shuō),實(shí)際工作中并不是任何需要計(jì)算機(jī)的場(chǎng)合都要求計(jì)算機(jī)有很高的性能,一個(gè)控制電冰箱溫度的計(jì)算機(jī)難道要?jiǎng)佑靡慌_(tái)臺(tái)式電腦不成?應(yīng)用的關(guān)鍵是看是否夠用,是否有很好的性能價(jià)格比。所以8051出來(lái)十多年,依然沒(méi)有被淘汰,還在不斷的發(fā)展中。

4、MCS51單片機(jī)和8051、8031、89C51等的關(guān)系

我們平常老是講8051,又有什么8031,現(xiàn)在又有89C51,89s51它們之間究竟是什么關(guān)系?

MCS51是指由美國(guó)INTEL公司(對(duì)了,就是大名鼎鼎的INTEL)生產(chǎn)的一系列單片機(jī)的總稱,這一系列單片機(jī)包括了好些品種,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的產(chǎn)品,該系列其它單片機(jī)都是在8051的基礎(chǔ)上進(jìn)行功能的增、減、改變而來(lái)的,所以人們習(xí)慣于用8051來(lái)稱呼MCS51系列單片機(jī),而8031是前些年在我國(guó)最流行的單片機(jī),所以很多場(chǎng)合會(huì)看到8031的名稱。

INTEL公司將MCS51的核心技術(shù)授權(quán)(賣)給了很多其它公司,所以有很多公司在做以8051為核心的單片機(jī),當(dāng)然,功能或多或少有些改變,以滿足不同的需求,其中89C51就是這幾年在我國(guó)非常流行的單片機(jī),以后我們將用89C51單片機(jī)來(lái)完成一系列的教學(xué)實(shí)驗(yàn)。如有錯(cuò)誤請(qǐng)?jiān)诒疚脑u(píng)論中批評(píng)指正.

5.該學(xué)匯編還是學(xué)C語(yǔ)言?

掌握用C語(yǔ)言單片機(jī)編程很重要,畢竟C容易寫,可讀性強(qiáng),可移植性強(qiáng)。但是光會(huì)C語(yǔ)言也還是不夠的,你還得了解匯編,實(shí)際上不是了解匯編指令,而是為了了解單片機(jī)的體系結(jié)構(gòu)。可以肯定的說(shuō),最好的C語(yǔ)言單片機(jī)工程師都是從匯編走出來(lái)的編程者,所以我以為學(xué)習(xí)單片機(jī),先學(xué)點(diǎn)匯編是必要的,但在以后的開發(fā)中主要用C語(yǔ)言,所以本系列教程將兼顧匯編和c兩種語(yǔ)言.

第2課:?jiǎn)纹瑱C(jī)引腳介紹

單片機(jī)的40個(gè)引腳大致可分為4類:電源時(shí)鐘、控制和I/O引腳。

⒈ 電源:

⑴ VCC - 芯片電源,接+5V;
⑵ VSS - 接地端;

⒉ 時(shí)鐘:

XTAL1、XTAL2 - 晶體振蕩電路反相輸入端和輸出端。

⒊ 控制線:

控制線共有4根

⑴ ALE/PROG:地址鎖存允許/片內(nèi)EPROM編程脈沖

① ALE功能:用來(lái)鎖存P0口送出的低8位地址
② PROG功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。

⑵ PSEN:外ROM讀選通信號(hào)。

RST/VPD:復(fù)位/備用電源。

① RST(Reset)功能:復(fù)位信號(hào)輸入端。
② VPD功能:在Vcc掉電情況下,接備用電源。

⑷ EA/Vpp:內(nèi)外ROM選擇/片內(nèi)EPROM編程電源。

① EA功能:內(nèi)外ROM選擇端。
② Vpp功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。

⒋ I/O線

80C51共有4個(gè)8位并行I/O端口:P0、P1、P2、P3口,共32個(gè)引腳。P3口還具有第二功能,用于特殊信號(hào)輸入輸出和控制信號(hào)(屬控制總線)。

拿到一塊芯片,想要使用它,首先必須要知道怎樣連線,我們用的一塊稱之為89C51的芯片,下面我們就看一下如何給它連線。

1、 電源:這當(dāng)然是必不可少的了。單片機(jī)使用的是5V電源,其中正極接40管腳,負(fù)極(地)接20管腳。


2、 振蒎電路:?jiǎn)纹瑱C(jī)是一種時(shí)序電路,必須供給脈沖信號(hào)才能正常工作,在單片機(jī)內(nèi)部已集成了振蕩器,使用晶體振蕩器,接18、19腳。只要買來(lái)晶體震蕩器,電容,連上就能了,按圖1接上即可。


3、 復(fù)位管腳:按圖1中畫法連好,至于復(fù)位是何含義及為何需要復(fù)要復(fù)位,在單片機(jī)功能中介紹。


4、 EA管腳:EA管腳接到正電源端。至此,一個(gè)單片機(jī)就接好,通上電,單片機(jī)就開始工作了。

我們的第一個(gè)任務(wù)是要用單片機(jī)點(diǎn)亮一只發(fā)光二極管LED,顯然,這個(gè)LED必須要和單片機(jī)的某個(gè)管腳相連,不然單片機(jī)就沒(méi)法控制它了,那么和哪個(gè)管腳相連呢?單片機(jī)上除了剛才用掉的5個(gè)管腳,還有35個(gè),我們將這個(gè)LED和1腳相連。(見圖1,其中R1是限流電阻

按照這個(gè)圖的接法,當(dāng)1腳是高電平時(shí),LED不亮,只有1腳是低電平時(shí),LED才發(fā)亮。因此要1腳我們要能夠控制,也就是說(shuō),我們要能夠讓1管腳按要求變?yōu)楦呋虻碗娖?。即然我們要控?腳,就得給它起個(gè)名字,總不能就叫它一腳吧?叫它什么名字呢?設(shè)計(jì)51芯片的INTEL公司已經(jīng)起好了,就叫它P1.0,這是規(guī)定,不能由我們來(lái)更改。


圖1

名字有了,我們又怎樣讓它變'高'或變'低'呢?叫人做事,說(shuō)一聲就能,這叫發(fā)布命令,要計(jì)算機(jī)做事,也得要向計(jì)算機(jī)發(fā)命令,計(jì)算機(jī)能聽得懂的命令稱之為計(jì)算機(jī)的指令。讓一個(gè)管腳輸出高電平的指令是SETB,讓一個(gè)管腳輸出低電平的指令是CLR。因此,我們要P1.0輸出高電平,只要寫SETB P1.0,要P1.0輸出低電平,只要寫 CLR P1.0就能了。

現(xiàn)在我們已經(jīng)有辦法讓計(jì)算機(jī)去將P10輸出高或低電平了,但是我們?cè)鯓硬拍苡?jì)算機(jī)執(zhí)行這條指令呢?總不能也對(duì)計(jì)算機(jī)也說(shuō)一聲了事吧。要解決這個(gè)問(wèn)題,還得有幾步要走。

第一,計(jì)算機(jī)看不懂SETB CLR之類的指令,我們得把指令翻譯成計(jì)算機(jī)能懂的方式,再讓計(jì)算機(jī)去讀。計(jì)算機(jī)能懂什么呢?它只懂一樣?xùn)|西——數(shù)字。因此我們得把SETB P1.0變?yōu)椋―2H,90H ),把CLR P1.0變?yōu)?(C2H,90H ),至于為什么是這兩個(gè)數(shù)字,這也是由51芯片的設(shè)計(jì)者--INTEL規(guī)定的,我們不去研究。

第二步,在得到這兩個(gè)數(shù)字后,怎樣讓這兩個(gè)數(shù)字進(jìn)入單片機(jī)的內(nèi)部呢?這要借助于一個(gè)硬件工具"編程器"。如果你還不知道是什么是編程器,我來(lái)介紹一下,就是把你在電腦上寫出來(lái)來(lái)的代碼用匯編器等編譯器生成的一個(gè)目標(biāo)燒寫到單片機(jī)的eprom里面去的工具,80c51這種類型的單片機(jī)編程是一件很麻煩的事情,必要要先裝到編程器上編程后才能在設(shè)備上使用,而目前最新的AT89s51或者STC89C51單片機(jī)能支持在線編程(isp)功能,不用拔出來(lái)利用簡(jiǎn)單的電路就可以實(shí)現(xiàn)把代碼寫入單片機(jī)內(nèi)部。

下面我們來(lái)實(shí)戰(zhàn)一下:下圖(圖2)所示的軟件名字叫keil —>點(diǎn)此下載,是用來(lái)編寫程序代碼并生成一個(gè)可以寫入到單片機(jī)芯片的Hex文件(我們?nèi)艘刂茊纹瑱C(jī)只能用匯編語(yǔ)言或者C語(yǔ)言而單片機(jī)不認(rèn)識(shí)怎么辦呢?所以keil這個(gè)軟件就把程序語(yǔ)言轉(zhuǎn)換成了一種特定格式的Hex文件,只要把這個(gè)文件下載到單片機(jī)芯片單片機(jī)就會(huì)按我們程序的思路來(lái)運(yùn)行)


圖2 (keil編程軟件)


圖3(下載軟件)

好了…… ,我們把 SETB P1.0 這條匯編語(yǔ)句用keil軟件編譯生成Hex文件,然后用圖3所示的軟件和圖1所示的硬件(用串口連接電腦)下載到我們已經(jīng)做好的電路板上的單片機(jī)芯片里去(圖省事的話建議直接買個(gè)開發(fā)板),然后接通電源……什么?燈不亮?這就對(duì)了,因?yàn)槲覀儗戇M(jìn)去的指令就是讓P10輸出高電平,燈當(dāng)然不亮,要是亮就錯(cuò)了。所以要將keil編緝區(qū)的內(nèi)容改為CLR P1.0,重新編譯生成Hex文件,重新下載,接電,好,燈亮了。因?yàn)槲覀儗懭氲腍ex就是讓P10輸出低電平的指令。這樣我們看到,硬件電路的連線沒(méi)有做任何改變,只要改變寫入單片機(jī)中的內(nèi)容,就能改變電路的輸出效果。

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

    關(guān)注

    6030

    文章

    44491

    瀏覽量

    632010
  • 機(jī)器人
    +關(guān)注

    關(guān)注

    210

    文章

    28108

    瀏覽量

    205860
  • 引腳
    +關(guān)注

    關(guān)注

    16

    文章

    1172

    瀏覽量

    50157

原文標(biāo)題:?jiǎn)纹瑱C(jī)的引腳,你都清楚嗎?

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    單片機(jī)的中斷機(jī)制

    單片機(jī)的中斷機(jī)制是一種重要的處理方式,它允許單片機(jī)在執(zhí)行主程序的過(guò)程中,能夠暫停當(dāng)前任務(wù),轉(zhuǎn)而處理外部或內(nèi)部緊急事件。這種機(jī)制極大地提高了系統(tǒng)的響應(yīng)速度和處理能力,使得單片機(jī)在各種應(yīng)用領(lǐng)域中得到廣泛應(yīng)用。以下是對(duì)
    的頭像 發(fā)表于 10-17 18:03 ?294次閱讀

    單片機(jī)加wifi模塊可以做什么

    嵌入式系統(tǒng)和智能設(shè)備中。而Wi-Fi模塊是一種無(wú)線通信模塊,它允許設(shè)備通過(guò)無(wú)線網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸。將單片機(jī)與Wi-Fi模塊結(jié)合使用,可以開發(fā)出多種功能強(qiáng)大的智能設(shè)備和系統(tǒng)。 概述 單片機(jī)加Wi-Fi模塊的組合
    的頭像 發(fā)表于 09-10 15:32 ?381次閱讀

    keil可以讀出單片機(jī)的程序嗎

    表述存在一定的誤解,因?yàn)镵eil主要是用于編寫、編譯和調(diào)試單片機(jī)程序的工具,而不是直接從單片機(jī)中讀取已編程代碼的工具。 一、Keil的主要功能 編程開發(fā) :Keil允許用戶使用C語(yǔ)言或匯編語(yǔ)言編寫單片機(jī)程序。通過(guò)其集成的開發(fā)環(huán)境
    的頭像 發(fā)表于 09-02 10:32 ?604次閱讀

    單片機(jī)燒錄程序可以重新燒嗎

    好的程序代碼通過(guò)特定的方式寫入單片機(jī)的存儲(chǔ)器中,使其能夠按照預(yù)定的邏輯執(zhí)行任務(wù)。單片機(jī)燒錄程序可以重新燒錄,這是單片機(jī)編程和開發(fā)過(guò)程中的一個(gè)常見操作。
    的頭像 發(fā)表于 09-02 10:04 ?785次閱讀

    單片機(jī)可以替代PLC嗎

    以其集成度高、體積小、成本低等特點(diǎn)在工業(yè)控制中占據(jù)了一席之地,而PLC則以其高可靠性、穩(wěn)定性和靈活性在工業(yè)自動(dòng)化領(lǐng)域得到了廣泛應(yīng)用。那么,問(wèn)題來(lái)了:單片機(jī)是否可以替代PLC呢?本文將從多個(gè)角度對(duì)這一問(wèn)題進(jìn)行深入探討。
    的頭像 發(fā)表于 06-03 14:47 ?563次閱讀

    單片機(jī)學(xué)到什么程度可以找工作?

    這個(gè)話題老生常談了,找工作需要具備一定的技術(shù)實(shí)力,但是究竟學(xué)到什么程度就可以呢?單片機(jī)作為嵌入式系統(tǒng)的核心,具有廣泛的應(yīng)用場(chǎng)景,因此掌握單片機(jī)編程技能確實(shí)能為您打開就業(yè)之門。然而,要想通過(guò)單片
    的頭像 發(fā)表于 03-28 08:04 ?1485次閱讀
    <b class='flag-5'>單片機(jī)</b>學(xué)到什么程度<b class='flag-5'>可以</b>找工作?

    如何系統(tǒng)、科學(xué)地自學(xué)單片機(jī)?

    很多初學(xué)者都會(huì)面臨這個(gè)問(wèn)題,我想學(xué)習(xí)單片機(jī)、我也想學(xué)好單片機(jī)、我也想系統(tǒng)地學(xué)習(xí)單片機(jī),但是單片機(jī)涉及到的學(xué)科多且雜根本不是三天兩天就能學(xué)完的,很多人都逃脫不了從入門到放棄的怪圈?那么我
    的頭像 發(fā)表于 03-28 08:03 ?967次閱讀
    如何系統(tǒng)、科學(xué)地自學(xué)<b class='flag-5'>單片機(jī)</b>?

    單片機(jī)的最小系統(tǒng)由什么組成 單片機(jī)的最小系統(tǒng)包括哪些

    單片機(jī)(Microcontroller Unit,MCU)的最小系統(tǒng)包括以下幾個(gè)主要組成部分: 單片機(jī)芯片:單片機(jī)是整個(gè)最小系統(tǒng)的核心部分,它集成了中央處理器(Central Processing
    的頭像 發(fā)表于 02-02 11:27 ?9609次閱讀

    51單片機(jī)開發(fā)板的主要功能 51單片機(jī)開發(fā)板能做什么

    具有多個(gè)通用輸入輸出引腳,可以連接各種外部設(shè)備和傳感器,實(shí)現(xiàn)數(shù)據(jù)的輸入和輸出。 時(shí)鐘管理:開發(fā)板通常會(huì)集成時(shí)鐘電路,包括晶振、時(shí)鐘發(fā)生器等,可以提供穩(wěn)定的時(shí)鐘信號(hào)給單片機(jī)使用。 存儲(chǔ)器管理:開發(fā)板通常會(huì)搭載閃存、EEPROM、S
    的頭像 發(fā)表于 01-23 15:52 ?3321次閱讀

    單片機(jī)boot腳干嘛的

    多個(gè)方面進(jìn)行闡述。 一、定義 boot腳是指單片機(jī)引導(dǎo)腳,也稱為啟動(dòng)腳、引導(dǎo)引腳。它是單片機(jī)系統(tǒng)中的一個(gè)引腳,負(fù)責(zé)控制單片機(jī)系統(tǒng)的啟動(dòng)和引導(dǎo)過(guò)程。在單片機(jī)啟動(dòng)過(guò)程中,通過(guò)對(duì)boot腳的
    的頭像 發(fā)表于 12-19 09:47 ?9146次閱讀

    單片機(jī)可以替代PLC嗎?單片機(jī)和PLC的區(qū)別

    單片機(jī)不能完全替代PLC 。雖然單片機(jī)可以通過(guò)編程實(shí)現(xiàn)類似的功能,但是在可靠性和穩(wěn)定性方面相對(duì)來(lái)說(shuō)稍遜于PLC。
    的頭像 發(fā)表于 12-13 10:39 ?1557次閱讀

    單片機(jī)如何檢測(cè)電流?

    傳感器和保護(hù)電路等相關(guān)核心概念和實(shí)施細(xì)節(jié)。希望本文可以為讀者提供一個(gè)全面了解單片機(jī)電流檢測(cè)的指南。 1. 引言 隨著電子設(shè)備功能的增強(qiáng)和多樣化,對(duì)電流的準(zhǔn)確檢測(cè)和控制變得越來(lái)越重要。單片機(jī)因其高度集成的特點(diǎn),成為實(shí)現(xiàn)電流檢
    的頭像 發(fā)表于 12-07 15:37 ?3573次閱讀

    單片機(jī)復(fù)位電路工作原理

    單片機(jī)復(fù)位電路工作原理? 單片機(jī)是一種集成電路,通常用于嵌入式系統(tǒng)中。單片機(jī)復(fù)位電路是單片機(jī)可靠工作的保證,它負(fù)責(zé)在出現(xiàn)故障或者異常情況時(shí)將單片機(jī)
    的頭像 發(fā)表于 12-07 15:17 ?3992次閱讀

    單片機(jī)最小系統(tǒng)的相關(guān)知識(shí)

    單片機(jī)最小系統(tǒng),或者稱為最小應(yīng)用系統(tǒng),是指用最少的元件組成的單片機(jī)可以工作的系統(tǒng)。對(duì)51系列單片機(jī)來(lái)說(shuō),最小系統(tǒng)一般應(yīng)該包括:單片機(jī)、晶振電
    發(fā)表于 11-29 15:57 ?1808次閱讀
    <b class='flag-5'>單片機(jī)</b>最小系統(tǒng)的相關(guān)知識(shí)

    單片機(jī)可以識(shí)別模擬信號(hào)么?單片機(jī)接收的是什么信號(hào)?

    單片機(jī)可以識(shí)別模擬信號(hào)么?單片機(jī)接收的是什么信號(hào)? 單片機(jī)(microcontroller)是一種集成了微處理器、內(nèi)存和一系列外設(shè)接口的集成電路。它
    的頭像 發(fā)表于 11-22 16:32 ?2661次閱讀