<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

51單片機中的STC89C52介紹

科技綠洲 ? 來源:匯極星科技 ? 作者:匯極星科技 ? 2023-09-11 09:46 ? 次閱讀

目前,單片機型號種類繁多,以其優越的控制性能在自動化控制領域占有重要地位。如今單片機無處不在,像我們的電冰箱、空調、洗衣機都是單片機在內部控制,當然,他們所用的單片機是定制的,并不是我們學習時使用的單片機。除此不同品牌的單片機芯片采用的內核也會不同,比如INTEL公司的MCS-51內核(代表芯片:AT89系列、國產STC系列等),ARM公司的高性能”Cortex-M3”內核(代表芯片:STM32系列)等。因為內核的差異,使得他們在使用中也會有所不同。

對于初學者來說,51單片機中的STC89C52是很不錯的選擇,因為它便宜(單片價格在8RMB左右),而且相對容易學習。接下來將以這款芯片為例介紹51單片機。

![圖片](https://mmbiz.qpic.cn/mmbiz_jpg/Px0x0xOsMVYtRiaptO9smicSJgxvy60V2QAxC1gRj5JBuBMpN1srJ1tNg6NcjNg25ZnNERIxh3iaKIfzZlHXNCvmQ/640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1)

首先簡單介紹這款芯片:

1.STC89C52是STC公司(中國深圳宏晶科技公司)生產的一種低功耗、高性能CMOS8位微控制器,具有8K字節系統可編程Flash存儲器(8K對單片機來說不小了,當然不能跟我們的手機比),使用MCS-51內核,指令代碼完全兼容傳統8051。

2.工作電壓范圍很廣(這里只介紹5V版本),在3.3V~5.5V之間都能工作,但是電壓越高,工作電流也會更大,通俗的說,如果用單片機點亮一顆LED燈,使用5.5V供電,燈的亮度要比3.3V供電時亮,耗電也會更多。

3.通用I/O 口(4x8=32個),復位后為:P1/P2/P3 是準雙向口/弱上拉, P0 口是漏極開路輸出,作為 I/O 口用時,需加上拉電阻。(除非某I/0口置零,否則它就輸出高電平)

4.工作頻率范圍:0~40MHz,相當于普通8051 的0~80MHz,實際工作 頻率可達48MHz,其工作頻率取決于晶振頻率,我們常用的是12MHz、11.0592MHz。

5.ISP(在系統可編程)/IAP(在應用可編程),可通過串口(RxD/P3.0,TxD/P3.1)直接下載用戶程 序。在學習過程中,我們只要使用ISP即可,也就是制作好電路板之后,只要把RxD/P3.0,TxD/P3.1通過排針引出來,我們就可以通過USB-TTL把程序燒錄到單片機,不需要再把單片機芯片從系統板上取出來。

6.共3 個16 位定時器/計數器。即定時器T0、T1、T2

其他參數就不詳細介紹,其資料可自行在網上查閱。

首先需要了解這款芯片的引腳圖,才能根據引腳連接各種元件。(暫時只標注常用的的功能)

圖片

接下來詳細探討各模塊:

** 1,I/O口**

I/O口即輸入輸出口,是單片機用來輸出或者輸入信號端口。STC89C52共有四組(P0、P1、P2、P3),每組8個(每組I/O口能同時輸出8位二進制數。其CPU計算時的數據寬度正好也是八位,所以該芯片為8位控制器),共32個I/O口。

單片機所有I/O口默認狀態都是高點平,除非在程序里將其置0,這樣的設定可以讓單片機運行更穩定。

通常,I/O口都會連接上拉電阻,其目的一是使單片機運行穩定,二是提高單片機驅動能力,即讓單片機能控制更大的負載。上拉電阻我們常用阻值為10K的9P排阻即可(其大小在1~10K都可,電阻小可提高驅動能力,電阻大可以降低功耗)。它有9個引腳,一個為公共端,另外八個引腳與I/O口相連。其結構及接線圖如下圖所示。注意,除了上拉電阻,還有下拉電阻,上拉電阻的公共端是接VCC,下拉電阻的公共端是接GND。

圖片

2.時鐘電路

這里的時鐘并不是我們所說的鐘表,而是指一種信號(理想的時鐘信號就是矩形波,或者說脈沖波)。從數字電子技術中學習知道,在邏輯電路中,必須依靠時鐘信號才能工作(例如觸發器,每收到一個時鐘信號,就動作一次),單片機其實就可以看成就是一個集成化的邏輯電路。所以我們需要外接時鐘電路,來讓單片機工作。

圖片

時鐘電路的核心是晶振,它是一種可以產生穩定震蕩頻率的電子元件。它的基本參數是震蕩頻率,單位為MHz,其參數決定了單片機的工作頻率。其數值一般刻在晶振元件上面。常用的單片機晶振主要有12.000MHz和11.0592MHz,當程序中使用了定時器,使用11.0592MHz晶振可以定時更準確。

時鐘電路除了晶振還有兩個瓷片電容(30pF),這兩個電阻可以起到微調頻率的作用。

晶振電路有兩個端口XT1和XT2,將這兩個端口分別與單片機的18腳(XTAL2)、19腳(XTAL1)相連即可為單片機提供時鐘信號(這兩個端口沒有順序,可以隨意連接)。

3.復位電路

復位電路說白了就是用來重啟單片機,使單片機初始化,重新開始執行程序。當單片機因程序問題出現故障(比如程序中出現不可控的死循環),可通過復位電路向單片機第9腳RET發送一個復位信號,單片機就可自行復位。這個復位信號是一個連續2個機器周期(24個時鐘周期)的高電平。也就是單片機的RES腳如果連續兩個機器周期都是被置于高電平,單片機就會自動復位。

圖片

所以最簡單的復位電路就是上圖所示。按下開關K,VCC接入單片機RST,兩個機器周期后,單片機復位。(實際使用中,你按下按鈕立刻松開,這段時間已經遠超過兩個機器周期,所以按下復位鍵不需要停頓再松開)如果一直按著復位鍵,單片機則不會進入工作狀態,只有松開復位鍵單片機才開始工作。

一般來說,單片機上電以后自動從程序開頭執行,所有寄存器也是初始值,上電之后立即執行程序本是沒有問題的。但是在一些復雜的電路中,單片機的外接電路很多,有時候會有電容電感之類的,他們上電之后并不能立即進入工作狀態,他們有個“充電”過程,雖然時間短,但是單片機執行一條指令是微秒級的,很容易讓單片機誤判,出現意想不到的錯誤。如何避免這種現象?

請設想:如果單片機上電之后,不立即進入工作狀態,而是停頓“一會兒”,等其他元件充電完畢,再進入工作狀態,那就可以躲開上電初期的不穩定因素,從而避免誤判。

那如何實現這個停頓呢?這就依賴于復位電路的上電自動復位了。

圖片

上面是單片機常用的復位電路。

其原理涉及到電路原理中的KCL定律和一階電路的零狀態響應,不感興趣可略過。

上電后,電解電容C1充電,其電壓變化為 [式1],

而RET處的電位即對地電壓,可以看到,電阻R9的電壓在數值上正好等于RET的電位,

根據基爾霍夫電壓定律,R9的電壓=電源電壓-電容C1電壓,即,

式中的τ為時間常數,其值為τ=RC=1000X22/1000000=22ms,其電壓變化曲線如圖(簡略繪制,僅供參考):

圖片

可以看到在很長一段時間里(其實不到20ms),Ur都保持在較高的電位,也就是RET為高電平(3.7V以上電壓單片機都認為是高電平),在這段時間,足夠單片機躲過上電初期的不穩定。當Ur的電壓減小到不足以讓單片機判定為高點平,復位失效,單片機工作。

可以看到這種復位電路也能手動復位,按下開關S1,電容C1通過R10放電,松開S1,電容C1又開始充電,其情形與上電復位相同,RET接收到高電平,單片機復位。

所以復位電路的作用一是開機自動復位,躲過上電時的不穩定;二是手動復位,在單片機運行出錯時使用。

4.其他引腳

并行串口:第10、11腳是單片機的并行串口,作用就是燒錄程序。注意這兩腳是P3.0、P3.1復用了。燒錄程序需要用到燒錄工具USB-TTL。

圖片

實際的USB-TTL有很多型號,有的型號有10個引腳,但燒錄程序只需用到四個(VCC、GND、RXD、TXD)。所以我們需要四根杜邦線,首先,將轉換工具上的VCC、GND與單片機系統板的VCC、GND連接,然后把燒錄工具的RXD與單片機的TXD連接,燒錄工具的TXD與單片機的RXD連接。因為兩個引腳一個是發送數據,一個是接收數據,轉換工具發送數據(TXD),單片機自然是接收數據(RXD),反之同理。另外,燒錄程序還需用到軟件STC-ISP,這是專門用于STC系列單片機的燒錄軟件。

存儲器選通:單片機的31腳是存儲器選通EA,單片機內部存儲空間很小,如果需要擴展空間,就需要用到這個功能。當EA置于高電平,單片機從內部存儲器開始執行程序;當EA置于低電平,單片機則從外部存儲器開始執行程序。對初學者來說,我們使用內部存儲器就足夠了,所以可以直接將EA接VCC。

同樣,第30腳ALE為地址鎖存信號,也是在有外部存儲器是使用,不用時將其懸空即可;29腳PSEN為外部存儲器讀選通信號,同樣將其懸空。另外的40腳、20腳分別接電源正極、負極(地)不用多說了。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    6857

    瀏覽量

    148188
  • 存儲器
    +關注

    關注

    38

    文章

    7211

    瀏覽量

    162298
  • STC89C52
    +關注

    關注

    40

    文章

    327

    瀏覽量

    81451
  • 51單片機
    +關注

    關注

    270

    文章

    5648

    瀏覽量

    121090
收藏 人收藏

    評論

    相關推薦

    單片機STC89C52介紹

    單片機STC89C52介紹,需要的可以下載。
    發表于 04-25 23:32

    stc89c52stc89c51

    stc89c52stc89c51有啥區別呀,小白剛剛學單片機
    發表于 11-28 23:22

    STC89C52單片機書籍分享

    STC89C52單片機書籍
    發表于 01-24 16:14

    STC89C52單片機

    ????STC89C52RC是STC公司生產的一種低功耗、高性能CMOS8位微控制器,具有8K字節系統可編程Flash存儲器。STC89C52使用經典的MCS-51內核,但是做了很多的
    發表于 07-14 06:07

    基于STC89C52單片機的點陣屏設計

    、STC89C52STC89C52STC公司生產的一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統可編程Flash存儲器。STC89C52使用經典的MCS-51內核,但..
    發表于 07-19 08:34

    STC89C52為例來介紹51單片機

    學習單片機往往都是從簡單的51單片機開始,這篇文章以STC89C52為例來介紹51
    發表于 08-06 09:12

    設計一款基于STC89C52單片機超市收銀的資料分享

    :總體資料:原理圖:軟件設計流程:系統框圖:本設計以STC89C52單片機為核心控制器,加上其他的模塊一起組成超市收銀的整個系統,其中包含控部分、輸入部分和輸出部分。
    發表于 11-19 06:25

    STC89C52單片機學習筆記分享

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔文章目錄前言一、STC89C52單片機介紹二、編寫C語言1.簡單流水燈程序 2.C5
    發表于 12-02 06:19

    STC89C52定時器的介紹

    目錄定時器的介紹STC89C52定時器資源定時器框圖定時器工作模式中斷系統單片機引腳圖中斷服務流程中斷資源定時器相關寄存器定時器的介紹定時器介紹
    發表于 01-13 08:05

    基于單片機STC89C52的搖搖棒

    基于單片機STC89C52的搖搖棒設計,有電路圖和源程序
    發表于 11-23 14:38 ?28次下載

    STC89C52單片機燒寫軟件

    STC89C52單片機燒寫軟件 可以直接燒寫程序,有免安裝版的
    發表于 12-31 16:09 ?9次下載

    單片機STC89C52程序

    單片機STC89C52源程序。
    發表于 01-11 18:16 ?108次下載

    STC89C52單片機介紹

    STC89C52單片機介紹。
    發表于 05-20 13:55 ?257次下載

    使用51單片機STC89C52進行串口接收的程序免費下載

    本文檔的主要內容詳細介紹的是使用51單片機STC89C52進行串口接收的程序免費下載。
    發表于 08-21 17:31 ?26次下載
    使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>STC89C52</b>進行串口接收的程序免費下載

    ATGM336H-5N 北斗模塊51單片機STC89C52軟件DEMO例程源碼

    ATGM336H-5N 北斗模塊51單片機STC89C52軟件DEMO例程源碼(單片機c語言入門)-ATGM336H-5N 北斗模塊51
    發表于 07-22 12:31 ?91次下載
    ATGM336H-5N 北斗模塊<b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>STC89C52</b>軟件DEMO例程源碼
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>