基于GSM模塊TC35的智能門控安防系統設計

每個AT指令以“AT+”開頭,以回車結尾。在AT指令中還包括以下控制符:結束符(用表示),十六進制為0x0D;發送符(用^Z>表示),十六進制為0x1A。
發送短消息常用Text和PDU(Protocol Data Unit)模式。使用Text模式收發短信的優點是代碼簡單,容易實現;缺點是不能收發中文短信。而PDU模式不僅支持中文短信,也能發送英文短信。PDU模式收發短信可以使用三種模式:7-bit、8-bit和UCS2編碼。7-bit編碼用于發送ASCII字符,8-bit編碼用于發送數據消息,UCS2編碼用于發送Unicode字符(漢字),編碼類型在PDU數據包中指定。下面舉例說明PDU編碼的組成。例如要把“有人非法開門!”七個字符發送到用戶手機13909639342,則PDU數據為:00 01 03 0D 91 683109699343F2 32 08 0E 67094EBA975E6CD55F0095E8FF01。
PDU數據說明如下:
(1)00表示省略短信中心號碼,由SIM卡決定;
(2)01表示文件頭字節;
(3)03表示信息類型;
(4)0D表示被叫號碼長度;
(5)91表示被叫號碼類型;
(6)683109699343F2表示被叫號碼,被叫號碼經過移位處理;
(7)32表示協議標識TP-PID;
(8)08表示數據編碼方案TP-DCS,因為要發送Unicode內碼,所以使用USC2(16bit)編碼;
( 9)0E表示用戶數據長度;
(10)67094EBA975E6CD55F0095E8FF01表示用戶數據“人非法開門!”。
需要注意的幾個問題:
(1)所有AT指令的指令符號、常數、PDU數據包等都是以ASCII編碼形式發送的。
(2)單片機向GSM模塊發送每一條指令后,必須以回車符(0DH)作為該指令的結束,若沒有這個回車符,GSM模塊將不識別這條指令。
(3)GSM模塊向單片機傳送短信時,其PDTU數據包的內容是以十六進制表示的,但并不是直接向單片機傳送十六進制數據,而仍然是把每一位十六進制數據以ASCII編碼發送。這樣,兩個字節的十六進制數就變成4字節的ASCII碼。但PDU數據包中的數據字節長度部分仍然是實際字節長度,而不是變成ASCII碼的字節長度。單片機接收到數據包后,必須將其恢復成十六進制數據。
3.3 單片機與PC機的通信
PC機可以通過單片機讀出EEPROM中存儲的報警信息、用戶手機號碼和撤防的密碼,并可以對后兩項進行修改。
單片機對是否進行與PC機通信的判斷既可以通過硬件實現,也可以通過軟件實現,為了簡化硬件,提高系統可靠性,采用軟件實現狀態的判別。PC機與安防系統連通后,當PC機要向單片機發送操作指令時,PC機就改變串口默認電平狀態,并維持一段時間,單片機檢測到該電平后,就進入與PC機通信的程序。PC機完成操作指令的發送后,串口就恢復為默認電平。單片機接收到操作指令后,就判斷是“讀取”指令,還是“修改”指令,如果不是這兩條指令,就退出。
4、結束語
本設計方案借助于GSM網絡和無線通信技術,實現了系統各個部分之間的通信無線化。無線報警器與主機之間的通信采用高頻無線調制的方式進行;主機與用戶手機之間采用GSM網絡。整個系統之間的通信無需另外布線,這樣既節約了成本,又提高了整個系統通信的可靠程度。整個系統既適合于城鎮家庭使用,也適合于偏遠地區等不便架設通信線路的地方使用,具有很好的應用前景。
評論