询问手机与STK菜单交互的原理

passion07   2008-2-15 12:07 楼主
大家好,请问手机是如何与SIM卡的STK菜单交互的?之前上网搜了一些关于这方面的材料,由于涉及这个行业不久,所以很多资料都下不下来,是否有哪位高手有3GPP TS 11.14和11.11这两个标准,可否共享,本人不甚感激!

回复评论 (71)

这个问题大了

第一步,手机和卡互相不知道对方的信息

第二步,手机读一下卡的3f00/7f10/6fae的内容,如果其内容是02及以上,表明卡支持stk,现在手机知道卡的最基本信息了

第三步,手机给卡发一个terminal profile指令,就是a0100000 xx (xx个数据)如 A0 10 00 00 06 FF FF FF FF FF FF
这样卡就知道手机支持什么功能了,一张标准的stk卡,会检查FFFF...FFFF 那些数据(实际的手机发的肯定不是FF)
如果检查到手机支持stk功能,会以91xx的方式返回,手机不支持stk功能,就返回9000
当然,一张不标准的stk卡,可能根本不检测任何手机设置,直接返回91xx

过程如下

//SELECT
A0 A4 00 00 02 7F 20
9F 17

//SELECT
A0 A4 00 00 02 3F 00
9F 17

//SELECT
A0 A4 00 00 02 7F 20
9F 17

//SELECT
A0 A4 00 00 02 6F AE
9F 0F

//READ BINARY
A0 B0 00 00 01
03
90 00


//TERMINAL PROFILE
A0 10 00 00 06 FF FF FF FF FF FF
91 5E
点赞  2008-2-15 17:30
之后的事情就全是11.14里面了,手机只要检查卡返回91xx,就会fetch出来xx个数据并执行,并将执行结果用terminal response返回给卡,卡根据手机是否执行成功来决定继续执行还是退出STK。如果要退出STK,返回9000就可以了,否则一直反91XX.

举个例子
手机列出卡上的1级菜单


//SELECT
A0 A4 00 00 02 3F 00
9F 17
//A0 A4 00 00 02 是命令头,CLA = A0表示GSM应用,INS = A4 表示SELECT,P1 P2 = 00 00 是参数,P3 = 02 是数据的长度(或返回数据的长度)表示( 2 )
//选择文件,选中文件为3F 00 代表MF
//9F 17 是返回状态,表示---成功,有23 个字节的信息等待GET RESPONSE

//TERMINAL PROFILE
A0 10 00 00 06 FF FF FF FF FF FF
91 5E
//A0 10 00 00 06 是命令头,CLA = A0表示GSM应用,INS = 10 表示TERMINAL PROFILE,P1 P2 = 00 00 是参数,P3 = 06 是数据的长度(或返回数据的长度)表示( 6 )
//91 5E 是返回状态,表示---成功,有94 个字节的信息等待FETCH
未详细分析

//FETCH
A0 12 00 00 5E
D0 5C 81 03 02 25 00 82 02 81 82 85 09 80 77 ED 4F E1 7F A4 53 D1 0F 0A 01 80 65 B0 7F 16 77 ED 4F E1 0F 0A 02 80 5D F2 65 36 77 ED 4F E1 0F 0A 03 80 7E C4 54 58 7B A1 74 06 0F 0A 04 80 58 9E 52 A0 7F A4 7E C4 0F 0A 05 80 7F A4 7E C4 65 39 54 0D 0F 0A 06 80 52 20 96 64 7F A4 7E C4
90 00
//A0 12 00 00 5E 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 5E 是数据的长度(或返回数据的长度)表示( 94 )
//--D0 5C 其中D0是FETCH的Proactive SIM Command tag,5C 表示后面的数据总体长度为92
//----81 03 02 25 00 其中
//------81 是Command detials tag,03 是长度( 3 ),02 是Command number,
//------25 是Command Type表示,SET UP MENU
//------00 表示no selection preference;
//----82 02 81 82 其中
//------82 是Device identities tag,02 是长度( 2 ),
//------81 82 是设备号,表示SIM->ME
//----85 09 80 77 ED 4F E1 7F A4 53 D1 其中
//------85 是Alphabet identifier tag,09 是长度( 9 ),80 (81、82)是UCS2编码方案,
//------77 ED 4F E1 7F A4 53 D1 表示"短信群发"
//----0F 0A 01 80 65 B0 7F 16 77 ED 4F E1 其中
//------0F 是Item Data tag,0A 是长度( 10 ),01 是Item ID,80 是UCS2编码方案,
//------65 B0 7F 16 77 ED 4F E1 表示"新编短信"
//----0F 0A 02 80 5D F2 65 36 77 ED 4F E1 其中
//------0F 是Item Data tag,0A 是长度( 10 ),02 是Item ID,80 是UCS2编码方案,
//------5D F2 65 36 77 ED 4F E1 表示"已收短信"
//----0F 0A 03 80 7E C4 54 58 7B A1 74 06 其中
//------0F 是Item Data tag,0A 是长度( 10 ),03 是Item ID,80 是UCS2编码方案,
//------7E C4 54 58 7B A1 74 06 表示"组员管理"
//----0F 0A 04 80 58 9E 52 A0 7F A4 7E C4 其中
//------0F 是Item Data tag,0A 是长度( 10 ),04 是Item ID,80 是UCS2编码方案,
//------58 9E 52 A0 7F A4 7E C4 表示"增加群组"
//----0F 0A 05 80 7F A4 7E C4 65 39 54 0D 其中
//------0F 是Item Data tag,0A 是长度( 10 ),05 是Item ID,80 是UCS2编码方案,
//------7F A4 7E C4 65 39 54 0D 表示"群组改名"
//----0F 0A 06 80 52 20 96 64 7F A4 7E C4 其中
//------0F 是Item Data tag,0A 是长度( 10 ),06 是Item ID,80 是UCS2编码方案,
//------52 20 96 64 7F A4 7E C4 表示"删除群组"
//90 00 是返回状态,表示---成功

//TERMINAL RESPONSE
A0 14 00 00 0C 81 03 02 25 00 82 02 82 81 83 01 00
90 00
//A0 14 00 00 0C 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0C 是数据的长度(或返回数据的长度)表示( 12 )
//----81 03 02 25 00 其中
//------81 是Command detials tag,03 是长度( 3 ),02 是Command number,
//------25 是Command Type表示,SET UP MENU
//------00 表示no selection preference;
//----82 02 82 81 其中
//------82 是Device identities tag,02 是长度( 2 ),
//------82 81 是设备号,表示ME->SIM
//----83 01 00 其中
//------83 是Result tag,01 是长度( 1 ),
//------00 是返回结果,表示
//--------Results '0X' and '1X' indicate that the command has been performed.
//--------命令执行成功
//90 00 是返回状态,表示---成功

这时手机就出来一个一级菜单,等待用户选择了。
点赞  2008-2-15 17:47
  1. 之后的事情就全是11.14里面了,手机只要检查卡返回91xx,就会fetch出来xx个数据并执行,并将执行结果用terminal response返回给卡,卡根据手机是否执行成功来决定继续执行还是退出STK。如果要退出STK,返回9000就可以了,否则一直反91XX.

  2. 举个例子
  3. 手机列出卡上的1级菜单


  4. //SELECT
  5. A0 A4 00 00 02 3F 00
  6. 9F 17
  7. //A0 A4 00 00 02 是命令头,CLA = A0表示GSM应用,INS = A4 表示SELECT,P1 P2 = 00 00 是参数,P3 = 02 是数据的长度(或返回数据的长度)表示( 2 )
  8. //选择文件,选中文件为3F 00 代表MF
  9. //9F 17 是返回状态,表示---成功,有23 个字节的信息等待GET RESPONSE

  10. //TERMINAL PROFILE
  11. A0 10 00 00 06 FF FF FF FF FF FF
  12. 91 5E
  13. //A0 10 00 00 06 是命令头,CLA = A0表示GSM应用,INS = 10 表示TERMINAL PROFILE,P1 P2 = 00 00 是参数,P3 = 06 是数据的长度(或返回数据的长度)表示( 6 )
  14. //91 5E 是返回状态,表示---成功,有94 个字节的信息等待FETCH
  15. 未详细分析

  16. //FETCH
  17. A0 12 00 00 5E
  18. D0 5C 81 03 02 25 00 82 02 81 82 85 09 80 77 ED 4F E1 7F A4 53 D1 0F 0A 01 80 65 B0 7F 16 77 ED 4F E1 0F 0A 02 80 5D F2 65 36 77 ED 4F E1 0F 0A 03 80 7E C4 54 58 7B A1 74 06 0F 0A 04 80 58 9E 52 A0 7F A4 7E C4 0F 0A 05 80 7F A4 7E C4 65 39 54 0D 0F 0A 06 80 52 20 96 64 7F A4 7E C4
  19. 90 00
  20. //A0 12 00 00 5E 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 5E 是数据的长度(或返回数据的长度)表示( 94 )
  21. //--D0 5C 其中D0是FETCH的Proactive SIM Command tag,5C 表示后面的数据总体长度为92
  22. //----81 03 02 25 00 其中
  23. //------81 是Command detials tag,03 是长度( 3 ),02 是Command number,
  24. //------25 是Command Type表示,SET UP MENU
  25. //------00 表示no selection preference;
  26. //----82 02 81 82 其中
  27. //------82 是Device identities tag,02 是长度( 2 ),
  28. //------81 82 是设备号,表示SIM->ME
  29. //----85 09 80 77 ED 4F E1 7F A4 53 D1 其中
  30. //------85 是Alphabet identifier tag,09 是长度( 9 ),80 (81、82)是UCS2编码方案,
  31. //------77 ED 4F E1 7F A4 53 D1 表示"短信群发"
  32. //----0F 0A 01 80 65 B0 7F 16 77 ED 4F E1 其中
  33. //------0F 是Item Data tag,0A 是长度( 10 ),01 是Item ID,80 是UCS2编码方案,
  34. //------65 B0 7F 16 77 ED 4F E1 表示"新编短信"
  35. //----0F 0A 02 80 5D F2 65 36 77 ED 4F E1 其中
  36. //------0F 是Item Data tag,0A 是长度( 10 ),02 是Item ID,80 是UCS2编码方案,
  37. //------5D F2 65 36 77 ED 4F E1 表示"已收短信"
  38. //----0F 0A 03 80 7E C4 54 58 7B A1 74 06 其中
  39. //------0F 是Item Data tag,0A 是长度( 10 ),03 是Item ID,80 是UCS2编码方案,
  40. //------7E C4 54 58 7B A1 74 06 表示"组员管理"
  41. //----0F 0A 04 80 58 9E 52 A0 7F A4 7E C4 其中
  42. //------0F 是Item Data tag,0A 是长度( 10 ),04 是Item ID,80 是UCS2编码方案,
  43. //------58 9E 52 A0 7F A4 7E C4 表示"增加群组"
  44. //----0F 0A 05 80 7F A4 7E C4 65 39 54 0D 其中
  45. //------0F 是Item Data tag,0A 是长度( 10 ),05 是Item ID,80 是UCS2编码方案,
  46. //------7F A4 7E C4 65 39 54 0D 表示"群组改名"
  47. //----0F 0A 06 80 52 20 96 64 7F A4 7E C4 其中
  48. //------0F 是Item Data tag,0A 是长度( 10 ),06 是Item ID,80 是UCS2编码方案,
  49. //------52 20 96 64 7F A4 7E C4 表示"删除群组"
  50. //90 00 是返回状态,表示---成功

  51. //TERMINAL RESPONSE
  52. A0 14 00 00 0C 81 03 02 25 00 82 02 82 81 83 01 00
  53. 90 00
  54. //A0 14 00 00 0C 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0C 是数据的长度(或返回数据的长度)表示( 12 )
  55. //----81 03 02 25 00 其中
  56. //------81 是Command detials tag,03 是长度( 3 ),02 是Command number,
  57. //------25 是Command Type表示,SET UP MENU
  58. //------00 表示no selection preference;
  59. //----82 02 82 81 其中
  60. //------82 是Device identities tag,02 是长度( 2 ),
  61. //------82 81 是设备号,表示ME->SIM
  62. //----83 01 00 其中
  63. //------83 是Result tag,01 是长度( 1 ),
  64. //------00 是返回结果,表示
  65. //--------Results '0X' and '1X' indicate that the command has been performed.
  66. //--------命令执行成功
  67. //90 00 是返回状态,表示---成功

  68. 这时手机就出来一个一级菜单,供用户选择了,选择一级菜单用envelope的menu selection指令,其他级菜单用select item指令。
点赞  2008-2-15 17:49
选择sim卡中已有短信

  1. //ENVELOPE
  2. A0 C2 00 00 09 D3 07 82 02 01 81 90 01 02
  3. 91 8C
  4. //A0 C2 00 00 09 是命令头,CLA = A0表示GSM应用,INS = C2 表示ENVELOPE,P1 P2 = 00 00 是参数,P3 = 09 是数据的长度(或返回数据的长度)表示( 9 )

  5. //--D3 07 其中D3 是ENVELOPE的Menu Selection tag,07 表示后面的数据总体长度为7
  6. //----82 02 01 81 其中
  7. //------82 是Device identities tag,02 是长度( 2 ),
  8. //------01 81 是设备号,表示Keypad->SIM
  9. //----90 01 02 其中
  10. //------90 是Item identifier tag,01 是长度( 1 ),
  11. //------02 是表示用户选中的item的ID,在"01"与"FF"之间有效,"00"表示无效
  12. //91 8C 是返回状态,表示---成功,有140 个字节的信息等待FETCH

  13. //FETCH
  14. A0 12 00 00 8C
  15. D0 81 89 81 03 03 24 00 82 02 81 82 8F 0E 01 80 00 28 00 31 00 2F 00 32 00 29 5C 0A 8F 0E 02 80 00 28 00 32 00 2F 00 32 00 29 8D 85 8F 0E 03 80 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 8F 0E 04 80 60 A8 76 84 4E 34 65 F6 8E AB 4E FD 8F 0E 05 80 8F FD 6C 42 6D 77 59 16 95 7F 67 1F 8F 0E 06 80 60 A8 59 7D 00 21 60 A8 76 84 8D 44 8F 0E 07 80 60 A8 76 84 76 7B 5F 55 5B C6 78 01 8F 0E 08 80 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C
  16. 90 00
  17. //A0 12 00 00 8C 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 8C 是数据的长度(或返回数据的长度)表示( 140 )
  18. //--D0 81 89 其中D0是FETCH的Proactive SIM Command tag,81 表示后面的数据总体长度超过128个89 表示后面的数据总体长度为137
  19. //----81 03 03 24 00 其中
  20. //------81 是Command detials tag,03 是长度( 3 ),03 是Command number,
  21. //------24 是Command Type表示,SELECT ITEM
  22. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:不由第2位决定表达方式,第2位是0:如果第1位是1表示选择数据值,第3位是0:没有优先选择,第8位是0:帮助不可用
  23. //----82 02 81 82 其中
  24. //------82 是Device identities tag,02 是长度( 2 ),
  25. //------81 82 是设备号,表示SIM->ME
  26. //----8F 0E 01 80 00 28 00 31 00 2F 00 32 00 29 5C 0A 其中
  27. //------8F 是Item Data tag,0E 是长度( 14 ),01 是Item ID,80 是UCS2编码方案,
  28. //------00 28 00 31 00 2F 00 32 00 29 5C 0A 表示"(1/2)尊"
  29. //----8F 0E 02 80 00 28 00 32 00 2F 00 32 00 29 8D 85 其中
  30. //------8F 是Item Data tag,0E 是长度( 14 ),02 是Item ID,80 是UCS2编码方案,
  31. //------00 28 00 32 00 2F 00 32 00 29 8D 85 表示"(2/2)超"
  32. //----8F 0E 03 80 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 其中
  33. //------8F 是Item Data tag,0E 是长度( 14 ),03 是Item ID,80 是UCS2编码方案,
  34. //------5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 表示"尊敬的客户,"
  35. //----8F 0E 04 80 60 A8 76 84 4E 34 65 F6 8E AB 4E FD 其中
  36. //------8F 是Item Data tag,0E 是长度( 14 ),04 是Item ID,80 是UCS2编码方案,
  37. //------60 A8 76 84 4E 34 65 F6 8E AB 4E FD 表示"您的临时身份"
  38. //----8F 0E 05 80 8F FD 6C 42 6D 77 59 16 95 7F 67 1F 其中
  39. //------8F 是Item Data tag,0E 是长度( 14 ),05 是Item ID,80 是UCS2编码方案,
  40. //------8F FD 6C 42 6D 77 59 16 95 7F 67 1F 表示"追求海外长期"
  41. //----8F 0E 06 80 60 A8 59 7D 00 21 60 A8 76 84 8D 44 其中
  42. //------8F 是Item Data tag,0E 是长度( 14 ),06 是Item ID,80 是UCS2编码方案,
  43. //------60 A8 59 7D 00 21 60 A8 76 84 8D 44 表示"您好!您的资"
  44. //----8F 0E 07 80 60 A8 76 84 76 7B 5F 55 5B C6 78 01 其中
  45. //------8F 是Item Data tag,0E 是长度( 14 ),07 是Item ID,80 是UCS2编码方案,
  46. //------60 A8 76 84 76 7B 5F 55 5B C6 78 01 表示"您的登录密码"
  47. //----8F 0E 08 80 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 其中
  48. //------8F 是Item Data tag,0E 是长度( 14 ),08 是Item ID,80 是UCS2编码方案,
  49. //------5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 表示"尊敬的客户,"
  50. //90 00 是返回状态,表示---成功

  51. //TERMINAL RESPONSE
  52. A0 14 00 00 0F 81 03 03 24 00 82 02 82 81 83 01 00 90 01 01
  53. 91 96
  54. //A0 14 00 00 0F 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0F 是数据的长度(或返回数据的长度)表示( 15 )
  55. //----81 03 03 24 00 其中
  56. //------81 是Command detials tag,03 是长度( 3 ),03 是Command number,
  57. //------24 是Command Type表示,SELECT ITEM
  58. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:不由第2位决定表达方式,第2位是0:如果第1位是1表示选择数据值,第3位是0:没有优先选择,第8位是0:帮助不可用
  59. //----82 02 82 81 其中
  60. //------82 是Device identities tag,02 是长度( 2 ),
  61. //------82 81 是设备号,表示ME->SIM
  62. //----83 01 00 其中
  63. //------83 是Result tag,01 是长度( 1 ),
  64. //------00 是返回结果,表示
  65. //--------Results '0X' and '1X' indicate that the command has been performed.
  66. //--------命令执行成功
  67. //----90 01 01 其中
  68. //------90 是Item identifier tag,01 是长度( 1 ),
  69. //------01 是表示用户选中的item的ID,在"01"与"FF"之间有效,"00"表示无效
  70. //91 96 是返回状态,表示---成功,有150 个字节的信息等待FETCH
点赞  2008-2-15 17:50
查看短信内容并按确定


//FETCH
A0 12 00 00 96
D0 81 93 81 03 04 21 80 82 02 81 02 8D 81 87 08 00 28 00 31 00 2F 00 32 00 29 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 60 A8 5D F2 5F 00 90 1A 75 45 54 2C 65 E0 5F E7 8B A1 52 12 FF 0C 8B E5 4E 1A 52 A1 4E 8E 4E 0B 67 08 75 1F 65 48 30 02 67 08 4F 7F 75 28 8D 39 00 31 00 30 51 43 FF 0C 53 05 54 2B 67 2C 57 30 88 AB 53 EB 51 4D 8D 39 30 01 67 65 75 35 66 3E 79 3A 30 01 5F 69 94 C3 30 01 00 32 00 30 52 06 94 9F 67 2C 57 30 4E 3B 53 EB 65 F6 95 7F FF 0C
90 00
//A0 12 00 00 96 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 96 是数据的长度(或返回数据的长度)表示( 150 )
//--D0 81 93 其中D0是FETCH的Proactive SIM Command tag,81 表示后面的数据总体长度超过128个93 表示后面的数据总体长度为147
//----81 03 04 21 80 其中
//------81 是Command detials tag,03 是长度( 3 ),04 是Command number,
//------21 是Command Type表示,DISPLAY TEXT
//------80 表示( 二进制  1 0 0 0 0 0 0 0  )第1位是0:普通优先级,第8位是1:等待用户手工清除,
//----82 02 81 02 其中
//------82 是Device identities tag,02 是长度( 2 ),
//------81 02 是设备号,表示SIM->Display
//----8D 81 87 08 00 28 00 31 00 2F 00 32 00 29 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 60 A8 5D F2 5F 00 90 1A 75 45 54 2C 65 E0 5F E7 8B A1 52 12 FF 0C 8B E5 4E 1A 52 A1 4E 8E 4E 0B 67 08 75 1F 65 48 30 02 67 08 4F 7F 75 28 8D 39 00 31 00 30 51 43 FF 0C 53 05 54 2B 67 2C 57 30 88 AB 53 EB 51 4D 8D 39 30 01 67 65 75 35 66 3E 79 3A 30 01 5F 69 94 C3 30 01 00 32 00 30 52 06 94 9F 67 2C 57 30 4E 3B 53 EB 65 F6 95 7F FF 0C 其中
//------8D 是Text String tag,81 表示后面的长度超过128了,87 是长度( 135 ),
//------08 是Data coding scheme部分,表示Unicode字符,
//------00 28 00 31 00 2F 00 32 00 29 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 60 A8 5D F2 5F 00 90 1A 75 45 54 2C 65 E0 5F E7 8B A1 52 12 FF 0C 8B E5 4E 1A 52 A1 4E 8E 4E 0B 67 08 75 1F 65 48 30 02 67 08 4F 7F 75 28 8D 39 00 31 00 30 51 43 FF 0C 53 05 54 2B 67 2C 57 30 88 AB 53 EB 51 4D 8D 39 30 01 67 65 75 35 66 3E 79 3A 30 01 5F 69 94 C3 30 01 00 32 00 30 52 06 94 9F 67 2C 57 30 4E 3B 53 EB 65 F6 95 7F FF 0C 表示"(1/2)尊敬的客户,您已开通畅听无忧计划,该业务于下月生效。月使用费10元,包含本地被叫免费、来电显示、彩铃、20分钟本地主叫时长,"
//90 00 是返回状态,表示---成功

//TERMINAL RESPONSE
A0 14 00 00 0C 81 03 04 21 80 82 02 82 81 83 01 00
91 29
//A0 14 00 00 0C 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0C 是数据的长度(或返回数据的长度)表示( 12 )
//----81 03 04 21 80 其中
//------81 是Command detials tag,03 是长度( 3 ),04 是Command number,
//------21 是Command Type表示,DISPLAY TEXT
//------80 表示( 二进制  1 0 0 0 0 0 0 0  )第1位是0:普通优先级,第8位是1:等待用户手工清除,
//----82 02 82 81 其中
//------82 是Device identities tag,02 是长度( 2 ),
//------82 81 是设备号,表示ME->SIM
//----83 01 00 其中
//------83 是Result tag,01 是长度( 1 ),
//------00 是返回结果,表示
//--------Results '0X' and '1X' indicate that the command has been performed.
//--------命令执行成功
//91 29 是返回状态,表示---成功,有41 个字节的信息等待FETCH

点赞  2008-2-15 17:52

7楼 xss 

查看短信内容并按确定

  1. //FETCH
  2. A0 12 00 00 96
  3. D0 81 93 81 03 04 21 80 82 02 81 02 8D 81 87 08 00 28 00 31 00 2F 00 32 00 29 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 60 A8 5D F2 5F 00 90 1A 75 45 54 2C 65 E0 5F E7 8B A1 52 12 FF 0C 8B E5 4E 1A 52 A1 4E 8E 4E 0B 67 08 75 1F 65 48 30 02 67 08 4F 7F 75 28 8D 39 00 31 00 30 51 43 FF 0C 53 05 54 2B 67 2C 57 30 88 AB 53 EB 51 4D 8D 39 30 01 67 65 75 35 66 3E 79 3A 30 01 5F 69 94 C3 30 01 00 32 00 30 52 06 94 9F 67 2C 57 30 4E 3B 53 EB 65 F6 95 7F FF 0C
  4. 90 00
  5. //A0 12 00 00 96 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 96 是数据的长度(或返回数据的长度)表示( 150 )
  6. //--D0 81 93 其中D0是FETCH的Proactive SIM Command tag,81 表示后面的数据总体长度超过128个93 表示后面的数据总体长度为147
  7. //----81 03 04 21 80 其中
  8. //------81 是Command detials tag,03 是长度( 3 ),04 是Command number,
  9. //------21 是Command Type表示,DISPLAY TEXT
  10. //------80 表示( 二进制  1 0 0 0 0 0 0 0  )第1位是0:普通优先级,第8位是1:等待用户手工清除,
  11. //----82 02 81 02 其中
  12. //------82 是Device identities tag,02 是长度( 2 ),
  13. //------81 02 是设备号,表示SIM->Display
  14. //----8D 81 87 08 00 28 00 31 00 2F 00 32 00 29 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 60 A8 5D F2 5F 00 90 1A 75 45 54 2C 65 E0 5F E7 8B A1 52 12 FF 0C 8B E5 4E 1A 52 A1 4E 8E 4E 0B 67 08 75 1F 65 48 30 02 67 08 4F 7F 75 28 8D 39 00 31 00 30 51 43 FF 0C 53 05 54 2B 67 2C 57 30 88 AB 53 EB 51 4D 8D 39 30 01 67 65 75 35 66 3E 79 3A 30 01 5F 69 94 C3 30 01 00 32 00 30 52 06 94 9F 67 2C 57 30 4E 3B 53 EB 65 F6 95 7F FF 0C 其中
  15. //------8D 是Text String tag,81 表示后面的长度超过128了,87 是长度( 135 ),
  16. //------08 是Data coding scheme部分,表示Unicode字符,
  17. //------00 28 00 31 00 2F 00 32 00 29 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 60 A8 5D F2 5F 00 90 1A 75 45 54 2C 65 E0 5F E7 8B A1 52 12 FF 0C 8B E5 4E 1A 52 A1 4E 8E 4E 0B 67 08 75 1F 65 48 30 02 67 08 4F 7F 75 28 8D 39 00 31 00 30 51 43 FF 0C 53 05 54 2B 67 2C 57 30 88 AB 53 EB 51 4D 8D 39 30 01 67 65 75 35 66 3E 79 3A 30 01 5F 69 94 C3 30 01 00 32 00 30 52 06 94 9F 67 2C 57 30 4E 3B 53 EB 65 F6 95 7F FF 0C 表示"(1/2)尊敬的客户,您已开通畅听无忧计划,该业务于下月生效。月使用费10元,包含本地被叫免费、来电显示、彩铃、20分钟本地主叫时长,"
  18. //90 00 是返回状态,表示---成功

  19. //TERMINAL RESPONSE
  20. A0 14 00 00 0C 81 03 04 21 80 82 02 82 81 83 01 00
  21. 91 29
  22. //A0 14 00 00 0C 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0C 是数据的长度(或返回数据的长度)表示( 12 )
  23. //----81 03 04 21 80 其中
  24. //------81 是Command detials tag,03 是长度( 3 ),04 是Command number,
  25. //------21 是Command Type表示,DISPLAY TEXT
  26. //------80 表示( 二进制  1 0 0 0 0 0 0 0  )第1位是0:普通优先级,第8位是1:等待用户手工清除,
  27. //----82 02 82 81 其中
  28. //------82 是Device identities tag,02 是长度( 2 ),
  29. //------82 81 是设备号,表示ME->SIM
  30. //----83 01 00 其中
  31. //------83 是Result tag,01 是长度( 1 ),
  32. //------00 是返回结果,表示
  33. //--------Results '0X' and '1X' indicate that the command has been performed.
  34. //--------命令执行成功
  35. //91 29 是返回状态,表示---成功,有41 个字节的信息等待FETCH
点赞  2008-2-15 17:57
选择接收者

  1. //FETCH
  2. A0 12 00 00 29
  3. D0 27 81 03 05 24 00 82 02 81 82 8F 0C 01 80 90 09 62 E9 63 A5 65 36 80 05 8F 0E 02 80 7E E7 7E ED 90 09 62 E9 77 ED 4F E1
  4. 90 00
  5. //A0 12 00 00 29 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 29 是数据的长度(或返回数据的长度)表示( 41 )
  6. //--D0 27 其中D0是FETCH的Proactive SIM Command tag,27 表示后面的数据总体长度为39
  7. //----81 03 05 24 00 其中
  8. //------81 是Command detials tag,03 是长度( 3 ),05 是Command number,
  9. //------24 是Command Type表示,SELECT ITEM
  10. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:不由第2位决定表达方式,第2位是0:如果第1位是1表示选择数据值,第3位是0:没有优先选择,第8位是0:帮助不可用
  11. //----82 02 81 82 其中
  12. //------82 是Device identities tag,02 是长度( 2 ),
  13. //------81 82 是设备号,表示SIM->ME
  14. //----8F 0C 01 80 90 09 62 E9 63 A5 65 36 80 05 其中
  15. //------8F 是Item Data tag,0C 是长度( 12 ),01 是Item ID,80 是UCS2编码方案,
  16. //------90 09 62 E9 63 A5 65 36 80 05 表示"选择接收者"
  17. //----8F 0E 02 80 7E E7 7E ED 90 09 62 E9 77 ED 4F E1 其中
  18. //------8F 是Item Data tag,0E 是长度( 14 ),02 是Item ID,80 是UCS2编码方案,
  19. //------7E E7 7E ED 90 09 62 E9 77 ED 4F E1 表示"继续选择短信"
  20. //90 00 是返回状态,表示---成功

  21. //TERMINAL RESPONSE
  22. A0 14 00 00 0F 81 03 05 24 00 82 02 82 81 83 01 00 90 01 01
  23. 91 2F
  24. //A0 14 00 00 0F 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0F 是数据的长度(或返回数据的长度)表示( 15 )
  25. //----81 03 05 24 00 其中
  26. //------81 是Command detials tag,03 是长度( 3 ),05 是Command number,
  27. //------24 是Command Type表示,SELECT ITEM
  28. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:不由第2位决定表达方式,第2位是0:如果第1位是1表示选择数据值,第3位是0:没有优先选择,第8位是0:帮助不可用
  29. //----82 02 82 81 其中
  30. //------82 是Device identities tag,02 是长度( 2 ),
  31. //------82 81 是设备号,表示ME->SIM
  32. //----83 01 00 其中
  33. //------83 是Result tag,01 是长度( 1 ),
  34. //------00 是返回结果,表示
  35. //--------Results '0X' and '1X' indicate that the command has been performed.
  36. //--------命令执行成功
  37. //----90 01 01 其中
  38. //------90 是Item identifier tag,01 是长度( 1 ),
  39. //------01 是表示用户选中的item的ID,在"01"与"FF"之间有效,"00"表示无效
  40. //91 2F 是返回状态,表示---成功,有47 个字节的信息等待FETCH


选择输入号码

  1. //FETCH
  2. A0 12 00 00 2F
  3. D0 2D 81 03 06 24 00 82 02 81 82 8F 0A 01 80 90 09 62 E9 7F A4 7E C4 8F 0A 02 80 90 09 62 E9 53 F7 78 01 8F 0A 03 80 8F 93 51 65 53 F7 78 01
  4. 90 00
  5. //A0 12 00 00 2F 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 2F 是数据的长度(或返回数据的长度)表示( 47 )
  6. //--D0 2D 其中D0是FETCH的Proactive SIM Command tag,2D 表示后面的数据总体长度为45
  7. //----81 03 06 24 00 其中
  8. //------81 是Command detials tag,03 是长度( 3 ),06 是Command number,
  9. //------24 是Command Type表示,SELECT ITEM
  10. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:不由第2位决定表达方式,第2位是0:如果第1位是1表示选择数据值,第3位是0:没有优先选择,第8位是0:帮助不可用
  11. //----82 02 81 82 其中
  12. //------82 是Device identities tag,02 是长度( 2 ),
  13. //------81 82 是设备号,表示SIM->ME
  14. //----8F 0A 01 80 90 09 62 E9 7F A4 7E C4 其中
  15. //------8F 是Item Data tag,0A 是长度( 10 ),01 是Item ID,80 是UCS2编码方案,
  16. //------90 09 62 E9 7F A4 7E C4 表示"选择群组"
  17. //----8F 0A 02 80 90 09 62 E9 53 F7 78 01 其中
  18. //------8F 是Item Data tag,0A 是长度( 10 ),02 是Item ID,80 是UCS2编码方案,
  19. //------90 09 62 E9 53 F7 78 01 表示"选择号码"
  20. //----8F 0A 03 80 8F 93 51 65 53 F7 78 01 其中
  21. //------8F 是Item Data tag,0A 是长度( 10 ),03 是Item ID,80 是UCS2编码方案,
  22. //------8F 93 51 65 53 F7 78 01 表示"输入号码"
  23. //90 00 是返回状态,表示---成功

  24. //TERMINAL RESPONSE
  25. A0 14 00 00 0F 81 03 06 24 00 82 02 82 81 83 01 00 90 01 03
  26. 91 1C
  27. //A0 14 00 00 0F 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0F 是数据的长度(或返回数据的长度)表示( 15 )
  28. //----81 03 06 24 00 其中
  29. //------81 是Command detials tag,03 是长度( 3 ),06 是Command number,
  30. //------24 是Command Type表示,SELECT ITEM
  31. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:不由第2位决定表达方式,第2位是0:如果第1位是1表示选择数据值,第3位是0:没有优先选择,第8位是0:帮助不可用
  32. //----82 02 82 81 其中
  33. //------82 是Device identities tag,02 是长度( 2 ),
  34. //------82 81 是设备号,表示ME->SIM
  35. //----83 01 00 其中
  36. //------83 是Result tag,01 是长度( 1 ),
  37. //------00 是返回结果,表示
  38. //--------Results '0X' and '1X' indicate that the command has been performed.
  39. //--------命令执行成功
  40. //----90 01 03 其中
  41. //------90 是Item identifier tag,01 是长度( 1 ),
  42. //------03 是表示用户选中的item的ID,在"01"与"FF"之间有效,"00"表示无效
  43. //91 1C 是返回状态,表示---成功,有28 个字节的信息等待FETCH
点赞  2008-2-15 17:59
输入号码

  1. //FETCH
  2. A0 12 00 00 1C
  3. D0 1A 81 03 07 23 00 82 02 81 82 8D 0B 08 8F 93 51 65 53 F7 78 01 FF 1A 91 02 0B 0E
  4. 90 00
  5. //A0 12 00 00 1C 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 1C 是数据的长度(或返回数据的长度)表示( 28 )
  6. //--D0 1A 其中D0是FETCH的Proactive SIM Command tag,1A 表示后面的数据总体长度为26
  7. //----81 03 07 23 00 其中
  8. //------81 是Command detials tag,03 是长度( 3 ),07 是Command number,
  9. //------23 是Command Type表示,GET INPUT
  10. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:只接受0-9、*、#、+,,第2位是0:SMS默认alphabet,,第3位是0:用户输入被ME回显,,第4位是0:用户输入不被组合,,第8位是0:帮助不可用,
  11. //----82 02 81 82 其中
  12. //------82 是Device identities tag,02 是长度( 2 ),
  13. //------81 82 是设备号,表示SIM->ME
  14. //----8D 0B 08 8F 93 51 65 53 F7 78 01 FF 1A 其中
  15. //------8D 是Text String tag,0B 是长度( 11 ),
  16. //------08 是Data coding scheme部分,表示Unicode字符,
  17. //------8F 93 51 65 53 F7 78 01 FF 1A 表示"输入号码:"
  18. //----91 02 0B 0E 其中
  19. //------91 是Response length tag,02 是长度( 2 ),
  20. //------0B 是要求最少输入字符的长度11
  21. //------0E 允许最多输入字符的长度14
  22. //90 00 是返回状态,表示---成功

  23. //TERMINAL RESPONSE
  24. A0 14 00 00 1A 81 03 07 23 00 82 02 82 81 83 01 00 8D 0C 04 31 32 32 34 35 35 35 35 35 35 35
  25. 91 35
  26. //A0 14 00 00 1A 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 1A 是数据的长度(或返回数据的长度)表示( 26 )
  27. //----81 03 07 23 00 其中
  28. //------81 是Command detials tag,03 是长度( 3 ),07 是Command number,
  29. //------23 是Command Type表示,GET INPUT
  30. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:只接受0-9、*、#、+,,第2位是0:SMS默认alphabet,,第3位是0:用户输入被ME回显,,第4位是0:用户输入不被组合,,第8位是0:帮助不可用,
  31. //----82 02 82 81 其中
  32. //------82 是Device identities tag,02 是长度( 2 ),
  33. //------82 81 是设备号,表示ME->SIM
  34. //----83 01 00 其中
  35. //------83 是Result tag,01 是长度( 1 ),
  36. //------00 是返回结果,表示
  37. //--------Results '0X' and '1X' indicate that the command has been performed.
  38. //--------命令执行成功
  39. //----8D 0C 04 31 32 32 34 35 35 35 35 35 35 35 其中
  40. //------8D 是Text String tag,0C 是长度( 12 ),
  41. //------04 是Data coding scheme部分,表示英文字母和数字等,
  42. //------31 32 32 34 35 35 35 35 35 35 35 表示"12245555555"
  43. //91 35 是返回状态,表示---成功,有53 个字节的信息等待FETCH


选择发送短信

  1. //FETCH
  2. A0 12 00 00 35
  3. D0 33 81 03 08 24 00 82 02 81 82 8F 0A 01 80 53 D1 90 01 77 ED 4F E1 8F 0A 02 80 7E E7 7E ED 6D FB 52 A0 8F 10 03 80 67 E5 77 0B 63 A5 65 36 80 05 52 17 88 68
  4. 90 00
  5. //A0 12 00 00 35 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 35 是数据的长度(或返回数据的长度)表示( 53 )
  6. //--D0 33 其中D0是FETCH的Proactive SIM Command tag,33 表示后面的数据总体长度为51
  7. //----81 03 08 24 00 其中
  8. //------81 是Command detials tag,03 是长度( 3 ),08 是Command number,
  9. //------24 是Command Type表示,SELECT ITEM
  10. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:不由第2位决定表达方式,第2位是0:如果第1位是1表示选择数据值,第3位是0:没有优先选择,第8位是0:帮助不可用
  11. //----82 02 81 82 其中
  12. //------82 是Device identities tag,02 是长度( 2 ),
  13. //------81 82 是设备号,表示SIM->ME
  14. //----8F 0A 01 80 53 D1 90 01 77 ED 4F E1 其中
  15. //------8F 是Item Data tag,0A 是长度( 10 ),01 是Item ID,80 是UCS2编码方案,
  16. //------53 D1 90 01 77 ED 4F E1 表示"发送短信"
  17. //----8F 0A 02 80 7E E7 7E ED 6D FB 52 A0 其中
  18. //------8F 是Item Data tag,0A 是长度( 10 ),02 是Item ID,80 是UCS2编码方案,
  19. //------7E E7 7E ED 6D FB 52 A0 表示"继续添加"
  20. //----8F 10 03 80 67 E5 77 0B 63 A5 65 36 80 05 52 17 88 68 其中
  21. //------8F 是Item Data tag,10 是长度( 16 ),03 是Item ID,80 是UCS2编码方案,
  22. //------67 E5 77 0B 63 A5 65 36 80 05 52 17 88 68 表示"查看接收者列表"
  23. //90 00 是返回状态,表示---成功

  24. //TERMINAL RESPONSE
  25. A0 14 00 00 0F 81 03 08 24 00 82 02 82 81 83 01 00 90 01 01
  26. 91 16
  27. //A0 14 00 00 0F 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0F 是数据的长度(或返回数据的长度)表示( 15 )
  28. //----81 03 08 24 00 其中
  29. //------81 是Command detials tag,03 是长度( 3 ),08 是Command number,
  30. //------24 是Command Type表示,SELECT ITEM
  31. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:不由第2位决定表达方式,第2位是0:如果第1位是1表示选择数据值,第3位是0:没有优先选择,第8位是0:帮助不可用
  32. //----82 02 82 81 其中
  33. //------82 是Device identities tag,02 是长度( 2 ),
  34. //------82 81 是设备号,表示ME->SIM
  35. //----83 01 00 其中
  36. //------83 是Result tag,01 是长度( 1 ),
  37. //------00 是返回结果,表示
  38. //--------Results '0X' and '1X' indicate that the command has been performed.
  39. //--------命令执行成功
  40. //----90 01 01 其中
  41. //------90 是Item identifier tag,01 是长度( 1 ),
  42. //------01 是表示用户选中的item的ID,在"01"与"FF"之间有效,"00"表示无效
  43. //91 16 是返回状态,表示---成功,有22 个字节的信息等待FETCH
点赞  2008-2-15 18:01
发送短信

  1. //FETCH
  2. A0 12 00 00 BB
  3. D0 81 B8 81 03 13 13 00 82 02 81 83 85 0D 80 53 D1 90 01 7E D9 FF 1A 73 8B 98 DE 86 08 91 68 31 08 10 00 05 F0 8B 81 93 01 00 0B 81 31 61 81 26 19 F4 00 08 86 00 28 00 31 00 2F 00 32 00 29 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 60 A8 5D F2 5F 00 90 1A 75 45 54 2C 65 E0 5F E7 8B A1 52 12 FF 0C 8B E5 4E 1A 52 A1 4E 8E 4E 0B 67 08 75 1F 65 48 30 02 67 08 4F 7F 75 28 8D 39 00 31 00 30 51 43 FF 0C 53 05 54 2B 67 2C 57 30 88 AB 53 EB 51 4D 8D 39 30 01 67 65 75 35 66 3E 79 3A 30 01 5F 69 94 C3 30 01 00 32 00 30 52 06 94 9F 67 2C 57 30 4E 3B 53 EB 65 F6 95 7F FF 0C
  4. 90 00
  5. //A0 12 00 00 BB 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = BB 是数据的长度(或返回数据的长度)表示( 187 )
  6. //--D0 81 B8 其中D0是FETCH的Proactive SIM Command tag,81 表示后面的数据总体长度超过128个B8 表示后面的数据总体长度为184
  7. //----81 03 13 13 00 其中
  8. //------81 是Command detials tag,03 是长度( 3 ),13 是Command number,
  9. //------13 是Command Type表示,SEND SHORT MESSAGE
  10. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:非组合格式,
  11. //----82 02 81 83 其中
  12. //------82 是Device identities tag,02 是长度( 2 ),
  13. //------81 83 是设备号,表示SIM->Network
  14. //----85 0D 80 53 D1 90 01 7E D9 FF 1A 73 8B 98 DE 其中
  15. //------85 是Alphabet identifier tag,0D 是长度( 13 ),80 (81、82)是UCS2编码方案,
  16. //------53 D1 90 01 7E D9 FF 1A 73 8B 98 DE 表示"发送给:王飞"
  17. //----86 08 91 68 31 08 10 00 05 F0 其中
  18. //------86 是Address tag,08 是长度( 8 ),
  19. //------91 68 31 08 10 00 05 F0 是短信中心号码,表示+8613800100500
  20. //----8B 81 93 01 00 0B 81 31 61 81 26 19 F4 00 08 86 00 28 00 31 00 2F 00 32 00 29 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 60 A8 5D F2 5F 00 90 1A 75 45 54 2C 65 E0 5F E7 8B A1 52 12 FF 0C 8B E5 4E 1A 52 A1 4E 8E 4E 0B 67 08 75 1F 65 48 30 02 67 08 4F 7F 75 28 8D 39 00 31 00 30 51 43 FF 0C 53 05 54 2B 67 2C 57 30 88 AB 53 EB 51 4D 8D 39 30 01 67 65 75 35 66 3E 79 3A 30 01 5F 69 94 C3 30 01 00 32 00 30 52 06 94 9F 67 2C 57 30 4E 3B 53 EB 65 F6 95 7F FF 0C 其中
  21. //------8B 是SMS Tpdu tag,81 表示后面的长度超过128了,93 是长度( 147 ),
  22. //------01 是SMS SUBMIT TYPE
  23. //--------------------SMS-SUBMIT-TYPE------------开始
  24. //------bit1, bit0是       TP-MTI,值为 0 1 ,表示SMS-DELIVER type( SC to MS direction).
  25. //------bit2是             TP-RD,值为 0 表示SC accepts messages with same TP-MR, TP-DA
  26. //------bit4, bit3是       TP-VPF,值为 0 0 表示TP-VP field integer represented
  27. //------bit5是             TP-SRR,值为 0 表示Status report is requested.
  28. //------bit6是             TP-UDHI,值为 0 表示The TP-UD field contains only the short message.
  29. //------bit7是             TP-RP,值为 0 表示TS-Reply-Path parameter is not set in this deliver.
  30. //--------------------SMS-SUBMIT-TYPE------------结束
  31. //----00 是TP-MR,(Message Reference(used to identify the SMS-SUBMIT, read by the ME in EF-SMSS)),
  32. //------0B 81 31 61 99 99 19 F4 是目的地址,表示13161999914,
  33. //------00 是TP-PID
  34. //--------------------TP-PID------------开始
  35. //------bit7, bit6为 0 0
  36. //------bit5-bi50为 0 0 0 0 0 0 表示Short message type 0
  37. //--------------------TP-PID------------结束
  38. //------08 ( 0 0 0 0 1 0 0 0 ),表示普通发送,本位还是DCS,
  39. //------86 表示后面的长度为134 后面的
  40. //------00 28 00 31 00 2F 00 32 00 29 5C 0A 65 6C 76 84 5B A2 62 37 FF 0C 60 A8 5D F2 5F 00 90 1A 75 45 54 2C 65 E0 5F E7 8B A1 52 12 FF 0C 8B E5 4E 1A 52 A1 4E 8E 4E 0B 67 08 75 1F 65 48 30 02 67 08 4F 7F 75 28 8D 39 00 31 00 30 51 43 FF 0C 53 05 54 2B 67 2C 57 30 88 AB 53 EB 51 4D 8D 39 30 01 67 65 75 35 66 3E 79 3A 30 01 5F 69 94 C3 30 01 00 32 00 30 52 06 94 9F 67 2C 57 30 4E 3B 53 EB 65 F6 95 7F FF 0C 表示"(1/2)尊敬的客户,您已开通畅听无忧计划,该业务于下月生效。月使用费10元,包含本地被叫免费、来电显示、彩铃、20分钟本地主叫时长,"
  41. //90 00 是返回状态,表示---成功

  42. //TERMINAL RESPONSE
  43. A0 14 00 00 0C 81 03 13 13 00 82 02 82 81 83 01 00
  44. 91 16
  45. //A0 14 00 00 0C 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0C 是数据的长度(或返回数据的长度)表示( 12 )
  46. //----81 03 13 13 00 其中
  47. //------81 是Command detials tag,03 是长度( 3 ),13 是Command number,
  48. //------13 是Command Type表示,SEND SHORT MESSAGE
  49. //------00 表示( 二进制  0 0 0 0 0 0 0 0  )第1位是0:非组合格式,
  50. //----82 02 82 81 其中
  51. //------82 是Device identities tag,02 是长度( 2 ),
  52. //------82 81 是设备号,表示ME->SIM
  53. //----83 01 00 其中
  54. //------83 是Result tag,01 是长度( 1 ),
  55. //------00 是返回结果,表示
  56. //--------Results '0X' and '1X' indicate that the command has been performed.
  57. //--------命令执行成功
  58. //91 16 是返回状态,表示---成功,有22 个字节的信息等待FETCH
点赞  2008-2-15 18:03
显示发送成功,按确定退出STK



  1. //FETCH
  2. A0 12 00 00 16
  3. D0 14 81 03 09 21 80 82 02 81 02 8D 09 08 53 D1 90 01 5B 8C 62 10
  4. 90 00
  5. //A0 12 00 00 16 是命令头,CLA = A0表示GSM应用,INS = 12 表示FETCH,P1 P2 = 00 00 是参数,P3 = 16 是数据的长度(或返回数据的长度)表示( 22 )
  6. //--D0 14 其中D0是FETCH的Proactive SIM Command tag,14 表示后面的数据总体长度为20
  7. //----81 03 09 21 80 其中
  8. //------81 是Command detials tag,03 是长度( 3 ),09 是Command number,
  9. //------21 是Command Type表示,DISPLAY TEXT
  10. //------80 表示( 二进制  1 0 0 0 0 0 0 0  )第1位是0:普通优先级,第8位是1:等待用户手工清除,
  11. //----82 02 81 02 其中
  12. //------82 是Device identities tag,02 是长度( 2 ),
  13. //------81 02 是设备号,表示SIM->Display
  14. //----8D 09 08 53 D1 90 01 5B 8C 62 10 其中
  15. //------8D 是Text String tag,09 是长度( 9 ),
  16. //------08 是Data coding scheme部分,表示Unicode字符,
  17. //------53 D1 90 01 5B 8C 62 10 表示"发送完成"
  18. //90 00 是返回状态,表示---成功

  19. //TERMINAL RESPONSE
  20. A0 14 00 00 0C 81 03 09 21 80 82 02 82 81 83 01 00
  21. 90 00
  22. //A0 14 00 00 0C 是命令头,CLA = A0表示GSM应用,INS = 14 表示TERMINAL RESPONSE,P1 P2 = 00 00 是参数,P3 = 0C 是数据的长度(或返回数据的长度)表示( 12 )
  23. //----81 03 09 21 80 其中
  24. //------81 是Command detials tag,03 是长度( 3 ),09 是Command number,
  25. //------21 是Command Type表示,DISPLAY TEXT
  26. //------80 表示( 二进制  1 0 0 0 0 0 0 0  )第1位是0:普通优先级,第8位是1:等待用户手工清除,
  27. //----82 02 82 81 其中
  28. //------82 是Device identities tag,02 是长度( 2 ),
  29. //------82 81 是设备号,表示ME->SIM
  30. //----83 01 00 其中
  31. //------83 是Result tag,01 是长度( 1 ),
  32. //------00 是返回结果,表示
  33. //--------Results '0X' and '1X' indicate that the command has been performed.
  34. //--------命令执行成功
  35. //90 00 是返回状态,表示---成功


点赞  2008-2-15 18:03
这也算c/c++代码?

还是机器吗?
点赞  2008-2-18 11:22
那是stk交互流,说明的是stk原理的,如果不用c代码显示,你就会看到一团字。
点赞  2008-2-18 11:36
很感谢jennyvenus的回答,我还以为我的帖子没分数,没人会回答呢.呵呵!非常感谢!这是我第一次在论坛上发帖子,看到有人回答好兴奋.还没看答案呢,先感谢下.
点赞  2008-2-20 10:15
花了好几天看回帖,由于基础太差,到现在都还没看完,呵呵!
有两个问题想请教一下:
一 手机读卡的内容,如果内容为02及以上,表明卡支持STK.这句话在标准里看来看去,没看明白手机怎么就知道卡是否支持STK功能了.在GSM11.11标准里只找到EFPhase的内容,但是只有两个值"01""02",不知道jennyvenus是否指这一块的内容?

二 对于SIM卡初始化过程有两个疑问:
1. 为什么对"7F 20"这个文件要SELECT两次???
2. 对于READ   BINARY 这个命令看不是很懂,"03"表示什么意思?

//READ   BINARY
A0   B0   00   00   01   
03   
90   00   

过程如下

//SELECT
A0   A4   00   00   02   7F   20   
9F   17   

//SELECT
A0   A4   00   00   02   3F   00   
9F   17   

//SELECT
A0   A4   00   00   02   7F   20   
9F   17   

//SELECT
A0   A4   00   00   02   6F   AE   
9F   0F   

//READ   BINARY
A0   B0   00   00   01   
03   
90   00   


//TERMINAL   PROFILE
A0   10   00   00   06   FF   FF   FF   FF   FF   FF   
91   5E   

点赞  2008-2-25 10:15
一会儿找找规范,我现在不做手机卡,规范都没有了。
点赞  2008-2-25 13:03
第一次select 7f20,是用来判断是否是手机卡,这本身不重要,要知道

普通手机卡下面有7f10,7f20,CDMA卡有7f10,7发5,而小灵通下面有7f10,7fd0,所以查看一下是否有7f20,就是为了判断是否是普通手机卡。
点赞  2008-2-25 13:12
在规范中有如下话

10.3.19        EFPhase (Phase identification)
This EF contains information concerning the phase of the SIM.
Identifier: '6FAE'        Structure: transparent        Mandatory
File size: 1 byte        Update activity: low

Coding:
'00': phase 1
'02': phase 2
'03': phase 2 and PROFILE DOWNLOAD required (see TS 11.14 [27]).

    All other codings are reserved for specification by ETSI TC SMG. Codings '04' to '0F' indicate that the SIM supports, as a minimum, the mandatory requirements defined in this specification.
    这句话大概是说,ef phase的文件的内容除00,02,03之外的内容都是保留的,04-0f表明SIM支持规范定义最基本的,必须的部分。

    This phase identification does not preclude a SIM to support some features of a phase later than the one indicated in EFPhase. For example : if EFPhase is coded '00', it may be assumed by the ME that some Phase 2 or Phase 2+ features are supported by this SIM; if EFPhase is coded '02' or '03', it may be assumed by the ME that some Phase 2+ features are supported by this SIM.
    这个阶段标志并不排除SIM卡支持其他的特征,比如如果efpahse的内容是00,也许可以接受手机发送来的某些phase2或phase2+指令,如果phase文件的内容是02或03,可能接受某些phase2+指令。

    However, the services n°3 (FDN) and/or n°5 (AoC) shall only be allocated and activated in SIMs of phase 2 or later with EFPhase being coded '02' or greater. Similarly, service n°31 (BDN) shall only be allocated and activated in SIMs with EFPhase being coded '03' or greater.
    然而,SIM卡的详细功能表的功能只有在phase2或更高的情况下才分配并激活,同样BDN功能只有在03之后才能激活。

    If EFPhase is coded '03' or greater, an ME supporting SIM Application Toolkit shall perform the PROFILE DOWNLOAD procedure, as defined in TS 11.14 [27].
    如果efphase内容是03,一个支持SIM卡应用的手机将执行PROFILE DOWNLOAD过程,此过程在11.14中。

虽然规范中说明了只有phase2+阶段才会执行profile download过程,但是实际使用中并没有严格的执行,所以一般将phase2就认为是有stk应用,甚至不管phase的内容都进行profile download过程。

点赞  2008-2-25 13:47
读二进制指令的你还是多看11.11吧,这是最基本的指令了。

9.2.3 READ BINARY
+------------+--------+-------+--------------+-------------+--------+
|COMMAND     | CLASS  | INS   | P1           |  P2         | P3     |
+------------+--------+-------+--------------+-------------+--------+
|READ BINARY | 'A0'   | 'B0'  | offset high  |  offset low | lgth   |
+------------+--------+-------+--------------+-------------+--------+

Response parameters/data:
+------------+------------------------------+--------------+
|Byte(s)     |   Description                |    Length    |
+------------+------------------------------+--------------+
|1 - lgth    |Data to be read               |    lgth      |
+------------+------------------------------+--------------+
点赞  2008-2-25 14:00
全乱了,eeworld真TMD傻X,一个字体都不给弄成等宽的。

  1. 9.2.3 READ BINARY
  2. +------------+--------+-------+--------------+-------------+--------+
  3. |COMMAND     | CLASS  | INS   | P1           |  P2         | P3     |
  4. +------------+--------+-------+--------------+-------------+--------+
  5. |READ BINARY | 'A0'   | 'B0'  | offset high  |  offset low | lgth   |
  6. +------------+--------+-------+--------------+-------------+--------+

  7. Response parameters/data:
  8. +------------+------------------------------+--------------+
  9. |Byte(s)     |   Description                |    Length    |
  10. +------------+------------------------------+--------------+
  11. |1 - lgth    |Data to be read               |    lgth      |
  12. +------------+------------------------------+--------------+
点赞  2008-2-25 14:01
1234下一页
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复