ABB PLC模塊PM564-RP-ETH產(chǎn)品介紹 一是硬件提供判斷條件。CF卡硬件電路提供了兩個(gè)用來檢測CF卡是否存在的引腳(nCD1和nCD2)。nCD1和nCD2的有效電平均為低電平,當(dāng)主機(jī)檢測到與其相連的nCD1和nCD2引腳同時(shí)為低電平時(shí),可判斷出CF卡與主機(jī)相連;當(dāng)主機(jī)檢測到與其相連的nCD1和nCD2兩個(gè)引腳不同時(shí)為低電平,則可判斷出CF卡未與主機(jī)相連。
二是軟件。首先定義全局變量(如:Cf_IsInsert),用于記錄CF卡是否與主機(jī)相連:當(dāng)Cf_IsInsert為0時(shí)表示CF卡未與主機(jī)相連;當(dāng)Cf_IsInsert為1時(shí)表示CF卡與主機(jī)相連。然后,在每次操作CF卡之前都先檢測CF卡的nCD1和nCD2引腳。當(dāng)檢測到nCD1和nCD2引腳同時(shí)為低電平(有卡插入)且Cf_IsInsert為0時(shí),復(fù)位CF卡,重新檢測CF卡的FAT表,統(tǒng)計(jì)還有多少剩余空間可以分配。檢測完畢后,置變量Cf_IsInsert為1,然后設(shè)置MECR寄存器CIT比特位。當(dāng)檢測到nCD1和nCD2引腳同時(shí)為低電平,且Cf_IsInsert為1時(shí),設(shè)置MECR寄存器CIT比特位,繼續(xù)CF卡的正常操作。當(dāng)檢測到nCD1和nCD2引腳為高時(shí)(無卡插入),停止CF卡操作,清除MECR寄存器CIT比特位,置變量Cf_IsInsert為0。

讀/寫CF卡扇區(qū)程序的編寫方法 如果想詳細(xì)了解相關(guān)產(chǎn)品,可以聯(lián)系我公司的技術(shù)工程師。電話:02,1-6,91,16,1,19,手機(jī):131,2216,7570 Q,Q:23 558 182 31 李同。
CF卡的讀寫是以一個(gè)扇區(qū)為基本單位的。在讀寫一個(gè)扇區(qū)之前必須先指明當(dāng)前需要讀寫的柱面、頭和扇區(qū)或LBA地址,然后發(fā)送讀寫命令。一個(gè)扇區(qū)的512字節(jié)需要一次性連續(xù)讀出或者寫入。主機(jī)讀/寫CF卡上一個(gè)文件的過程是這樣的:
ABB PLC模塊PM564-RP-ETH產(chǎn)品介紹 1.CF卡初始化。CF卡上電復(fù)位和統(tǒng)計(jì)剩余空間的大小。
2.CF卡內(nèi)部控制器向CF卡某些寄存器填寫必要的信息。如向扇區(qū)號(hào)寄存器填寫讀寫數(shù)據(jù)的起始扇區(qū)號(hào)或LBA地址、向扇區(qū)數(shù)寄存器填寫讀寫數(shù)據(jù)所占的扇區(qū)個(gè)數(shù)、設(shè)置CF卡的扇區(qū)尋址方式等。
3.向CF卡的命令寄存器寫入操作CF卡的命令。如寫操作向CF卡的命令寄存器寫入30H,讀操作向CF卡的命令寄存器寫入20H。
4.CF卡有數(shù)據(jù)傳輸請求之后,主機(jī)讀寫CF卡的數(shù)據(jù)寄存器,從而實(shí)現(xiàn)從CF卡數(shù)據(jù)緩沖讀出數(shù)據(jù)或向CF卡數(shù)據(jù)緩沖寫入數(shù)據(jù)。
5.在執(zhí)行以上操作的過程中,每執(zhí)行一步,都應(yīng)該檢測狀態(tài)寄存
器,確定CF卡的當(dāng)前狀態(tài),從而確定下一步應(yīng)該執(zhí)行什么操作(參考狀態(tài)寄存器的BIT位的意義,編寫檢測代碼)。
本文小結(jié)
前面詳細(xì)介紹了CF卡的工作原理、PXA255處理器的PCCard/CF卡控制器的特性,給出了基于PXA255處理器的嵌入式導(dǎo)航設(shè)備存儲(chǔ)系統(tǒng)的一種實(shí)現(xiàn)方案。目前,該設(shè)計(jì)已經(jīng)在印刷電路板上實(shí)現(xiàn),運(yùn)行穩(wěn)定可靠 如果想詳細(xì)了解相關(guān)產(chǎn)品,可以聯(lián)系我公司的技術(shù)工程師。電話:02,1-6,91,16,1,19,手機(jī):131,2216,7570 Q,Q:23 558 182 31 李同。






所有評論僅代表網(wǎng)友意見,與本站立場無關(guān)。