卡池的處理方法及裝置、卡池系統與流程
2023-05-10 08:26:06

本發明涉及通信領域,具體而言,涉及一種卡池的處理方法及裝置、卡池系統。
背景技術:
現在到全國各地或者出國旅遊、開會等等已是很普遍的現象。出於便於聯繫和/或節省費用的目的,用戶一般會提前修改手機套餐,比如開通國際漫遊以方便在國外與家人或朋友聯繫。但是通過計算證實,漫遊套餐的手機流量資費依然很高。
為了解決這一問題,業界推出了安裝SIM卡的卡池設備。用戶使用自己的手機可以從網上檢測到當前已漫遊到哪個國家、哪種制式等相關的信息,然後可以在卡池中選擇相關類型的SIM卡進行上網,同時斷開自己手機裡原有的SIM卡的通信連接,這樣就可以節省流量等資費。然而,使用目前的卡池設備,不便於更換SIM卡。
針對上述的問題,目前尚未提出有效的解決方案。
技術實現要素:
本發明提供了一種卡池的處理方法及裝置、卡池系統,以至少解決相關技術中的卡池由於不具有熱插拔功能而不便於更換SIM卡的技術問題。
根據本發明的一個方面,提供了一種卡池,包括:多個卡槽,其中,上述多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽上的客戶識別模塊SIM卡是否發生熱插拔操作的檢測引腳。
根據本發明的一個方面,提供了一種卡池系統,包括:卡池,上述卡池具有多個卡槽,其中,上述多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽內的客戶識別模塊SIM卡是否發生熱插拔操作的檢測引腳。
進一步地,上述卡池系統還包括:擴展晶片,用於擴展上述卡池中的卡槽數量,與上述卡池中卡槽連接。
進一步地,上述擴展晶片包括:一個或者多個一級擴展晶片,每個上述一級擴展晶片的第一端與控制器連接,每個上述一級擴展晶片的第二端上設置有N個一級引腳;多個二級擴展晶片,每個上述一級引腳分別連接上述多個二級擴展晶片中的一個二級擴展晶片的第一端,每個上述二級擴展晶片的第二端上設置有M個二級引腳,每個上述二級引腳連接上述多個卡槽中的一個卡槽的檢測引腳。
進一步地,上述卡池系統還包括:第一開關,與收發器連接,上述收發器連接在上述第一開關和上述控制器之間,上述第一開關用於將一路SIM數據信號擴展為(N*M)路SIM數據信號;第二開關,與上述收發器連接,上述收發器連接在上述第二開關和上述控制器之間,上述第二開關用於將一路SIM時鐘信號擴展為(N*M)路SIM時鐘信號;第三開關,與上述收發器連接,上述收發器連接在上述第三開關和上述控制器之間,上述第三開關用於將一路SIM重置信號擴展為(N*M)路SIM重置信號。
根據本發明的另一個方面,提供了一種卡池的處理方法,包括:獲取安裝在卡池中的卡槽上的客戶識別模塊SIM卡在發生熱插拔操作時所生成的中斷信息,其中,上述卡池包括:多個卡槽,上述多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽上的SIM卡是否發生熱插拔操作的檢測引腳;根據獲取的中斷信息確定用於通信的SIM卡。
進一步地,上述中斷信息依據SIM卡發生熱插拔操作時,上述SIM卡對應的卡槽發生電平變化確定。
進一步地,根據獲取的中斷信息確定用於通信的SIM卡包括:讀取用於存儲上述卡池中的各個卡槽的卡槽狀態的寄存器的值;記錄在獲取中斷信息之前寄存器的第一記錄值,以及依據中斷信息對寄存器的值進行更新得到的第二記錄值;依據上述第一記錄值以及上述第二記錄值確定用於通信的SIM卡。
根據本發明的另一方面,提供了一種卡池的處理裝置,包括:獲取單元,用於獲取安裝在卡池中的卡槽上的客戶識別模塊SIM卡在發生熱插拔操作時所生成的中斷信息,其中,上述卡池包括:多個卡槽,上述多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽上的SIM卡是否發生熱插拔操作的檢測引腳;第一確定單元,用於根據獲取的中斷信息確定用於通信的SIM卡。
進一步地,上述裝置還包括:第二確定單元,用於依據SIM卡發生熱插拔操作時,上述SIM卡對應的卡槽發生電平變化確定上述中斷信息。
進一步地,上述第一確定單元包括:讀取模塊,用於讀取存儲上述卡池中的各個卡槽的卡槽狀態的寄存器的值;記錄模塊,用於記錄在獲取中斷信息之前寄存器的第一記錄值,以及依據中斷信息對寄存器的值進行更新得到的第二記錄值;確定模塊,用於依據上述第一記錄值以及上述第二記錄值確定用於通信的SIM卡。
通過本發明,採用為卡池設置熱插拔功能,通過使卡池上多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽上的客戶識別模塊SIM卡是否發生熱插拔操作的檢測引腳,解決了相關技術中的卡池由於不具有熱插拔功能而不便於更換SIM卡的技術問題,進而達到了實現卡池的熱插拔功能以便於更換的SIM卡的技術效果。
附圖說明
此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用於解釋本發明,並不構成對本發明的不當限定。在附圖中:
圖1是根據本發明實施例的卡池的示意圖;
圖2(a)是根據本發明實施例的卡池設備的主板的結構框圖;
圖2(b)是根據本發明實施例的卡池設備的子板的結構框圖;
圖3是根據本發明實施例的卡池的處理方法的流程圖;
圖4是根據本發明可選實施例的熱插拔SIM卡的原理圖;
圖5是根據本發明可選實施例的卡池的處理裝置的示意圖。
具體實施方式
下文中將參考附圖並結合實施例來詳細說明本發明。需要說明的是,在不衝突的情況下,本申請中的實施例及實施例中的特徵可以相互組合。
需要說明的是,本發明的說明書和權利要求書及上述附圖中的術語「第一」、「第二」等是用於區別類似的對象,而不必用於描述特定的順序或先後次序。
實施例1
根據本發明實施例,提供了一種卡池的裝置實施例。
圖1是根據本發明實施例的卡池的示意圖,如圖1所示,該卡池包括:多個卡槽102,其中,多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽上的客戶識別模塊SIM卡是否發生熱插拔操作的檢測引腳。
需要說明的是,一個卡池上有多少個卡槽,就需要設置多少個檢測引腳,使得每個卡槽上都至少具有一個對應的檢測引腳。
實施時,在卡池上電以後,可以根據需要隨時熱插拔安裝在該卡池的任何一個或者多個卡槽上的相應的SIM卡,此時,可以根據卡槽上的檢測引腳的電平變化情況確定是否執行了熱插拔操作。例如,當SIM1卡執行了熱插入操作時,可以為插入的SIM卡註冊通信應用服務。對於註冊了通信應用服務的SIM卡而言,用戶可以在網上搜到這些SIM卡,並選擇使用之。
通過本發明實施例,通過為卡槽設置的上述的檢測引腳,使得卡池具有了熱插拔的功能,這給SIM卡的更換操作帶來極大的便利。
實施例2
根據本發明實施例,提供了一種卡池系統的裝置實施例。
該卡池系統包括如圖1所示的卡池,該卡池具有多個卡槽,其中,多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽內的客戶識別模塊SIM卡是否發生熱插拔操作的檢測引腳。其中,此處的卡池同實施例1中的卡池,在此不再贅述。
可選地,上述卡池系統還包括:擴展晶片,用於擴展卡池中的卡槽數量,與卡池中卡槽連接。具體地,擴展晶片的每一個擴展引腳可以直接連接至卡池中對應卡槽的檢測引腳,或者擴展晶片的每一個擴展引腳可以先連接至下一級擴展晶片,再經過該下一級擴展晶片的擴展引腳連接至對應卡槽的檢測引腳,此處,該該下一級擴展晶片的擴展引腳與對應卡槽的檢測引腳的連接方式同其上一級擴展晶片與對應卡槽的檢測引腳的連接方式,在此不再贅述。需要說明的是,擴展晶片的擴展引腳與卡槽的連接方式與卡池中的卡槽數量有關,而一個卡池上具體需要設置多少個卡槽,可以由提供商根據當地的供需情況確定。這樣,通過擴展晶片的擴展功能,可以實現根據實際供需情況增大卡池的容量的目的。
可選地,上述擴展晶片包括:一個或者多個一級擴展晶片,每個一級擴展晶片的第一端與控制器(即CPU,其中,該CPU為系統的主CPU)連接,每個一級擴展晶片的第二端上設置有N個一級引腳;多個二級擴展晶片,每個一級引腳分別連接多個二級擴展晶片中的一個二級擴展晶片的第一端,每個二級擴展晶片的第二端上設置有M個二級引腳,每個二級引腳連接多個卡槽中的一個卡槽的檢測引腳。
具體的,每個一級擴展晶片的第一端通過總線(如I2C總線)與控制器連接,其中,該總線用於通過擴展晶片連接CPU及其外圍設備(如卡池),如圖2(a)和圖2(b)所示,其中圖中的總線即為I2C總線,CPU上引出的I2C總線經擴展晶片擴展之後,連接至對應的SIM卡槽上。
其中,在本發明實施例中,所有一級擴展晶片的位數可以相同,也可以不同;所有二級擴展晶片的位數也可以相同,也可以不同。具體的,一級擴展晶片的第一端連接的總線可以是從控制器CPU上引出的I2C總線。需要說明的是,各級擴展晶片的位數等於其引腳數目,例如,如果一級擴展晶片有N個一級引腳,則一級擴展晶片就是N位的擴展晶片;同理,如果二級擴展晶片有M個二級引腳,則二級擴展晶片就是M位的擴展晶片。例如,N可以等於8,M可以等於16。
可選地,卡池系統還包括:第一開關,與收發器連接,該收發器連接在第一開關和控制器之間,第一開關用於將一路SIM數據信號擴展為(N*M)路SIM數據信號;第二開關,也與收發器連接,該收發器連接在第二開關和控制器之間,第二開關用於將一路SIM時鐘信號擴展為(N*M)路SIM時鐘信號;第三開關,也與收發器連接,該收發器連接在第三開關和控制器之間,第三開關用於將一路SIM重置信號擴展為(N*M)路SIM重置信號。
其中,收發器用於接收來自CPU的片選信號。各開關都包括多級開關,並且每一 級開關作為一組開關可以包括多個開關,例如2個。
以下以一個具體實施例詳細闡述本發明的卡池系統:
需要說明的是,在本實施例中,假設卡池系統包括兩個一級擴展晶片,每個一級擴展晶片的第一端與控制器(即系統的主CPU)連接,每個一級擴展晶片的第二端上設置有N個一級引腳,其中,假設N=8,這樣,此處的每個一級擴展晶片實際上是一個8位的I2C擴展晶片;每個8位的I2C擴展晶片的每個一級引腳分別連接一個二級擴展晶片(即第二級擴展晶片,以下簡稱為二級擴展晶片)的第一端,每個二級擴展晶片的第二端上設置有M個二級引腳,每個二級引腳連接所述多個卡槽中的一個卡槽的檢測引腳。由於兩個8位的I2C擴展晶片一共具有16個一級引腳,這樣,總共可以連接16個二級擴展晶片,假設每個二級擴展晶片都是一個16位的I2C二級擴展晶片,則經過一、二級擴展晶片擴展之後,總共可以得到16×16個二級引腳。進一步,由於每個二級引腳可以連接一個檢測引腳,因此,經過上述擴展之後,可以得到一個具有256個卡槽的卡池系統。
實施時,兩個一級擴展晶片的第一端都是連接在控制器(即系統的主CPU)上引出的總線(如I2C總線)上的。這樣,作為一級擴展晶片的8位的I2C擴展晶片,它的每個引腳都可以分別連接一個作為二級擴展晶片的16位的I2C二級擴展晶片。由於每個16位的I2C二級擴展晶片的每一位擴展引腳都可以連接到一個SIM卡槽的detect引腳(即檢測引腳)上。因此,通過上述的兩級擴展晶片,總共能夠擴展出256個檢測通路,將它們分別連接到對應的SIM卡的卡槽上,就可以支持256個SIM卡。這樣,實現的卡池系統就會具有多個包含了用於檢測安裝在對應的卡槽內的客戶識別模塊SIM卡是否發生熱插拔操作的檢測引腳的卡槽。換言之,通過該種方式實現的卡池系統支持SIM卡熱插拔功能。
因為控制器(即系統主CPU)作為卡池系統的一部分,可以通過中斷信息檢測哪些卡槽上的SIM卡發生了熱插拔操作,哪些卡槽上的SIM卡為可以使用的SIM卡等,進而將檢測結果上傳給伺服器,這樣,在終端設備需要使用卡池中的SIM卡時,伺服器可以根據檢測結果為終端設備選擇並提供對應的SIM卡以滿足其通信需求。
另外,由於二級擴展晶片的每一位(即每一個二級引腳)連接到一個SIM卡的卡槽的detect引腳上,因此可以隨時檢測對應的detect引腳的電平變化情況,實現了卡池的熱插拔功能。
使用上述的卡池,若一個終端設備(如手機)漫遊到國外,當獲知到當前的國家及其通信制式信息時,就可以從該卡池中選擇具有相同信息的SIM卡,然後讀取該SIM卡的信息,之後,用戶可以選擇斷開手機設備中原來的SIM卡的通信連接,進而採用從卡池中選出的新的SIM卡來實現通信功能,從而能夠實現大幅度節省成本的目的。
如圖2(a)和圖2(b)展示了一種可熱插拔SIM卡的卡池系統的實現方式。其中, 圖2(a)是根據本發明實施例的卡池系統的主板的結構框圖,圖2(b)是根據本發明實施例的卡池系統的子板的結構框圖,圖2(a)所示的主板和圖2(b)所示的子板的展示了該實現方法的整個框架。
具體地,從主板上可以看到,從控制器(即系統的主CPU)引出四組信號線,分別為:8個連接至收發器的GPIO片選線,用於提供片選信號;3個USIM信號線,分別為SIM數據信號USIM_DATA、SIM時鐘信號USIM_CLK、SIM重置信號USIM_RESET;I2C總線(即總線);2個GPIO中斷線,用於傳輸中斷信息。其中,在8個GPIO片選線中,sw1_add0到sw1_add3作為高4位地址線。具體地,sw1_add0作為高位,如果該位為0時,剩下的sw1_add1、sw1_add2、sw1_add33個地址線分別控制3組開關(可以是一級開關),分別為第一至第三開關,這3組開關的輸入分別連接USIM_DATA、USIM_CLK以及USIM_RESET這3個USIM信號線,每個USIM信號線通過開關被擴展輸出8通道信號線;同理,當sw1_add0取反為1時,同樣分別擴展出這3個USIM信號線的8通道信號線,這樣,USIM卡的3個USIM信號經過一級擴展之後,就可以分別被擴展成16路通道信號,這樣共輸出16路通道信號,這16路通道信號在根據同樣的擴展原理進行二級擴展,就可以更多路通道信號,如256路。CPU通過I2C總線連接2個8位的I2C擴展晶片(即一級擴展晶片),每個8位的I2C擴展晶片上接入一個GPIO中斷線。以上就是主板設計。
從子板上可以看到出,該子板上主要分為兩組信號:(1)第一組信號,控制器(即系統的主CPU)引出的I2C信號控制一個16位I2C擴展晶片,同時,主板上2個8位的I2C擴展晶片輸出的每一路各自接到一個16位的I2C擴展晶片上;(2)第二組信號,主板上的剩下4個地址線sw2_add0、sw2_add1、sw2_add2以及sw2_add3,用同樣的方法,主板上分別擴展出的3個USIM信號的16個通道信號中的每一個通路,還能夠再次實現16個通道信號的擴展;(3)每個子板上有16個SIM卡的卡槽。從以上對各組信號的解析來看,第一組信號輸出了16個detect信號,第二組信號分別輸出3個USIM信號的16個通道信號。其中,detect信號、USIM_DATA信號、USIM_CLK信號以及USIM_RESET信號這4個信號分別連接到SIM卡槽上,這樣就完成一組16個SIM卡的工作原理。另外,從主板上看,還有剩下15組這樣的信號的實現,按照前一組信號的實現方法,總共可實現256個SIM卡的工作原理。
實施例3
根據本發明實施例,提供了一種卡池的處理方法的方法實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執行指令的計算機系統中執行,並且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟。
圖3是根據本發明實施例的卡池的處理方法的流程圖,如圖3所示,該流程包括如下步驟:
步驟S302,獲取安裝在卡池中的卡槽上的客戶識別模塊SIM卡在發生熱插拔操作時所生成的中斷信息,其中,卡池包括:多個卡槽,多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽上的SIM卡是否發生熱插拔操作的檢測引腳;
步驟S304,根據獲取的中斷信息確定用於通信的SIM卡。
在卡池上電時,如果熱插拔SIM卡,則原本安裝了該SIM卡的卡槽的檢測引腳上的電平就會發生變化,此時,卡池就會產生中斷信息,並通過擴展晶片將中斷信息反饋給CPU,CPU在接收到中斷信息時,可以根據獲取的中斷信息確定哪些SIM卡能夠通信。
需要說明的是,此處的卡池結構同上述實施例中的任意實施方式,在此不再贅述。
通過本發明實施例,採用為卡池設置熱插拔功能,解決了相關技術中的卡池由於不具有熱插拔功能而不便於更換SIM卡的技術問題,進而達到了實現卡池的熱插拔功能以便於更換的SIM卡的技術效果。
可選地,上述中斷信息依據SIM卡發生熱插拔操作時,SIM卡對應的卡槽發生電平變化確定。
通過中斷信息可以確定是否發生了熱插拔操作,並且在檢測到有SIM熱插入卡池時,會及時對其進行註冊,使其實現通信功能。
可選地,根據獲取的中斷信息確定用於通信的SIM卡包括:
S2,讀取用於存儲卡池中的各個卡槽的卡槽狀態的寄存器的值;
S4,記錄在獲取中斷信息之前寄存器的第一記錄值,以及依據中斷信息對寄存器的值進行更新得到的第二記錄值,換言之,第二記錄值是發生SIM插拔操作後,寄存器重新記錄的各個卡槽的卡槽狀態的值;
S6,依據第一記錄值以及第二記錄值確定熱插拔動作之後能夠用於通信的SIM卡。
如圖4所示,展示了SIM卡的熱插拔檢測機制。結合圖2(a)和圖2(b),在卡池設備一上電時,需要通過I2C總線分別讀取2個8位的擴展晶片的寄存器的值,進而讀取每個16位的擴展晶片的寄存器的值,通過讀取的寄存器的值能夠判斷出哪個SIM卡槽上有卡,同時保存本次讀取的所有寄存器的初始值。
在該卡池設備在工作過程中,如果出現SIM卡的熱插拔現象,這時,連接到SIM卡槽的16位擴展晶片的某個引腳的電平就會發生變化,並發出中斷信號(即中斷信息)。進一步地,該中斷信號就會通知連接到該16位的擴展晶片的8位擴展晶片,進而通過連接到該8位擴展晶片的主晶片上的GPIO中斷信號線將上述中斷信號傳輸給主CPU,此時,主CPU獲取到中斷信息後,會通過I2C總線讀取8位擴展晶片的I/O管腳以及16位擴展晶片的I/O管腳的寄存器的值,並用當前讀出的寄存器的值和上一次讀取的寄 存器的值(如寄存器的初始值)進行比較,可以判斷出是哪個SIM卡槽上發生了電平變化。以上就是當出現熱插拔SIM卡時的檢測過程。
在需要使用卡池中SIM卡時,需要通過SIM卡的物理地址,查到想要可用的SIM卡,進而調用底層的接口函數,配置8個GPIO的電平值,從而確定SIM卡的物理地址,這樣就可以採用該SIM卡進行通信。
需要說明的是,在本發明中提供了容量為256個SIM卡的卡池的實現方法,在此基礎上,可以進行更大數目的SIM卡的擴展,當然為了實現寄存器的讀寫操作,以及對中斷的響應速度,就會對CPU的處理速度提出更高的要求。
通過本發明,實現了可插入256個SIM卡的需求的卡池,能夠很方便地滿足更多用戶在漫遊時節省通信成本的需求,從而更好地實現與親朋間的通信;另外,具有可熱插拔的功能可以方便工作人員操作伺服器,這樣,避免了如果要新插入或者拔出SIM卡,則需要重新對卡池設備上電的操作,進而更方便地服務於用戶,有了這樣的卡池設備,不管是出國還是在國內,不用再受運營商網絡以及地域等諸多因素的限制,從而可以在適應性更強、更靈活、成本更低的環境下,實現跨運營商網絡或跨地域實現移動通信網絡業務。
通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到根據上述實施例的方法可藉助軟體加必需的通用硬體平臺的方式來實現,當然也可以通過硬體,但很多情況下前者是更佳的實施方式。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質(如ROM/RAM、磁碟、光碟)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,伺服器,或者網絡設備等)執行本發明各個實施例的方法。
實施例4
在本實施例中還提供了一種卡池的處理裝置,該裝置用於實現上述實施例及優選實施方式,已經進行過說明的不再贅述。如以下所使用的,術語「模塊」可以實現預定功能的軟體和/或硬體的組合。儘管以下實施例所描述的裝置較佳地以軟體來實現,但是硬體,或者軟體和硬體的組合的實現也是可能並被構想的。
圖5是根據本發明可選實施例的卡池的處理裝置的示意圖,如圖5所示,該裝置包括:獲取單元502,用於獲取安裝在卡池中的卡槽上的客戶識別模塊SIM卡在發生熱插拔操作時所生成的中斷信息,其中,卡池包括:多個卡槽,多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽上的SIM卡是否發生熱插拔操作的檢測引腳;第一確定單元504,用於根據獲取的中斷信息確定用於通信的SIM卡。
在卡池上電時,如果熱插拔SIM卡,則原本安裝了該SIM卡的卡槽的檢測引腳上的電平就會發生變化,此時,卡池就會產生中斷信息,並通過擴展晶片將中斷信息反饋 給CPU,CPU在接收到中斷信息時,可以根據獲取的中斷信息確定哪些SIM卡能夠通信。
需要說明的是,此處的卡池結構同上述實施例中的任意實施方式,在此不再贅述。
通過本發明實施例,採用為卡池設置熱插拔功能,解決了相關技術中的卡池由於不具有熱插拔功能而不便於更換SIM卡的技術問題,進而達到了實現卡池的熱插拔功能以便於更換的SIM卡的技術效果。
可選地,上述中斷信息依據SIM卡發生熱插拔操作時,SIM卡對應的卡槽發生電平變化確定。
通過中斷信息可以確定是否發生了熱插拔操作,並且在檢測到有SIM熱插入卡池時,會及時對其進行註冊,使其實現通信功能。
可選地,上述裝置還包括:第二確定單元,用於依據SIM卡發生熱插拔操作時,SIM卡對應的卡槽發生電平變化確定中斷信息。
通過中斷信息可以確定是否發生了熱插拔操作,並且在檢測到有SIM熱插入卡池時,會及時對其進行註冊,使其實現通信功能。
可選地,第一確定單元包括:讀取模塊,用於讀取存儲卡池中的各個卡槽的卡槽狀態的寄存器的值;記錄模塊,用於記錄在獲取中斷信息之前寄存器的第一記錄值,以及依據中斷信息對寄存器的值進行更新得到的第二記錄值,換言之,第二記錄值是發生SIM插拔操作後,寄存器重新記錄的各個卡槽的卡槽狀態的值;確定模塊,用於依據第一記錄值以及第二記錄值確定用於通信的SIM卡。
如圖4所示,展示了SIM卡的熱插拔檢測機制。結合圖2(a)和圖2(b),在卡池設備一上電時,需要通過I2C總線分別讀取2個8位的擴展晶片的寄存器的值,進而讀取每個16位的擴展晶片的寄存器的值,通過讀取的寄存器的值能夠判斷出哪個SIM卡槽上有卡,同時保存本次讀取的所有寄存器的初始值。
在該卡池設備在工作過程中,如果出現SIM卡的熱插拔現象,這時,連接到SIM卡槽的16位擴展晶片的某個引腳的電平就會發生變化,並發出中斷信號(即中斷信息)。進一步地,該中斷信號就會通知連接到該16位的擴展晶片的8位擴展晶片,進而通過連接到該8位擴展晶片的主晶片上的GPIO中斷信號線將上述中斷信號傳輸給主CPU,此時,主CPU獲取到中斷信息後,會通過I2C總線讀取8位擴展晶片的I/O管腳以及16位擴展晶片的I/O管腳的寄存器的值,並用當前讀出的寄存器的值和上一次讀取的寄存器的值(如寄存器的初始值)進行比較,可以判斷出是哪個SIM卡槽上發生了電平變化。以上就是當出現熱插拔SIM卡時的檢測過程。
在需要使用卡池中SIM卡時,需要通過SIM卡的物理地址,查到想要可用的SIM卡,進而調用底層的接口函數,配置8個GPIO的電平值,這樣就可以採用該SIM卡進 行通信。
需要說明的是,在本發明中提供了容量為256個SIM卡的卡池的實現方法,在此基礎上,可以進行更大數目的SIM卡的擴展,當然為了實現寄存器的讀寫操作,以及對中斷的響應速度,就會對CPU的處理速度提出更高的要求。
通過本發明,實現了可插入256個SIM卡的需求的卡池,能夠很方便地滿足更多用戶在漫遊時節省通信成本的需求,從而更好地實現與親朋間的通信;另外,具有可熱插拔的功能可以方便工作人員操作伺服器,這樣,避免了如果要新插入或者拔出SIM卡,則需要重新對卡池設備上電的操作,進而更方便地服務於用戶,有了這樣的卡池設備,不管是出國還是在國內,不用再受運營商網絡以及地域等諸多因素的限制,從而可以在適應性更強、更靈活、成本更低的環境下,實現跨運營商網絡或跨地域實現移動通信網絡業務。
通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到根據上述實施例的方法可藉助軟體加必需的通用硬體平臺的方式來實現,當然也可以通過硬體,但很多情況下前者是更佳的實施方式。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質(如ROM/RAM、磁碟、光碟)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,伺服器,或者網絡設備等)執行本發明各個實施例的方法。
需要說明的是,上述各個模塊是可以通過軟體或硬體來實現的,對於後者,可以通過以下方式實現,但不限於此:上述模塊均位於同一處理器中;或者,上述模塊分別位於多個處理器中。
本發明的實施例還提供了一種存儲介質。可選地,在本實施例中,上述存儲介質可以被設置為存儲用於執行以下步驟的程序代碼:
S8,獲取安裝在卡池中的卡槽上的客戶識別模塊SIM卡在發生熱插拔操作時所生成的中斷信息,其中,卡池包括:多個卡槽,多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽上的SIM卡是否發生熱插拔操作的檢測引腳;
S10,根據獲取的中斷信息確定用於通信的SIM卡。
可選地,在本實施例中,上述存儲介質可以包括但不限於:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、移動硬碟、磁碟或者光碟等各種可以存儲程序代碼的介質。
可選地,在本實施例中,處理器根據存儲介質中已存儲的程序代碼執行:
S12,獲取安裝在卡池中的卡槽上的客戶識別模塊SIM卡在發生熱插拔操作時所生成的中斷信息,其中,卡池包括:多個卡槽,多個卡槽中的每個卡槽都具有用於檢測安裝在該卡槽上的SIM卡是否發生熱插拔操作的檢測引腳;
S14,根據獲取的中斷信息確定用於通信的SIM卡。
可選地,本實施例中的具體示例可以參考上述實施例及可選實施方式中所描述的示例,本實施例在此不再贅述。
顯然,本領域的技術人員應該明白,上述的本發明的各模塊或各步驟可以用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網絡上,可選地,它們可以用計算裝置可執行的程序代碼來實現,從而,可以將它們存儲在存儲裝置中由計算裝置來執行,並且在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟,或者將它們分別製作成各個集成電路模塊,或者將它們中的多個模塊或步驟製作成單個集成電路模塊來實現。這樣,本發明不限制於任何特定的硬體和軟體結合。
以上所述僅為本發明的優選實施例而已,並不用於限制本發明,對於本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。