怎么在門(mén)禁系統(tǒng)里面加入新的**
如果你這個(gè)系統(tǒng)的允許的總卡數(shù)不是太多,比如也就百八十張(如果你的處理器比較快,千張左右也可以),并且不考慮刪除,那么順序的方法是可行的。方**如你所說(shuō):注冊(cè)時(shí),把**與eeprom中已經(jīng)存在的**一一作比較,如果確定是一張新卡,就把**存到表的未尾。當(dāng)然,表的長(zhǎng)度你要自己去維護(hù)。如果卡的數(shù)量很多,并且允許刪除,那么就要具體情況具體分析了,可以參考一些簡(jiǎn)單的數(shù)據(jù)庫(kù)設(shè)計(jì)方法。如果卡數(shù)量很多,可以給個(gè)簡(jiǎn)單的提示:比如卡的數(shù)量非常多,那么一一注冊(cè)就是不可能的事情。這個(gè)時(shí)候就要考慮在制作卡的對(duì)**進(jìn)行一定的設(shè)計(jì)。比如允許50萬(wàn)張卡,那么建立一組可逆映射,把1-500,000用正變換生成**。在你的門(mén)禁系統(tǒng)里加入逆映射算法,收到**后進(jìn)行運(yùn)算,如果是在1-500,000之中,那就是允許的卡了。這當(dāng)然是*簡(jiǎn)單的設(shè)計(jì)方法,可以參考一下各種加密算法。如果允許刪除,也給個(gè)提示:設(shè)計(jì)一張表,每組數(shù)據(jù)由兩部分構(gòu)成:“是否有效”,“**”。刪除的時(shí)候,把“是否有效”設(shè)為無(wú)效就可以。注冊(cè)卡的時(shí)候,新**可以覆蓋無(wú)效**,不要忘了置為有效。
