• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      單片機(jī)位地址計算方法研究

      2016-07-23 10:18:24陳業(yè)慧涂德鳳安徽新華學(xué)院電子通信工程學(xué)院安徽合肥230088
      關(guān)鍵詞:存儲器

      陳業(yè)慧,涂德鳳,程 明(安徽新華學(xué)院 電子通信工程學(xué)院,安徽 合肥 230088)

      ?

      單片機(jī)位地址計算方法研究

      陳業(yè)慧,涂德鳳,程明
      (安徽新華學(xué)院電子通信工程學(xué)院,安徽合肥230088)

      摘要:介紹了一種單片機(jī)位地址計算方法,針對MCS-51內(nèi)部RAM256B中位地址段20H-2FH16個字節(jié)單元拆分成的128個位地址,無需查表,快速準(zhǔn)確地得到位地址,并就該計算方法在可位尋址的SFR以及其他主流單片機(jī)系列位地址計算的適用性進(jìn)行了分析.

      關(guān)鍵詞:AT89S52;存儲器;位地址;SFR

      1 引言

      自1980年直到現(xiàn)在,MCS-51系列單片機(jī)憑借其優(yōu)越的性能和完善的結(jié)構(gòu),成為一種通用計算機(jī).其強(qiáng)大的位處理功能,為處理復(fù)雜程序標(biāo)志位的置位、清零或檢測以及確定程序的運行方向等提供了極大的方便.但許多單片機(jī)愛好者在開始學(xué)習(xí)期間,對其存儲器地址沖突問題上倍感棘手.本文主要介紹了一種單片機(jī)位地址的計算方法,針對內(nèi)部RAM128字節(jié)中位地址段20H-2FH16個字節(jié)單元拆分成的128位地址,無需查表,快速準(zhǔn)確地得到位地址,并就該計算方法在可位尋址的SFR以及其他單片機(jī)系列位地址計算的適用性進(jìn)行了分析,也便于工作人員準(zhǔn)確定位地址并利用好每一個存儲單元.

      2 MCS-51單片機(jī)位地址和位地址計算方法

      MCS-51存儲器配置方式采用哈佛結(jié)構(gòu),結(jié)構(gòu)組織可以分成3個不同的存儲空間,64kB程序存儲器、64kB外部RAM和256B內(nèi)部RAM,其中256B的內(nèi)部RAM又分為兩部分:高128B和低128B,低128B的內(nèi)部RAM才是真正的RAM區(qū),主要被用來寫入或讀出數(shù)據(jù),結(jié)構(gòu)如圖1所示:

      圖1 MCS-51存儲器基本機(jī)構(gòu)圖

      51系列優(yōu)點之一是它從內(nèi)部的硬件到軟件有一套完整的按位操作系統(tǒng),稱作位處理器,或布爾處理器.它的處理對象不是字或字節(jié)而是位.它不光能對片內(nèi)某些特殊功能寄存器的某位進(jìn)行處理,如傳送、置位、清零、測試等,還能進(jìn)行位的邏輯運算,其功能十分完備,使用起來得心應(yīng)手.51系列在片內(nèi)RAM區(qū)間還特別開辟了一個雙重功能的地址區(qū)間,十六個字節(jié),單元地址20H~2FH,它既可作字節(jié)處理,也可作位處理(作位處理時,合128個位,相應(yīng)位地址為00H~7FH),使用極為靈活.這一功能無疑給使用者提供了極大的方便,因為一個較復(fù)雜的程序在運行過程中會遇到很多分支,因而需建立很多標(biāo)志位,在運行過程中,需要對有關(guān)的標(biāo)志位進(jìn)行置位、清零或檢測,以確定程序的運行方向.而實施這一處理(包括前面所有的位功能),只需用一條位操作指令即可.

      2.1位尋址區(qū)(20H-2FH)

      片內(nèi)RAM的20H—2FH單元為位尋址區(qū),既可作為一般單元用字節(jié)尋址,也可對它們的位進(jìn)行尋址,使用極其靈活.為使用者在復(fù)雜程序中分支程序標(biāo)志位的的置位、清零或檢測,以確定程序的運行方向提供了極大的方便.而實施這一處理(包括前面所有的位功能),只需用一條位操作指令即可.位地址分配如下表1所示:

      表1 位地址分配

      2.2計算方法

      由于單片機(jī)中只有內(nèi)部RAM和特殊功能寄存器的部分單元有位地址,分別針對2部分分析位地址的計算方法.

      (1)當(dāng)位地址涉及空間在內(nèi)部RAM位尋址20H~2FH段時,假設(shè)其位表示成2XH.Y,其中X∈(0,F(xiàn)),Y∈(0,7),即2XH.Y的范圍在20H.0-2FH.7,則計算方法如下:

      由上式可得,20H.0=00H,2FH.7=FFH,故位地址表達(dá)的范圍落在00H-7FH范圍.

      同理亦可反推位地址3BH=27.3,快速準(zhǔn)確,與表1相符.

      (2)對于高128B片內(nèi)RAM來說,此公式不適用,比如P0.0即80H.0,如果用此公式將得到00H的結(jié)果,必然是錯誤的.

      故修正如下,對于可位尋址的SFR,位地址與字節(jié)地址相關(guān),規(guī)則如下:字節(jié)地址高四位定義為M,低四位定義為N,則字節(jié)地址為MN.位號定義為Z,則MNH.Z=M(N+Z)H.

      P0.0即80H.0,由規(guī)則可以得到該位位地址=80H.

      PS即B8H.5,由規(guī)則可得該位位地址=BDH,與表2相符.

      表2 特殊功能寄存器

      3 位尋址與字節(jié)尋址的區(qū)別

      對位地址中的內(nèi)容進(jìn)行位操作的尋址方式成為位尋址.對字節(jié)地址中的內(nèi)容進(jìn)行位操作的尋址方式稱為直接尋址.位尋址只能對有位地址的內(nèi)部RAM和特殊功能寄存器的部分單元進(jìn)行尋址操作.它是一種直接尋址方式,由指令給出直接位地址.而字節(jié)尋址給出的是字節(jié)地址.

      區(qū)分兩者需要根據(jù)不同的指令及偽指令,酌情判斷.單片機(jī)有專用的12條指令專用于位操作,不會混淆,例如:

      SETB TR0;(TR0)←1

      CLR20H;(24H.0)←0

      4 適用性研究

      本文提出的單片機(jī)位地址計算方法針對Intel51系列及相關(guān)兼容性的單片機(jī),比如ATmel公司及STC的51系列的典型產(chǎn)品等,簡單迅速而準(zhǔn)確的得到位地址,有效解決復(fù)雜的組合邏輯問題,避免進(jìn)行大量的數(shù)據(jù)傳送、字節(jié)屏蔽和測試一分支等操作為初學(xué)者及單片機(jī)愛好者及工作人員準(zhǔn)確定位地址并利用好每一個存儲單元提供了便利.但因存儲器結(jié)構(gòu)及指令的不同,不適用于AVR、PIC單片機(jī),其中AVR系列單片機(jī)中并不能直接對RAM單元中的位進(jìn)行操作,若想對RAM中的某位置位時,必須通過狀態(tài)寄存器SREG的T位進(jìn)行中轉(zhuǎn).如對RAM中的R0寄存器的第4位置位,則:

      BSET6;狀態(tài)寄存器T置位

      BLDR0,4;將T位復(fù)制到R0的第4位顯然,后者比前者要復(fù)雜.

      5 結(jié)論

      本文介紹的針對MCS-51系列單片機(jī)位地址計算方法,無需查表,快速準(zhǔn)確地得到位地址,有效解決了單片機(jī)初學(xué)者及工作人員對于位地址的定位,同時也為教學(xué)提供了方便.該方法簡單準(zhǔn)確,使用Inter、Atmel及STC等系列通用單片機(jī)中,為利用位尋址有效解決復(fù)雜的組合邏輯問題,避免進(jìn)行大量的數(shù)據(jù)傳送、字節(jié)屏蔽和測試一分支等操作提供了便利.

      參考文獻(xiàn):

      〔1〕王瓊.單片機(jī)原理及應(yīng)用(第二版)[M].合肥:合肥工業(yè)大學(xué)出版社,2013.

      〔2〕張毅坤.單片微型計算機(jī)及應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2005.

      〔3〕馬淑華,王鳳文,張美金.單片機(jī)原理與接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2007.

      〔4〕張毅剛.單片機(jī)原理及應(yīng)用-C51編程+Proteus仿真[M].北京:高等教育出版社,2012.

      〔5〕劉海成.AVR單片機(jī)原理及測控工程應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2008.

      〔6〕張明峰.PIC單片機(jī)入門與實戰(zhàn)[M].北京:北京航空航天大學(xué)出版社,2004.

      中圖分類號:TP368

      文獻(xiàn)標(biāo)識碼:A

      文章編號:1673-260X(2016)06-0032-02

      收稿日期:2016-02-11

      猜你喜歡
      存儲器
      靜態(tài)隨機(jī)存儲器在軌自檢算法
      Xilinx新型FPGA將存儲器帶寬提升20倍
      任意2~k點存儲器結(jié)構(gòu)傅里葉處理器
      非易失性納米晶存儲器的研究
      構(gòu)建基于24XX系列存儲器通用函數(shù)庫的研究
      Altera演示FPGA中高性能DDR4存儲器數(shù)據(jù)速率
      高維固態(tài)量子存儲器研制成功
      存儲器——安格爾(墨西哥)▲
      基于Nand Flash的高速存儲器結(jié)構(gòu)設(shè)計
      Buffalo推出四硬盤網(wǎng)絡(luò)存儲器 主打Soho一族
      甘孜县| 宁化县| 遵义市| 丰台区| 绍兴市| 金阳县| 乃东县| 额尔古纳市| 曲靖市| 阜宁县| 通榆县| 筠连县| 平果县| 通山县| 定日县| 周口市| 巢湖市| 五指山市| 鸡西市| 虹口区| 崇仁县| 牡丹江市| 中方县| 五常市| 沅陵县| 齐齐哈尔市| 讷河市| 宜都市| 新余市| 永昌县| 敖汉旗| 珠海市| 左云县| 景德镇市| 嘉荫县| 长乐市| 凤城市| 福建省| 五峰| 门头沟区| 阜南县|