5. 特殊功能寄存器SFR

5. 特殊功能寄存器SFR

本手册中在对寄存器进行描述时可能使用了下列缩写:

缩写词 描述
RO 表示访问类型:只读
WO 表示访问类型:只写,读取的值无效
RW 表示访问类型:可读可写
h 以其结束表示16进制数
b 以其结束表示2进制数

5.1 SFR简介和地址分布

CH559用特殊功能寄存器SFR和xSFR控制、管理设备以及设置工作模式。

SFR占用内部数据存储空间的80h-FFh地址范围,只能通过直接地址方式的指令访问。其中地址为x0h或x8h的寄存器是可以按位寻址的,这样就能避免访问某个具体的位时而修改其他位的值;其它地址为非8倍数的寄存器只能按字节访问。

部分SFR仅在安全模式下才能写入数据,而在非安全模式下是只读状态,例如:GLOBAL_CFG、PLL_CFG、CLOCK_CFG、SLEEP_CTRL、WAKE_CTRL。

部分 SFR 具有一个或者多个别名,例如:SPI0_CK_SE/SPI0_S_PRE、UDEV_CTRL/UHUB0_CTRL、UEP1_CTRL/UH_SETUP、UEP2_CTRL/UH_RX_CTRL、UEP2_T_LEN/UH_EP_PID、UEP3_CTRL/UH_TX_CTRL、 UEP3_T_LEN/UH_TX_LEN、P5_PIN/P4_CFG。

部分地址对应于多个独立的 SFR,例如:TL2/T2CAP1L、TH2/T2CAP1H、SAFE_MOD/CHIP_ID、T3_COUNT_L/T3_CK_SE_L、T3_COUNT_H/T3_CK_SE_H、SER1_FIFO/SER1_RBR/SER1_THR/SER1_DLL、 SER1_IER/SER1_DLM、SER1_IIR/SER1_FCR、SER1_ADDR/SER1_DIV、ROM_CTRL/ROM_STATUS。

xSFR占用外部数据存储空间xdata类型的2440h-298Fh地址范围,或者pdata类型的40H-8Fh 地址范围。xSFR只能通过MOVX指令间接寻址按字节访问,默认是基于DPTR指针;但在bXIR_XSFR 置1后,还可以用更快捷的R0或者R1作为pdata类型指针访问名称为pU*和pLED_*的xSFR。

部分xSFR具有一个或者多个别名,例如:UEP2_3_MOD/UH_EP_MOD、UEP2_DMA_H/UH_RX_DMA_H、UEP2_DMA_L/UH_RX_DMA_L、UEP2_DMA/UH_RX_DMA、UEP3_DMA_H/UH_TX_DMA_H、EP3_DMA_L/UH_TX_DMA_L、UEP3_DMA/UH_TX_DMA。

部分地址对应于多个独立的xSFR,例如:LED_DATA/LED_FIFO_CN。

CH559包含8051标准SFR所有的寄存器,同时又增加了其他设备控制寄存器。具体SFR见下表。

表 5.1 特殊功能寄存器表

SFR_Table

备注:(1)、红色文本代表可以按位寻址;(2)、以下是颜色框对应说明

描述
寄存器地址
SPI0相关寄存器
ADC相关寄存器
USB相关寄存器
定时/计数器2相关寄存器
端口设置相关寄存器
SPI1相关寄存器
PWM1和PWM2相关寄存器
UART1相关寄存器
定时/计数器0和1相关寄存器
Flash-ROM相关寄存器

5.2 SFR分类和复位值

功能分类名称地址描述复位值
系统设置相关寄存器BF0hB寄存器0000 0000b
ACCE0h累加器0000 0000b
PSWD0h程序状态寄存器0000 0000b
GLOBAL_CFGB1h全局配置寄存器(引导程序状态下)1110 0000b
全局配置寄存器(应用程序状态下)1100 0000b
CHIP_IDA1h芯片ID识别码(只读)0101 1001b
SAFE_MODA1h安全模式控制寄存器(只写)0000 0000b
DPH83h数据地址指针高8位0000 0000b
DPL82h数据地址指针低8位0000 0000b
DPTR82hDPL和DPH组成16位SFR0000h
SP81h堆栈指针0000 0111b
时钟、睡眠及电源控制相关寄存器WDOG_COUNTFFh看门狗计数寄存器0000 0000b
RESET_KEEPFEh复位保持寄存器(上电复位状态下)0000 0000b
WAKE_CTRLEBh睡眠唤醒控制寄存器0000 0000b
SLEEP_CTRLEAh睡眠控制寄存器0000 0000b
CLOCK_CFGB3h系统时钟配置寄存器1001 1000b
PLL_CFGB2hPLL时钟配置寄存器1101 1000b
PCON87h电源控制寄存器(上电复位状态下)0001 0000b
中断控制相关寄存器IP_EXE9h扩展中断优先级控制寄存器0000 0000b
IE_EXE8h扩展中断使能寄存器0000 0000b
GPIO_IECFhGPIO中断使能寄存器0000 0000b
IPB8h中断优先级控制寄存器0000 0000b
IEA8h中断使能寄存器0000 0000b
Flash-ROM相关寄存器ROM_DATA_H8Fhflash-ROM数据寄存器高字节xxxx xxxxb
ROM_DATA_L8Ehflash-ROM 数据寄存器低字节xxxx xxxxb
ROM_DATA8EhROM_DATA_L和ROM_DATA_H组成16位SFRxxxxh
ROM_STATUS86hflash-ROM状态寄存器(只读)1000 0000b
ROM_CTRL86hflash-ROM控制寄存器(只写)0000 0000b
ROM_ADDR_H85hflash-ROM地址寄存器高字节xxxx xxxxb
ROM_ADDR_L84hflash-ROM地址寄存器低字节xxxx xxxxb
ROM_ADDR84hROM_ADDR_L和ROM_ADDR_H组成16位SFRxxxxh
端口设置相关寄存器XBUS_SPEEDFDh外部总线速度配置寄存器1111 1111b
XBUS_AUXFDh外部总线辅助设置寄存器0000 0000b
PIN_FUNCCEh引脚功能选择寄存器0000 0000b
P4_CFGC7hP4端口配置寄存器0000 0000b
P5_INC7hP5端口输入寄存器(只读)0000 0000b
PORT_CFGC6h端口配置寄存器0000 1111b
P0_PUC5hP0端口上拉使能寄存器(En_P0_Pullup=0)0000 0000b
P0端口上拉使能寄存器(En_P0_Pullup=1)1111 1111b
P0_DIRC4hP0端口方向控制寄存器0000 0000b
P4_PUC3hP4端口上拉使能寄存器1111 1111b
P4_DIRC2hP4端口方向控制寄存器0000 0000b
P4_INC1hP4端口输入寄存器(只读)1111 1111b
P4_OUTC0hP4端口输出寄存器0000 0000b
P3_PUBFhP3端口上拉控制寄存器1111 1111b
P3_DIRBEhP3端口方向使能寄存器0000 0000b
P2_PUBDhP2端口上拉使能寄存器1111 1111b
P2_DIRBChP2端口方向控制寄存器0000 0000b
P1_PUBBhP1端口上拉使能寄存器1111 1111b
P1_DIRBAhP1端口方向控制寄存器0000 0000b
P1_IEB9hP1端口输入使能寄存器1111 1111b
P3B0hP3端口输入输出寄存器1111 1111b
P2A0hP2端口输入输出寄存器1111 1111b
P190hP1端口输入输出寄存器1111 1111b
P080hP0端口输入输出寄存器1111 1111b
定时/计数器0和1相关寄存器TH18DhTimer1计数高字节xxxx xxxxb
TH08ChTimer0计数高字节xxxx xxxxb
TL18Bh3Timer1计数低字节xxxx xxxxb
TL08AhTimer0计数低字节xxxx xxxxb
TMOD89hTimer0/1方式寄存器0000 0000b
TCON88hTimer0/1控制寄存器0000 0000b
UART0相关寄存器SBUF99hUART0数据寄存器xxxx xxxxb
SCON98hUART0控制寄存器0000 0000b
定时/计数器2相关寄存器TH2CDhTimer2计数器高字节0000 0000b
TL2CChTimer2计数器低字节0000 0000b
T2COUNTCChTL2和TH2组成16位SFR0000h
T2CAP1HCDhTimer2捕捉1数据高字节(只读)xxxx xxxxb
T2CAP1LCChTimer2捕捉1数据低字节(只读)xxxx xxxxb
T2CAP1CChT2CAP1L和T2CAP1H组成16位SFRxxxxh
RCAP2HCBh计数重载/捕捉2数据寄存器高字节0000 0000b
RCAP2LCAh计数重载/捕捉2数据寄存器低字节0000 0000b
RCAP2CAhRCAP2L和RCAP2H组成16位SFR0000h
T2MODC9hTimer2方式寄存器0000 0000b
T2CONC8hTimer2控制寄存器0000 0000b
定时/计数器3相关寄存器T3_FIFO_HAFhTimer3的FIFO高字节xxxx xxxxb
T3_FIFO_LAEhTimer3的FIFO低字节xxxx xxxxb
T3_FIFOAEhT3_FIFO_L和T3_FIFO_H组成16位SFRxxxxh
T3_DMA_AHADhDMA当前缓冲区地址高字节0000 xxxxb
T3_DMA_ALAChDMA当前缓冲区地址低字节xxxx xxx0b
T3_DMAAChT3_DMA_AL和T3_DMA_AH组成16位SFR0xxxh
T3_DMA_CNABhDMA剩余计数寄存器0000 0000b
T3_CTRLAAhTimer3控制寄存器0000 0010b
T3_STATA9hTimer3状态寄存器0000 0000b
T3_END_HA7hTimer3计数终值高字节xxxx xxxxb
T3_END_LA6hTimer3计数终值低字节xxxx xxxxb
T3_ENDA6hT3_END_L和T3_END_H组成16位SFRxxxxh
T3_COUNT_HA5hTimer3当前计数高字节(只读)0000 0000b
T3_COUNT_LA4hTimer3当前计数低字节(只读)0000 0000b
T3_COUNTA4hT3_COUNT_L和T3_COUNT_H组成16位SFR0000h
T3_CK_SE_HA5hTimer3时钟分频设置高字节0000 0000b
T3_CK_SE_LA4hTimer3 时钟分频设置低字节0010 0000b
T3_CK_SEA4hT3_CK_SE_L和T3_CK_SE_H组成16位SFR0020h
T3_SETUPA3hTimer3设置寄存器0000 0100b
PWM1和PWM2相关寄存器PWM_CYCLE9FhPWM循环周期寄存器xxxx xxxxb
PWM_CK_SE9EhPWM时钟分频设置寄存器0000 0000b
PWM_CTRL9DhPWM控制寄存器0000 0010b
PWM_DATA9ChPWM1数据寄存器xxxx xxxxb
PWM_DATA29BhPWM2数据寄存器xxxx xxxxb
SPI0相关寄存器SPI0_SETUPFChSPI0设置寄存器0000 0000b
SPI0_S_PREFBhSPI0从机模式预置数据寄存0010 0000b
SPI0_CK_SEFBhSPI0时钟分频设置寄存器0010 0000b
SPI0_CTRLFAhSPI0控制寄存器0000 0010b
SPI0_DATAF9hSPI0数据收发寄存器xxxx xxxxb
SPI0_STATF8hSPI0状态寄存器0000 1000b
SPI1相关寄存器SPI1_CK_SEB7hSPI1时钟分频设置寄存器0010 0000b
SPI1_CTRLB6hSPI1控制寄存器0000 0010b
SPI1_DATAB5hSPI1数据收发寄存器xxxx xxxxb
SPI1_STATB4hSPI1状态寄存器0000 1000b
UART1相关寄存器SER1_DLL9AhUART1波特率除数锁存器低字节xxxx xxxxb
SER1_FIFO9AhUART1数据FIFO读写寄存器xxxx xxxxb
SER1_DIV97hUART1预分频除数寄存器0xxx xxxxb
SER1_ADDR97hUART1总线地址预置寄存器1111 1111b
SER1_MSR96hUART1调制解调器MODEM状态寄存器(只读)1111 0000b
SER1_LSR95hUART1线路状态寄存器(只读)0110 0000b
SER1_MCR94hUART1调制解调器MODEM控制寄存器0000 0000b
SER1_LCR93hUART1线路控制寄存器0000 0000b
SER1_IIR92hUART1中断识别寄存器(只读)0000 0001b
SER1_FCR92hFIFO控制寄存器(只写)0000 0000b
SER1_DLM91hUART1波特率除数锁存器高字节1000 0000b
SER1_IER91hUART1中断使能寄存器0000 0000b
ADC相关寄存器ADC_EX_SWF7hADC扩展模拟开关控制寄存器0000 0000b
ADC_SETUPF6hADC设置寄存器0000 1000b
ADC_FIFO_HF5hADC的FIFO高字节(只读)0000 0xxxb
ADC_FIFO_LF4hADC的FIFO低字节(只读)xxxx xxxxb
ADC_FIFOF4hADC_FIFO_L和ADC_FIFO_H组成16位SFR0xxxh
ADC_CHANNF3hADC通道选择寄存器0000 0000b
ADC_CTRLF2hADC控制寄存器0000 0000b
ADC_STATF1hADC状态寄存器0000 0100b
ADC_CK_SEEFhADC时钟分频设置寄存器0001 0000b
ADC_DMA_CNEEhDMA剩余计数寄存器0000 0000b
ADC_DMA_AHEDhDMA当前缓冲区地址高字节0000 xxxxb
ADC_DMA_ALEChDMA当前缓冲区地址低字节xxxx xxx0b
ADC_DMAEChADC_DMA_AL和ADC_DMA_AH组成16位SFR0xxxh
USB相关寄存器USB_DMA_AHE7hDMA当前缓冲区地址高字节(只读)000x xxxxb
USB_DMA_ALE6hDMA当前缓冲区地址低字节(只读)xxxx xxx0b
USB_DMAE6hUSB_DMA_AL和USB_DMA_AH组成16位SFRxxxxh
UHUB1_CTRLE5hUSB主机HUB1端口控制寄存器1100 x000b
UHUB0_CTRLE4hUSB主机HUB0端口控制寄存器0100 x000b
UDEV_CTRLE4hUSB设备端口控制寄存器0100 x000b
USB_DEV_ADE3hUSB设备地址寄存器0000 0000b
USB_CTRLE2hUSB控制寄存器0000 0110b
USB_INT_ENE1hUSB中断使能寄存器0000 0000b
UEP4_T_LENDFh端点4发送长度寄存器0xxx xxxxb
UEP4_CTRLDEh端点4控制寄存器0000 0000b
UEP0_T_LENDDh端点0发送长度寄存器0xxx xxxxb
UEP0_CTRLDCh端点0控制寄存器0000 0000b
USB_HUB_STDBhUSB主机HUB端口状态寄存器(只读)0000 0000b
USB_MIS_STDAhUSB杂项状态寄存器(只读)xx10 1000b
USB_INT_STD9hUSB中断状态寄存器(只读)00xx xxxxb
USB_INT_FGD8hUSB中断标志寄存器0010 0000b
UEP3_T_LEND7h端点3发送长度寄存器0xxx xxxxb
UH_TX_LEND7hUSB主机发送长度寄存器0xxx xxxxb
UEP3_CTRLD6h端点3控制寄存器0000 0000b
UH_TX_CTRLD6hUSB主机发送端点控制寄存器0000 0000b
UEP2_T_LEND5h端点2发送长度寄存器0000 0000b
UH_EP_PIDD5hUSB主机令牌设置寄存器0000 0000b
UEP2_CTRLD4h端点2控制寄存器0000 0000b
UH_RX_CTRLD4hUSB主机接收端点控制寄存器0000 0000b
UEP1_T_LEND3h端点1发送长度寄存器0xxx xxxxb
UEP1_CTRLD2h端点1控制寄存器0000 0000b
UH_SETUPD2hUSB主机辅助设置寄存器0000 0000b
USB_RX_LEND1hUSB接收长度寄存器(只读)0xxx xxxxb
USB相关寄存器xSFR区域UEP4_1_MOD2446h端点1、4模式控制寄存器0000 0000b
UEP2_3_MOD2447h端点2、3模式控制寄存器0000 0000b
UH_EP_MOD2447hUSB主机端点模式控制寄存器0000 0000b
UEP0_DMA_H2448h端点0和4缓冲区起始地址高字节000x xxxxb
UEP0_DMA_L2449h端点0和4缓冲区起始地址低字节xxxx xxx0b
UEP0_DMA2448hUEP0_DMA_L和UEP0_DMA_H组成16位SFRxxxxh
UEP1_DMA_H244Ah端点1缓冲区起始地址高字节000x xxxxb
UEP1_DMA_L244Bh端点1缓冲区起始地址低字节xxxx xxx0b
UEP1_DMA244AhUEP1_DMA_L和UEP1_DMA_H组成16位SFRxxxxh
UEP2_DMA_H244Ch端点2缓冲区起始地址高字节000x xxxxb
UEP2_DMA_L244Dh端点2缓冲区起始地址低字节xxxx xxx0b
UEP2_DMA244ChUEP2_DMA_L和UEP2_DMA_H组成16位SFRxxxxh
UH_RX_DMA_H244ChUSB主机接收缓冲区起始地址高字节000x xxxxb
UH_RX_DMA_L244DhUSB主机接收缓冲区起始地址低字节xxxx xxx0b
UH_RX_DMA244ChUH_RX_DMA_L和UH_RX_DMA_H组成16位SFRxxxxh
UEP3_DMA_H244Eh端点3缓冲区起始地址高字节000x xxxxb
UEP3_DMA_L244Fh端点3缓冲区起始地址低字节xxxx xxx0b
UEP3_DMA244EhUEP3_DMA_L和UEP3_DMA_H组成16位SFRxxxxh
UH_TX_DMA_H244EhUSB主机发送缓冲区起始地址高字节000x xxxxb
UH_TX_DMA_L244FhUSB主机发送缓冲区起始地址低字节xxxx xxx0b
UH_TX_DMA244EhUH_TX_DMA_L和UH_TX_DMA_H组成16位SFRxxxxh
pU*254*h在bXIR_XSFR置1后,该名称用于以pdata类型寻址上述xSFR,比xdata类型寻址更快捷
LED控制卡相关寄存器xSFR区域LED_STAT2880hLED状态寄存器010x 0000b
LED_CTRL2881hLED控制寄存器0000 0010b
LED_FIFO_CN2882hFIFO计数状态寄存器(只读)0000 0000b
LED_DATA2882hLED数据寄存器(只写)xxxx xxxxb
LED_CK_SE2883hLED时钟分频设置寄存器0001 0000b
LED_DMA_AH2884hDMA当前缓冲区地址高字节000x xxxxb
LED_DMA_AL2885hDMA当前缓冲区地址低字节xxxx xxx0b
LED_DMA2884hLED_DMA_AL和LED_DMA_AH组成16位SFRxxxxh
LED_DMA_CN2886hLED DMA剩余计数寄存器xxxx xxxxb
LED_DMA_XH2888hDMA当前辅助缓冲区地址高字节000x xxxxb
LED_DMA_XL2889hDMA当前辅助缓冲区地址低字节xxxx xxx0b
LED_DMA_X2888hLED_DMA_XL和LED_DMA_XH组成16位SFRxxxxh
pLED_*298*h在bXIR_XSFR置1后,该名称用于以pdata类型寻址上述xSFR,比xdata类型寻址更快捷

5.3 通用8051寄存器

表 5.3.1 通用8051寄存器列表

名称地址描述复位值
BF0hB寄存器00h
A, ACCE0h累加器00h
PSWD0h程序状态寄存器00h
GLOBAL_CFGB1h全局配置寄存器(引导程序状态下)E0h
全局配置寄存器(应用程序状态下)C0h
CHIP_IDA1h芯片ID识别码(只读)59h
SAFE_MODA1h安全模式控制寄存器(只写)00h
PCON87h电源控制寄存器(上电复位状态下)10h
DPH83h数据地址指针高8位00h
DPL82h数据地址指针低8位00h
DPTR82hDPL和DPH组成16位SFR0000h
SP81h堆栈指针07h

B寄存器 (B):

名称访问描述复位值
[7:0]BRW算术运算寄存器,主要用于乘法和除法运算,可按位寻址00h

A累加器(A, ACC):

名称访问描述复位值
[7:0]A/ACCRW算术运算累加器,可按位寻址00h

程序状态寄存器(PSW):

名称访问描述复位值
7CYRW进位标志位:执行算术运算和逻辑运算指令时,用于记录最高位的进位或者借位;进行8位加法运算时,最高位进位,则该位置位,否则清零;进行8位减法运算时,若借位,则该位置位,否则清零;逻辑指令可使该位置位或清零0
6ACRW辅助进位标志位:记录加减法运算时,低4位向高4位有进位或借位,AC置位,否则清零0
5F0RW可按位寻址的通用标志位0:使用者可自己定义,可软件清零或置位0
4RS1RW寄存器组选择位高位0
3RS0RW寄存器组选择位低位0
2OVRW溢出标志位:加减法运算时,运算结果超过8位二进制数,则OV置1,标志溢出,否则清00
1F1RW可按位寻址的通用标志位1:使用者可自己定义,可软件清零或置位0
0PR0奇偶标志位:记录指令执行后累加器A中1的奇偶性,奇数个1则P置位,偶数个1则P清零0

处理器的状态保存在状态寄存器PSW中,PSW支持按位寻址。状态字中包括进位标志位,用于BCD码处理的辅助进位标志位,奇偶标志位,溢出标志位,还有用于工作寄存器组选择的RS0和RS1。工作寄存器组所在的区域都可以通过直接或者间接方式进行访问。

表 5.3.2 RS1和RS0工作寄存器组选择表

RS1RS0工作寄存器组
000组(00h-07h)
011组(08h-0Fh)
102组(10h-17h)
113组(18h-1Fh)

表 5.3.3 影响标志位的操作(X表示标志位与操作结果有关)

操作CYOVAC
ADDXXX
ADDCXXX
SUBBXXX
MUL0X
DIV0X
DA AX
RRC AX
RLC AX
CJNEX
SETB C1
CLR C0
CPL CX
MOV C, bitX
ANL C, bitX
ANL C,/bitX
ORL C, bitX
ORL C,/bitX

数据地址指针(DPTR):

名称访问描述复位值
[7:0]DPLRW数据指针低字节00h
[7:0]DPHRW数据指针高字节00h

DPL和DPH组成16位数据指针DPTR,用于访问xSFR、xBUS、xRAM数据存储器或者程序存储器,实际DPTR对应DPTR0和DPTR1两组物理上的16位数据指针,由XBUS_AUX中的DPS动态选择。

堆栈指针(SP):

名称访问描述复位值
[7:0]SPRW堆栈指针,主要用于程序调用和中断调用以及数据进出栈07h

堆栈具体功能:保护端点和保护现场,按先入后出的原则进行管理。入栈时SP指针自动加1,保存数据或断点信息;出栈时取SP指针指向数据单元,SP指针自动减1。SP在复位后的初值是07h,相应的默认堆栈存储从08h开始。

5.4 特有寄存器

全局配置寄存器(GLOBAL_CFG),仅在安全模式下可写:

名称访问描述复位值
[7:6]ReservedRO固定值1111b
5bBOOT_LOADRO

Bootloader状态位,用于区分ISP引导程序状态或者应用程序状态:电源上电时置1,软件复位时清0。

对于有ISP引导程序的芯片,该位为1说明从未软件复位过,通常是上电后运行的ISP引导程序状态;该位为0说明已经软件复位过,通常是应用程序状态

1
4bSW_RESETRW软件复位控制位:置1导致软件复位,硬件自动清零0
3bCODE_WERWFlash-ROM写允许位:该位为0则写保护;为1则Flash-ROM可写可擦0
2bDATA_WERWFlash-ROM的DataFlash区域写允许位:该位为0则写保护;为1则DataFlash区域可写可擦0
1bXIR_XSFRRWMOVX_@R0/R1指令访问范围控制位:该位为0允许访问全部xdata区域xRAM/xBUS/xSFR;该位为1则专用于访问xSFR,不能访问xRAM/xBUS0
0bWDOG_ENRW看门狗复位使能位:该位为0看门狗只用作定时器;该位为1允许计时溢出时产生看门狗复位0

芯片ID识别码(CHIP_ID):

名称访问描述复位值
[7:0]CHIP_IDRO固定值59h,用于识别芯片59h

安全模式控制寄存器(SAFE_MOD):

名称访问描述复位值
[7:0]SAFE_MODWO用于进入或者终止安全模式00h

部分SFR仅在安全模式下才能写入数据,而在非安全模式下总是只读状态。进入安全模式步骤:

  1. 向该寄存器写入55h;
  2. 接着向该寄存器写入AAh;
  3. 此后约13到23个系统主频周期都处于安全模式下,该有效期内可以改写一个或多个安全类SFR或普通SFR
  4. 超出上述有效期后自动终止安全模式
  5. 或者再向该寄存器写任意值可以提前终止安全模式