導航:首頁 > 使用方法 > 單片機使用方法

單片機使用方法

發布時間:2022-09-12 14:11:09

怎麼學習單片機

一、分析如下

1、啟蒙階段

學習電路基礎和模電數電,做一些諸如電機正反轉的電路,做功放、電源等小製作,了解個大概

2、學習微機原理

學習8086,這對了解計算機結構是不可或缺的,慢慢接觸匯編編程 。

3、匯編語言學習單片機

學習51單片機,學習匯編語言,差不多學三個月後,掌握了基本語法和單片機寄存器功能,就做一些實物。

4、進階

放棄模擬學習單片機的方式,轉而學習實物。多查資料,比如說,74HC245,因為有前幾步打下的基礎,電路圖一看就懂,剩下的就是焊接實物測試了。應該可以在很短的時間內,可以完成硬體測試。

二、拓展資料

關於單片機

1、單片機(Microcontrollers)是一種集成電路晶元,是採用超大規模集成電路技術把具有數據處理能力的中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊矽片上構成的一個小而完善的微型計算機系統,在工業控制領域廣泛應用。從上世紀80年代,由當時的4位、8位單片機,發展到現在的300M的高速單片機。

2、單片機又稱單片微控制器,它不是完成某一個邏輯功能的晶元,而是把一個計算機系統集成到一個晶元上。相當於一個微型的計算機,和計算機相比,單片機只缺少了I/O設備。概括的講:一塊晶元就成了一台計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。

3、單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統、家用電器等。各種產品一旦用上了單片機,就能起到使產品升級換代的功效,常在產品名稱前冠以形容詞——「智能型」,如智能型洗衣機等

② 單片機定時器的使用方法

第一步:設置特殊功能寄存器 TMOD,配置好工作模式。

第二步:設置計數寄存器 TH0 和 TL0 的初值。

第三步:設置 TCON,通過 TR0 置 1 來讓定時器開始計數。

第四步:判斷 TCON 寄存器的 TF0 位,監測定時器溢出情況。

寫程序之前,我們要先來學會計算如何用定時器定時時間。我們的晶振是 11.0592M,時鍾周期就是 1/11059200,機器周期是 12/11059200,假如要定時 20ms,就是 0.02 秒,要經過x 個機器周期得到 0.02 秒,我們來算一下 x*12/11059200=0.02,得到 x= 18432。16 位定時器的溢出值是 65536(因 65535 再加 1 才是溢出),於是我們就可以這樣操作,先給 TH0 和 TL0一個初始值,讓它們經過 18432 個機器周期後剛好達到 65536,也就是溢出,溢出後可以通過檢測 TF0 的值得知,就剛好是 0.02 秒。那麼初值 y = 65536 - 18432 = 47104,轉成 16 進制就是 0xB800,也就是 TH0 = 0xB8,TL0 = 0x00。

這樣 0.02 秒的定時我們就做出來了,細心的同學會發現,如果初值直接給一個 0x0000,一直到 65536 溢出,定時器定時值最大也就是 71ms 左右,那麼我們想定時更長時間怎麼辦呢?用你小學學過的邏輯,倍數關系就可以解決此問題。

好了,我們下面就用程序來實現這個功能。

#include

sbit LED = P0^0;

sbit ADDR0 = P1^0;

sbit ADDR1 = P1^1;

sbit ADDR2 = P1^2;

sbit ADDR3 = P1^3;

sbit ENLED = P1^4;

void main(){

unsigned char cnt = 0; //定義一個計數變數,記錄 T0 溢出次數

ENLED = 0; //使能 U3,選擇獨立 LED

ADDR3 = 1;

ADDR2 = 1;

ADDR1 = 1;

ADDR0 = 0;

TMOD = 0x01; //設置 T0 為模式 1

TH0 = 0xB8; //為 T0 賦初值 0xB800

TL0 = 0x00;

TR0 = 1; //啟動 T0

while (1){

if (TF0 == 1){ //判斷 T0 是否溢出

TF0 = 0; //T0 溢出後,清零中斷標志

TH0 = 0xB8; //並重新賦初值

TL0 = 0x00;

cnt++; //計數值自加 1

if (cnt 》= 50){ //判斷 T0 溢出是否達到 50 次

cnt = 0; //達到 50 次後計數值清零

LED = ~LED; //LED 取反:0--》1、1--》0

}

}

}

}

程序中都寫了注釋,結合前幾章學的內容,自己分析一下,不難理解。本程序實現的結果是開發板上最右邊的小燈點亮一秒,熄滅一秒,也就是以 0.5Hz 的頻率進行閃爍

③ 51單片機內部邏輯部件的基本使用方法

51單片機內部邏輯部件數據存儲器RAM是用以存放可以讀和寫的數據。

運算的中間結果,最終結果以及欲顯示的數據。程序存儲器ROM是用來存放一些程序,原始數據和表格。256B的片內數據存儲器RAM(51子系列的RAM為128B),在程序運行時可以隨時寫入數據和讀出。

用於存放函數相互傳遞的數據、接收的外部數據、中間結果、最後結果以及顯示的數據等。3個16位的定時器/計數器(51子系列僅有2個定時器),每個定時器/計數器可以設置為計數方式,用於對外部事件信號進行計數,也可以設置為定時方式,滿足各種定時要求。

內部邏輯部件:

有一個管理6個中斷源(51子系列1是5個中斷源)、兩個優先順序的中斷控制器。4個8位並行I/O端,每個埠既可以用作輸入,也可以用於輸出。一個全雙工的UART(通用非同步接收發送器)串列I/O口。

用於單片機之間的串列通信,或者單片機與PC機、其它設備、其它晶元之間的串列通信。片內振盪電路和時鍾發生器,只需外面接上一晶振或輸入振盪信號就可產生單片機所需要的各種時鍾信號。

④ 談談單片機在日常生活中的應用。

單片機具有體積小、功耗低、控制功能強、擴展靈活、微型化和使用方便等優點,主要應用於以下七個方面:

1、在智能儀表上的應用。

單片機結合不同類型的感測器,可實現電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。單片機的控制使得儀器儀表數字化,智能化,微型化,功能比起採用電子或數字電路更強大。

2、在工業控制中的應用。

用單片機可以構成形式多樣的控制系統、數據採集系統。例如工程流水線的智能化管理,電梯智能化控制,與計算機構成二級控制系統等。

7、單片機在汽車設備領域中的應用。

單片機在汽車電子中的應用非常廣泛,例如汽車中的發動機控制器,gps導航系統,abs防抱死系統,制動系統等。

此外,在工商,金融,科研,教育,國防等領域都有廣泛用途。

⑤ 單片機數組的定義和使用方法

單片機數組的定義和使用方法,單片機數組的定義就是說他是通過一個單機片組成個主板,然後使用方法是相對來說比較簡單的,然後可以參照使用說明來操作

⑥ 簡述單片機中斷系統使用步驟

中斷的基本概念

1.數據傳送方式

程序控制方式

無條件傳送方式:輸入輸出操作完全取決於程序的安排,而不管外設的狀態。

程序查詢方式:先查詢外設的當前狀態,獲得埠信息;I/O操作完全由CPU控制。缺點:浪費CPU時間,效率低。

中斷傳送方式

CPU不必定時查詢介面狀態,介面在數據發送或接收數據准備好後通知CPU;

CPU通過執行一個中斷服務程序來完成數據傳送。

介面沒有準備好時,CPU繼續執行主程序,提高CPU工作效率。

DMA(Direct Memory Access):直接存儲器存取方式

I/O設備在DMA介面控制下直接把成塊信息送到主存儲器,或從主存儲器取出成塊信息送給I/O設備,中間不經CPU參與。

比中斷、查詢方式更加提高了CPU的利用率。

2.中斷概念:CPU在正常運行程序時,由於CPU以外某一事件的發生,引起CPU暫停正在運行的程序,而轉到為該事件的發生預先安排好的服務程序中去執行。

相關文章
使用單片機實現PWM調光的C語言實例免費下載
使用單片機實現花樣燈的C語言實例免費下載
使用單片機實現查表顯示LED燈的C語言實例免費下載
使用單片機實現8位LED左移的C語言實例免費下載
使用單片機實現8位LED右移的C語言實例免費下載
使用51單片機實現液晶讀寫的源代碼免費下載
抗抖動計數電路的工作原理及應用設計
使用PIC單片機實現熱敏電阻數字化方法詳細說明

⑦ 單片機編程步驟

學單片機如何編程?非常詳細的Keil工程建立全過程講解

從零學電子
03-07
在單片機的開發或使用過程中除了掌握必要的硬體外,同樣離不開軟體,只有通過軟體(程序)的執行,硬體才能發揮出具體的作用。機器如何認識我們用各種符號編寫的程序呢?早期我們寫的匯編語言源程序要變為CPU可以執行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟體將源程序變為機器碼,隨著單片機開發技術的不斷發展,從使用匯編語言逐漸過渡到使用高級語言開發,單片機的開發軟體也在不斷發展,Keil軟體是目前最為流行的開發MCS-51系列單片機軟體。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的模擬調試器等在內的完整開發方案,通過一個集成開發環境(uVision)將這些部份組合在一起。Keil軟體對計算機的硬體資源要求很低,可以說現在市面上的計算機都能滿足其硬體需求。

Keil C51

Keil C51是51系列兼容單片機C語言軟體開發系統,採用全Windows界面,提供了豐富的庫函數和功能強大的集成開發調試工具。生成的目標代碼效率非常之高,且生成的匯編代碼緊湊,容易理解。在開發大型軟體時更能體現高級語言的優勢。與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。相信用過匯編語言後再使用C來開發,體會更加深刻,當然如果匯編語言和硬體結構熟練到一定程度,使用匯編語言會更具優勢,但對於大部分初學者而言,Keil C51應該是首選。掌握這一軟體的使用對於使用51系列單片機的愛好者來說是十分必要的,即使不使用C語言而僅用匯編語言編程,其方便易用的集成環境、強大的軟體模擬調試工具也會令你事半功倍。

Keil uVison4是普通版本,只能適用於單片機,主要是基於8051系列單片機的開發環境;Keil MDK是擴展版本,包含了部分ARM。為基於Cortex-M、Cortex-R4、ARM7、ARM9處理器設備提供了一個完整的開發環境;初學者建議採用Keil uVison4及更低版本,注意:Keil uVison4分Keil MDK-ARM和Keil C51版本,初學者應安裝Keil C51版的。

關於Keil軟體的安裝與常用其它軟體安裝的方法類似,安裝按照說明一步一步操作即可,不再贅述。本文主要詳細講解用Keil uVison4新建一個工程的詳細過程,相信通過這個教程的學習,您一定會對使用Keil軟體創建一個新的工程有深入的掌握。

第一步:從桌面找到Keil圖標,雙擊圖標啟動Keil軟體,

啟動Keil

會看到如圖所示界面。

啟動後的界面

第二步:點擊菜單條中的"Project"並從下拉菜單中選擇"New uVision Project…",

新建工程

自動彈出一個項目路徑選擇對話框,(若打開keil軟體時,如果發現此軟體默認打開了一個之前已經存在的工程,請先關閉此工程。點擊上面"Project"選項,在彈出的下拉菜單中選擇"Close Project"即可。)

選擇路徑新建文件夾

在彈出的對話框中,選擇即將創建工程的保存路徑和文件夾,若不存在可以用與Window系統一致的方法新建文件夾,如"TEST",並在該文件夾下的對話框文件名處輸入自己為工程起的工程名,如下圖輸入的LCD1602。

輸入工程名

第三步:輸入文件名點擊保存後,彈出如圖所示控制器選擇對話框,

選擇單片機類型

在單片機類型列表中找到並選中"Atmel"下的AT89C52(大家根據自己控制器型號選擇),右側區域給出所選單片機的硬體資源,

單片機的硬體資源說明

點擊"OK",彈出詢問是否將標准51系列啟動代碼添加到新建工程中的彈窗,因為keil的庫文件裡面已經有一個默認的啟動代碼了,如果你的工程里沒有啟動代碼,keil就會使用庫里的默認啟動代碼,如果有,keil就會編譯並使用你的啟動代碼,庫里的啟動代碼會被忽略。(初學者建議點擊"否即可")

選擇是否添加啟動代碼到工程中

第四步:點擊"File"菜單下的"New",新建會看到出來一個名字為"Text1"的文件,

新建C文件

再一次點擊上面"File"下拉菜單中 "Save"或點擊工具欄中的"保存",會彈出一個保存的對話框,輸入文件名如"LCD1602MAIN.C"(切記,此處無論你起什麼樣的文件名,但後面必須輸入.C!!!),單擊"保存",將文件在第二步新建的文件夾目錄下。

保存C文件

命名.C文件名

此時可以在新建文件中進行代碼編寫了,如包含頭文件 #include <Reg52.h>,但要注意,此時文件LCD1602MAIN.C並未與工程建立起聯系。

此時的C文件還未和工程建立聯系

第五步:將新建的文件添加到工程中,點擊左邊"Porject"選項框裡面的"Target 1"前面的"+"號, 在展開的下拉菜單下看到"Source Group 1"。右鍵單擊"Source Group 1"選項, 在下拉菜單中選擇"Add Files to Group 'Source Group 1'..."選項,彈出一個文件選擇對話框,單擊選中剛才新建的.c源文件,然後單擊一次"Add"按鈕,此時雖然對話框沒有關閉,但是已經把.c源文件添加到工程里了,這時只要再點擊一次"Close"按鈕即可把此對話框關閉(初學者經常以為.c源文件沒有被添加進去,還要按"Add"按鈕)。這時發現左邊的"Source Group 1"前面多了一個"+"號, 單擊此"+"號展開, 發現下面出現了剛才我們新添加進去的.c源文件"LCD1602MAIN.c"。

將C文件添加到工程中

選擇要添加的文件

已將C文件成功添加到工程中

第六步:為了降低編程的疲勞,根據需要進行字體字型大小設置,點擊如圖"Edit"菜單最下面的"Configeruration"選項,

設置舒適的字體字型大小

根據自己的需要進行字體設置即可,

如何設置字體字型大小

一個新的Keil工程建立完畢

至此,一個全新的Keil工程建立完畢,開啟自己的編程之旅吧!

了解更多

keil4編程是什麼意思
編程必背50個程序
燒錄程序的使用步驟
keil4怎麼設置成中文
如何使用keil5進行編程
st語言編程入門與精通

⑧ 單片機內部邏輯部件的基本使用方法

單片機內部邏輯部件的基本使用方法:

在引腳XTAL1和XTAL2外接晶振振盪器或陶瓷諧振器,就構成了單片機的內部振盪方式。由於單片機內部有一個高增益反相放大器,當外接晶振後,就構成了自激振盪器,並產生振盪時鍾脈沖。

定時器分的高8位和低8位是分別存在TH0和TL0中的,所以TH0上的1其實代表1乘以二的八次方計256,所以要設置的數65536-500除以256的商就是放在高8位里的,剩下的余數放入低8位就行了。

單片機

也被稱為單片微控器,屬於一種集成式電路晶元。在單片機中主要包含CPU、只讀存儲器ROM和隨機存儲器RAM等,多樣化數據採集與控制系統能夠讓單片機完成各項復雜的運算,無論是對運算符號進行控制,還是對系統下達運算指令都能通過單片機完成。 由此可見,單片機憑借著強大的數據處理技術和計算功能可以在智能電子設備中充分應用。

⑨ 單片機中的%是如何使用的

單片機是典型的嵌入式微控制器(Microcontroller Unit),由運算器,控制器,存儲器,輸入輸出設備等構成,相當於一個微型的計算機。與應用在個人電腦中的通用型微處理器相比,它更強調自供應(不用外接硬體)和節約成本。它的最大優點是體積小,可放在儀表內部,但存儲量小,輸入輸出介面簡單,功能較低。由於其發展非常迅速,舊的單片機的定義已不能滿足,所以在很多應用場合被稱為范圍更廣的微控制器;已經從上世紀80年代的4位、8位單片機,發展到現在的32位甚至64位的高速單片機。[1]

中文名
單片機
外文名
Microcontroller Unit
性質
嵌入式微控制器
優點
體積小、質量輕、價格便宜
組成
運算器、控制器、存儲器、輸入輸出設備
種類
3種
類別
電路晶元
相關概述
單片微型計算機簡稱單片機,是典型的嵌入式微控制器(Microcontroller Unit), 常用英文字母的縮寫MCU表示單片機。單片機又稱單片微控制器,它不是完成某一個邏輯功能的晶元,而是把一個計算機系統集成到一個晶元上。單片機由運算器,控制器,存儲器,輸入輸出設備構成,相當於一個微型的計算機(最小系統),和計算機相比,單片機缺少了外圍設備等。概括的講:一塊晶元就成了一台計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。它最早是被用在工業控制領域。


單片機
由於單片機在工業控制領域的廣泛應用,單片機由僅有CPU的專用處理器晶元發展而來。最早的設計理念是通過將大量外圍設備和CPU集成在一個晶元中,使計算機系統更小,更容易集成進復雜的而對體積要求嚴格的控制設備當中。
INTEL的8080是最早按照這種思想設計出的處理器,當時的單片機都是8位或4位的。其中最成功的是INTEL的8051,此後在8051上發展出了MCS51系列單片機系統。因為簡單可靠而性能不錯獲得了很大的好評。盡管2000年以後ARM已經發展出了32位的主頻超過300M的高端單片機,直到現在基於8051的單片機還在廣泛的使用。在很多方面單片機比專用處理器更適合應用於嵌入式系統,因此它得到了廣泛的應用。事實上單片機是世界上數量最多處理器,隨著單片機家族的發展壯大,單片機和專用處理器的發展便分道揚鑣。

現代人類生活中所用的幾乎每件有電子器件的產品中都會集成有單片機。手機、電話、計算器、家用電器、電子玩具、掌上電腦以及滑鼠等電子產品中都含有單片機。 汽車上一般配備40多片單片機,復雜的工業控制系統上甚至可能有數百片單片機在同時工作。

應用分類
單片機作為計算機發展的一個重要分支領域,根據發展情況,從不同角度單片機大致可以分為通用型/專用型、匯流排型/非匯流排型及工控型/家電型。

通用/專用型
這是按單片機適用范圍來區分的。例如,80C51是通用型單片機,它不是為某種專用途設計的;專用型單片機是針對一類產品甚至某一個產品設計生產的,例如為了滿足電子體溫計的要求,在片內集成ADC介面等功能的溫度測量控制電路。

匯流排型/非匯流排型
這是按單片機是否提供並行匯流排來區分的。匯流排型單片機普遍設置有並行地址匯流排、數據匯流排、控制匯流排,這些引腳用以擴展並行外圍器件都可通過串列口與單片機連接,另外,許多單片機已把所需要的外圍器件及外設介面集成一片內,因此在許多情況下可以不要並行擴展匯流排,大大減省封裝成本和晶元體積,這類單片機稱為非匯流排型單片機。

工控型/家用型
這是按照單片機大致應用的領域進行區分的。一般而言,工控型定址范圍大,運算能力強;用於家電的單片機多為專用型,通常是小封裝、低價格,外圍器件和外設介面集成度高。 顯然,上述分類並不是惟一的和嚴格的。例如,80C51類單片機既是通用型又是匯流排型,還可以作工控用。

相關歷史
單片機誕生於20世紀70年代末,經歷了SCM、MCU、SoC三大階段。

起初模型


單片機
SCM即單片微型計算機(Single Chip Microcomputer)階段,主要是尋求最佳的單片形態嵌入式系統的最佳體系結構。「創新模式」獲得成功,奠定了SCM與通用計算機完全不同的發展道路。在開創嵌入式系統獨立發展道路上,Intel公司功不可沒。
MCU即微控制器(Micro Controller Unit)階段,主要的技術發展方向是:不斷擴展滿足嵌入式應用時,對象系統要求的各種外圍電路與介面電路,突顯其對象的智能化控制能力。它所涉及的領域都與對象系統相關,因此,發展MCU的重任不可避免地落在電氣、電子技術廠家。從這一角度來看,Intel逐漸淡出MCU的發展也有其客觀因素。在發展MCU方面,最著名的廠家當數Philips公司。

Philips公司以其在嵌入式應用方面的巨大優勢,將MCS-51從單片微型計算機迅速發展到微控制器。因此,當我們回顧嵌入式系統發展道路時,不要忘記Intel和Philips的歷史功績。

SoC即嵌入式系統(System on Chip)尋求應用系統在晶元上的最大化解決使得專用單片機的發展自然形成了SoC化趨勢。隨著微電子技術、IC設計、EDA工具的發展,基於SoC的單片機應用系統設計會有越來越大的發展。因此,對單片機的理解可以從單片微型計算機、單片微控制器延伸到單片應用系統。

單片機發展史

1971年intel公司研製出世界上第一個4位的微處理器;Intel公司的霍夫研製成功世界上第一塊4位微處理器晶元Intel 4004,標志著第一代微處理器問世,微處理器和微機時代從此開始。因發明微處理器,霍夫被英國《經濟學家》雜志列為「二戰以來最有影響力的7位科學家」之一 。

1971年11月,Intel推出MCS-4微型計算機系統(包括4001 ROM晶元、4002 RAM晶元、4003移位寄存器晶元和4004微處理器 )其中4004包含2300個晶體管,尺寸規格為3mm×4mm,計算性能遠遠超過當年的ENIAC,最初售價為200美元。

1972年4月,霍夫等人開發出第一個8位微處理器Intel 8008。由於8008採用的是P溝道MOS微處理器,因此仍屬第一代微處理器。

1973年intel公司研製出8位的微處理器8080;1973年8月,霍夫等人研製出8位微處理器Intel 8080,以N溝道MOS電路取代了P溝道,第二代微處理器就此誕生。

主頻2MHz的8080晶元運算速度比8008快10倍,可存取64KB存儲器,使用了基於6微米技術的6000個晶體管,處理速度為0.64MIPS(Million Instructions Per Second )。

1975年4月,MITS發布第一個通用型Altair 8800,售價375美元,帶有1KB存儲器。這是世界上第一台微型計算機。

1976年intel公司研製出MCS-48系列8位的單片機,這也是單片機的問世。Zilog公司於1976年開發的Z80微處理器,廣泛用於微型計算機和工業自動控制設備。當時,Zilog、Motorola和Intel在微處理器領域三足鼎立。

20世紀80年代初,Intel公司在MCS-48系列單片機的基礎上,推出了MCS-51系列8位高檔單片機。MCS-51系列單片機無論是片內RAM容量,I/O口功能,系統擴展方面都有了很大的提高。

閱讀全文

與單片機使用方法相關的資料

熱點內容
獨詞式標題選材常用方法 瀏覽:748
一天解決一本書的方法 瀏覽:239
沂蒙山楂的食用方法 瀏覽:179
系統思維的訓練方法 瀏覽:41
組合數計算方法高中數學例題 瀏覽:305
如何用物理方法卷發 瀏覽:194
穿絲襪的正確方法視頻教程 瀏覽:220
簡單鍛煉方法視頻捂臉 瀏覽:274
如何喚醒孩子的方法 瀏覽:567
雙開雙控插座安裝方法視頻 瀏覽:704
gps手持測畝儀使用方法 瀏覽:152
有什麼方法可以安眠 瀏覽:215
種大蒜的視頻種植方法 瀏覽:172
什麼樣的方法能瘦下來 瀏覽:430
蟲牙打洞治療方法 瀏覽:889
糖尿病檢測方法題 瀏覽:528
2012年汾酒鑒定方法及技巧 瀏覽:119
如何自己製作竹子的方法 瀏覽:854
面部混合痣的最佳治療方法 瀏覽:361
中種發酵方法和技巧 瀏覽:407