亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺談STM32和51單片機(jī)的寄存器編程異同

        2021-05-10 01:52:48
        關(guān)鍵詞:單片機(jī)程序

        楊 宇

        (昆明冶金高等??茖W(xué)校電氣與機(jī)械學(xué)院,云南 昆明 650033)

        0 引 言

        現(xiàn)在市面上常用的單片機(jī)可以分為兩大類:基礎(chǔ)性能單片機(jī)和高性能單片機(jī)?;A(chǔ)性能單片機(jī)中最常用的就是51單片機(jī),它是眾多單片機(jī)學(xué)習(xí)者進(jìn)行入門學(xué)習(xí)的首選。但隨著社會的發(fā)展、科技的進(jìn)步,單片機(jī)需要具備更強(qiáng)的性能和更低的功耗,51單片機(jī)已經(jīng)不能滿足一些新的要求。高性能單片機(jī)的出現(xiàn)彌補(bǔ)了51單片機(jī)的不足,在眾多的高性能單片機(jī)中,STM32憑借其在開發(fā)方式、技術(shù)支持、性價(jià)比等方面的優(yōu)勢,成為了市場占有率最高的一種高性能單片機(jī)。

        對于許多具有51單片機(jī)基礎(chǔ)的學(xué)習(xí)者,繼續(xù)學(xué)習(xí)STM32可以說是一種必然趨勢。但由于種種原因,很多人的STM32學(xué)習(xí)之路都半途而廢,因?yàn)槠毡檎J(rèn)為學(xué)習(xí)STM32難度太大。究其原因,筆者認(rèn)為他們只是單純地學(xué)習(xí)STM32,而沒有將51單片機(jī)和STM32結(jié)合起來學(xué)習(xí)。本文正是以此為出發(fā)點(diǎn),將STM32的基本開發(fā)方式——寄存器編程,與51單片機(jī)的寄存器編程進(jìn)行比較和分析,使學(xué)習(xí)者能更好地理解STM32的寄存器編程。

        1 實(shí)例硬件原理圖

        本文主要闡述51單片機(jī)和STM32對GPIO(General Purpose Input Output,通用型輸入輸出端口)的操作原理,以分別用這2種單片機(jī)點(diǎn)亮一個(gè)LED(發(fā)光二極管)為實(shí)例來比較和分析2種寄存器編程方式的異同。本實(shí)例中51單片機(jī)采用的型號為AT89C51, STM32采用的型號為STM32F103R6。AT89C51通過引腳 P 2.0 連接發(fā)光二極管,輸出低電平點(diǎn)亮發(fā)光二極管,如圖1所示;STM32F103R6通過引腳 PC 0 連接發(fā)光二極管,輸出低電平點(diǎn)亮發(fā)光二極管,如圖2所示。

        圖1 AT89C51驅(qū)動(dòng)LED原理圖 圖2 STM32F103R6驅(qū)動(dòng)LED原理圖Fig.1 Schematic diagram of AT89C51 Fig.2 Schematic diagram of STM32F103R6

        2 實(shí)例編程異同分析

        AT89C51和STM32F103R6的程序開發(fā)都是以創(chuàng)建項(xiàng)目的形式來完成,AT89C51驅(qū)動(dòng)發(fā)光二極管的項(xiàng)目文件如圖3所示,STM32F103R6驅(qū)動(dòng)發(fā)光二極管的項(xiàng)目文件如圖4所示。2個(gè)項(xiàng)目都包括3種文件:啟動(dòng)程序文件、主程序文件和頭文件。本文首先對2個(gè)項(xiàng)目的啟動(dòng)程序文件和頭文件進(jìn)行比較,再對主程序文件進(jìn)行對比。

        圖3 AT89C51驅(qū)動(dòng)LED項(xiàng)目文件 圖4 STM32F103R6驅(qū)動(dòng)LED項(xiàng)目文件Fig.3 Project files of AT89C51 Fig.4 Project files of STM32F103R6

        2.1 啟動(dòng)程序文件異同分析

        2個(gè)項(xiàng)目都具有啟動(dòng)程序文件,AT89C51的啟動(dòng)程序文件名稱為STARTUP.A51, STM32F103R6的啟動(dòng)程序文件名稱為startup_stm32f10x_hd.s。兩者的作用相同:當(dāng)單片機(jī)上電啟動(dòng)時(shí),首先會執(zhí)行啟動(dòng)程序,從而建立起執(zhí)行主程序的運(yùn)行環(huán)境。并且兩者都采用匯編語言編寫,但文件后綴名不同。兩者的主要區(qū)別是,STARTUP.A51文件是單片機(jī)開發(fā)軟件(比如Keil c51)自帶的;而startup_stm32f10x_hd.s文件是單片機(jī)制造商ST(意法半導(dǎo)體)官方提供的,用戶需要從官方固件庫中找到該文件,并添加到自己的編程里。

        2.2 頭文件異同分析

        2個(gè)項(xiàng)目都具有頭文件,AT89C51的頭文件名稱為reg51.h, STM32F103R6的頭文件名稱為stm32f10x.h。兩者的作用相同:用于存放寄存器映射的程序,為主程序中對寄存器編程做準(zhǔn)備;并且兩者都采用C語言編寫,文件后綴名也相同。兩者的主要區(qū)別是,reg51.h文件是單片機(jī)開發(fā)軟件(比如Keil c51)自帶的,而stm32f10x.h文件需要用戶創(chuàng)建。

        2.3 主程序文件異同分析

        圖5 AT89C51驅(qū)動(dòng)LED主程序Fig.5 Main file of AT89C51

        圖6 STM32F103R6驅(qū)動(dòng)LED主程序Fig.6 Main file of STM32F103R6

        2個(gè)項(xiàng)目中的主程序文件名稱均為main.c,AT89C51驅(qū)動(dòng)發(fā)光二極管的主程序如圖5所示,STM32F103R6驅(qū)動(dòng)發(fā)光二極管的主程序如圖6所示。2個(gè)主程序的作用相同:都是對單片機(jī)的GPIO進(jìn)行操作,使單片機(jī)輸出相應(yīng)的信號。它們的主要區(qū)別在于STM32F103R6對GPIO的操作比AT89C51對GPIO的操作更復(fù)雜。從圖5可以看出,AT89C51對GPIO的操作很簡單,只需要直接對端口寄存器P2賦值就可以使單片機(jī)的 P 2.0 引腳輸出低電平。STM32F103R6對GPIO的操作需要開啟端口時(shí)鐘以及配置端口寄存器CRL和ODR,如圖6所示,首先開啟GPIOC端口時(shí)鐘,接著對GPIOC_CRL寄存器中的相關(guān)位清零;然后設(shè)置GPIOC_CRL寄存器將PC0引腳配置為推挽輸出;最后設(shè)置GPOIC_ODR寄存器讓PC0引腳輸出需要的電平。此外,STM32F103R6對GPIO操作還需要編寫系統(tǒng)初始化函數(shù),如圖4中的SystemInit(),用于初始化系統(tǒng)時(shí)鐘,AT89C51對GPIO的操作則不需要該函數(shù)。

        3 結(jié) 語

        由于51單片機(jī)的寄存器編程和STM32的寄存器編程既有相同點(diǎn)又有差異性,所以將兩者結(jié)合起來對比學(xué)習(xí)比單純學(xué)習(xí)STM32更容易理解STM32的寄存器編程原理。STM32的編程方式分為基礎(chǔ)的寄存器編程和高階的固件庫編程,固件庫編程也是STM32領(lǐng)先于其他高性能單片機(jī)的一大優(yōu)勢,很多人想學(xué)但學(xué)不好STM32的固件庫編程,其實(shí)是沒有打好寄存器編程的基礎(chǔ)。通過本文的方法對理解STM32的寄存器編程及后續(xù)學(xué)習(xí)固件庫編程會有很大幫助。

        猜你喜歡
        單片機(jī)程序
        基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于單片機(jī)的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機(jī)的便捷式LCF測量儀
        電子制作(2019年9期)2019-05-30 09:42:02
        試論我國未決羈押程序的立法完善
        小議PLC與單片機(jī)之間的串行通信及應(yīng)用
        電子制作(2018年12期)2018-08-01 00:48:04
        失能的信仰——走向衰亡的民事訴訟程序
        “程序猿”的生活什么樣
        英國與歐盟正式啟動(dòng)“離婚”程序程序
        基于單片機(jī)的平衡控制系統(tǒng)設(shè)計(jì)
        電子制作(2017年19期)2017-02-02 07:08:27
        創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
        欧美亚洲一区二区三区| 亚洲精品中文字幕乱码二区| 亚洲熟女少妇精品久久| 曰韩少妇内射免费播放| 欧美成人午夜精品久久久| 91亚洲国产成人aⅴ毛片大全| 蜜桃在线观看免费高清| 变态另类人妖一区二区三区| 99国产精品人妻噜啊噜| 日韩成人精品在线| 成年人视频在线播放麻豆| 国产免费三级av在线| 看av免费毛片手机播放| 91白浆在线视频| 国产精品又污又爽又色的网站| 18禁裸体动漫美女无遮挡网站| 成人片黄网站色大片免费观看cn | 欧美性猛交xxxx乱大交蜜桃| 精品一区二区三区长筒靴| 丰满人妻猛进入中文字幕| 久久久久亚洲av片无码下载蜜桃 | 亚洲精品久久久久久久久久吃药| 91高清国产经典在线观看| 亚洲第一页综合av免费在线观看| 国产亚洲自拍日本亚洲| 中年熟妇的大黑p| 国产自产av一区二区三区性色| 精品人妻av中文字幕乱| 久久亚洲av午夜福利精品一区| 四虎影视在线观看2413| 日本变态网址中国字幕| 99久久精品在线视频| 无码人妻av一区二区三区蜜臀| 国产欧美日韩不卡一区二区三区| 激情五月开心五月av| 扒开腿狂躁女人爽出白浆 | 98在线视频噜噜噜国产| 亚洲精品中文字幕乱码3| 日韩一区二区三区无码影院| 女人被做到高潮免费视频| 久久伊人精品只有这里有|