《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 其他 > 教程:增強型51單片機和傳統51單片機對比分析

教程:增強型51單片機和傳統51單片機對比分析

2023-01-31
來源:樂創客

  前面的內容,我們從傳統的單片機" target="_blank">51單片機出發,從硬件的基礎上,一步步衍生出了增強型51單片機所增強的地方。現在我們可以清楚地了解,增強型51單片機對比傳統的51單片機,增強的地方在于存儲器的擴展。而51單片機對于片內內存的尋址方式和片外內存的尋址方式有著很大的不同。因此,我們在使用C語言對增強型51單片機編程的時候,也需要按照寄存器位置的不同,采用不同的操作方式。

  1寄存器位于內部的特殊功能寄存器區

  我們之前介紹傳統8051單片機的時候,曾經列出了傳統8051單片機已經使用的21個特殊功能寄存器,因此擴展外設寄存器的一個辦法就是利于剩余的特殊功能存儲器空間。

  由于51單片機的特殊功能寄存器尋址方式只能是直接尋址,不可間接尋址,因此在C語言中無法使用指針的方式去操作這些特殊功能寄存器。因為對于C語言指針來說,它對應的匯編語言是一種間接尋址的方式?;诖?,C51在標準的C語言基礎上,衍生出了一些額外的語法,如當需要定義這些特殊功能寄存器以便于程序訪問的時候,C51加入了一個關鍵詞“sfr”,使用“sfr”關鍵詞可以將特殊功能寄存器區的地址,定義成某個變量,如“sfr P0 = 0x80;”,這句語句的意思就是將位于內部RAM 0x80地址上的寄存器,定義成P0,由于0x80位于特殊功能寄存器區,因此這個定義是完全合法的。在后面想要對P0進行操作,只需要在C語言中直接使用“P0”這個標號即可。如“P0 = 0xff;”。

  我們可以打開傳統的keil C51頭文件“reg51.h”,可以發現這個頭文件中,將傳統8051的所有寄存器全部定義出來了,如圖1所示。

 241.JPG

  圖1傳統8051單片機的特殊功能寄存器定義

  對于增強型51單片機來說,那些被排放在特殊功能寄存器區的外設控制寄存器只能使用“sfr”關鍵詞的方式去定義,如圖2所示。

240.JPG

  圖2增強型單片機增加的資源示例

  除了“sfr”關鍵詞之外,Keil C51還支持使用“sbit”關鍵詞定義特殊功能寄存器的某一位,是因為51單片機是所有單片機中唯一支持寄存器位尋址的芯片。不過為了程序方便移植到其它平臺上去,對于這些特殊的關鍵詞,還是盡可能將其限制在少量的文件中。

  2寄存器位于內部的擴展的RAM中

  當內部的特殊功能寄存器區用完之后,如果想要繼續增加寄存器,那么唯一可以選擇的空間也就只有特殊功能寄存器以外的區域了。對于增強型51單片機來說,它的內存空間刨去特殊功能寄存器區,還可以給其使用的空間有兩個,一個是內置RAM剩余空間,還有一個是內置的外擴RAM。

  對于STC8A8K系列的芯片來說,這些寄存器被設計到了內置的外擴RAM上。因此,對于這一段內存上的寄存器,我們可以在C語言中使用常量指針的形式去定義,但是,還是需要使用C51的關鍵詞“xdata”去聲明這些地址,當然,去優化的“volatile”關鍵詞也不能少,如圖3所示。

239.JPG

  圖3內置外擴SRAM上寄存器的定義



更多信息可以來這里獲取==>>電子技術應用-AET<<

mmexport1621241704608.jpg

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 丰满爆乳一区二区三区| 亚洲图片欧美小说| 中文字幕永久视频| 波多野结衣一区二区三区高清av| 国产在线一卡二卡| www.亚洲精品| 日韩欧美高清色码| 免费一级乱子伦片| 欧美日韩亚洲成色二本道三区 | a资源在线观看| 少妇无码太爽了在线播放| 久久国产精品二国产精品| 李丽莎1分37钞视频最大尺度| 亚洲欧美国产精品完整版| 狠狠色伊人亚洲综合成人| 免费观看的毛片| 精品国内片67194| 国产日韩精品视频| www.日日干| 性做久久久久久| 中文字幕亚洲天堂| 无遮挡h肉动漫网站| 亚洲图片欧美在线| 欧美黑人巨大xxxxxxxx| 亚洲色欲色欲www| 特级做a爰片毛片免费看无码| 免费人成在线观看视频播放| www.九色视频| 日韩高清国产一区在线| 偷炮少妇宾馆半推半就激情| 香蕉狠狠再啪线视频| 国产成人综合久久| 97人人在线视频| 在线免费观看污网站| aaaaa毛片| 成人h动漫精品一区二区无码 | 国产精品黄大片在线播放| 97碰在线视频| 少妇激情av一区二区| 一本色道久久88加勒比—综合 | 日韩国产欧美在线观看|