手把手教你C51单片机(史上最详细)
????????警告:
? ? ? ? ? ? ? ? 如果要學51單片機的話,你一定要確保自己是誠心去學
? ? ? ? ? ? ? ? 不然把開發板買了,學了一半不想學了,那是你自己的事
前期準備:
? ? ? ? 首先,我們需要準備開發51單片機的軟件或者開發板
? ? ? ? 在這篇文章里,我們會用到Keil uVision5來作為我們寫代碼的地方
? ? ? ? 然后需要一個注冊機來破解我們的Keil5
? ? ? ? 還需要STC-ISP(版本v6.86)來導入我們的HEX文件到開發版上
? ? ? ? 這些我都上傳到百度網盤上了:
????????????????https://pan.baidu.com/s/103tXH_TqyoVK9SgnrLH9Cw
? ? ? ? ? ? ? ? (提取碼是8952)
? ? ? ? ? ? ? ? 下載到你的電腦里,最好把殺毒軟件提前關掉,不然有可能會誤刪文件
? ? ? ? 另外,開發板需要自己買,通常在淘寶上搜索“51單片機開發板”就能買到,要買普中科技的
? ? ? ? 這是我的開發板,供參考:
?
? ? ? ? 這樣一個開發板外加一條USB連接線,用于和電腦進行連接
下載并破解Keil:
? ? ? ? 首先,打開c51v954.exe,這是安裝程序,下面跟著我一步步來
????????1.點Next:
? ? ? ? 2.勾選左下角的框框,然后再點Next:
? ? ? ? ?3.選擇一個路徑,通常不要改,默認就好了,然后點Next
? ? ? ? ?4.圖中有4個輸入框,隨便填,填什么都行,然后點Next
? ? ? ? 5.這個時候Keil就開始下載了,? 慢慢等就行了,? 完成之后點Next和Finish, Keil就安裝好了
? ? ? ? ?此時你的桌面上按理來說應該會出現一個快捷方式,? 雙擊它就能打開Keil了
? ? ? ? 但是通常來說此時還是沒有注冊好的,? 所以接下來的步驟就是破解了
? ? ? ? 1.點擊File->License Management,? 然后會出現一個窗口,? 在右上角找到CID,? 然后復制
????????
? ? ? ? 2.打開我們的注冊機,? 就是KEIL_Lic.exe,? 雙擊,? 然后把CID復制進去,? 然后點Generate
? ? ? ?3. 然后框框里就會出現一串字符,? ?把它復制到這里,? 點Add LIC,? 最后點Close,? 就完成了
?正片開始:
? ? ? ? 準備了這么久,? 我們終于可以開始寫代碼了,? 我先教大家怎么新建一個工程
? ? ? ? 1.打開Keil點擊Project->New uVision Project,?然后在一個路徑里存文件,?文件名自由選擇? ? ? ??
? ? ? ? ?2.此時出現一個框框,? 讓我們選擇單片機的型號,? 在搜索框搜索AT89C52,? 然后點OK
????????
? ? ??3.出現一個小框,? 顯示是否要添加STARTUP.A51,? 我們點否
? ? ? 4.工程建好了,?我們要添加一個寫代碼的文件,? 點擊Target 1的加號,? 出現一個Source group 1
? ? ? ? 5.右鍵Source group 1,? 點擊Add New Item To"Source group 1"
????????
? ? ? ? 6.點擊C File(.c),? 然后在Name里輸入main,? 最后點Add
? ? ? ? ?寫代碼的文件就創建好了!
開始寫代碼 :
? ? ? ? 現在就可以開始寫代碼了
? ? ? ? 這篇文章的目標是點亮一個LED燈
? ? ? ? 板子上的這一塊就是LED燈了:
????????????????
? ? ? ? 板子上的每一個位置都會有一個端口,? 這個LED的端口就是P2
? ? ? ? 因為有多個LED燈所以這個端口還可以劃分成P2_0,? P2_1, P2_2等等
? ? ? ? 這篇文章要點亮的是P2_0
? ? ? ? 看看程序該怎么寫吧 :
#include <REGX52.H>void main(){P2_0=0;while (1); }? ? ? ? 有一定C/C++基礎的人一定知道#include <REGX52.H>是什么意思,? 就是導入一個庫
? ? ? ? 這個庫包含了一個變量P2_0,? 這樣我們更容易去控制LED燈
? ? ? ? void main()就是主函數,? 就是你操作單片機的地方
? ? ? ? P2_0=0;的功能就是點亮LED, 0代表點亮,? 1代表不亮
? ? ? ? while (1)的作用是不讓程序這么快結束,? 沒有這個的話,? 燈就會點亮一瞬間就沒了
? ? ? ? 把代碼放入Keil中:
? ? ? ? 接下來要設置程序編譯的時候產生HEX文件的作用
? ? ? ? 點擊這個圖標:
? ? ? ? 然后點Output->勾選?Create HEX file,? 最后點OK
?
? ? ? ? 這樣程序在編譯的時候就能創建HEX文件了
? ? ? ? 點這個圖標編譯:
? ? ? ? ?編譯后如果顯示0 error, 0 warnings,? 就代表你成功了
????????
使用STC-ISP把HEX文件導入到板子里:
? ? ? ? 打開STC-ISP:
????????
? ? ? ? 把單片機型號改成STC89C52RC/LE52RC
? ? ? ? 接著用USB線把電腦和單片機連接起來
? ? ? ? 然后把串口號改成有USB的那個 (每個人的單片機串口號不一樣,? 我的是COM3)?
? ? ? ??
? ? ? ? STC-ISP就設置好了,? 然后點打開程序文件,? 在Object里面有一個HEX,? 文件,? 雙擊就行了
? ? ? ? 最后,? 點擊下載/編程?
? ? ??
? ? ? ? ?此時會顯示: "正在檢測目標單片機..."
? ? ? ? 這個時候我們按下單片機上的啟動按鈕,? LED就亮了
????????
?
? ? ? ? ?如果你的單片機亮了,? 希望給個贊,? 如果想記住這篇文章,? 就點個收藏
? ? ? ? ?如果沒亮,? 也可以在評論區跟我說遇到的問題,? 我會盡量解決的!
?
總結
以上是生活随笔為你收集整理的手把手教你C51单片机(史上最详细)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vsan概述
- 下一篇: 【造轮子】实现 strtok 函数