ÕªÒª: ͨÓÃÎÞÏß·Ö×éÒµÎñ( GPRS) ÊÇÒ»ÖÖ»ùÓÚÈ«ÇòÒƶ¯Í¨ÐÅϵͳ( GSM) µÄÎÞÏß·Ö×é½»»»¼¼Êõ, Ìṩ¶Ëµ½¶ËµÄ¡¢¹ãÓòµÄÎÞÏßIP Á¬½Ó, ¾ßÓÐÓÀÔ¶ÔÚÏßµÈÌص㡣½éÉÜÁË»ùÓÚGPRS ÍøÂçµÄÊý¾ÝÖն˵¥Ôª( DTU) ¡£¸Ãµ¥ÔªÊÇÓÉÒÔARM оƬS3C44B0X ºÍGPRS Ä£¿éG20 ΪºËÐĵÄÓ²¼þºÍÈí¼þ×é³É¡£ÔÚ¸ÅÀ¨¹¤ÒµGPRS ¼à¿Øϵͳ¹¹³ÉµÄ»ù´¡ÉÏ, ½éÉÜÁËGPRS DTU Ó²¼þÉè¼Æ, GPRS DTU Èí¼þÊÇÓɦÌC / OS¢ò²Ù×÷ϵͳ¡¢TCP / IP ÐÒé¡¢µã¶ÔµãÐÒé×é³É¡£¸Ãµ¥ÔªÊ¹Óû§Í¨¹ýGPRS ÍøÂçʵÏÖÓû§É豸ºÍÓû§Êý¾ÝÖÐÐÄÖ®¼äµÄÊý¾Ý´«Êä¡£
ͨÓÃÎÞÏß·Ö×éÒµÎñGPRS( General Packet RadioService ) ÊǵÚ2 ´úÒƶ¯Í¨Ðż¼ÊõÈ«ÇòÒƶ¯Í¨ÐÅϵͳ( GSM) ÂõÏòµÚ3 ´ú( 3G) µÄ¹ý¶É¼¼Êõ, ÊÇÓÉÓ¢¹úBTCellnet ¹«Ë¾ÔçÔÚ1993 ÄêÌá³öµÄ, ÊÇGSM Phase2 +( 1997 Äê) ¹æ·¶ÊµÏÖµÄÄÚÈÝÖ®Ò», ÊÇÒ»ÖÖ»ùÓÚGSM µÄÒƶ¯·Ö×éÊý¾ÝÒµÎñ, ÃæÏòÓû§ÌṩÒƶ¯·Ö×éµÄIP »òÕßX.25 Á¬½Ó¡£GPRS ÔÚÏÖÓеÄGSM ÍøÂç»ù´¡Éϵþ¼ÓÁËÒ»¸öеÄÍøÂç, ͬʱÔÚÍøÂçÉÏÔö¼ÓÓ²¼þÉ豸ºÍÈí¼þÉý¼¶, ÐγÉÁËÒ»¸öеÄÍøÂçÂ߼ʵÌå, Ìṩ¶Ëµ½¶ËµÄ¡¢¹ãÓòµÄÎÞÏßIP Á¬½Ó, Ϊ¹¹½¨µÍ³É±¾µÄÎÞÏß¹ãÓò¹¤Òµ¼à¿ØÍøÂçÌṩÁË¿ÉÄÜ¡£GPRS Êý¾ÝÖն˵¥Ôª( GPRS DTU) ÎÞÐèºǫ́¼ÆËã»úµÄÖ§³Ö, ³ä·ÖÀûÓÃGPRS ÍøÂçµÄ¡°ÓÀÔ¶ÔÚÏß, ½ÓÈëËٶȿì, ²ÉÓÃÊý¾ÝÁ÷Á¿¼Æ·Ñ·½Ê½¡±µÄÌصã, ¾ßÓÐÎ޿ɱÈÄâµÄÐÔ¼Û±ÈÓÅÊÆ, ÌرðÊÊÓÃÓÚµçÁ¦ÏµÍ³×Ô¶¯»¯¡¢¹¤Òµ¼à¿Ø¡¢»·¾³¼à²â¡¢½»Í¨¹ÜÀíµÈÐÐÒµµÄÔ¶³Ì´«ÊäÊý¾ÝÓ¦Óá£
Óû§É豸ͨ¹ýRS -232 ºÍGPRS DTU ÏàÁ¬, ½«Êý¾Ý´«ÈëDTU¡£½øÈëDTUºóµÄÊý¾Ý±»GPRS Ä£¿é·â×°³ÉÊʺÏÓÚÍøÂçͨÐŵÄÊý¾Ý°üºó, ±»·¢ËÍÖÁGPRS ÍøÂç, ÔÙͨ¹ýGPRS ÍøÂç½øÈëInternet ÉÏ´«Êä, ×îºó±»Ö¸¶¨IP µØÖ·µÄÓû§Êý¾ÝÖÐÐĶÁÈ¡¡£¹¤ÒµGPRS ¼à¿ØϵͳµÄ¹¹³ÉÈçͼ1 Ëùʾ¡£
ÔÚ±¾ÏµÍ³ÖÐ, GPRS DTU ²ÉÓõÄÓ²¼þоƬÖ÷ÒªÓÐARM оƬS3C 44 B0X ºÍMOTOROLA µÄGPRS ͨÐÅ.Ä£¿éG 2 0 ¡£S3C 44 B0X ÊÇÓÉSAM SUNG ¹«Ë¾ÍƳöµÄ16 / 32 λRISC ´¦ÀíÆ÷( 66 MHz) , Ëü°üÀ¨ÁËThumb ´úÂëѹËõÆ÷, 1 ¸öƬÉϵÄICE ¶Ïµçµ÷ÊÔÖ§³ÖºÍ1 ¸ö32λµÄÓ²¼þ³Ë·¨Æ÷¡£
±¾Ó¦ÓÃÖÐARM оƬʵÏÖÓëGPRSÄ£¿éµÄÊý¾ÝͨÐÅ( ¿É²ÉÓÃUART ͨÐÅ·½Ê½»òUSB ͨÐÅ·½Ê½) , ¿ØÖÆÊý¾ÝÐźŲɼ¯É豸µÄ¹¤×÷, ½øÐÐָʾµÆ¿ØÖƵȡ£G20 ÊÇȫеÄǶÈëʽGSM Ä£¿é, ²ÉÓÃ×îÏȽøµÄ¼¼ÊõÒÔÂú×ãÊý¾Ý¼°ÓïÒôͨÐÅÊг¡¡£G20 µÄÖ÷ÒªÌØÐÔÓÐ: TCP / IP ÐÒéÕ»¡¢GSM Ƶ¶ÎEGSM900 / 1 800 MHz,GSM850 / 1 900 MHz, GPRS ʱ϶class 8, MO / MT SMS¡¢´«Õ桢ͨ¹ý´®¿ÚµÄSTK ¹¦ÄÜ¡¢RS - 232 / USB ½Ó¿Ú¡¢¿íζȹ¤×÷·¶Î§µÈ¡£G20 µÄÓ²¼þ½á¹¹°üÀ¨Ö÷¿ØÖÆÆ÷,ÓëGPRS ÍøͨÐŵĽÓÊÕÄ£¿éºÍ·¢ËÍÄ£¿é, ´æ´¢Æ÷¼þ,µçÔ´¹ÜÀíºÍÒôƵ¹ÜÀíÄ£¿é, ½Ó¿ÚÄ£¿éµÈ¡£G20 ͨ¹ý70 ¸öÒý½ÅµÄ½Ó¿ÚÄ£¿éʵÏÖÓëÍⲿµç·µÄÊý¾Ý½»»»¡£ÆäÖÐ, Ö÷Òª°üÀ¨: UART ͨÐŽӿڡ¢USB ͨÐŽӿڡ¢SPI ×ÜÏß½Ó¿ÚʵÏÖÓëSIM ¿¨µÄÊý¾Ý½»»»ºÍÒôƵÐźÅÊäÈë/ Êä³ö½Ó¿ÚµÈ¡£GPRS DTU µÄ½á¹¹Í¼Èçͼ2 Ëùʾ¡£
GPRS DTU µÄÈí¼þÊÇÓɲÙ×÷ϵͳ¡¢TCP / IP ÐÒé¡¢µã¶ÔµãÐÒé( PPP ) µÈ×é³É¡£
²Ù×÷ϵͳ²ÉÓæÌC / OS¢ò, ËüÊÇÒ»¸ö¹«¿ªÔ´´úÂëµÄÕ¼ÏÈʽ¶àÈÎÎñµÄ΢ÄÚºËRTOS, ÆäÌصãÊÇ: ¹«¿ªÔ´´úÂë, ´úÂë½á¹¹ÇåÎú¡¢Ã÷ÁË, ×¢ÊÍÏ꾡, ×éÖ¯ÓÐÌõÀí,¿ÉÒÆÖ²ÐÔºÃ, ¿É²Ã¼õ, ¿É¹Ì»¯, ÄÚºËÊôÓÚÇÀռʽ, ×î¶à¿ÉÒÔ¹ÜÀí60 ¸öÈÎÎñ¡£
TCP / IP ͨÐÅÐÒé·Ö±ðÓÉ´«Êä¿ØÖÆͨÐÅÐÒé( TCP ) ¼°ÒòÌØÍøͨÐÅÐÒé( IP ) 2 ²¿·Ö×é³É¡£TCP /IP Ä£ÐÍÈçͼ3 Ëùʾ¡£¹¤Òµ¿ØÖÆ´«ÊäÁìÓò²ã²ÉÓÃTCPÐÒé, ²»ÓÃUDP ÐÒé, Òòʵʱ¼à¿ØϵͳÖд«ÊäÁ¿²»´ó, ¶ø¿É¿¿ÐÔÒªÇó½Ï¸ß¡£TCP ÐÒéΪÃæÏò¶ÔÏóµÄͨÐÅÐÒé, ÆäÖ÷ҪĿµÄÊÇÌṩÊý¾ÝµÄ´«Ê䲢ȷ±£Æä´«ÊäÎÞÎó, ¾ßÓдíÎóÕì²â¡¢Êý¾Ý¸´Ô¼°Êý¾ÝÖØд«Ë͵ȹ¦ÄÜ¡£TCP ÔÚ´«ÊäÊý¾Ý֮ǰ, »áÏÈÔÚÖ÷»ú¼ä( ÀýÈç·þÎñÆ÷¶ËºÍ¿Í»§¶Ë)½¨Á¢Í¨ÐÅÁ´½Ó, ͨ¹ý´ËͨÐÅÁ´½Ó, Êý¾Ý¿ÉÔÚ¼ÆËã»ú¼äÏ໥´«Êä¡£
´ËÉè¼ÆÖвÉÓõÄÊÇLwIP ( Light weight IP) , ËüÊÇÈðÊ¿¼ÆËã»ú¿ÆѧԺAdam Dunkels µÈ¿ª·¢µÄÒ»Ì×ÓÃÓÚǶÈëʽϵͳµÄ¿ª·ÅÔ´´úÂëµÄTCP / IP ÐÒéÕ»¡£LwIP ¾ßÓÐÒÔÏÂÌØÐÔ: Ö§³Ö¶àÍøÂç½Ó¿ÚϵÄIP ת·¢,Ö§³ÖICMP ÐÒé, °üÀ¨ÊµÑéÐÔÀ©Õ¹µÄUDP, ×èÈû¿ØÖÆ¡¢Íù·µÊ±¼ä( RTT) ¹ÀËã¡¢¿ìËÙ»Ö¸´¡¢¿ìËÙת·¢µÄTCP , ÌṩרÃŵÄÄÚ²¿»Øµ÷¹¦ÄÜÓÃÓÚÌá¸ßÓ¦ÓóÌÐòÐÔÄÜ, ¿ÉÑ¡ÔñµÄBerkeleyAPI ½Ó¿ÚµÈ¡£LwIP ¿ÉÒÔÊǵ¥Ïß³ÌÔËÐÐ, ¼´Ö»ÓÐ1 ¸ötcpip Ïß³Ì, ¸ºÔð´¦ÀíËùÓеÄtcp Á¬½Ó, ¸÷ÖÖÍøÂç³ÌÐò¶¼Í¨¹ýtcpip Ïß³ÌÓëÍøÂç½»»¥¡£µ«LwIP Ò²¿ÉÒÔ¶àÏß³ÌÔËÐÐ,ÒÔÌá¸ßЧÂʺͽµµÍ±à³ÌµÄ¸´ÔӶȡ£¿ÉÒÔͨ¹ýÏÂÃæµÄº¯Êý´´½¨ÐÂÏß³Ì:
void sys_thread_new ( void ( *thread ) ( void*arg) ,
void*arg) ;
ÔÚ¦ÌC / OS¢òÖÐ, ûÓÐÏß³Ì( Thread ) µÄ¸ÅÄî, Ö»ÓÐÈÎÎñ( Task ) ¡£ËüÒѾÌṩÁË´´½¨ÐÂÈÎÎñµÄϵͳAPIµ÷ÓÃOSTaskCreate , Òò´ËÖ»Òª°ÑOSTaskCreate ·â×°Ò»ÏÂ, ¾Í¿ÉÒÔʵÏÖsys_thread_new¡£LwIP ÖеÄThread ûÓЦÌC / OS¢òÖÐÓÅÏȼ¶µÄ¸ÅÄî, ʵÏÖʱÐèÒªÓÉÓû§ÊÂÏÈΪLwIP ´´½¨µÄÏ̷߳ÖÅäºÃÓÅÏȼ¶¡£
´´½¨1 ¸öºÍTCP / IP Ïà¹ØµÄнø³ÌµÄ²¿·Ö´úÂë
ÈçÏÂ:
# define LwIP_STK_SIZE 10*1024
# define LwIP_TASK_MAX 5
# define LwIP_START_PRIO 5
OS_STK LwIP_TASK_STK[ LwIP_TASK_MAX]
[ LwIP_STK_SIZE ] ;
u8_t curr_prio_offset ;sys_thread_t ;sys_systhread_new ( void ( *function ) ( void*arg ) ,void*arg, int prio)
PPP Ϊ»ùÓÚµã¶ÔµãÁ¬½ÓµÄ¶àÐÒé×ÔÑ°Ö·Êý¾Ý°üµÄ´«ÊäÌṩÁËÒ»ÖÖ±ê×¼·½·¨¡£PPP ×î³õÉè¼ÆÊÇΪ2¸ö¶ÔµÈ½á¹¹Ö®¼äµÄIP Á÷Á¿ºÍ´«ÊäÌṩһÖÖ·â×°ÐÒé¡£ÔÚTCP / IP ÐÒ鼯ÖÐ, ËüÊÇÒ»ÖÖ¹ØÓÚͬ²½µ÷ÖÆÁ¬½ÓµÄÊý¾ÝÁ´Â·²ãÐÒé( ¿ª·¢Ê½ÏµÍ³»¥Áª²Î¿¼Ä£ÐÍOSIģʽÖеĵÚ2 ²ã) ¡£PPP Ö÷Òª´´½¨µç»°Ïß·¼°×ۺϷþÎñÊý×ÖÍø( ISDN) ²¦ºÅ½ÓÈëÍøÂç·þÎñÌṩÉÌ( ISP)µÄÁ¬½Ó, ¾ßÓжàÖÖÉí·ÝÑéÖ¤·½·¨¡¢Êý¾ÝѹËõºÍ¼ÓÃܼ°Í¨ÖªIP µØÖ·µÈ¹¦ÄÜ¡£ÐèÒª´«ÊäµÄÊý¾Ý°´ÕÕTCP ¸ñʽ·â×°³ÉTCP Êý¾Ý°ü, ¼ÓÉÏIP ±¨Í·ºÍ±¨Î²·â×°³ÉIP Êý¾Ý°ü, ÔÙ°´ÕÕPPP µÄÖ¡¸ñʽ·â×°³ÉPPP Ö¡, ×îºó²ÅÄÜÓÃÓÚ´«Êä¡£DTU ÒªÏëºÍInternet ½¨Á¢Á¬½Ó, Ê×ÏÈÒª¸½×ÅÔÚGPRS ÍøÉÏ, È»ºó·¢Æð·Ö×éÊý¾ÝÐÒé( PDP ) ÉÏÏÂÎļ¤»î¹ý³Ì, ÕâÑù²ÅÄÜÓëGPRS Ö§³Ö½Úµã( GGSN) ½¨Á¢Ò»ÌõÂ߼ͨ·, ´Ó¶øºÍInternet ½¨Á¢Á¬½Ó¡£
ϵͳÉϵçºó, Ê×ÏÈÓ²¼þ³õʼ»¯, ÔÙ¶Ô²Ù×÷ϵͳ³õʼ»¯, È»ºó½øÐÐϵͳÎļþÅäÖÃ, ´´½¨ÈÎÎñ, ²¢¶ÔÍøÂç( TCP / IP , PPP ) ³õʼ»¯, Æô¶¯¶àÈÎÎñµ÷¶È¡£Í¨¹ýPPP·¢ËÍLCP packets ½øÐÐÉ趨ºÍ²âÊÔÊý¾ÝÁ´Â·, ¸úG20Ä£¿éÁ´½Ó; È»ºó½øÐÐÃÜÂëÈÏÖ¤ÐÒé( PAP ) ÈÏÖ¤; ͨ¹ýºó, PPP ·¢ËÍNCP packets Ñ¡ÔñºÍÉ趨1 ¸öÍøÂç²ãÔËÐÐIP ÐÒé, Ò»µ©É趨ºÃÐÒé, GPRS DTU ¾Í¿ÉÒÔ½ÓÈëµ½Internet ¡£DTU ÏòÓû§Êý¾ÝÖÐÐĵÄIP µØÖ··¢ÆðÁ¬½Ó²¢ÇëÇó×¢²á, ¾Í¿É¿ªÊ¼ºÍÓû§Êý¾ÝÖÐÐĽ»»¥¿ØÖÆÖ¸ÁîºÍÊý¾Ý¡£
Ñо¿ºÍÉè¼ÆGPRS DTU µÄÄ¿µÄÊǽ«ÆäÓ¦ÓÃÓÚÎ人Àí¹¤´óѧµÄº¬ÓÍÎÛˮԶ³Ì¼à¿Øϵͳ, ĿǰʵÑé½×¶ÎµÄ²âÊÔЧ¹ûÖ¤Ã÷ÁË´Ë·½°¸µÄ¿ÉÐÐÐÔ¡£»ùÓÚGPRS µÄÔ¶³Ì¼à¿ØϵͳÏà¶ÔÓÚ´«Í³µÄ»ùÓÚÓÐÏßÁ¬½Ó»òGSM ¶ÌÏûÏ¢µÄÔ¶³Ì¼à¿Øϵͳ¾ßÓкܶàÓÅÊÆ, Èç: Á¬½Óʱ¼ä¶Ì¡¢ÊµÊ±ÐÔÇ¿¡¢ÓÀÔ¶ÔÚÏß¡¢ÊշѺÏÀí¡¢¼Û¸ñ±ãÒ˵È, ÏàÐÅGPRS DTU Ò²»áÓкܺõÄÊг¡Ç°¾°¡£
±¾ÎÄÀ´×Ô£º°Ù¶ÈÎÄ¿â×ÊÁÏ¡£ÈçÓаæȨÇëÁªÏµ£º010-82899827-805£¬24СʱÄÚ¼´³·¡£