一種數(shù)據(jù)讀取方法及裝置制造方法
【專利摘要】本發(fā)明適用于數(shù)據(jù)讀取【技術(shù)領(lǐng)域】,提供了一種數(shù)據(jù)讀取方法及裝置,所述數(shù)據(jù)讀取方法包括:獲取IC卡、ID卡、CPU卡的讀卡程序;采用組件化的方式,分開(kāi)所述IC卡、ID卡、CPU卡的讀卡程序;采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡。本發(fā)明有益效果在于兩方面,一方面可防止出現(xiàn)程序執(zhí)行延遲,另一方面可增加程序的魯棒性,從而解決了現(xiàn)有的讀卡器或發(fā)卡器的數(shù)據(jù)讀取方法,讀取數(shù)據(jù)速度慢,讀取數(shù)據(jù)的可靠性低,導(dǎo)致讀錯(cuò)數(shù)據(jù)和不能讀出數(shù)據(jù)的問(wèn)題,在讀卡器或發(fā)卡器正常使用的情況下,既提高了讀取數(shù)據(jù)的速度,也提高了讀取數(shù)據(jù)的可靠性。
【專利說(shuō)明】一種數(shù)據(jù)讀取方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)據(jù)讀取【技術(shù)領(lǐng)域】,尤其涉及一種數(shù)據(jù)讀取方法及裝置。
【背景技術(shù)】
[0002]目前,在通道、停車場(chǎng)、門禁等領(lǐng)域持卡已經(jīng)非常普遍,通常采用讀卡器的數(shù)據(jù)讀取方法,讀取卡內(nèi)信息,以支付停車費(fèi)用。而根據(jù)用戶所選用的套餐、以及臨時(shí)使用等情況的不同,所持有的卡類也不盡相同,目前比較流行的有IC卡、ID卡、CPU卡等。
[0003]然而,現(xiàn)有的讀卡器或發(fā)卡器的數(shù)據(jù)讀取方法,讀取數(shù)據(jù)速度慢,讀取數(shù)據(jù)的可靠性低,容易出現(xiàn)讀錯(cuò)數(shù)據(jù)和不能讀出數(shù)據(jù)的情況。其原因在于,現(xiàn)有通常采用的是兼容性發(fā)卡器或讀卡器,即一個(gè)發(fā)卡器或讀卡器既能讀取IC卡中的數(shù)據(jù)又能讀取ID卡、CPU卡中的數(shù)據(jù),并對(duì)其進(jìn)行數(shù)據(jù)更新。而兼容性發(fā)卡器或讀卡器中,并沒(méi)有區(qū)分IC卡、ID卡、CPU卡的讀卡程序,在同一時(shí)間IC卡、ID卡、CPU卡的讀卡程序可以同時(shí)執(zhí)行,因此各讀卡程序之間存在干擾,因此讀取數(shù)據(jù)速度慢,讀取數(shù)據(jù)的可靠性低,容易出現(xiàn)讀錯(cuò)數(shù)據(jù)和不能讀出數(shù)據(jù)的情況。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實(shí)施例的目的在于提供一種數(shù)據(jù)讀取方法,旨在解決現(xiàn)有的讀卡器或發(fā)卡器的數(shù)據(jù)讀取方法,讀取數(shù)據(jù)速度慢,讀取數(shù)據(jù)的可靠性低,導(dǎo)致讀錯(cuò)數(shù)據(jù)和不能讀出數(shù)據(jù)的問(wèn)題。
[0005]本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種數(shù)據(jù)讀取方法,包括:
[0006]獲取IC卡、ID卡、CPU卡的讀卡程序;
[0007]采用組件化的方式,分開(kāi)所述IC卡、ID卡、CPU卡的讀卡程序;
[0008]采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡。
[0009]本發(fā)明實(shí)施例的另一目的在于提供一種數(shù)據(jù)讀取裝置,包括:
[0010]讀卡程序獲取模塊,用于獲取IC卡、ID卡、CPU卡的讀卡程序;
[0011]讀卡程序分開(kāi)模塊,用于采用組件化的方式,分開(kāi)所述IC卡、ID卡、CPU卡的讀卡程序;
[0012]讀卡程序輪詢模塊,用于采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡。
[0013]在本發(fā)明實(shí)施例中,采用組件化的方式,分開(kāi)所述IC卡、ID卡、CPU卡的讀卡程序,采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡,其有益效果在于兩方面,一方面可防止出現(xiàn)程序執(zhí)行延遲,另一方面可增加程序的魯棒性。解決了現(xiàn)有的讀卡器或發(fā)卡器的數(shù)據(jù)讀取方法,讀取數(shù)據(jù)速度慢,讀取數(shù)據(jù)的可靠性低,導(dǎo)致讀錯(cuò)數(shù)據(jù)和不能讀出數(shù)據(jù)的問(wèn)題,從而在讀卡器或發(fā)卡器正常使用的情況下,既提高了讀取數(shù)據(jù)的速度,也提高了讀取數(shù)據(jù)的可靠性。
【專利附圖】
【附圖說(shuō)明】
[0014]圖1是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取方法的實(shí)現(xiàn)流程圖;
[0015]圖2是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取方法步驟S103的實(shí)施流程圖;
[0016]圖3是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第一結(jié)構(gòu)框圖;
[0017]圖4是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第二結(jié)構(gòu)框圖;
[0018]圖5是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第三結(jié)構(gòu)框圖;
[0019]圖6是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第四結(jié)構(gòu)框圖。
[0020]圖7是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第五結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0021]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0022]實(shí)施例一
[0023]圖1是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取方法的實(shí)現(xiàn)流程圖,詳述如下:
[0024]在步驟SlOl中,獲取IC卡、ID卡、CPU卡的讀卡程序;
[0025]在步驟S102中,采用組件化的方式,分開(kāi)所述IC卡、ID卡、CPU卡的讀卡程序;
[0026]其中,采用組件化的方式,將IC卡、ID卡、CPU卡的讀卡程序分開(kāi),使得IC卡、ID卡、CPU卡的讀卡程序互不交互。當(dāng)屏蔽掉IC卡的讀卡程序和ID卡的讀卡程序時(shí),讀卡器同樣可以去讀CPU卡。
[0027]在步驟S103中,采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡。
[0028]其中,在步驟S103之前,配置輪詢順序,所述輪詢順序是讀卡程序的調(diào)用順序。
[0029]由于卡塊的結(jié)構(gòu)、扇區(qū)的信息分布不同,不同卡類讀取卡塊信息的程序不同,因此需要根據(jù)不同的卡類采用不同的子接口。為便于說(shuō)明,舉例如下:
[0030]IC 卡、ID 卡、CPU 卡分別采用 ICReader、IDReader, CPUReader 的子接口。其中,ICReader、IDReader、CPUReader 為子接口的函數(shù)名。
[0031]其中,采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡,具體為:
[0032]通過(guò)發(fā)卡器或讀卡器讀頭的驅(qū)動(dòng)程序讀卡,米用ICReader、IDReader> CPUReader的子接口,根據(jù)預(yù)先配置的輪詢順序,輪詢讀卡的卡介質(zhì)編號(hào),根據(jù)卡介質(zhì)編號(hào)確定卡的種類是IC、ID還是CPUo
[0033]其中,輪詢讀卡是采用多線程讀卡,每隔一定的時(shí)間啟動(dòng)一個(gè)線程對(duì)卡的信息進(jìn)行讀取,當(dāng)一個(gè)線程已經(jīng)完成對(duì)卡的讀取或書寫操作時(shí),即程序運(yùn)行到預(yù)設(shè)的代碼時(shí),結(jié)束輪詢操作,即結(jié)束后面的線程,一方面可防止出現(xiàn)程序執(zhí)行延遲,另一方面可增加程序的魯棒性。,達(dá)到提高了讀取數(shù)據(jù)的速度,也提高了讀取數(shù)據(jù)的可靠性的效果。
[0034]其中,讀卡時(shí),讀取卡內(nèi)數(shù)據(jù),更新所述卡內(nèi)數(shù)據(jù)。
[0035]在本發(fā)明實(shí)施例中,由于采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡,一方面可防止出現(xiàn)程序執(zhí)行延遲,另一方面可增加程序的魯棒性,從而解決了現(xiàn)有的讀卡器或發(fā)卡器的數(shù)據(jù)讀取方法,讀取數(shù)據(jù)速度慢,讀取數(shù)據(jù)的可靠性低,導(dǎo)致讀錯(cuò)數(shù)據(jù)和不能讀出數(shù)據(jù)的問(wèn)題,從而達(dá)到提高了讀取數(shù)據(jù)的速度,也提高了讀取數(shù)據(jù)的可靠性的效果。
[0036]實(shí)施例二
[0037]圖2是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取方法步驟S103的實(shí)施流程圖,詳述如下:
[0038]在步驟S201中,當(dāng)讀卡器或發(fā)卡器檢測(cè)到卡時(shí),觸發(fā)讀卡事件;
[0039]在步驟S202中,根據(jù)所述讀卡事件,采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,依次輪詢讀卡。
[0040]其中,將讀卡事件作為觸發(fā)條件,在讀卡器或發(fā)卡器監(jiān)聽(tīng)讀卡事件,當(dāng)發(fā)生讀卡事件時(shí),采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,依次輪詢讀卡。
[0041]例如,當(dāng)有卡放到讀卡器或發(fā)卡器上時(shí)觸發(fā)讀卡事件,開(kāi)啟讀卡程序運(yùn)行。而在沒(méi)有卡放上去時(shí)讀卡程序線程處于未開(kāi)啟狀態(tài)。
[0042]在本發(fā)明實(shí)施例中,當(dāng)有卡放到讀卡器或發(fā)卡器上時(shí)觸發(fā)讀卡事件,使得讀卡程序不必時(shí)刻處于開(kāi)啟狀態(tài),從而減少了讀卡器或發(fā)卡器的運(yùn)行線程,提高了讀卡器或發(fā)卡器的處理速度。
[0043]實(shí)施例三
[0044]本實(shí)施例描述了點(diǎn)亮標(biāo)識(shí)燈的實(shí)施過(guò)程,詳述如下:
[0045]讀卡時(shí),讀取卡中的卡類標(biāo)記,根據(jù)所述卡類標(biāo)記,點(diǎn)亮與所述卡類標(biāo)記對(duì)應(yīng)的標(biāo)識(shí)燈。
[0046]其中,卡類標(biāo)記為卡種類的標(biāo)記,卡類標(biāo)記包括IC、ID、CPU?
[0047]在讀卡器中分別標(biāo)注IC、ID、CPU,當(dāng)用戶刷卡時(shí),當(dāng)該卡的種類為IC時(shí),則IC對(duì)應(yīng)的標(biāo)識(shí)燈亮,當(dāng)該卡的種類為ID時(shí),則ID對(duì)應(yīng)的標(biāo)識(shí)燈亮,當(dāng)該卡的種類為CPU時(shí),則CPU對(duì)應(yīng)的標(biāo)識(shí)燈殼。
[0048]本實(shí)施例中,點(diǎn)亮與所述卡類標(biāo)記對(duì)應(yīng)的標(biāo)識(shí)燈,既方便用戶知道自己所使用的卡類,并進(jìn)行驗(yàn)證,也方便崗?fù)と藛T記錄不同卡類的用戶出入情況,同時(shí)還利于發(fā)卡器或讀卡器出現(xiàn)問(wèn)題時(shí)排查錯(cuò)誤源。
[0049]實(shí)施例四
[0050]本實(shí)施例描述了數(shù)據(jù)讀取方法在實(shí)際應(yīng)用中的實(shí)施過(guò)程,詳述如下:
[0051]在沒(méi)有卡的情況下,卡種類下拉框顯示:未讀到卡的種類。
[0052]當(dāng)輪循讀卡,當(dāng)讀到卡的種類為IC卡,則卡種類下拉框顯示為“1C”,當(dāng)讀到卡的種類時(shí)如為ID卡,則卡種類下拉框顯示為“ID”,當(dāng)讀到卡的種類時(shí)如為CPU卡,則卡種類下拉框顯示為“CPU”,接下來(lái)是根據(jù)卡的種類調(diào)用該卡類的讀卡程序讀取卡中的數(shù)據(jù)。
[0053]實(shí)施例五
[0054]圖3是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第一結(jié)構(gòu)框圖,該數(shù)據(jù)讀取裝置可以運(yùn)行于讀卡器或發(fā)卡器中。為了便于說(shuō)明,僅示出了與本實(shí)施例相關(guān)的部分。
[0055]參照?qǐng)D3,該數(shù)據(jù)讀取裝置,包括:
[0056]讀卡程序獲取模塊31,用于獲取IC卡、ID卡、CPU卡的讀卡程序;
[0057]讀卡程序分開(kāi)模塊32,用于采用組件化的方式,分開(kāi)所述IC卡、ID卡、CPU卡的讀卡程序;
[0058]讀卡程序輪詢模塊33,用于采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡。
[0059]在本實(shí)施例的一種實(shí)現(xiàn)方式中,參考圖4,圖4是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第二結(jié)構(gòu)框圖,該數(shù)據(jù)讀取裝置,還包括:
[0060]輪詢順序配置模塊34,用于配置輪詢順序。
[0061]在本實(shí)施例的一種實(shí)現(xiàn)方式中,參考圖5,圖5是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第三結(jié)構(gòu)框圖,在該讀卡程序輪詢模塊33中,還包括:
[0062]讀卡事件觸發(fā)單元331,用于當(dāng)讀卡器或發(fā)卡器檢測(cè)到卡時(shí),觸發(fā)讀卡事件;
[0063]讀卡程序輪詢單元332,用于根據(jù)所述讀卡事件,采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,依次輪詢讀卡。
[0064]在本實(shí)施例的一種實(shí)現(xiàn)方式中,參考圖6,圖6是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第四結(jié)構(gòu)框圖,在該數(shù)據(jù)讀取裝置中,還包括:
[0065]標(biāo)識(shí)燈點(diǎn)亮模塊35,用于讀卡時(shí),讀取卡中的卡類標(biāo)記,根據(jù)所述卡類標(biāo)記,點(diǎn)亮與所述卡類標(biāo)記對(duì)應(yīng)的標(biāo)識(shí)燈。
[0066]在本實(shí)施例的一種實(shí)現(xiàn)方式中,參考圖7,圖7是本發(fā)明實(shí)施例提供的數(shù)據(jù)讀取裝置的第五結(jié)構(gòu)框圖,在該數(shù)據(jù)讀取裝置中,還包括:
[0067]卡內(nèi)數(shù)據(jù)更新模塊36,用于讀取卡內(nèi)數(shù)據(jù),更新所述卡內(nèi)數(shù)據(jù)。
[0068]本發(fā)明實(shí)施例提供的裝置可以應(yīng)用在前述對(duì)應(yīng)的方法實(shí)施例中,詳情參見(jiàn)上述實(shí)施例的描述,在此不再贅述。
[0069]通過(guò)以上的實(shí)施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來(lái)實(shí)現(xiàn)。所述的程序可以存儲(chǔ)于可讀取存儲(chǔ)介質(zhì)中,所述的存儲(chǔ)介質(zhì),如隨機(jī)存儲(chǔ)器、閃存、只讀存儲(chǔ)器、可編程只讀存儲(chǔ)器、電可擦寫可編程存儲(chǔ)器、寄存器等。該存儲(chǔ)介質(zhì)位于存儲(chǔ)器,處理器讀取存儲(chǔ)器中的信息,結(jié)合其硬件執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
[0070]以上所述,僅為本發(fā)明的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
【權(quán)利要求】
1.一種數(shù)據(jù)讀取方法,其特征在于,包括: 獲取IC卡、ID卡、CPU卡的讀卡程序; 采用組件化的方式,分開(kāi)所述IC卡、ID卡、CPU卡的讀卡程序; 采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡。
2.如權(quán)利要求1所述的數(shù)據(jù)讀取方法,其特征在于,在所述采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,依次輪詢讀卡之前,包括: 配置輪詢順序。
3.如權(quán)利要求1所述的數(shù)據(jù)讀取方法,其特征在于,所述采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,依次輪詢讀卡,具體為: 當(dāng)讀卡器或發(fā)卡器檢測(cè)到卡時(shí),觸發(fā)讀卡事件; 根據(jù)所述讀卡事件,采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,依次輪詢讀卡。
4.如權(quán)利要求1或3所述的數(shù)據(jù)讀取方法,其特征在于,在采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡之后,所述數(shù)據(jù)讀取方法包括: 讀卡時(shí),讀取卡中的卡類標(biāo)記,根據(jù)所述卡類標(biāo)記,點(diǎn)亮與所述卡類標(biāo)記對(duì)應(yīng)的標(biāo)識(shí)燈。
5.如權(quán)利要求4所述的數(shù)據(jù)讀取方法,其特征在于,在所述讀卡時(shí),讀取卡中的卡類標(biāo)記,根據(jù)所述卡類標(biāo)記,點(diǎn)亮與所述卡類標(biāo)記對(duì)應(yīng)的標(biāo)識(shí)燈之后,所述數(shù)據(jù)讀取方法包括: 讀取卡內(nèi)數(shù)據(jù),更新所述卡內(nèi)數(shù)據(jù)。
6.一種數(shù)據(jù)讀取裝置,其特征在于,包括: 讀卡程序獲取模塊,用于獲取IC卡、ID卡、CPU卡的讀卡程序; 讀卡程序分開(kāi)模塊,用于采用組件化的方式,分開(kāi)所述IC卡、ID卡、CPU卡的讀卡程序; 讀卡程序輪詢模塊,用于采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,輪詢讀卡。
7.如權(quán)利要求6所述的數(shù)據(jù)讀取裝置,其特征在于,所述數(shù)據(jù)讀取裝置還包括: 輪詢順序配置模塊,用于配置輪詢順序。
8.如權(quán)利要求6所述的數(shù)據(jù)讀取裝置,其特征在于,所述讀卡程序輪詢模塊,包括: 讀卡事件觸發(fā)單元,用于當(dāng)讀卡器或發(fā)卡器檢測(cè)到卡時(shí),觸發(fā)讀卡事件; 讀卡程序輪詢單元,用于根據(jù)所述讀卡事件,采用預(yù)先配置的輪詢順序,調(diào)用所述IC卡、ID卡、CPU卡的讀卡程序,依次輪詢讀卡。
9.如權(quán)利要求6或8所述的數(shù)據(jù)讀取裝置,其特征在于,所述數(shù)據(jù)讀取裝置還包括: 標(biāo)識(shí)燈點(diǎn)亮模塊,用于讀卡時(shí),讀取卡中的卡類標(biāo)記,根據(jù)所述卡類標(biāo)記,點(diǎn)亮與所述卡類標(biāo)記對(duì)應(yīng)的標(biāo)識(shí)燈。
10.如權(quán)利要求9所述的數(shù)據(jù)讀取裝置,其特征在于,所述數(shù)據(jù)讀取裝置還包括: 卡內(nèi)數(shù)據(jù)更新模塊,用于讀取卡內(nèi)數(shù)據(jù),更新所述卡內(nèi)數(shù)據(jù)。
【文檔編號(hào)】G06K7/00GK104484636SQ201410856329
【公開(kāi)日】2015年4月1日 申請(qǐng)日期:2014年12月31日 優(yōu)先權(quán)日:2014年12月31日
【發(fā)明者】唐健, 陳毅林, 徐中原 申請(qǐng)人:深圳市科漫達(dá)智能管理科技有限公司