CGREG
GPRS网络注册状态:AT+CGREG
设置指令控制关于GPRS注册状态非请求结果码的显示。
当<n>=1 并且MT的 GPRS 注册状态发生改变,即会有+CGREG:<stat>的URC上报。
当<n>=2 并且或GPRS注册状态发生变化或注册小区发生改变,会有:+CGREG: <stat>[,<lac>,<ci>,<act>,<rac>]的URC上报。
当<n>=3 并且或GPRS注册状态发生变化或注册小区发生改变,会有:+CGREG: <stat>[,<lac>,<ci>,<act>,<rac>[,<cause_type>,<reject_cause>]]的URC上报。
查询指令返回结果码的显示形式<n>和一个可以表明MT网络注册状态的参数<stat>。仅当<n>=2且MT在网络中注册后,才返回位置信息要素<lac>和<ci>。
语法规则:
| 命令类型 | 语法 | 返回和说明 | 
|---|---|---|
| 设置命令 | AT+CGREG=[<n>] | OK | 
| 查询命令 | AT+CGREG? | +CGREG:<n>,<stat>[,<lac>,<ci>]OK | 
| 测试命令 | AT+CGREG=? | +CGREG:(<n>取值列表)OK | 
| URC上报 | +CGREG: <stat> | 如果设置 <n>=1,当网络注册状态发生改变时,会有这样的URC(unsolicited result code) | 
| +CGREG: <stat>[<lac>,<ci>,<act>,<rac>] | 如果设置 <n>=2,当网络注册状态或注册的小区(ci)发生改变时,会有这样的URC上报 | |
| +CGREG: <stat>[,<lac>,<ci>,<act>,<rac>[,<cause_type>,<reject_cause>]] | 如果设置 <n>=3,当网络注册状态或注册的小区(ci)发生改变时,会有这样的URC上报 | |
| +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>][,,[,[],[<Periodic-TAU>]]]] | 如果设置 <n>=4,当网络注册状态或注册的小区(ci)发生改变时,会有这样的URC上报 | |
| +CEREG:<stat>[,[<tac>],[<ci>],[<AcT>][,[],[<reject_cause>][,[],[<Periodic-TAU>]]]] | 如果设置 <n>=5,当网络注册状态或注册的小区(ci)发生改变时,会有这样的URC上报 | 
参数定义:
| 参数 | 定义 | 取值 | 对取值的说明 | 
|---|---|---|---|
| <n> | 上报状态 | 0 | 禁用网络注册非请求结果码+CGREG: | 
| 1 | 启用网络注册非请求结果码 +CGREG: <stat> | ||
| 2 | 启用网络注册和位置信息非请求结果码 +CGREG:<stat>[,<lac>,<ci>,<act>,<rac>] | ||
| 3 | 启用网络注册和位置信息非请求结果码 +CGREG: <stat>[,<lac>,<ci>,<act>,<rac>[,<cause_type>,<reject_cause>]] | ||
| 4 | 启用网络注册和位置信息非请求结果码 +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>][,,[,[],[<Periodic-TAU>]]]] | ||
| 5 | 启用网络注册和位置信息非请求结果码 +CEREG:<stat>[,[<tac>],[<ci>],[<AcT>][,[],[<reject_cause>][,[],[<Periodic-TAU>]]]] | ||
| <stat> | 当前网络注册状态 | 0 | 未注册;ME 当前没有搜索注册业务的新运营商 | 
| 1 | 已注册,本地网 | ||
| 2 | 未注册,但 ME 正在搜索注册业务的新运营商,但是当前没有可用的公共陆地移动网络(PLMN),一旦PLMN有效,UE将开始GPRS附着。 | ||
| 3 | 注册被拒绝。GPRS业务被禁用,即使用户请求,UE也不被允许附着GPRS网络 | ||
| 4 | 未知 | ||
| 5 | 已注册,漫游 | ||
| 6 | 注册归属地"SMS only"业务 | ||
| 7 | 注册漫游地"SMS only"业务 | ||
| 8 | 仅附着紧急承载业务(See NOTE 2) | ||
| 9 | 注册归属地"CSFB not preferred"业务 | ||
| 10 | 注册漫游地"CSFB not preferred"业务 | ||
| 11 | 仅紧急业务可用 | ||
| <lac> | 位置区号(Location Area Code) | - | 字符型;2 字节十六进制位置区代码(比如:00C3相当于十进制中的 195) | 
| <ci> | 小区号(Cell Id) | - | 字符型;2 字节十六进制小区编号 | 
| <rac> | Routing area code | ||
| <cause_type> | 定义同+CEREG | ||
| <reject_cause> | 定义同+CEREG | 
举例:
| 命令(→)/ 返回(←) | 实例 | 解释和说明 | 
|---|---|---|
| → | AT+CGREG? | 查询当前GPRS注册状态 | 
| ← | +CGREG: 0,1 OK | <n>=0,<stat>=1 | 
| → | AT+CGREG=1 | 设置 <n>=1,当模块注册状态发生改变时,会有一个URC上报+CGREG: <stat> | 
| ←(URC) | +CGREG: 1 | 当模块注册状态发生改变 | 
| → | AT+CGREG=2 | 设置 <n>=2,当模块注册状态发生改变时,会有一个URC上报+CGREG: <stat>[,<lac>,<ci>,<act>] | 
| ←(URC) | +CGREG: 5,"18be","9363",7 | 当模块注册状态发生改变,或移动模块,使模块所处小区号发生改变的时候,会有个URC上报上来 | 
| → | AT+CGREG? | 查询注册状态 | 
| ← | +CGREG: 2,1,"1863","00a2c315",7 OK |