摘要:介紹一種基于四時鐘周期、高速8051內核的混合信號8位單片機MAX7651。探討在開發(fā)基于MAX7651的應用系統(tǒng)時所面臨的問題,并推薦相應的解決方案。 關鍵詞:MAX7651 AT89LV55 8XC51RA/RB/RC ALL-07 Flash 四時鐘周期 在全球8位單片機領域,英特爾(Intel)生產的MCS-51系列是毋庸質疑的領導者。借助英特爾廣泛的授權行為,基于8051內核的8位單片機兼容產品早已根深葉茂。Dallas Semiconductor通過改良、優(yōu)化傳統(tǒng)的8051內核,開發(fā)出了高速、四時鐘周期和單時鐘周期8051內核,并在此基礎上推出了一系列高速8位單片機。Maxim利用高速、四時鐘周期8051內核開發(fā)出的第一款混合信號單片機MAX7651,內部集成了12位ADC、8位DAC以及16KB的Flash存儲器,非常適合便攜式設備應用。 1 MAX7651簡介 ??MAX7651內部集成了一個完全的12位、8通道ADC、2通道DAC、3個定時/計數器、16KB Flash存儲器以及一個兼容于工業(yè)標準8051的四時鐘周期高速內核。其它特性包括:256字節(jié)RAM、4個8位I/O口、2個異步串行口、1個中斷控制器以及獨立的看門狗定時器,如圖1所示。 ??MAX7651內部12位ADC具有可編程增益調節(jié)和獨立的采樣保持器。轉換速率可達53ksps,8個輸入通道可以配置為8個獨立的單端信號輸入或者4個差分信號輸入。單片機通過特殊功能寄存器(SFR)ADCON控制模數轉換的工作模式,轉換結果存放在ADDAT0和ADDAT1兩個寄存器中。 ??MAX7651的程序指令集與8051系列完全兼容,具有廣泛的第三方開發(fā)軟件工具支持。比較著名的軟件工具包括:Franklin公司的A51/C51、Keil公司的A51/C51以及Metalink公司的A51等匯編工具軟件。筆者一直使用Keil公司的A51/C51,最新版本號是μP51V7.01。該版本C51已經具備MAX7651的頭文件reg51ex.h,位于C51目錄。如果需要使用A51宏匯編程序,用戶要自己編制inc頭文件。筆者已經完成reg7651.inc頭文件,只需要將它拷貝到C51目錄下即可隨時調用。 ??reg7651.inc頭文件見本刊網絡補充版(http://www.dpj.com.cn)。 ??Keil C51同時提供軟件模擬調試器功能。對于開發(fā)者來說,可以對應用程序進行小范圍的分區(qū)模擬測試,十分方便小型應用程序的開發(fā),不需要專用的硬件仿真器。 3 MAX7651硬件仿真調試工具 ??目前,并沒有專用的硬件仿真器完全支持MAX7651源程序仿真,主要是不能支持內部模數轉換功能。在我國市場上,筆者認為Micetek公司的EasyPack/E II 8052F和Insight公司的ME-52/ME-52 Plus是性價比較高的。特別是EasyPack/E II 8052F能夠支持實時的源程序調試,用戶界面非常友好,用它可以仿真MAX7651的絕大部分功能。注意:一般的仿真器只提供標準的40-DIP雙列直插插座,用戶必須自己制作64-TQFP(MAX7651)到40-DIP轉換的插座適配器。 ??目前市面上沒有硬件編程器直接支持MAX7651 Flash編程。可以采取一些簡單措施解決這個問題,因為8051系列單片機都采用Intel標準的定時時序來編程器件內部存儲器,MAX7651也不例外。MAX7651具有16KB的內部Flash,但是結構上與大多數單片機不同。它分為兩個8KB的存儲區(qū),每個存儲區(qū)又分為128個64字節(jié)的頁面。 ??MAX7651支持兩種Flash編程模式。第一種是在應用中編程,假定應用程序在某一個8KB的存儲區(qū)內運行,并且保證程序只局限在這個8KB的存儲區(qū)內運行,可以通過這種方式編程另一個8KB Flash存儲區(qū)。MAX7651具有四個特殊功能寄存器(EEAL、EEAH、EEDAT、EESTCMD),用于實現此項功能。這里,可以將程序存儲器作為數據存儲器使用,用戶不需要額外擴展數據存儲器空間。第二種編程模式是,采用外部編程器的并行接口進行編程。目前我國市場比較通用的編程器有:臺灣河洛公司的ALL-07和ALL-11P2、Xeltek公司的Superpro/680和Superpro/V等。其中ALL-07編程器目前支持的器件數目可達5000種以上,但是目前它并不直接支持MAX7651,可通過以下簡單方法解決這個問題: ① 經過分析Atmel的AT89LV55以及Intel的8XC51RB兩種單片機外部編程條件和時序可知,其與MAX7651幾乎完全相同。從AT89LV55的外部編程條件(見表1)和硬件接線圖(見圖2)來看,唯一不同的是二者采用了不同的編程電壓。 ③ 打開ALL-07,連接MAX7651。在ALL-07程序界面中選擇AT89LV55或者87C51RB器件選項就可以直接編程MAX7651。注意:如果使用87C51RB,那么不能使用編程密碼陣列命令;如果使用AT89LV55,必須設置編程最高地址空間為3FC0H,而不是3FFFH。 結 語 ??MAX7651是業(yè)界高性能混合工藝單片機的典型器件,可以極大降低模擬應用的設計難度。它的小封裝、低功耗和高速特性非常適合便攜式和嵌入式系統(tǒng)設計。Maxim擁有新一代的高速、低功耗8位和16位單片機內核技術,正在設計和規(guī)劃更多的混合工藝單片機產品。 |