磁卡條編碼和識讀器中的DSP56F80x
磁卡已經廣泛地進入了我們的生活。隨著普及程度不斷提高,需要更加便宜和靈活可靠的磁卡編碼和發售設備。Motorola的DSP56F805具備所有必要的處理電路,來構建一個完整的編碼系統,如圖1所示。從圖中可以看出,該DSP具有所有電路單元,幾乎不需要其它附加電路。本文主要介紹磁卡條編碼器的一些基本器件和如何使用DSP56F80x系列。
本文引用地址:http://www.104case.com/article/2852.htm細心留意一下信用卡,會發現只有一個磁卡條。但實際上國際標準化組織規定了三個磁卡條及其位置,這是所有磁卡都要遵循的標準。三個磁卡條中每一個都有不同字符編碼標準和不同位密度,如表1所示。
乘坐過航班的人經常有被意外迎接的經歷,這是因為他們的信用卡在機票代理處被刷過,而國際航空運輸協會(IATA)標準規定將顧客的姓名和帳戶信息指定存儲于信用卡的第一磁卡條,這樣快速讀卡之后,顧客的姓名和其它信息就馬上得知,無須過多詢問。
American Banking Association 提出,信用卡第二磁卡條以Lingua Franca寫入,全球各地的信用卡及相關設備都用第二磁卡條,然而現在有一種趨勢是,將部分數據轉到第一磁卡條,因為它有更多的信息。
第三磁卡條最初是為了方便離線ATM讀寫便箋式存儲器,一旦連網之后,無須再支持離線ATM,第三磁卡條也就失去了意義。
多數磁卡使用便宜的低矯頑鐵磁材料(約300奧斯特),在數據完整性和保存期限等極其重要時,不再考慮成本因素,可使用高矯頑鐵磁材料(典型約4000奧斯特)。讀卡器在低矯頑鐵磁材料和高矯頑鐵磁材料時所感受的磁場幾乎相同,但對于寫卡器,需要確切探測磁卡材料。對低矯頑鐵磁材料進行高能寫入可導致鐵磁材料飽和從而破壞磁卡;相反,對高矯頑鐵磁材料低能寫入不能有效地寫入數據。
在刷卡時,磁卡條識讀頭線圈產生極低的電流,為了有效接口到模擬數字轉換器(ADC),需要一前置放大電路。該ADC可和差分及單端輸入配置工作,因此對于前置放大電路沒有過多限制。
總共有兩組,6對高電流脈沖寬度調制器(PWM)輸出端,可直接驅動磁卡條編碼器的寫入頭。
持卡者將磁卡通過識讀頭時,多數讀卡器是根據區分相對脈沖寬度來完成數據解讀,使用雙頻相干相位編碼技術(Aiken Biphase)將數據寫入磁卡。
如上圖所示,為了簡化處理,只要數據密度或刷卡速度基本保持恒定,不論大小如何,“1”中的高脈沖寬度總是“0”的一半。“0”可以是高脈沖也可是低脈沖,總是“0”或總是“1”的磁卡意味著解碼故障,但這種情況從未發生過。
對于磁卡寫入器,需要保證數據編碼盡量準確,應盡量不使用便宜、無馬達(手動)讀卡器。在圖1中,PWM2促使卡驅動輪以一定速度運轉,該805型可驅動所有常用的馬達機型,如果需要更為準確的閉環速度控制可使用圖1中的正交解碼器。
還有一種更為精巧的設計方案,寫入器的機械結構更加簡單,編碼器/馬達/驅動輪組合可由一編碼器/空載輪對所代替,在這種布局中,持卡者仍需要手動刷卡,空載輪探知磁卡速度并定位磁卡,然后編碼器產生基準時鐘,以適當的速度將數據寫入所定位的磁卡。
80x家族具有這種應用所需的所有板上閃存和RAM,如果某特定的系統需要更大的存儲量,803和805都有外置存儲器接口提供大的存儲空間。該系列DSP芯核處理器具備多種功能,相信許多即使長期從事微控制器嵌入式系統設計的工程師都會從中受益。芯核的DSP部分可運行適當的算法驅動馬達并消除讀卡頭的信號噪音。
80x系列芯片都具有SCI端口,可直接和RS-232收發器對接,因此可非常容易地和主控制系統連接起來。
80x家族也可有效應用于遠離主控設備的磁卡編碼系統,SPI端口可輕松連接到許多OEM鍵盤和LCD顯示器,805型還有第二個SPI端口。
對于使用大量編碼器的情況,由多個高吞吐量站點集合在一起,通過控制器區域網絡(CAN)總線連接是一種可行的方法。設計時僅僅需要一個小型CAN收發器,系統編程僅僅需要使用Motorola 公司提供的軟件開發套件(Software Development Kit, SDK),將CAN例行程序調出程序庫。
Motorola 公司的DSP80x系列充裕的處理能力和許多類似微控制器的特性,適合于完成一般嵌入式處理和控制任務。盡管需要考慮馬達控制等問題,該系列廣泛兼容的外圍設備加上設計者的聰明才智可使所有問題迎刃而解。
從上面的分析可以看出,不需要另外增加處理能力,僅需極小部分附加電路,就可用DSP56F805構成磁卡條編碼設備的核心部分。而DSP56F803可構成一個低成本的編碼器,DSP56F801則非常適合于讀卡器或更低成本的編碼器。■
評論