广技师DSP技术复习考试题(F28335) 下载本文

内容发布更新时间 : 2024/5/16 3:00:45星期一 下面是文章的全部内容请认真阅读。

DSP 技术复习题(F28335)

1. F28335有__32_位浮点运算单元,主频可高达_150MHz_。 2. F28335片上存储器包括: _256Kx16位_Flash, _34Kx16位_SRAM 8Kx16位BooT ROM, 2K x16位 OPT ROM。

3. F28335片上外设丰富,其中有18路PWM,_6_路CAP, _2x8_通道_12

位ADC,_88_路GPIO。

4. CPU内核指令周期为_6.67ns_,内核电压为_1.9V_,I/O引脚电压为_

3.3V_.

5. F28335为_哈佛结构_的DSP,在逻辑上有_4M x 16位_的程序空间和_

4M x 16位_的数据空间,物理上将程序空间和数据空间统一成一个_4M x 16位_的空间。

6. F28335中有_6_组互补对称的脉宽调制PWM,每组中包括_2_路PWM,每

一组中有7个单元:_时基模块TB_,_计数比较模块CC_, _动作模块AQ_, _死区产生模块DB_,_PWM斩波模块PC_, _错误联防模块TZ_, _事件触发模块ET_。

7. F28335的外部存储器接口包括:_20位_地址线,_16(最大32)位_数据

线,_3_个片选控制线及读/写控制线。这3个片选线映射到3个存储区域:_Zone0_, _Zone6_, _Zone7_。 8. F28335的时钟源有两种:

A. 采用外部振荡器作为时钟源(简称外部时钟)

B. 采用内部振荡器作为时钟源(简称内部时钟)在_X1_与_X2_之间连

接一个晶体,就可以产生时钟源。

9. 外设时钟包括_快速外设_时钟和_慢速外设_时钟,分别通过_HISPCP

_和_LOSPCP_寄存器进行设置。

10. 请写出看门狗使能、看门狗中断信号使能和看门狗复位信号使能的代码

SysCtrRegs.WDCR = 0x0028; SysCtrRegs.SCSR = 0x0002; SysCtrRegs.SCSR = 0x0000;

//看门狗使能 //看门狗中断信号使能 //看门狗中断信号使能

11. 请写出看门狗喂狗程序ServiceDog ()

void ServiceDog (void) {

EALLOW

SysCtrRegs.WDKEY=0x0055; SysCtrRegs.WDKEY=0x00AA; EDIS; }

12. F28335片上有256Kx16位的FLASH,34Kx16位的SRAM,8Kx16位的BOO

T ROM,2Kx16位的OPT ROM,采用统一寻址方式。 13. F28335片内FLASH的起始地址是:0X300000,大小为256Kx16位,其中

0x33FFF8~0x33FFFF共128位用来保存CSM模块密码。保护FLASH。 14. 代码安全模块(CSM)是F28335上程序安全性的主要手段。通过一个128

位的密码来对安全区进行加密或解密。这段密码保存在FLASA的最后 8个字中 (0X33FFF8~0X33FFFF),也就是密码区(PWL)中,通过密码匹配(PMF)可以解锁器件。

15. 如果密码保护区中的128位数全为1.则这个器件不受保护; 16. 如果密码保护区中的128位数全为0,则这个器件无法解锁。

17. 用户用来解锁的寄存器为密钥寄存器。在存储空间映射地址为

0X00000AE0~0X00000AE7中

18. F28335 DSP 采用增强的哈佛总线结构,能够并行访问程序和数据存储空间。 19. X1NTF的外部区域0地址范围为0X004000~0X004FFF,大小为4K×16位;

X1NTF的外部区域6地址范围为0X100000~0X1FFFFF,大小为1M×16位; X1NTF的外部区域7地址范围为0X200000~0X2FFFFF,大小为1M×16位; 20. X1NTF每个区域数据总线都可以单独配置成16位或32位,XA0/XWE1引脚

的功能在两种总线宽度下不同。当一个区域配置成16位的总线模式时,XA0/XWE1引脚的功能为地址的最后一位XA0,当一个区域配置成32位的总线模式时,XA0/XWE1引脚的功能为选通信号XWE1.

21. F28335内部有16个中断线,其中包括2个不可屏蔽中断(RESET和NMI)

与14个可屏蔽中断。

22. ADC将模拟量转化为数字量通常要经过4个步骤:采样、保持、量化和编码 23. F28335的ADC模块主要特点:12位模数转换、2个采样保持器、同时或

顺序采样。模拟电压输入范围0~3V,ADC转换频率最高可配置为25MHZ,采样带宽12.5MHZ,16通道模拟输入。16个结果寄存器存放ADC转换的结果,转换后的数字量为:数字值=4095x(输入模拟值-ADCLO)/3 24. 级联模式下,ADCINA0, ADCINB1, ADCINA2和ADCINB5输入通道连续轮回顺

序采样,请写出相关代码。 答: //配置ADC

AdcRegs.ADCTRL1.bit.SEQ_CASC=1; AdcRegs.ADCTRL1.bit.CONT_RUN=1; AdcRegs.ADCMAXCONV.bit.MAX_CONV1=0x3; AdcRegs.ADCCHSELSEQ1.bit.CONV00 =0x0; AdcRegs.ADCCHSELSEQ1.bit.CONV01=0x9; AdcRegs.ADCCHSELSEQ1.bit.CONV02=0x2; AdcRegs.ADCCHSELSEQ1.bit.CONV03=0xD;

转换结果:ADCINAO->AdcRegs.ADCRESULTO; ADCINB1>AdcRegs.ADCRESULT1; ADCINA2->AdcRegs.ADCRESULT2;

ADCINB5->AdcRegs.ADCRESULT3;

24.设系统时钟为150MHz,若要产生频率为10kHz、占空比为50%的PWM波形,则在增减计数模式下时基周期寄存器TBPRD=_7500 、计数比较寄存器CMPA=_3750

25.请逐句解释下面的语句:

GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 0; // 将GPIO0配置为通用I/O引脚 GpioCtrlRegs.GPAMUX1.bit.GPIO1 = 0; // 将GPIO1配置为通用I/O引脚 GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 1; // 将GPIO0配置为ePWM1A功能 GpioCtrlRegs.GPAMUX1.bit.GPIO1 = 1; // 将GPIO1配置为ePWM1B功能

26.请写出用GPIO1交替输出高低电平的代码

GpioCtrlRegs.GPAMUX1.bit.GPIO1 = 0; GpioCtrlRegs.GPADIR.bit.GPIO1 = 1;

方法1:

GpioDataRegs.GPASET.bit.GPIO1 = 1; DELAY_US(1000); DELAY_US(1000);

GpioDataRegs.GPACLEAR.bit.GPIO1 = 1;

方法2:

GpioDataRegs.GPATOGGLE.bit.GPIO1 = 1; DELAY_US(1000);

方法3:

GpioDataRegs.GPADAT.bit.GPIO1 = 1; DELAY_US(1000);

GpioDataRegs.GPADAT.bit.GPIO1 = 0; DELAY_US(1000);

27.F28335有7个外部引脚中断,但88个GPIO引脚只有64个可通过软件配置成外部中断引脚,其中GPIO0~GPIO31只能配置为外部中断1和2,GPIO32~GPIO63只能配置为外部中断3、4、5、6和7

28. F28335一共有88个GPIO,分为3组。其中A组GPIO可通过软件配置成外部中断1、2以及NMI功能,B组GPIO可通过软件配置成外部中断3、4、5、6和7功能

29.简述将GPIO配置为外部中断功能的步骤 1)将数字量I/O配置为GPIO功能 2)将数字量I/O配置为输入方向 3)将数字量I/O量化配置正确 4)利用外部中断选择寄存器选择相应的引脚为外部中断源 5)为此GPIO触发信号设置极性,上升沿、下降沿或者双边沿 6)使能外部中断

30.请在下面各语句后面加上注释 GpioCtrlRegs.GPAMUX1.bit.GPIO12 = 0; //将GPIO12作为通用I/O口

GpioCtrlRegs.GPADIR.bit.GPIO12 = 0; //将GPIO12配置为输入方向 GpioCtrlRegs.GPAQSEL1.bit.GPIO12= 0; //0量化

GpioIntRegs.GPIOXINT1SEL.bit.GPIOSEL = 12; //GPIO12被配置成外部中断1 XIntruptRegs.XINT1CR.bit.POLARITY= 0; //外部中断1设置为下降沿触发 XIntruptRegs.XINT1CR.bit.ENABLE = 1; //使能外部中断1

31.请写出将GPIO12配置为外部中断1的代码 GpioCtrlRegs.GPAMUX1.bit.GPIO12 = 0;

//将GPIO12作为通用I/O口

GpioCtrlRegs.GPADIR.bit.GPIO12 = 0; //将GPIO12配置为输入方向 GpioCtrlRegs.GPAQSEL1.bit.GPIO12= 0; //0量化

GpioIntRegs.GPIOXINT1SEL.bit.GPIOSEL = 12; //GPIO12被配置成外部中断1 XIntruptRegs.XINT1CR.bit.POLARITY= 0; //外部中断1设置为下降沿触发 XIntruptRegs.XINT1CR.bit.ENABLE = 1; //使能外部中断1

32.F28335的中断采用的是3级中断机制,分别为外设级中断、PIE级中断和CPU级中断

33. PIE将外设中断分成了12个组,分别对应着CPU的12个可屏蔽中断线,每1组由8个外设级中断组成