• <noframes id="6fok0"><bdo id="6fok0"><listing id="6fok0"></listing></bdo>
    <ruby id="6fok0"></ruby>

    <progress id="6fok0"></progress>
  • <progress id="6fok0"></progress>
    <ruby id="6fok0"><table id="6fok0"></table></ruby>
  • <progress id="6fok0"><u id="6fok0"><form id="6fok0"></form></u></progress>

    24小時(shí)聯(lián)系電話(huà):18217114652、13661815404

    中文

    您當前的位置:
    首頁(yè)>
    電子資訊>
    技術(shù)專(zhuān)題>
    單片機編程分步指南

    技術(shù)專(zhuān)題

    單片機編程分步指南


    單片機編程分步指南

    對于那些希望從微控制器編程開(kāi)始的人,這是一個(gè)循序漸進(jìn)的指南。本文首先介紹了將在本指南中使用的一些基本術(shù)語(yǔ),一系列工具,編程語(yǔ)言,最后是可下載代碼的示例以及逐步指南,可用于實(shí)踐微控制器編程。 

    但是在進(jìn)入微控制器編程之前。讓我們定義前兩個(gè)基本術(shù)語(yǔ):硬件和軟件。 

    硬件由系統中的物理組件組成,例如芯片,鍵盤(pán),鼠標,監視器,內存,I / O設備。與軟件相比,硬件更難開(kāi)發(fā),必須針對非常特定的應用程序進(jìn)行設計,并且它是高速系統中非常有效且完美的解決方案。 

    軟件是在硬件上運行的非物理組件或應用程序,例如操作系統,計算機游戲和網(wǎng)絡(luò )應用程序。軟件是高度可配置的,易于開(kāi)發(fā)且開(kāi)發(fā)速度較快,與硬件相比也非常便宜。 

    什么是微控制器 

    要了解什么是微控制器,我們首先需要了解什么是微處理器或CPU(中央處理單元)。CPU是任何計算機系統的心臟,就像執行任務(wù)時(shí)的人腦一樣。我們基本上可以將其分為兩個(gè)基本部分:

    控制單元:該單元用于從內存中獲取數據。

    執行單元:該單元用于執行或運行數據。 

    處理器類(lèi)型 

    處理器有很多類(lèi)別,例如通用處理器,專(zhuān)用系統處理器和多處理器系統。通用處理器有多種類(lèi)型:

    ?微處理器

    ?單片機

    ?嵌入式處理器

    ?數字信號處理器 

    微處理器是半導體設備或芯片上的計算機,而不是功能齊全的計算機。其中央處理器單元包含 

    ?ALU

    ?程序計數器

    ?寄存器

    ?其他電路(時(shí)鐘時(shí)間,中斷)

    微控制器是一種IC,其中包含微處理器和一些外圍設備,這些外圍設備將構成完整的功能計算機,例如ADC,RAM,ROM,DAC等外圍設備。 

     

    單片機的歷史 

    最初,英特爾公司是第一家制造微控制器的公司。第一個(gè)微控制器于1971年在美國生產(chǎn)。它是一個(gè)名為i40044位微控制器。后來(lái),英特爾當時(shí)使用8位微控制器生產(chǎn)了更復雜的模型,此后,東芝開(kāi)發(fā)了12位微控制器。 

    微控制器的應用 

    微控制器在許多行業(yè)中都有許多應用,例如汽車(chē),醫療,工業(yè)自動(dòng)化,航空航天,機器人技術(shù)。 

    例如,在汽車(chē)工業(yè)中,當今的現代汽車(chē)具有100多個(gè)微處理器,用于諸如空調,ABS,EBDADAS之類(lèi)的系統,或者諸如自適應居里控制器和車(chē)道輔助系統之類(lèi)的高級駕駛輔助系統,以下是ECU的圖像或電子控制單元。 

    在醫療領(lǐng)域,有些醫療設備包括微控制器,例如MRI,葡萄糖測試儀,便攜式EKG。下圖是葡萄糖測試設備。 

     

    在航空航天領(lǐng)域,大多數飛機都采用微控制器設計了新的航空電子系統。此外,還有所有基于微控制器的飛行控制系統,空中交通控制系統,導航和氣象系統。  

    流行的微控制器 

    微控制器的類(lèi)型和平臺很多,但是選擇微控制器取決于許多因素: 

    ?申請

    ?預算

    ?表現

    ?GPIO引腳數

    ?內存大小

    ?工作環(huán)境溫度

    ?耗電量 

    AVR微控制器 

    下圖包含AVE12DA的框圖,AVE12DA是最流行的微控制器之一-AVR微控制器: 

      

    AVR微控制器由Atmel公司(現為Microchip)生產(chǎn)。Atmel擁有6個(gè)系列的AVR微控制器,4個(gè)系列的通用微控制器和2個(gè)專(zhuān)用的微控制器。通用微控制器是:

    ?8大型AVR

    ?8– AT Tiny

    ?8位和16– AVR Xmega

    ?32– AVR 

    專(zhuān)用微控制器是: 

    ?汽車(chē)AVR

    ?電池管理 

    車(chē)載AVR,顧名思義,是為汽車(chē)應用而開(kāi)發(fā)的。它可以在高達150攝氏度的高溫下工作,并且包括用于短路問(wèn)題的保護系統。 

    電池管理微控制器是為電池管理系統開(kāi)發(fā)的,以確保充電和放電操作的安全。 

    AVR平臺示例 

    ?Arduino UNO

    ?Adafruit藍色水果微

    ?Raspduino

    ?Digispark Pro

    ARM微處理器/微控制器 

    ARM微處理器是世界上最受歡迎的處理器,尤其是在消費類(lèi)應用中。您可能擁有基于ARM處理器的設備,但您不知道!在大多數成功的32位嵌入式系統中,ARM幾乎都是關(guān)鍵組件。第一個(gè)ARM1985年開(kāi)發(fā)。 

    RISC技術(shù) 

    ARM使用了RISC技術(shù),RISC代表精簡(jiǎn)指令集計算機,這是一種在單個(gè)周期內交付簡(jiǎn)單指令的設計理念。它更多地依賴(lài)于軟件。另一方面,CISC技術(shù)更多地依賴(lài)于硬件。 

     RISC技術(shù)致力于減少處理器的指令集。另一方面,CISC處理器具有指令集的非固定編號。 

    ARM功能

    Arm具有每個(gè)嵌入式系統設計人員想要的許多功能,例如,由于其緊湊的尺寸而降低了功耗,而且由于我們正在開(kāi)發(fā)嵌入式系統,因此高代碼密度是另一個(gè)功能,在大多數情況下,我們的資源將有限。 

    基于ARM的微控制器的內部結構   

    該圖顯示了大多數基于ARM的設備的內部結構: 

     

    框代表功能,線(xiàn)代表總線(xiàn)。讓我們詳細討論每個(gè)組件: 

    ?ARM處理器是它負責處理操作的核心組件

    ?控制器用于協(xié)調系統功能,如存儲和中斷控制器

    ?外圍設備用于提供系統輸入和輸出

    ?總線(xiàn)用于在系統中不同組件之間交換數據  

    ARM平臺的例子 

    有許多具有手臂微處理器的設備和嵌入式平臺,例如 

    ?Arduino到期

    ?樹(shù)莓派

    ?STM32F103C8T6

    ?恩智浦LPC1768 

    其他微控制器和平臺 

    正如我們在選擇微控制器或平臺之前所說(shuō)的,這取決于許多因素(預算,引腳數等)。還有其他微控制器和平臺,例如 

    ?PIC微控制器

    ?8051

    ?ESP32

    ?摩托羅拉微控制器 

    單片機軟件和硬件工具 

    自從創(chuàng )建微控制器以來(lái),已經(jīng)有許多類(lèi)型的軟件和硬件開(kāi)發(fā)工具。當然,某些工具可以在各種微控制器類(lèi)型中使用,但是某些工具對于每個(gè)微控制器來(lái)說(shuō)都是非常特定的。在開(kāi)始微控制器編程之前,您可能需要熟悉微控制器編程工具以及最后但并非最不重要的開(kāi)發(fā)過(guò)程。 

    使用嵌入式開(kāi)發(fā)工具,我們可能需要以下工具: 

    組裝工 

    它是一個(gè)軟件工具,可以將匯編中的源代碼轉換為機器代碼,例如(GNU匯編器)。 

    編譯器 

    它是一個(gè)軟件程序,可以將高級編程語(yǔ)言的源代碼轉換為匯編語(yǔ)言或機器代碼。編譯可以是: 

    ?本機:這意味著(zhù)您在同一臺計算機上運行編譯器和生成的代碼

    ?交叉:這意味著(zhù)您在計算機上運行編譯器,而生成的代碼在另一臺計算機(處理器體系結構)上運行。 

    鏈接器和定位器 

    鏈接器是一個(gè)程序,它收集和鏈接編譯和匯編操作并生成單個(gè)exe。 

    定位器是一種程序工具,可用于更改鏈接器輸出的內存映射。 

    仿真器 

    它是一個(gè)模擬真實(shí)場(chǎng)景的程序,它產(chǎn)生實(shí)時(shí)系統的近似值。使用模擬器:

    ?如果實(shí)際硬件不可用

    ?在危險的測試環(huán)境和場(chǎng)景中  

    調試器 

    它是一種軟件程序和硬件設備,可以與我的PC連接到嵌入式目標。使用調試器:

    ?設置斷點(diǎn)

    ?跟蹤執行

    ?轉儲內存

    硬件調試器可以

    ?在線(xiàn)調試器

    ?調試板載代理軟件 

    閃存裝載器 

    它是一種程序和硬件設備,可用于: 

    ?程序ROM /閃存

    ?觀(guān)察變量

    ?擦除ROM /閃存 

    探查器 

    Profiler是監視軟件代碼性能的工具 

    集成開(kāi)發(fā)環(huán)境 

    它是一個(gè)軟件程序,其中包含大多數工具。它可能包括 

    ?文字編輯器

    ?編譯器

    ?調試器

    ?分析器

    ?模擬器

    ?鏈接器 

    單片機軟件語(yǔ)言

    我們可以將它們分為兩種類(lèi)型: 

    高水平

    ?C / C ++

    ?Java

    ?艾達 

    使用此類(lèi)型將提供硬件級別的抽象 

    低級 

    機器碼 

    它是01,很難被人寫(xiě),但是很容易讓計算機理解 

    集會(huì ) 

    它是一個(gè)助記碼和偽指令,以提高可讀性

    例子:

    一條指令由助記符(操作碼)+操作數組成

    操作碼是機器處理器執行的操作

    操作數是最終目標;操作碼必須執行一個(gè)操作。 

    匯編語(yǔ)言比機器代碼更具可讀性和可理解性,但是您需要在特定的處理器上使用匯編語(yǔ)言并了解其體系結構。 

    C / C ++編程語(yǔ)言 

    高級語(yǔ)言具有以下功能

    ?易于編寫(xiě)

    ?靈活

    ?獨立于處理器

    ?高生產(chǎn)率 

    使用AVR ATMEGA16的單片機編程示例 

    ATmega 16具有以下功能: 

    ?16 Kb系統內自可編程閃存

    ?512字節EEPROM

    ?1 KB內部SRAM

    ?編程鎖的安全性 

    外圍功能 

    ?帶有獨立振蕩器的實(shí)時(shí)計數器

    ?可編程串行USART

    ?四個(gè)PWM通道

    ?8通道10ADC

    ?片內振蕩器

    ?開(kāi)機休息和掉電檢測

    ?內部RC振蕩器和中斷源

    ?電壓(2.7v5.5v

    請輸入搜索關(guān)鍵字

    確定
    色鲁99热99re超碰精品_91精品一区二区三区无码吞精_亚洲国产欧洲综合997久久_一级a性色生活片久久无
  • <noframes id="6fok0"><bdo id="6fok0"><listing id="6fok0"></listing></bdo>
    <ruby id="6fok0"></ruby>

    <progress id="6fok0"></progress>
  • <progress id="6fok0"></progress>
    <ruby id="6fok0"><table id="6fok0"></table></ruby>
  • <progress id="6fok0"><u id="6fok0"><form id="6fok0"></form></u></progress>