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

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

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

如何開始使用微控制器

454398 ? 來源:wv ? 2019-10-24 15:04 ? 次閱讀

步驟1:什么是微控制器?

在使用微控制器進(jìn)行設(shè)計(jì)之前,您確實(shí)需要知道什么是微控制器。盡管您可能還沒有意識(shí)到,但微控制器仍然在您身邊。許多人似乎對(duì)微控制器的想法感到不知所措。不久前,我和一個(gè)女人交談,當(dāng)我告訴她我使用微控制器時(shí),她回答說那些事情遠(yuǎn)遠(yuǎn)超出了她。我回答說也許她還不能與他們一起設(shè)計(jì),但是她一直在使用那些小型計(jì)算機(jī)。她似乎以為我很瘋狂地建議她甚至可以以任何方式參與這種“高科技”的工作。這些微控制器是家庭和辦公室中許多產(chǎn)品的大腦。這些微控制器可以在手表,微波爐,電話,汽車和卡車,DVD播放器和機(jī)器人中找到,實(shí)際上,幾乎每個(gè)帶有顯示器的產(chǎn)品都將至少使用其中一種。因此,即使在工業(yè)化國(guó)家/地區(qū),大多數(shù)人已經(jīng)是微控制器用戶,即使他們不這樣認(rèn)為。

什么是計(jì)算機(jī)?

微控制器是一種計(jì)算機(jī),那么什么是計(jì)算機(jī)?所有計(jì)算機(jī)都由四個(gè)主要單元組成。這些包括輸入單元,輸出單元,中央處理單元和存儲(chǔ)單元。輸入單元是計(jì)算機(jī)獲取將用來執(zhí)行其工作的數(shù)據(jù)的方式。大多數(shù)人都知道臺(tái)式計(jì)算機(jī)上連接的輸入設(shè)備,鍵盤和鼠標(biāo)等設(shè)備。中央處理單元執(zhí)行運(yùn)行計(jì)算機(jī)程序的工作。它由一個(gè)控制單元和一個(gè)算術(shù)/邏輯單元(也稱為ALU)組成。這兩個(gè)單元共同構(gòu)成了中央處理器單元(CPU)。在工作時(shí),CPU將其指令或程序以及正在工作的數(shù)據(jù)保存在內(nèi)存單元中。計(jì)算機(jī)完成計(jì)算后,它將通過輸出單元顯示該工作的結(jié)果。連接到臺(tái)式計(jì)算機(jī)的某些輸出設(shè)備將是視頻顯示器和打印機(jī)。微處理器將計(jì)算機(jī)CPU的兩個(gè)部分(控制單元和ALU)組合到一個(gè)集成電路IC)或芯片中。

計(jì)算機(jī)可以完成大量不同的工作。您可能最熟悉的計(jì)算機(jī)是坐在辦公桌上或辦公桌旁并運(yùn)行Windows或Linux或MacOS的計(jì)算機(jī)。這些通用計(jì)算機(jī)將幫助您鍵入信函或?qū)W期票據(jù),平衡支票簿或會(huì)計(jì)賬簿,或者通過瀏覽Web來研究不同的主題。計(jì)算機(jī)的另一種工作是運(yùn)行(或控制)一件設(shè)備。通過將計(jì)算機(jī)輸入單元中的電線連接到不同的開關(guān)或傳感器,并將該計(jì)算機(jī)輸出單元中的電線連接到燈,電動(dòng)機(jī)和其他此類設(shè)備,計(jì)算機(jī)可以控制組裝線,微波爐,立體聲,甚至是飛機(jī)或太空飛船。實(shí)際上,任何可以由一個(gè)或多個(gè)開關(guān)操作的東西都可以連接到輸出線并由計(jì)算機(jī)控制。這些專用于設(shè)備控制的計(jì)算機(jī)稱為控制計(jì)算機(jī),或簡(jiǎn)稱為控制器。

就像微處理器將控制單元的兩個(gè)部分組合到一個(gè)IC中一樣,微處理器將計(jì)算機(jī)的四個(gè)部分組合到一個(gè)IC中–這些IC經(jīng)過特殊設(shè)計(jì),包含了對(duì)控制設(shè)備。因此,它們被稱為微控制器。

如您所見,微控制器沒有內(nèi)在的復(fù)雜性。它們只是集成在單個(gè)芯片上的小型控制計(jì)算機(jī)。 Tiny2313實(shí)驗(yàn)系統(tǒng)上的微控制器是Atmel的IC(或芯片),稱為AVR ATtiny2313A。

步驟2:告訴我您想做什么。

計(jì)算機(jī)僅在兩次使用之間像門擋一樣有用,而沒有程序告訴它該怎么做。給出計(jì)算機(jī)指令以執(zhí)行任務(wù)的過程稱為編程。程序幾乎只是計(jì)算機(jī)的指令列表。由于計(jì)算機(jī)僅知道電壓水平的存在或不存在,因此Tiny2313芯片使用電壓水平來告知其操作。 Tiny2313內(nèi)部的所有指令和數(shù)據(jù)實(shí)際上都是(約)5伏或0伏的電壓電平。為了方便起見,我們將這些電壓電平表示為1和0,而不是為了方便計(jì)算機(jī)。但是,盡管這些表示形式很好,但對(duì)于人類來說仍然不是很容易。在計(jì)算機(jī)開始出現(xiàn)后不久,人們編寫了工具來幫助對(duì)這些機(jī)器進(jìn)行編程。最早的一些工具是語(yǔ)言翻譯器,它采用了更像人類的語(yǔ)言,并將其翻譯為計(jì)算機(jī)的一和零。高級(jí)語(yǔ)言或更接近人類語(yǔ)言的語(yǔ)言使程序員更容易告訴計(jì)算機(jī)該怎么做。將這些“高級(jí)”語(yǔ)言轉(zhuǎn)換為計(jì)算機(jī)的機(jī)器語(yǔ)言的過程稱為編譯。

MCS Electronics為Atmel的AVR系列生產(chǎn)了一種稱為BASCOM-AVR的語(yǔ)言編譯器。 BASCOM是BASIC編程語(yǔ)言的一種變體。這種語(yǔ)言是由達(dá)特茅斯學(xué)院的兩位教授于1960年代專門為初學(xué)者發(fā)明的。實(shí)際上,名稱BASIC是首字母縮寫,代表初學(xué)者通用符號(hào)指令代碼;換句話說,它是通用的(通用)代碼,供初學(xué)者向計(jì)算機(jī)提供執(zhí)行作業(yè)的符號(hào)指令。它的設(shè)計(jì)易于學(xué)習(xí),并允許非計(jì)算機(jī)專業(yè)的學(xué)生快速編寫適用于大學(xué)計(jì)算機(jī)系統(tǒng)的程序。此BASIC的免費(fèi)試用版僅受程序大小的限制。該限制為4K字節(jié),這使BASCOM-AVR成為學(xué)習(xí)Tiny-2313微控制器的便捷之選。您可以從MCS網(wǎng)站下載該語(yǔ)言。

獲取最新版

在本書中,我們將安裝和使用BASCOM- AVR。您需要從發(fā)布商MCS Electronics獲得最新版本:

1。上網(wǎng)訪問http://www.mcselec.com,然后單擊屏幕左側(cè)的“下載”。

2。在“下載”頁(yè)面上,單擊頁(yè)面右側(cè)“下載”列表底部的BASCOM鏈接。

3。在BASCOM頁(yè)面上,單擊下載列表頂部的BASCOM-AVR鏈接。

4。在此頁(yè)面上,單擊鏈接以下載BASCOM-AVR演示版本。

5。在“條款和條件”頁(yè)面上,單擊“我同意”單選按鈕,然后單擊該按鈕繼續(xù)。這將打開下載對(duì)話框,確保選中“保存文件”單選按鈕,然后單擊“確定”按鈕。

6。在“保存到”對(duì)話框中,選擇您的桌面,然后單擊“保存”按鈕。

7。單擊瀏覽器上的后退按鈕以返回到BASCOM AVR下載頁(yè)面,并下載該手冊(cè)。這有很多信息,并且組織得很好。 8.另外,在BASCOM-AVR頁(yè)面上,您將找到有關(guān)BASCOM-AVR的更多信息,包括有關(guān)此編譯器的文章。

9。關(guān)閉或最小化您的瀏覽器。

10。遵循說明安裝BASCOM-AVR(您可以遵循MCS Electronics或電子書中的說明。)

步驟3:您正在駕駛我的螺母。

在PC上編寫Tiny2313程序時(shí),您需要將該程序轉(zhuǎn)移到Tiny2313芯片上,本身,以便讓控制器運(yùn)行程序。要將程序放入微控制器,您必須有某種方法將程序從PC上獲取到芯片中。工程師過去常常這樣做的方法是拿起芯片并將其放入稱為編程器的特殊設(shè)備中。上面是我舊的用于ATtiny2313控制器的Fun Card AVR編程器的圖片。運(yùn)行編程軟件后,您將把裝有程序的芯片放入電路中。如果或者更確切地說,當(dāng)您發(fā)現(xiàn)程序中的錯(cuò)誤時(shí),您可以將芯片從電路中取出,將其放入專用設(shè)備中以擦除程序(通常需要幾個(gè)小時(shí)),然后將其放回編程器中,然后啟動(dòng)程序。整個(gè)過程再次。這會(huì)一遍又一遍地發(fā)生,直到您使程序正確無誤,或者(通常)您只是累了而退出。

我們將使用稱為ISP下載器電纜的電纜。 ISP的縮寫代表In System Programmer。這是工程師開發(fā)的一種方法,可以繞過使用專用程序員的舊方法。我們?cè)谖⒖刂破靼迳嫌幸粋€(gè)特殊的ISP連接器,只需將編程電纜連接到板上即可下載程序。所有編程活動(dòng)均在電路板和微控制器芯片本身上完成。無需拉出芯片并移動(dòng)它。

與套件一起訂購(gòu)的ISP被稱為USBASP編程器。在談?wù)撊绾卧O(shè)置BASCOM-AVR時(shí),我們前面提到了程序員。(如果您購(gòu)買了其他型號(hào),則需要適當(dāng)?shù)匦薷拇薎nstructable。)

為了使計(jì)算機(jī)能夠運(yùn)行要使用硬件,您需要告訴它如何。您執(zhí)行此操作的方式是加載程序,稱為驅(qū)動(dòng)程序。驅(qū)動(dòng)程序只是一個(gè)程序,它告訴您的計(jì)算機(jī)如何與連接的設(shè)備通信。 Windows中內(nèi)置有一些驅(qū)動(dòng)程序,用來告訴您的計(jì)算機(jī)如何使用鼠標(biāo),如何閱讀鍵盤,如何在屏幕上顯示圖片和文本。雖然不是所有人都使用USBASP編程器,所以我們需要為該編程器安裝驅(qū)動(dòng)程序。

與使用BASCOM編譯器本身一樣,您將需要為USBASP下載驅(qū)動(dòng)程序。程序員。為此,請(qǐng)按照電子書中的說明進(jìn)行操作,或訪問以下網(wǎng)址:http://www.protostack.com/blog/2011/05/usbasp-driver-for-windows-7-and-windows-vista-x64/。/p》

第4步:讓我們構(gòu)建一個(gè)東西。

從面包板開始。

如果您不想獲得套件, ,您將需要構(gòu)建自己的開發(fā)套件(開發(fā)套件)。開發(fā)套件的最佳入門是使用無焊面包板。如果您不知道面包板是什么,請(qǐng)看一下我的面包板頁(yè)面:http://projects.granzeier.com/what-is-a-breadboar 。..您將需要使用上面的圖示來查看哪里放置跳線。您只需要三個(gè)組件:編程器連接器,ATtiny2313本身以及用于復(fù)位按鈕的SPST,常開瞬時(shí)按鈕開關(guān)。我使用了一個(gè)AVR面包板適配器(https://www.tindie.com/products/Granzeier/breadboard-avr-isp-adapter-kit/),但您也可以使用Real Eliot的USB Ghetto開發(fā)環(huán)境(https://www.instructables.com/id/EDRQZ56F5LD8KDX/,或任何其他AVR編程系統(tǒng)。

將組件放置在試驗(yàn)板上后,只需將點(diǎn)連接起來即可。您可能需要使用AVR ATtiny2313數(shù)據(jù)表(http://www.atmel.com/Images/doc8246.pdf-2313和2313A非常相似,在接線方面沒有區(qū)別。只需對(duì)程序進(jìn)行一些微小的更改(該程序在每個(gè)地方提到Tiny2313A的地方,如果您使用的是較舊的芯片,則只使用Tiny2313。)

步驟5:將您的2313連接到世界-點(diǎn)1。

讓我們大放異彩

LED是一種僅允許電流向一個(gè)方向流動(dòng)的裝置,當(dāng)電流確實(shí)流動(dòng)時(shí),它會(huì)發(fā)出光。您可以學(xué)習(xí)在我的商店中了解有關(guān)LED及其工作原理的更多信息:https://www.tindie.com/products/Granzeier/led-prototyping-pack/。)

帶上LED并將引線修整到大約1/4英寸(或大約1厘米)。用黑色記號(hào)筆或一滴手指標(biāo)記LED的陰極(負(fù)極引線)是個(gè)好主意指甲油-可以在切割導(dǎo)線后幫助您識(shí)別陰極。您將把LED的導(dǎo)線跨到面包板中,跨越兩行。將一個(gè)360歐姆電阻(大約在220歐姆至470歐姆之間的任何地方都可以正常工作)的電阻放置在該行的其中一個(gè)孔中,并帶有LED陰極和接地電源軌。陽(yáng)極(或LED的正極)將空出,以便您可以將LED連接到Tiny2313微控制器??纯疵姘迳系腖ED/電阻對(duì)的照片,以了解我的描述。

下一步,將電路板向下移動(dòng)(遠(yuǎn)離Tiny2313電路)約1英寸,并添加第二對(duì)LED/電阻?,F(xiàn)在,在電路板下方再增加一英寸,再增加一對(duì)LED/電阻。這將為您提供三個(gè)LED,供您的微控制器打開和關(guān)閉。

盡管我在開發(fā)套件和商店的Tiny2313實(shí)驗(yàn)系統(tǒng)中都使用了所有綠色的LED,但沒有理由您無法使用其他顏色的LED。實(shí)際上,您甚至可以使用三種不同的彩色LED。

步驟6:將2313連接到世界-Pt。 2。

您真的知道如何按下我的按鈕。

要為您的Tiny2313提供輸入,我們將使用簡(jiǎn)單的按鈕開關(guān)。這些稱為常開(NO)SPST,瞬時(shí)按鈕開關(guān)。如果您看一下上面的開關(guān)的示意圖,您會(huì)發(fā)現(xiàn)該開關(guān)由兩個(gè)端子和一根小導(dǎo)體組成。當(dāng)您按下按鈕時(shí),小導(dǎo)體被壓在兩個(gè)端子上,從而允許電流流動(dòng)。稍后,我們將看到這如何使Tiny2313能夠知道何時(shí)按下了按鈕。

看看上面的照片,您會(huì)看到將按鈕像放置在面包板上一樣LED。使用短跳線將交換機(jī)的一個(gè)端子接地,而讓另一端子自由連接至Tiny2313。將該開關(guān)電路從面包板上的最后一個(gè)LED/電阻對(duì)向下放置。

再重復(fù)一次,以便有兩個(gè)按鈕開關(guān)電路。

第7步:將您的2313連接到世界-鉑。 3。

這是我耳中的音樂(至少是噪音)。

這是最后一步構(gòu)建開發(fā)套件。拿起揚(yáng)聲器,然后將其安裝在面包板上,距離最后一個(gè)按鈕開關(guān)僅幾步之遙。像開關(guān)一樣,您將需要使用短跨接線將其中一個(gè)端子接地。您無法在圖片中看到它,但它在揚(yáng)聲器下面,位于揚(yáng)聲器的下方-將揚(yáng)聲器的左端子接地。您將在另一端使用面包板連接器行將揚(yáng)聲器連接到Tiny2313。

您的開發(fā)套件現(xiàn)已完成。如果您想使其更加穩(wěn)定和持久,則可以使用小滴膠水將組件固定在面包板上。如果選擇此選項(xiàng),請(qǐng)小心避免在任何面包板孔內(nèi)粘任何膠水。

最后一個(gè)可選步驟(如果要使用永久版本)是您可以選擇一個(gè)魔術(shù)筆并突出顯示面包板排用于LED,開關(guān)和揚(yáng)聲器的未連接引線。

第8步:這是我的小亮點(diǎn)。..

大多數(shù)程序員在學(xué)習(xí)一種新的編程語(yǔ)言時(shí),都會(huì)從一個(gè)名為“ Hello World”的程序開始程序。這幾乎是用任何給定計(jì)算機(jī)的語(yǔ)言編寫的最簡(jiǎn)單的程序。它所做的全部工作是將短語(yǔ) Hello World 輸出到輸出設(shè)備上。這樣做的唯一目的是快速取得成功,并向新程序員表明該語(yǔ)言確實(shí)有效。在控制器領(lǐng)域,事實(shí)證明,要做的事情遠(yuǎn)比輸出一些文本簡(jiǎn)單得多。實(shí)際上,有時(shí)輸出文本可能非常復(fù)雜,所以我們做的事情要簡(jiǎn)單得多。

微控制器世界中的Hello World等效項(xiàng)只是點(diǎn)亮一個(gè)LED。對(duì)于此Hello World實(shí)驗(yàn),請(qǐng)首先研究上面的示意圖。示意圖只是表示電子電路的圖片。在原理圖的頂部,我們有一個(gè)指向右邊的箭頭。該符號(hào)表示Tiny2313的輸出引腳的輸入(至電路)。從那里,我們有一條線向右移一點(diǎn),然后調(diào)低。這只是代表將輸入連接到下一個(gè)組件的導(dǎo)線。該組件看起來像一個(gè)三角形,底部帶有一條橫條,左側(cè)有幾個(gè)小箭頭。此符號(hào)代表發(fā)光二極管(LED);如上所述,該設(shè)備在電流從底部(帶有條形)流到頂部時(shí)會(huì)發(fā)光。 LED的底部與之字形符號(hào)的頂部之間還有另一根導(dǎo)線。此曲折符號(hào)表示一個(gè)電阻;電阻器可保護(hù)LED和Tiny2313免受過多電流的影響。最后,還有另一根線連接到3條水平線的符號(hào);

現(xiàn)在,使用上面的Tiny2313的引腳圖,您需要從Tiny2313的PB.0引腳連接跳線(第一行,第二行)。 (從右)到最左邊的LED的陽(yáng)極。上圖顯示了用藍(lán)線連接的LED。現(xiàn)在,別笑得太厲害-畢竟,我是一名工程專業(yè)人員,而不是一名藝術(shù)家。無論如何,請(qǐng)繼續(xù),然后將短跳線插入面包板。這就是準(zhǔn)備第一個(gè)微控制器程序所需要做的全部工作。

步驟9:開始編程。

現(xiàn)在我們已經(jīng)連接好組件,我們將在程序上工作。確保您沒有將電池或其他電源連接到面包房,這將使您的實(shí)驗(yàn)系統(tǒng)從ISP插頭獲得電源。將USB編程器插入計(jì)算機(jī)上的USB插孔,并將電纜端插入Tiny2313面包板上的10針公接頭。

雙擊BASCOM-AVR圖標(biāo)啟動(dòng)BASCOM-AVR。在編輯窗口(BASCOM-AVR中最大的白色窗口)中,鍵入以下內(nèi)容:

‘標(biāo)題:

’作者:Art Granzeier,GranzTronix

‘日期:

’說明:

‘配置節(jié)

$ regfile =“ ATtiny2313a.dat”’指定micro

$ crystal = 1000000‘內(nèi)部RC時(shí)鐘的頻率

$ hwstack = 32’默認(rèn)-將32用于硬件堆棧

$ swstack = 10‘默認(rèn)-將10用于SW堆棧

$ framesize = 40’默認(rèn)-將40用于幀空間

‘主程序

結(jié)束

在“作者”中使用您的名字而不是我的名字

(位于下面所附的Template.bas文件中。您可以將Template.bas中的內(nèi)容復(fù)制并粘貼到BASCOM的編程窗口中。)

這稱為模板;它只是一個(gè)骨架,我們可以在其上構(gòu)建真實(shí)的程序。我們將使用此模板啟動(dòng)每個(gè)新程序,然后不必?fù)?dān)心基本的“內(nèi)務(wù)管理”。單擊“文件”,然后單擊“另存為”,保存您的模板。在“另存為”對(duì)話框中,將其命名為“ template”。從現(xiàn)在開始,每當(dāng)您要為Tiny2313實(shí)驗(yàn)系統(tǒng)創(chuàng)建新程序時(shí),都將從加載模板開始,然后更改名稱。如果您不小心刪除或覆蓋了模板,則可以再次執(zhí)行上述步驟來重新創(chuàng)建模板。

像Tiny2313A這樣的計(jì)算機(jī)通常會(huì)從頂部開始執(zhí)行程序,然后在整個(gè)程序中進(jìn)行下去。這稱為“自上而下”的程序執(zhí)行。這確實(shí)非常容易,就像您遵循某人的書面指示一樣;您可以從頂部開始,然后按照指示進(jìn)行操作,就像正常閱讀一樣。

讓我們仔細(xì)看看這里發(fā)生的情況。請(qǐng)注意,前四行都以撇號(hào)(單引號(hào)或’)開頭,這告訴BASCOM編譯器該行上的所有內(nèi)容都是注釋,而忽略它。將注釋添加到程序中,以便程序員(您)可以知道程序在做什么。在開始時(shí),我們只是提供有關(guān)程序的標(biāo)識(shí)信息。實(shí)際上,這稱為程序的標(biāo)識(shí)部分。

下一部分以另一條注釋行開頭,其中包含所謂的指令。這些行以美元符號(hào)($)開頭,它們指示BASCOM編譯器如何進(jìn)行設(shè)置。如注釋行所示,這是配置部分的開始。前五行確實(shí)超出了本介紹的范圍,但是如果您看一下剛剛輸入的行,您已經(jīng)可以對(duì)這些指令有所了解。第一條指令,其中包含Tiny2313實(shí)驗(yàn)系統(tǒng)上微控制器的名稱。由于BASCOM可以將您的BASIC程序轉(zhuǎn)換為Atmel AVR系列中許多不同的微控制器,因此它需要準(zhǔn)確地知道目標(biāo)芯片。此命令指示BASCOM將您的程序轉(zhuǎn)換為ATtiny2313。現(xiàn)在,您只需保留上面配置部分的指令行即可。

模板中的最后一行是End語(yǔ)句。每個(gè)程序都必須以End語(yǔ)句結(jié)尾,以防止程序因內(nèi)置的重置而重新開始。

現(xiàn)在我們有了這個(gè)框架,模板,設(shè)置,我們可以繼續(xù)編寫自己的程序了。 –完成框架后,這將非常簡(jiǎn)單。在編輯屏幕中,使用模板(如上所示,請(qǐng)記住,使用您的名字作為作者,而不是我的名字),通過單擊“文件”菜單然后單擊“另存為。..”條目來啟動(dòng)新程序。當(dāng)“另存為”對(duì)話框出現(xiàn)時(shí),通過在文件名字段中鍵入LED Test 01為程序命名,然后單擊對(duì)話框底部的“保存”按鈕。請(qǐng)注意,在BASCOM窗口頂部的藍(lán)色標(biāo)題欄中,BASCOM正在顯示新程序的名稱?,F(xiàn)在您就可以開始輸入新程序了。

像這樣更新程序的標(biāo)識(shí)部分開始:

‘標(biāo)題:LED Test 01

’作者:Art Granzeier,GranzTronix(再次使用您的名字)

‘日期:13 Oct 13(使用今天的日期)

’說明:打開LED燈

接下來,轉(zhuǎn)到配置部分的底部(在$ framesize指令的正下方)并添加以下行:

Config PortB = Output

在主程序注釋行中,添加以下行:

set

PortB.0‘打開LED

因此,您的整個(gè)程序應(yīng)如下所示:

’標(biāo)題:LED測(cè)試

‘作者:Art Granzeier,GranzTronix(再次使用您的名字)

’日期: 2013年10月13日(再次使用今天的日期)

‘說明:打開LED

’配置部分

$ regfile =“ ATtiny2313a.dat”‘指定micro

$ crystal = 1000000’內(nèi)部RC時(shí)鐘的頻率

$ hwstack = 32‘默認(rèn)-使用32作為硬件堆棧

$ swstack = 10’默認(rèn)-SW堆棧使用10

$ framesize = 40‘默認(rèn)-幀空間使用40

Config PortB =輸出

’主程序

設(shè)置PortB.0‘打開LED

結(jié)束

在將其下載到Tiny2313中之前,讓我們仔細(xì)看一下這些行。標(biāo)識(shí)部分與我們所討論的一樣。對(duì)您來說,這只是一系列注釋,目的是讓您知道該程序應(yīng)該執(zhí)行的操作。配置部分的開頭(至少是指令語(yǔ)句)與我們之前所述的相同。配置部分中唯一的新增內(nèi)容是對(duì)我們來說是新的聲明。該行( Config PortB = Output )告訴控制器將端口B設(shè)置為輸出端口。可以將端口引腳設(shè)置為讀取引腳上的電壓電平(0V或5V),稱為輸入,或者在引腳上施加電壓(0V或5V),這稱為輸出。對(duì)于此程序,我們希望將引腳作為輸出;因此我們將端口設(shè)置為輸出。我們可以控制端口的各個(gè)引腳,但是在本例中,將整個(gè)端口設(shè)置為輸出會(huì)更容易。

最后,我們要解決問題了。該程序的最新行( set PortB.0 )實(shí)際上是完成工作的部分。 set語(yǔ)句告訴控制器將引腳設(shè)為高電平,或?qū)⑵湓O(shè)置為加5伏。該語(yǔ)句的其余部分告訴Tiny2313控制器哪個(gè)引腳設(shè)置為高電平,即PortB.0??匆幌耇iny2313芯片的示意圖;請(qǐng)注意,芯片上的引腳號(hào)12標(biāo)記為PB0。 P的部分告訴我們,它是一個(gè)端口-這是一系列引腳,每個(gè)引腳都可以設(shè)置為感測(cè)電壓(0V或5V)并對(duì)電壓做出反應(yīng)(該引腳在輸入時(shí)稱為輸入)這樣做),或者它可以輸出一個(gè)電壓(0V或5V),該電壓可以控制燈,繼電器,電動(dòng)機(jī)或其他東西(該引腳稱為輸出)。正如在該行中提到的那樣,這將點(diǎn)亮LED。在那個(gè)別針上。端口B是Tiny2313上可用的四個(gè)端口之一。

現(xiàn)在,我們已經(jīng)編寫了程序,我們需要將其轉(zhuǎn)換為機(jī)器代碼,然后將程序發(fā)送至控制器(或下載該程序)。 )請(qǐng)記住,從前,將程序從類似于人的語(yǔ)言(例如BASIC)轉(zhuǎn)換為機(jī)器語(yǔ)言的過程稱為編譯。為了編譯程序,您需要單擊“程序”菜單,然后單擊“編譯”。這將啟動(dòng)編譯器,并將您的程序轉(zhuǎn)換為’2313芯片可以理解的內(nèi)容,并且機(jī)器程序存儲(chǔ)在BASCOM的緩沖區(qū)中,準(zhǔn)備發(fā)送到Tiny2313芯片。

現(xiàn)在,您的機(jī)器語(yǔ)言程序已經(jīng)存儲(chǔ)在緩沖區(qū)中,需要將緩沖區(qū)發(fā)送到微控制器芯片。再次單擊程序菜單,然后單擊菜單底部附近的發(fā)送到芯片。這將打開一個(gè)新的Programmer窗口。您可以在Programmer窗口的主窗口中看到緩沖區(qū)。要將緩沖區(qū)發(fā)送到微控制器,請(qǐng)單擊“芯片”菜單,然后單擊“自動(dòng)編程”。您的程序?qū)⒈话l(fā)送到Tiny2313,然后Programmer窗口將消失。

看看您的Tiny2313實(shí)驗(yàn)器系統(tǒng);請(qǐng)注意,最右邊的LED現(xiàn)在已點(diǎn)亮。恭喜恭喜。事情進(jìn)展順利,是吧?

步驟10:剛剛發(fā)生了什么?

請(qǐng)參閱上面的示意圖,再一次。注意,按照該圖,我們將從Tiny2313取得一個(gè)輸出,并將其連接到LED,然后通過電阻將其連接到地。對(duì)?

什么?怎么了?

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

    關(guān)注

    48

    文章

    7467

    瀏覽量

    150881
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    嵌入式系統(tǒng)中微控制器與微處理的區(qū)別

    嵌入式微控制器已成為我們?nèi)粘=佑|的眾多設(shè)備背后的無聲指揮者。從用于烹飪食物的微波爐到監(jiān)測(cè)健康的智能手表,微控制器確保這些設(shè)備能夠精準(zhǔn)、可靠地運(yùn)作。本文的目的是揭示嵌入式微控制器的世界,幫助讀者理解
    的頭像 發(fā)表于 10-14 11:02 ?279次閱讀
    嵌入式系統(tǒng)中<b class='flag-5'>微控制器</b>與微處理<b class='flag-5'>器</b>的區(qū)別

    ESP32 微控制器系列指南

    2024-05-29 Don Wilcher [微控制器] ESP32 微控制器已成為物聯(lián)網(wǎng) (IoT) 和嵌入式控制器領(lǐng)域的核心部分。 ESP32 生態(tài)系統(tǒng)的制造商 Espressif
    的頭像 發(fā)表于 10-02 18:21 ?1626次閱讀
    ESP32 <b class='flag-5'>微控制器</b>系列指南

    什么是微控制器/它的關(guān)鍵組成部分有哪些?

    微控制器
    芯廣場(chǎng)
    發(fā)布于 :2024年09月18日 15:02:33

    微控制器內(nèi)部的存儲(chǔ)有哪些

    微控制器(MCU)內(nèi)部的存儲(chǔ)微控制器系統(tǒng)的重要組成部分,它負(fù)責(zé)存儲(chǔ)程序代碼、數(shù)據(jù)以及控制邏輯等信息。這些存儲(chǔ)類型多樣,各具特點(diǎn),共同支
    的頭像 發(fā)表于 08-22 10:41 ?630次閱讀

    微控制器的結(jié)構(gòu)和應(yīng)用

    微控制器(Microcontroller Unit,簡(jiǎn)稱MCU)作為嵌入式系統(tǒng)的核心部件,其原理和應(yīng)用在現(xiàn)代科技發(fā)展中占據(jù)了舉足輕重的地位。本文將從微控制器的原理、基本結(jié)構(gòu)、工作原理、性能特點(diǎn)以及廣泛的應(yīng)用領(lǐng)域等方面進(jìn)行詳細(xì)闡述,旨在全面介紹
    的頭像 發(fā)表于 08-22 10:40 ?781次閱讀

    微控制器與運(yùn)動(dòng)控制器的區(qū)別

    隨著現(xiàn)代工業(yè)技術(shù)的快速發(fā)展,控制技術(shù)在各種機(jī)械設(shè)備中扮演著越來越重要的角色。微控制器和運(yùn)動(dòng)控制器作為兩種常見的控制設(shè)備,在各自的領(lǐng)域發(fā)揮著重要作用。然而,兩者在功能、應(yīng)用、特點(diǎn)等方面存
    的頭像 發(fā)表于 06-13 14:52 ?543次閱讀

    微控制器是否能替代PLC

    在工業(yè)自動(dòng)化和控制系統(tǒng)領(lǐng)域,微控制器(MCU)和可編程邏輯控制器(PLC)都是不可或缺的核心設(shè)備。它們各自具有獨(dú)特的功能和優(yōu)勢(shì),并在不同的應(yīng)用場(chǎng)景中發(fā)揮著重要作用。然而,關(guān)于微控制器
    的頭像 發(fā)表于 06-13 14:52 ?547次閱讀

    微控制器的定義和工作原理

    微控制器,作為現(xiàn)代電子技術(shù)中的核心部件,其發(fā)展歷程與電子技術(shù)的進(jìn)步息息相關(guān)。自20世紀(jì)70年代中期誕生以來,微控制器憑借其高度集成化、低成本、高性能等優(yōu)勢(shì),已廣泛應(yīng)用于電機(jī)控制、條碼閱讀
    的頭像 發(fā)表于 05-24 17:17 ?1461次閱讀

    新唐科技宣布推出基于微控制器的終端AI平臺(tái),加速AI應(yīng)用普及

    新唐科技宣布推出基于微控制器的終端AI平臺(tái),使AI生態(tài)系擴(kuò)展至微控制器領(lǐng)域。
    的頭像 發(fā)表于 04-23 09:58 ?652次閱讀

    針對(duì) C2000? 微控制器的集成微控制器 (MCU) 電源解決方案數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《針對(duì) C2000? 微控制器的集成微控制器 (MCU) 電源解決方案數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 03-04 14:12 ?0次下載
    針對(duì) C2000? <b class='flag-5'>微控制器</b>的集成<b class='flag-5'>微控制器</b> (MCU) 電源解決方案數(shù)據(jù)表

    S1C17M02,S1C17M03微控制器

    微控制器
    Piezoman壓電俠
    發(fā)布于 :2024年01月24日 17:53:48

    繼電器光耦在微控制器中的應(yīng)用

    繼電器是電子系統(tǒng)中的重要組件,用作使用低功率信號(hào)控制高功率電路的開關(guān)。繼電器與微控制器的集成在各種應(yīng)用中變得越來越普遍。該領(lǐng)域的一個(gè)重大進(jìn)步是繼電器光耦合的使用,這是一種增強(qiáng)基于微控制器
    的頭像 發(fā)表于 01-05 16:09 ?394次閱讀
    繼電器光耦在<b class='flag-5'>微控制器</b>中的應(yīng)用

    如何理解微控制器的PWM模塊分辨率和精度?

    不同微控制器的PWM功能在硬件設(shè)計(jì)和軟件編程方面可能會(huì)有所不同。具體的差異取決于微控制器的型號(hào)、架構(gòu)和功能配置。
    的頭像 發(fā)表于 12-13 10:06 ?2663次閱讀

    微控制器基礎(chǔ)】——從歷史切入,了解微控制器的五個(gè)要素(上)

    微控制器基礎(chǔ)】——從歷史切入,了解微控制器的五個(gè)要素(上)
    的頭像 發(fā)表于 12-07 10:55 ?526次閱讀
    【<b class='flag-5'>微控制器</b>基礎(chǔ)】——從歷史切入,了解<b class='flag-5'>微控制器</b>的五個(gè)要素(上)

    微控制器基礎(chǔ)】—— 從歷史切入,了解微控制器的五個(gè)要素(下)

    微控制器基礎(chǔ)】—— 從歷史切入,了解微控制器的五個(gè)要素(下)
    的頭像 發(fā)表于 12-06 17:23 ?519次閱讀
    【<b class='flag-5'>微控制器</b>基礎(chǔ)】—— 從歷史切入,了解<b class='flag-5'>微控制器</b>的五個(gè)要素(下)