2.4 片上外设帧
F28335的片上外设寄存器均为片上存储器映射寄存器,定位于片上数据存储器空间0x000800~0x007FFF,共分为4个区域,分别称为外设帧0、外设帧1、外设帧2、外设帧3。外设帧0支持16位宽度和32位宽度数据总线访问,直接映射到CPU总线,外设帧0寄存器组基本特性如表2-7所示。
表2-7 外设帧0基本特性(1)
注:(1)外设帧0寄存器支持16位和32位存取。
(2)若寄存器是EALLOW写保护的寄存器,则在执行EALLOW指令之后才能对EALLOW写保护寄存器进行写操作。EDIS指令是EALLOW指令的逆操作,不允许对EALLOW写保护寄存器进行写操作。
(3)Flash寄存器还受代码安全模块(CSM)保护。
外设帧1、外设帧2、外设帧3是片上外设模块寄存器组在片上数据存储器的映射地址空间。片上外设模块包括系统控制模块、eCAN模块、ePWM模块、eCAP模块、eQEP模块、GPIO模块、复位控制模块、SPI-A模块、SCI-A/B/C模块、外部中断模块、ADC模块、I2C模块、McBSP模块等。有些外设模块寄存器是EALLOW写保护寄存器,有些不是。
外设帧1映射到32位外设总线,外设帧1的基本特性如表2-8所示。外设帧2映射到16位外设总线,外设帧2的基本特性如表2-9所示。外设帧3映射到片上数据存储器空间,外设帧3的基本特性如表2-10所示。
表2-8 外设帧1的基本特性
注:*外设帧1寄存器允许16位和32位访问。所有32位访问与偶地址边界对齐。
表2-9 外设帧2的基本特性
表2-10 外设帧3的基本特性
注:*ePWM/HRPWM模块能被重新映射到外设帧3,以便能被DMA模块存取。为了达到这个目的,MAPCNF寄存器(映射配置寄存器)的MAPEPWM位必须被置1(上电复位默认状态),MAPCNF寄存器是EALLOW写保护寄存器。当MAPEPWM位被软件清0时,ePWM/HRPWM模块被重新映射到外设帧1。
2.4.1 写保护寄存器的访问特性
外设帧中某些寄存器是EALLOW写保护寄存器(EALLOW-protected registers),这些写保护寄存器包括器件仿真寄存器、Flash寄存器、代码安全模块寄存器、PIE向量表、系统控制寄存器、GPIO复用寄存器以及一些eCAN寄存器和外部接口寄存器。EALLOW写保护寄存器是指只允许读、不允许写的片上外设寄存器。在状态寄存器1(ST1)的位域变量EALLOW(ST1.EALLOW)指示EALLOW状态值,如表2-11所示。
表2-11 EALLOW写保护寄存器的访问特性
系统复位后,EALLOW被清0,使能EALLOW写保护功能。在写保护下,CPU对写保护寄存器的所有写操作均被忽略,只有CPU读、JTAG读、JTAG写被允许。仅当执行EALLOW宏语句将EALLOW置1时,才允许CPU对写保护寄存器进行写操作。写操作后,应执行EDIS宏语句将EALLOW清0,再禁止写保护寄存器的写操作,防止电磁干扰等对写保护寄存器误写。
2.4.2 器件仿真寄存器
器件仿真寄存器(EALLOW写保护)包括器件配置和块保护相关的寄存器,均为EALLOW写保护寄存器,映射地址如表2-12所示。
表2-12 器件仿真寄存器(EALLOW写保护)
2.4.3 Flash/OTP配置寄存器
Flash/OTP配置寄存器(EALLOW写保护)包括Flash电源模式寄存器、Flash低功耗模式寄存器、Flash状态与控制寄存器、Flash/OTP读访问等待状态寄存器等,均为EALLOW写保护寄存器,映射地址如表2-13所示。
表2-13 Flash/OTP配置寄存器(EALLOW写保护)
2.4.4 代码安全模块寄存器
代码安全模块(CSM)寄存器(EALLOW写保护)包括8×16位密钥寄存器(KEY0~KEY7)和CSM状态与控制寄存器(CSMSCR),均为EALLOW写保护寄存器,映射地址如表2-14所示。
表2-14 代码安全模块寄存器(EALLOW写保护)
2.4.5 PIE向量表
PIE向量表(EALLOW写保护)位于外设帧0中,受EALLOW写保护,映射地址如表2-15所示。
表2-15 PIE向量表(EALLOW写保护)
2.4.6 系统控制寄存器
系统控制寄存器(EALLOW写保护)包括:锁相环状态与控制寄存器;高/低速外设时钟预定标寄存器、外设时钟控制寄存器0/1/3;低功耗模式控制寄存器0;系统控制和状态寄存器;看门狗计数器寄存器;看门狗复位密钥寄存器;看门狗控制寄存器,均为EALLOW写保护寄存器,映射地址如表2-16所示。
表2-16 系统控制寄存器(EALLOW写保护)
2.4.7 GPIO复用寄存器
GPIO复用寄存器(EALLOW写保护)包括GPIOA/B/C控制寄存器、GPIOA/B资格选择寄存器、GPIOA/B/C复用寄存器、GPIOA/B/C方向寄存器、GPIOA/B/C上拉禁止寄存器、XINT1/2/3/4/5/6/7复用GPIO输入引脚选择寄存器、低功耗模式唤醒信号复用GPIO输入引脚选择寄存器,均为EALLOW写保护寄存器,映射地址如表2-17所示。
表2-17 GPIO复用寄存器
2.4.8 eCAN寄存器
eCAN寄存器(EALLOW写保护)包括主控寄存器、位定时配置寄存器、全局中断屏蔽寄存器、邮箱中断屏蔽寄存器、时间戳计数器、CANTXA/CANRXA引脚I//O控制寄存器,这些eCAN寄存器除邮箱中断屏蔽寄存器受EALLOW写保护外,其他eCAN寄存器只有某些位是受EALLOW写保护,映射地址如表2-18所示。
表2-18 eCAN寄存器
注:(1)只有CANMC的位[15~9]和位[7~6]被保护。
(2)只有BCR的位[23~16]和位[10~0]被保护。
(3)只有CANGIM的位[14~8]和位[2~0]被保护。
(4)只有IOCONT1的位[3]被保护。
(5)只有IOCONT2的位[3]被保护。
2.4.9 ePWM1~ePWM6寄存器
ePWM1~ePWM6寄存器(EALLOW写保护)包括故障区选择寄存器TZSEL、故障区控制寄存器TZCTL、故障区使能寄存器TZEINT、故障区清零寄存器TZCLR、故障区强制寄存器TZFRC、高分辨率PWM(HRPWM)配置寄存器HRCNFG,这些寄存器均为EALLOW写保护寄存器,映射地址如表2-19所示。
表2-19 ePWM1~ePWM6寄存器
2.4.10 XINTF寄存器
XINTF(外部接口)寄存器(EALLOW写保护)包括寻址区0/6/7时序寄存器(XTIMING0/6/7)、XINTF配置寄存器、XINTF跨区控制寄存器、XINTF版本修订寄存器、XINTF复位寄存器,均为EALLOW写保护寄存器,映射地址如表2-20所示。
表2-20 XINTF寄存器
注:(1)所有XINTF寄存器都是EALLOW写保护寄存器。
(2)XTIMING1~XTIMING5未用,保留为将来扩展用。
(3)XINTCNF1保留未用。