女人被爽到高潮视频免cn费95,久久99精品久久久久久久不卡,内射人妻骚骚骚,久久精品一区二区三区四区啪啪 ,美女视频黄频a美女大全

  • 正文
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

增強(qiáng)型51單片機(jī)擴(kuò)展方式

2021/04/27
339
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

大家是否思考過一個問題,為什么現(xiàn)在的51單片機(jī)在做宣傳的時候,不外乎都是稱作為“增強(qiáng)型51單片機(jī)”?與傳統(tǒng)的51單片機(jī)相比,究竟哪些地方得到了擴(kuò)展?在回答這個問題之前,我們先來看一下本書的主角——STC8A8K64S4A12。圖1是傳統(tǒng)51單片機(jī)和STC8A8K64S4A12增強(qiáng)型51單片機(jī)的資源對比圖。

圖1 傳統(tǒng)MCS-51單片機(jī)和增強(qiáng)型51單片機(jī)的資源對比圖

通過圖1的資源對比圖我們可以發(fā)現(xiàn),就STC8A8K64S4A12這個增強(qiáng)型51單片機(jī)而言,它相比于傳統(tǒng)的51單片機(jī)主要在以下幾個方面做了提升:

增大了數(shù)據(jù)存儲器SRAM;

增大了程序存儲器FlashROM;

擴(kuò)大了供電電壓的范圍;

增加了機(jī)器周期可配置功能,從而避免了外部晶振12分頻的問題;

增加了一系列外設(shè)。

接著,我們具體來看,這些功能到底是如何實現(xiàn)的。

1、內(nèi)部數(shù)據(jù)存儲器SRAM的增強(qiáng)單片機(jī)要想擴(kuò)充資源,首先需要做的就是內(nèi)存的擴(kuò)展。因為控制這些擴(kuò)展資源的寄存器,都需要內(nèi)存地址的依托。另外,傳統(tǒng)的51單片機(jī)的內(nèi)存最大只有256字節(jié),我們在開發(fā)程序時,用戶所定義的變量都存放在這個內(nèi)存里面,其中還包括了位尋址區(qū),特殊功能寄存器區(qū)等我們無法使用的空間,早期的單片機(jī)應(yīng)用,如控制一個開關(guān),處理一個串口命令這些功能還夠用,但是隨著我們的應(yīng)用越來越復(fù)雜,這么少的內(nèi)存真是“巧婦難為無米之炊”。因此,內(nèi)存的擴(kuò)展非常必要。增強(qiáng)型51單片機(jī)的內(nèi)存擴(kuò)展,還有一個無法改變的是傳統(tǒng)51單片的內(nèi)存排列,圖2列舉的MCS-51單片機(jī)內(nèi)部256字節(jié)RAM存儲分布,因為這個存儲分布是和整個51單片機(jī)架構(gòu)息息相關(guān)的,無法對其有任何撼動。

圖2 傳統(tǒng)51單片機(jī)的內(nèi)存排列

增強(qiáng)型51單片機(jī)的內(nèi)存擴(kuò)展,和傳統(tǒng)8051單片機(jī)訪問外部擴(kuò)展RAM的方法相同,唯一區(qū)別是,傳統(tǒng)的51單片在內(nèi)存擴(kuò)展之后,P0口和P2口將無法使用,但是增強(qiáng)型51單片機(jī)則仍然保留著這兩個口的正常功能。由于增強(qiáng)型單片機(jī)擴(kuò)展出來的內(nèi)存是屬于外部存儲器擴(kuò)展,因此如果你對于變量存儲的空間有需求,則在編程時需要顯示地指明這些變量的存儲位置。如果使用匯編語言,則需要使用“MOVX”指令。如果使用C語言,則需要使用“xdata”關(guān)鍵詞進(jìn)行指定,不過為了C語言的可移植性,對于使用這種非標(biāo)準(zhǔn)C語言的關(guān)鍵詞,我還是持保留態(tài)度。

2、內(nèi)部程序存儲器FlashROM的增強(qiáng)內(nèi)部程序存儲器的擴(kuò)展方式,也和傳統(tǒng)51單片機(jī)外部程序存儲器的擴(kuò)展方式類似。但是STC8系列封裝管腳為40及以上的單片機(jī),具有擴(kuò)展64KB外部數(shù)據(jù)存儲器的能力。訪問外部數(shù)據(jù)存儲器期間,WR/RD,ALE信號要有效。除此之外,在內(nèi)部程序存儲器被擴(kuò)大之后,一般增強(qiáng)型51單片機(jī)都會在一些特定地址的ROM和RAM之中,存入一些特定的產(chǎn)品信息。圖3是STC系列單片機(jī)中所保留的一些特定信息。

圖3 STC系列單片機(jī)中所保留的一些特定信息

3、外設(shè)如何擴(kuò)展傳統(tǒng)的51單片機(jī)用于控制外設(shè)的寄存器地址都是排放在內(nèi)部RAM的128字節(jié)特殊功能寄存器區(qū)。這段特殊功能寄存器地址區(qū),傳統(tǒng)的8051單片機(jī)已經(jīng)用了一部分用于控制其資源,傳統(tǒng)8051單片機(jī)特殊功能寄存器區(qū)的使用如圖4所示。

圖4 傳統(tǒng)8051單片機(jī)的特殊功能寄存器使用傳統(tǒng)的

51單片機(jī)一共用了21個特殊功能寄存器地址。為了保持與傳統(tǒng)8051單片機(jī)的兼容,這段特殊功能寄存器原有的資源分配不能改變。因此,使用剩余的107個特殊功能寄存器地址,是外設(shè)寄存器擴(kuò)展的一個途徑。如圖5所示,STC8數(shù)據(jù)手冊上面列出了STC8的特殊功能寄存器列表。

圖5 STC8數(shù)據(jù)手冊列出的特殊功能寄存器列表(1)

圖5 STC8數(shù)據(jù)手冊列出的特殊功能寄存器列表(續(xù)1)

圖5 STC8數(shù)據(jù)手冊列出的特殊功能寄存器列表(續(xù)2)

然而,隨著外設(shè)資源的不斷增加,越來越多的外設(shè)寄存器需要被編碼,原本128字節(jié)的特殊功能寄存器區(qū)已經(jīng)用完,想要再擴(kuò)充資源,只能將這些特殊功能寄存器存放在內(nèi)部擴(kuò)展的RAM上面。如圖6所示。

圖6 內(nèi)部數(shù)據(jù)存儲器排放的特殊功能寄存器

圖6 內(nèi)部數(shù)據(jù)存儲器排放的特殊功能寄存器(續(xù))

相關(guān)推薦