国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

采用PSD913F2擴展8031程序空間

發布時間:2010-6-10 09:58    發布者:vinda
關鍵詞: 8031 , PSD913F2 , 程序空間
概述
  
8031系列單片機是應用非常廣泛的MCU,但是隨著控制領域的不斷智能化、復雜化,程序長度可能遠遠大于8031的64KB限制。可以采用PSD913F2作為8031的外部存儲器,其程序空間最大可達256KB,用KeilC51的BlankSwitch技術可使8位MCU運行256KB的應用程序。

PSD913F2內置256KB閃存,分為8個頁面,每頁空間16KB,內置可選的32KB啟動存儲器、2KB的SRAM、27個I/O端口、電源管理單元、40個可編程邏輯宏單元CPLD,通過串口在線配置FPGA所有代碼,適用于8031、MC68HC11、Dallas、Z80等20余種單片機。

8031與PSD913F硬件設計
  
在多數應用中,MCU與外部存儲器之間連接時都必須用74LS373作為地址鎖存器。但PSD913F2內含地址鎖存器,因此PSD913F2的引腳可直接與8031相連,如圖1所示。

8031與PSD913F軟件設計
  
KeilC51語言源程序經過C51編譯器編譯后,生成浮動地址的目標代碼文件。這種浮動地址的目標代碼是不能直接裝入8051運行的,必須經過連接定位器BL51的連接和定位,生成具有絕對地址的目標代碼。同時BL51支持分組連接定位,允許生成代碼大于64KB的目標程序,可以在具有適當硬件擴展邏輯的8051系統中進行代碼組之間的切換,以達到正常運行的目的。BL51可以管理最多32個代碼組,每個代碼組最大為64KB。BL51連接定位器生成的OMF51格式的絕對目標文件,可裝入dScope51或Intel兼容的仿真器進行調試,也可通過符號轉換器OH51轉換成Intel Hex文件以便于EPROM編程。


  
在采用BL51對目標程序進行分組連接定位時,要求8051系統具有相應的硬件分組擴展邏輯。默認的分組方式是采用8051的P1端口作硬件擴展地址線。采用1條P1口線時,分組數為2,采用5條P1口線時,最多可分為32個代碼組,剩余的P1口線也可用于其他用途。也可采用外部數據存儲器XDATA空間地址單元來進行分組,與采用8051的P1端口作為分組地址線不同的是,對于一個指定用于分組地址的XDATA端口字節中的剩余位,不能再用于其他目的。采用的分組方式、組數和地址在L51_BANK.A51中進行配置。


  
下面介紹一下應用BankSwitch的步驟。
  
1.建一個KeilC51的新工程如Psdos,在菜單Project選擇中選擇Option for Target “Target 1”選擇項,按圖2所示進行項目配置。

設置如下。
  
● 由于PSD913F2中有兩塊FLASH,從FLASH為32KB。故在off-chip code memory-Eprom設為0x0000~0x7fff。
● 在PSD913F2的PSDSoft Express已配置2KB的SRAM,地址范圍為0x2000~0x27ff,故在off-chip Xdata memory-Ram設為0x2000,長度為0x0800。
● 在PSD913F2的主FLASH為128KB,共分為8個物理頁,已在PSDSoft Express軟件中定義地址為0x8000~0xbfff,因此在KeilC51中如圖2所示分為4個Banks,地址范圍為0x8000~0xbfff。

2.在KeilC51的安裝目錄\KeilC51\C51 \EXAMPLES\Bank_EX1中,把L51_Bank.A51文件的拷貝并加入到新工程。在L51_BANK.A51文件中需改以下代碼。

A?B_NBANKS EQU 4 //定義最大分組(0~32),可為2、4、8、16和32。
 ?B_MODE EQU 1 //0:通過8051單片機的I/O口進行分組切換,1:通過XDATA存儲器單元進行分組切換。
 ?B_XDATAPORT EQU 01E0H //如果?B_MODE被定義為1,就通過XDATA口定義XDATA口引腳地址/位來映射開關定義XDATA口地址01E0H。

3.新建主程序和各bank文件。

4.設置文件的屬性。選擇主文件,選擇Options for File,設置Code Bank為“Common”,設置Stop on Exit為“Not Specified”,對Init.c、PsdOper.c也進行同樣的設置。

5.設置文件的屬性。如圖3所示右擊文件PSD_bank.c,選擇Options for File "PSD_bank0.c",設置為Bank #0。同樣對PSD_bank1.c設置為Bank #1、PSD_bank2.c設置為Bank #2、PSD_bank3.c設置為Bank #3。


  
6.設置好后,進行編譯。

  

7.進行編程。打開PSDSoft Express軟件,在Merge MCU Firmware with PSD模塊中設置各個FLASH頁面的地址和文件名,如圖4所示。
  
● 主FLASH第0頁(FS0),地址:0x8000-0xbfff,文件名:psdos.hoo
● 主FLASH第1頁(FS1),地址:0x8000-0xbfff,文件名:psdos.ho1
● 主FLASH第2頁(FS2),地址:0x8000-0xbfff,文件名:psdos.ho2
● 主FLASH第3頁(FS3),地址:0x8000-0xbfff,文件名:psdos.ho3
● 次FLASH(csboost 0),地址:0x8000-0xbfff,文件名:psdos.hoo

8.通過FlashLink便可將文件下載到PSD913F2中,實現BankSwitch功能,使8031的程序空間大于64KB。
  
用Keil C51的BankSwitch必須注意以下幾點。

● 下面的一些代碼必須放在公共區域內,復位和中斷向量、代碼常數、C51中斷函數、組切跳轉表、庫函數。
● 代碼組切換需要大約50個機器周期和2字節的堆棧空間。因此應當仔細安排程序結構以盡量減少代碼之間的切換。

結束語
  
采用BankSwitch擴展8031程序空間,在不對硬件作任何修改的情況下,8031便可實現運行大于64KB的程序,充分發揮8031和KeilC51的優異功能。
本文地址:http://www.qingdxww.cn/thread-12567-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 無線充電基礎知識及應用培訓教程
  • Chiptorials ——如何將CryptoAuthLib庫用于Microchip安全身份驗證IC
  • Chiptorials ——使用ATECC608 TrustFLEX實現基本非對稱身份驗證
  • FPGA設計流程培訓教程
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品9999久久久久 | 中文字幕在线看日本大片 | 天天操综合网 | 成年人黄视频在线观看 | 一区二区三区欧美 | 男人的天堂久久精品激情 | 91久久婷婷 | 国产成人免费高清激情视频 | 91视频入口 | www.亚洲免费 | 99久久免费精品视频 | 日本天天操| 国产精品18久久久久久小说 | 99视频精品全部免费观看 | 国产男女视频在线观看 | 免费黄色国产视频 | 自拍偷拍图 | 正在播放国产无套露脸 | 国产精品国产三级国产爱网 | 终极教师电视剧免费观看完整版 | 欧美在线成人免费国产 | 男女黄网站 | 黄色免费在线观看网站 | h肉3d动漫在线观看网站 | 亚洲视频免费在线观看 | 手机在线看黄色 | 99精品国产成人一区二区在线 | 欧美日韩在线一区 | 特级毛片女人18毛片 | 91亚洲免费 | 综合精品一区 | 免费观看欧美 | 国产精品1024在线永久免费 | 国产一区二区精品在线观看 | 丝袜高跟美脚国产1区 | 91在线精品麻豆欧美在线 | 国产区视频在线观看 | 国产精品资源在线 | 成人亚洲欧美日韩在线观看 | 欧美一区二区三区黄色 | 97毛片|