RS485IC卡售飯機問題的解決淺析
文章出處:http://5052h112.com 作者:王亮亮 人氣: 發(fā)表時間:2011年07月10日
問題:485IC卡售飯機存在著刷卡過快,卡值突變、卡庫值不一致,限次不準確, 機器無低壓自動關(guān)斷能力,長時間欠電壓工作單片機塤壞這幾個問題。
關(guān)鍵詞:卡值突變;卡庫不一致;限次不準確;單片機塤壞;
解決方案:
485售飯機存在著刷卡過快,卡值突變、卡庫不一致,限次不準確
售飯機原刷卡處理過程:
刷卡的時候售飯機先從卡中讀出數(shù)據(jù),并將其保存到到售飯機中,待售飯機處理完后在將數(shù)據(jù)反寫到原卡中,之后售飯機再次從卡中讀出寫入的數(shù)據(jù),待售飯機校驗數(shù)據(jù)無誤后形成記錄刷卡成功,失敗則重復(fù)以上步驟。
原售飯機原刷卡過程存在的問題:
卡值突變:在寫卡時迅速拿卡導(dǎo)致寫卡失敗,導(dǎo)致卡庫值不一致,卡突變。
卡庫值不一致:一種情況是在寫卡時迅速拿卡導(dǎo)致寫卡失敗,第二種情況是在卡校驗時迅速拿卡,這種情況,卡上金額已扣掉,但未形成記錄,導(dǎo)致庫金額大于卡上金額。
限次不準確:原處理在刷卡的過程中先扣除次數(shù),未進行校驗,之后在卡金額操作失敗之后,也未恢復(fù)原次數(shù)。
綜上所述刷卡處理方式不能處理拿卡過快的問題,刷卡失敗后無明顯的提醒,并且程序依然可以運行刷卡。
解決的辦法
刷卡部分
程序刷卡部分不再采用原來的循環(huán)結(jié)構(gòu)而是采用一種順序的結(jié)構(gòu),在寫卡之后,之后的讀卡寫卡都有嚴格的校驗,在這個過程中有任何的讀卡寫卡錯誤,程序?qū)⒉煌5膶ふ冶究ú⑶曳澍Q器鳴叫,直到本操作正確執(zhí)行,然后才可以進行以后的步驟。在這種處理方式中按ESE鍵可終止本次刷卡操作。刷卡失敗后按ESE鍵不是一種安全模式,正確的方式是重新放卡。
機器低壓自動關(guān)斷能力 機器無低壓自動關(guān)斷能力,長時間欠電壓工作單片機塤壞這幾個問題,增加看門狗硬件部分電路當欠電壓時機器自動關(guān)機。