|
| | Pin5 | D06 | Pin22 | D01 | Pin39 | CSEL | | Pin6 | D07 | Pin23 | D02 | Pin40 | VS2 | | Pin7 | CE1 | Pin24 | WP | Pin41 | RESET | | Pin8 | A10 | Pin25 | CD2 | Pin42 | WAIT | | Pin9 | OE | Pin26 | CD1 | Pin43 | INPACK | | Pin10 | A09 | Pin27 | D11 | Pin44 | REG | | Pin11 | A08 | Pin28 | D12 | Pin45 | BVD2 | | Pin12 | A07 | Pin29 | D13 | Pin46 | BVD1 | | Pin13 | VCC | Pin30 | D14 | Pin47 | D08 | | Pin14 | A06 | Pin31 | D15 | Pin48 | D09 | | Pin15 | A05 | Pin32 | CE2 | Pin49 | D10 | | Pin16 | A03 | Pin33 | VS1 | Pin50 | GND | | Pin17 | A04 | Pin34 | IORD | | | 對MicroDrive,數(shù)據(jù)都是以512字節(jié)的扇區(qū)單元進行操作,能夠通過IDE、Memory等模式對其進行訪問。 雖然IDE模式被廣泛應用于計算機硬盤的接口中,同時也被經常應用于嵌入式系統(tǒng)中,得到絕大多數(shù)的BIOS和工業(yè)單板機的支持;但是IDE模式涉及復雜的文件管理,使得控制操作相對復雜,不符合簡單可行的設計要求。 本系統(tǒng)由單片機實現(xiàn)嵌入式設計。而Memory模式是MicroDrive的默認模式,可以避免繁瑣的寄存器設置,同時支持8位數(shù)據(jù)帶寬,控制操作相對簡單,可以極大地簡化設計,節(jié)省系統(tǒng)的資源。故本系統(tǒng)采用Memory模式。 2.2 硬件接口 本系統(tǒng)電路連接框圖如圖1所示,主要包含以下五部分: (1)AT89C52 AT89C52擁有比8051多一倍的數(shù)據(jù)存儲器(256字節(jié)的RAM),擁有8K字節(jié)內部只讀存儲器(ROM),操作命令以及各引腳與8051基本一致。在本系統(tǒng)中,AT89C52的作用至關重要,它擔負著與外部的通信及實現(xiàn)對MicroDrive的各種操作。 (2)外部數(shù)據(jù)存儲器 外部數(shù)據(jù)存儲器主要用作硬盤數(shù)據(jù)讀寫的緩存,因而必須具有非易失性、簡便的操作及合適的容量。62HC64容量為8KB具有非易失性、功耗低等特點。 (3)通信電平轉換芯片 RS232C是目前異步串行通信中應用最廣泛的標準總線,適用于數(shù)據(jù)中斷設備(DTE)和數(shù)據(jù)通信設備(DCE)之間的接口;而單片機使用TTL電平,兩者互不兼容。因而使用了MAX232電平轉換芯片對它們的通信電平進行轉換,作為對外的通信接口。 (4)CF+適配口 使用了標準50針CF+適配口。 (5)地址鎖存器74LS373和地址譯碼器74LS138 其中Address/Data(0~7)為復用的8位數(shù)據(jù)或低8位地址總線,Address(8~12)為用于尋址62HC64的高5位地址線,Address(13~15)接至74HC138,用作外部數(shù)據(jù)存儲器62HC64及MicroDrive 的片選信號;Reset(RESET)信號與AT89C52的RESET腳連接,以達到同步復位的目的,上電復位后,MicroDrive自動進入默認的Memory 模式;REG Register信號用于選擇訪問MicroDrive的Attiribute Memory(低電平)或Common Memory(高電平);對于CE1與CE2(Card Enable),因為只有一塊MicroDrive,故將CE2接高電平,CE1接74LS138的Y7腳;OE、為讀寫有效信號,與AT89C52的P3.7(RD)、P3.6(WR)相連;RDY/BSY(Ready/Busy)MicroDrive 的閑忙狀態(tài)信號,當MicroDrive忙時,該腳為低電平,不能對MicroDrive做任何操作,與AT89C52的P3.2相連,以便可通過軟件檢測此位,判定MicroDrive的閑忙狀態(tài);WAIT(Wait)信號的有效意味著一個操作進程正在完成過程中,把它與P1.7相連,以便檢測;CD1、CD2(Card Detect)用于MicroDrive的存在檢測,與AT89C52的P3.2、P3.3相連;AT89C52的P3.0(RXD)用作串行通信輸入,接MAX232的12腳(R1OUT),用于接收通過MAX232送來的數(shù)據(jù),P3.1(TXD)用作串行通信輸出,接MAX232的11腳(T1IN),通過MAX232送出數(shù)據(jù)。 3 軟件設計 3.1 主要寄存器簡介 MicroDrive內幾個涉及到的操作寄存器,如表2所示。
表2 MicroDrive主要寄存器 |