一起答
单选

下面是基于ARM内核的嵌入式芯片中有关GPIO的叙述,其中错误的是()。

  • A.GPIO作为输入接口时具有缓冲功能
  • B.GPIO作为输出接口时具有锁存功能
  • C.GPIO的引脚一般是多功能复用的
  • D.GPIO一般只具有0态和1态,不具有高阻状态
参考答案
查看试卷详情
相关试题
  1. 已知R5=0xF0811880,R6=0x41000044,则执行指令AND R0,R5,R6后,寄存器R0=_______,R5=_______。

  2. 某食堂的售饭系统由一个后台数据库系统及若干个前台刷卡机组成,其基本功能具体描述如下:

    a、刷卡机的硬件组成中,除了必须的最小硬件系统外,还需要IC卡读写模块、8段LED组成的显示模块、键盘模块、蜂鸣器模块、RS-485通信模块等。

    b、客户需要事先办理本系统的消费IC卡,预存若干金额,办卡信息及预存金额存储在后台数据库系统中。

    c、客户消费时,用IC卡在刷卡机上支付。支付时,由售饭员在刷卡机上输入客户缴费金额且在LED显示器上显示,然后客户刷卡,若IC卡合法,则把缴费金额和IC卡信息传输给后台数据库系统。若IC卡不合法,用蜂鸣器发不合法提示音。

    d、后台数据库系统接收到刷卡机的信息后,将根据IC卡号查询出该卡的余额,若余额大于等于应缴费额,则进行扣费,再把当前余额及扣费正确信息回传给刷卡机。若余额小于应缴费额,则回传扣费不正确信息给刷卡机。

    e、刷卡机接收到回传的信息后,显示回传的余额,且若是扣费正确信息,则用蜂鸣器发"扣费正确"提示音;若是扣费不正确信息,则用蜂鸣器发"扣费不正确"提示音。

    根据上述功能要求的描述,若采用S3C2410芯片为核心来构建刷卡机的硬件平台,请完善下面的叙述(程序)和回答有关的问题。

    (1)在设计硬件时,最小的硬件系统是保证系统能正常工作的必要硬件组成。它包括电源电路、___【1】____、复位电路、调试测试接口、以及___【2】____。

    (2)若在硬件设计时,选用8个共阴极的8段LED(其排列如图1所示)组成2组显示器(1组4个8段LED),用于显示当前消费金额和余额。若采用GPC0~GPC6、GPC7外接同向驱动后,分别连接到显示"消费金额"的LED显示器段信号线a~f、dp上,采用GPD0~GPD3外接同向驱动后分别控制该组显示器中低数据位~高数据位的4个8段LED位信号线。另外采用GPC8~GPC14、GPC15外接同向驱动后,分别连接到显示"余额"的LED显示器段信号线a~f、dp上,采用GPD4~GPD7外接同向驱动后分别控制该组显示器中低数据位~高数据位的4个8段LED位信号线。

    那么,GPC0~GPC15引脚的功能为:___【3】____,GPD0~GPD7引脚的功能为:___【4】____。初始化GPC0~GPC15引脚功能的语句可以是://rGPCCON是端口C的控制寄存器,其格式见后面附录rGPCCON=___【5】____;

    初始化GPD0~GPD7引脚功能的语句可以是//rGPDCON是端口D的控制寄存器,其格式见后面附录rGPDCON=((rGPDCON|0x00005555)&___【6】____);若只在"余额"LED显示器中的次高数据位LED上显示字符"3",相关驱动程序中可用下面语句实现。

    rGPCDAT= ___【7】____;//输出"3"的段信号

    rGPDDAT= ___【8】____;//输出次高数据位被点亮的控制信号

    (3)刷卡机上输入客户缴费金额的键盘,在设计时采用非标准键盘组成,键盘接口设计成4?的阵列(其按键排列示意图如图2所示)。键盘接口电路中选用GPE0~GPE3来输出键盘行扫描信号,选用GPE4~GPE7来输入键盘列信号。软件设计时设计者自行设计了键盘扫描函数,请你补充完善之:

    //*KEYOUTPUT是键盘扫描时的输出地址,KEYINPUT是键盘读入时的地址

    #defineKEYOUTPUT (*(volatile INT8U*)0x56000044)

    #defineKEYINPUT  (*(volatile INT8U*)0x56000044)

    INT16UScanKey()

    {

    INT16Ukey=0xFFFF;

    INT16Ui;

    INT8Utemp=0xFF,output; //rGPECON是端口E的控制寄存器,其格式见后面附录

    rGPECON=((rGPECON &0xFFFFFF00) | ___【9】____); //初始化GPE0~GPE3为输出

    rGPECON=rGPECON & ___【10】____ ;//初始化GPE4~GPE7为输入

    //下面判断键盘中是否有键按下for(i=1;(( i<= 8)&&(i>0)); ___【11】____ )  

    {

    output|= 0xFF;

    output&= (~i);

    KEYOUTPUT=output;

    temp= KEYINPUT;

    if((temp&0xF0)!= ___【12】____)//判断列信号是否为全"1"

    {

    key= (~i);

    key<<= 8;

    key|= ((temp&0xF0)|0x0F); //求得按键的返回值

    return(key); //函数返回按键对应的值

    }

    }

    return0xFFFF;

    }

    应用程序中可根据上面的键盘扫描函数的返回值,来判断是否有按键按下,并确定是哪个按键按下。例如:若返回值为:___【13】____时,可知是键盘中的"6"键按下,若返回值为:___【14】____时,可知是键盘中的"确认"键被按下。若无键按下时,返回值应为:___【15】____。

    (4)刷卡机与后台数据库系统通信采用RS-485总线。因此在硬件设计时,需要采用S3C2410芯片内部的___【16】____部件外加电平转换芯片等来实现。若在软件设计时,其初始化程序中波特率设置为9600bps,数据格式设置为:8位数据位、无校验、1位停止位。那么,1秒时间内最多能传输__【17】_____字节的信息。

    (5)刷卡机上的应用软件是在无操作系统环境下开发的。设计者可以自行设计系统的启动引导程序,在该程序中完成异常向量设置、堆栈指针设置以及必要的硬件初始化。ARM9体系结构中规定的复位异常所对应的异常向量地址为____【18】___。系统上电/复位后,将从该地址处开始执行程序,因为ARM9体系结构中规定的各异常向量地址之间间隔通常为__【19】_____个字节。因此,复位异常向量地址处通常存储一条___【20】____指令的代码。

    说明:下面是试题解答时需要用到的寄存器格式及相关说明。

    1)端口C的控制寄存器(GPCCON)

    引脚GPCCON的位描述

    GPC15[31:30]00=输入,01=输出,10=VD7,11=保留

    GPC14[29:28]00=输入,01=输出,10= VD6,11=保留

    GPC13[27:26]00=输入,01=输出,10= VD5,11=保留

    GPC12[25:24]00=输入,01=输出,10= VD4,11=保留

    GPC11[23:22]00=输入,01=输出,10= VD3,11=保留

    GPC10[21:20]00=输入,01=输出,10= VD2,11=保留

    GPC9[19:18]00=输入,01=输出,10= VD1,11=保留

    GPC8[17:16]00=输入,01=输出,10= VD0,11=保留

    GPC7[15:14]00=输入,01=输出,10=LCDVF2,11=保留

    GPC6[13:12]00=输入,01=输出,10= LCDVF1,11=保留

    GPC5[11:10]00=输入,01=输出,10=LCDVF0,11=保留

    GPC4[9:8]00=输入,01=输出,10=VM,11=IIS数据输出

    GPC3[7:6]00=输入,01=输出,10=VFRAME,11= IIS数据输入

    GPC2[5:4]00=输入,01=输出,10=VLINE,11=保留

    GPC1[3:2]00=输入,01=输出,10=VCLK,11=保留

    GPC0[1:0]00=输入,01=输出,10=LEND,11=保留

    2)端口D的控制寄存器(GPDCON)

    引脚GPDCON的位描述

    GPD15[31:30]00=输入,01=输出,10=VD23,11=保留

    GPD14[29:28]00=输入,01=输出,10= VD22,11=保留

    GPD13[27:26]00=输入,01=输出,10= VD21,11=保留

    GPD12[25:24]00=输入,01=输出,10= VD20,11=保留

    GPD11[23:22]00=输入,01=输出,10= VD19,11=保留

    GPD10[21:20]00=输入,01=输出,10= VD18,11=保留

    GPD9[19:18]00=输入,01=输出,10= VD17,11=保留

    GPD8[17:16]00=输入,01=输出,10= VD16,11=保留

    GPD7[15:14]00=输入,01=输出,10= VD15,11=保留

    GPD6[13:12]00=输入,01=输出,10= VD14,11=保留

    GPD5[11:10]00=输入,01=输出,10= VD13,11=保留

    GPD4[9:8]00=输入,01=输出,10= VD12,11=保留

    GPD3[7:6]00=输入,01=输出,10= VD11,11=保留

    GPD2[5:4]00=输入,01=输出,10= VD10,11=保留

    GPD1[3:2]00=输入,01=输出,10= VD9,11=保留

    GPD0[1:0]00=输入,01=输出,10= VD8,11=保留

    3)端口E的控制寄存器(GPECON)

    引脚GPECON的位描述

    GPE15[31:30]00=输入,01=输出,10=IICSDA,11=保留

    GPE14[29:28]00=输入,01=输出,10=IICSCL,11=保留

    GPE13[27:26]00=输入,01=输出,10=SPICLK0,11=保留

    GPE12[25:24]00=输入,01=输出,10=SPIMOSI0,11=保留

    GPE11[23:22]00=输入,01=输出,10=SPIMISO0,11=保留

    GPE10[21:20]00=输入,01=输出,10=SSDAT3,11=保留

    GPE9[19:18]00=输入,01=输出,10=SSDAT2,11=保留

    GPE8[17:16]00=输入,01=输出,10=SSDAT1,11=保留

    GPE7[15:14]00=输入,01=输出,10=SSDAT0,11=保留

    GPE6[13:12]00=输入,01=输出,10=SDCMD,11=保留

    GPE5[11:10]00=输入,01=输出,10=SDLCK,11=保留

    GPE4[9:8]00=输入,01=输出,10=IISSDO,11=IIS数据输出

    GPE3[7:6]00=输入,01=输出,10=IISSI,11= IIS数据输入

    GPE2[5:4]00=输入,01=输出,10=CDCLK,11=保留

    GPE1[3:2]00=输入,01=输出,10=IISCLK,11=保留

    GPE0[1:0]00=输入,01=输出,10=IISLRCK,11=保留

    4)端口H的控制寄存器(GPHCON)

    引脚GPHCON的位描述

    GPH10[21:20]00=输入,01=输出,10=CLKOUT1,11=保留

    GPH9[19:18]00=输入,01=输出,10= CLKOUT0,11=保留

    GPH8[17:16]00=输入,01=输出,10=UEXTCLK,11=保留

    GPH7[15:14]00=输入,01=输出,10=RXD2,11=保留

    GPH6[13:12]00=输入,01=输出,10=TXD2,11=保留

    GPH5[11:10]00=输入,01=输出,10=RXD1,11=保留

    GPH4[9:8]00=输入,01=输出,10=TXD1,11=IIS数据输出

    GPH3[7:6]00=输入,01=输出,10=RXD0,11= IIS数据输入

    GPH2[5:4]00=输入,01=输出,10=TXD0,11=保留

    GPH1[3:2]00=输入,01=输出,10=nRTS0,11=保留

    GPH0[1:0]00=输入,01=输出,10=nCTS0,11=保留

    5)UART线路控制寄存器(ULCONn n可以是0、1、2)

    ULCONn的位[7][6][5:3][2][1]描述保留

    值为0确定红外模式

    0=正常操作模式

    1=正常操作模式确定校验类型

    0xx=无校验

    100=奇校验

    101=偶校验确定停止位数

    0=1位停止位

    1=2位停止位确定数据位

    00=5位01=6位

    10=7位11=8位6)TCFG0寄存器

    TCFG0的位功能描述初始状态值

    [31:24]保留0x00[23:16]在此不用0x00

    [15:8]确定Timer2,Timer3,Timer4的预分频系数0x00[7:0]确定

    Timer0,Timer1的预分频系数0x007)TCFG1寄存器

    TCFG1的位功能描述初始状态值[31:24]保留0x00

    [23:20]在此不用0b0000

    [19:16]确定Timer4的分频器值0000=2 0001=4 0010=8 0011=16

    [15:12]确定Timer3的分频器值0000=2 0001=4 0010=8 0011=16

    [11:8]确定Timer2的分频器值0000=2 0001=4 0010=8 0011=16

    [7:4]确定Timer1的分频器值0000=2 0001=4 0010=8 0011=16

    [3:0]确定Timer0的分频器值0000=2 0001=4 0010=8 0011=16

    说明:设置TCFG0、TCFG1可以确定预分频器系数、分频器值,如:通过设置TCFG0为0x0000001F,Timer0的预分频器系数选择为31,设置TCFG1为0x00000001,Timer0的分频器值选择为4。通过下面公式计算定时器的计数常数:

    定时器输入时钟频率=PCLK/(预分频系数+1)/分频器值

    计数常数=定时时间间隔/(1/定时器输入时钟频率)

    预分频系数的范围为0~255,分频器值的取值范围为2、4、8、16。

    6)TCON寄存器(注:此处不用的位被省略,其值默认为0x0000000)

    TCON的位功能描述初始状态值厖0x0000000[3]确定Timer0的自动装载功能

    1=自动装载0=一次停止0b0[2]确定Timer0的输出反转位

    1=TOUT0反转0=TOUT0不反转0b0[1]确定Timer0的更新

    1=更新TCNTB0和TCMPB0 0=不更新0b0[0]确定Timer0的启动/停止

    1=启动0=停止0b0

  3. RTLinux基本的设计理念就是“架空”Linux内核,以便让其他实时进程能尽快地被执行。RTLinux开发者并没有针对实时操作系统的特性而重写Linux的内核,而是将Linux的内核代码做一些修改,将Linux的任务以及Linux内核本身作为一个_______优先级的任务,而实时任务作为最_______优先级的任务。

  4. 已经R0=8000,R1=8800,执行指令MOV R0,R1, LSR#2后,R0=_______,R1=_______。

  5. 所有嵌入式系统都是由硬件和软件两部分组成的,硬件部分的主体是______和存储器;它们通过______接口(设备)与外部世界联系。

  6. 已知R2=1000,R3=200,执行指令MOV R2,R3, LSL#2后,R2=_______,R3=_______。

  7. 关于ARM嵌入式处理器的工作状态,以下说法正确的是()。

    • A.ARM状态是32位指令的状态,指令代码为16位和32位
    • B.Thumb状态为16位指令状态,指令长度可为16位,也可以为32位
    • C.Thumb-2状态兼容16位指令和32位指令编码
    • D.ARM状态和Thumb状态不可切换
  8. 下面是基于ARM内核的嵌入式芯片中有关GPIO的叙述,其中错误的是()。

    • A.GPIO作为输入接口时具有缓冲功能
    • B.GPIO作为输出接口时具有锁存功能
    • C.GPIO的引脚一般是多功能复用的
    • D.GPIO一般只具有0态和1态,不具有高阻状态
  9. 以下关于VxWorks操作系统的叙述中,错误的是()。

    • A.是目前公认为实时性很强、可靠性很高的一种嵌入式实时操作系统
    • B.在航空航天、通信和国防领域具有广泛的应用
    • C.属于大型商用操作系统,具有配套的VMWare集成开发环境,为开发者带来很大方便
    • D.支持基于抢占式优先级调度的任务管理
  10. ARM处理器当前运算操所产生的标志位记录在以下哪个寄存器中?()。

    • A.PSP
    • B.MSP
    • C.SPSR
    • D.CPSR