嵌师案例分析(02)

感谢您能抽出几分钟时间来参加本次答题,现在我们就马上开始吧!
11.1案例6、某车载导航系统的结构如图11-22所示, 由导航处理系统和显示系统两部分组成。导航处理系统安装在某型车的设备区,显示系统安装在某型车的前方,便于驾驶员观看和操作。

导航处理系统由主处理机模块、电子盘模块、信号处理模块和电源模块组成,主处理机模块执行电子地图功能、导航控制功能等,生成的导航显示画面通过信号线在LCD液晶彩色显示屏显示给驾驶员;信号处理模块处理外部采集数据,将处理后的数据通过内部总线传输给主处理机模块;电子盘模块存储电子地图数据及导航数据。

显示系统由LCD液晶彩色显示屏、面板键盘(自定义键盘)和电源模块组成,主要是显示导航画面,也可通过面板键盘进行导航控制。


11.1案例6-1、GPS天线接收卫星信号,将定位信息以帧的形式,通过RS232串行接口传输给主处理机模块。通常RS232的管脚规格如表11-4所示。 如果通过软件进行流量控制,也就是将流量控制信息以特殊的数据进行发送,使用上表的哪两个管脚进行状态信息发送?
    ____________
11.1案例6-2、GPS天线接收卫星信号,将定位信息以帧的形式,通过RS232串行接口传输给主处理机模块。通常RS232的管脚规格如表11-4所示。 如果通过硬件方式进行流量控制,使用上表中的哪两个管脚进行状态信息发送?
    ____________
11.1案例6-3、GPS天线接收卫星信号,将定位信息以帧的形式,通过RS232串行接口传输给主处理机模块。通常RS232的管脚规格如表11-4所示。 若RS232适配器的FIFO深度为4字节,通信波特率为9600b/s,数据位为8位,无效验,停止位为1,无数据流控。在应用设计中每次以4字节为单位进行数据发送,每两次发送之间严格控制时间间隔为10ms,连续发送100次,在此过程中忽略所有由于调度等因素引起的发送延迟。那么,从第1次发送开始,到第100次数据发送出去,消耗的时间为多少毫秒?
    ____________
11.1案例6-4、主处理机模块与信号处理模块间通过双端口存储器进行数据交换。李工设计时,将双端口存储器空间划分为两个缓冲区,两个缓冲区分别交替地接收信号处理机传输来的最新数据,然后按数据块方式提供给用户程序使用。

假设每个缓冲区的大小512KB,将512KB数据写入当前空闲缓冲区接口服务为Write_Buffer,将当前有效的512KB数据读出缓冲区的接口服务为Read_Buffer,假设双端口存储器中不提供硬件信号量,两个缓冲区间的互斥操作由软件标记实现,软件对双端口存储器的单次操作(读写一个字的操作)为原子操作。

下面是用C语言设计的一个组对双缓冲区的管理程序代码,请填补该程序代码中的空缺。

——————————————————————————

int *BufferFlag[2]; /*0表示无有效数据,0xff表示有新数据*/

int *Mutex[2]; /*软件锁,0表示未锁定,0xff表示锁定*/

int Read_Buffer(int id, char *data); /*从缓冲区读数据,用于数据处理模块,id表示缓冲区2,data为存放读取数据的缓冲,返回值表示读取到有效数据的长度*/

void Write_Buffer(int id, char *data); /*向缓冲区写数据,用于信号处理模块,id表示缓冲的序列号,0表示缓冲区1,1表示缓冲区2,data为待写入数据的缓冲*/

int INIT_PPC(){/*数据处理模块端的初始化,缓冲区起始地址为0xffffc000*/

BufferFlag=(int *) 0xffffc000;

Mutex=(int *) 0xffffc010;

*BufferFlag[0]=0;

*BufferFlag[1]=0;

*Mutex[0]=0;

*Mutex[1]=0;

return (0);

}

int PPC_Read_Data(char *Data){ /*数据处理模块读数据程序段*/

int len=0;

if ((!(*BufferFlag[0]))&&(!(*BufferFlag[1]))){

      return(0); /*无新数据*/

}

if (*BufferFlag[0]){

      if(___(1)___){

             *Mutex[0]=0xff;

             len=Read_Buffer(0,Data);

             *BufferFlag[0]=0x00;

             ___(2)____;

}

}

else {

      if(*BufferFlag[1]){

           if(!(*Mutex[1])){

                  *Mutex[1]=0xff;

                  ___(3)___;

                  *BufferFlag[1]=0x00;

                  *Mutex[1]=0x00;

}

}

}

Return (len);

}

int DSP_Write_Data(){

/*信号处理模块写数据程序段,初始化与数据处理模块端类似,同样以BufferFlag表示与数据处理模块端的对应的标志,即两端操作的是相同的地址空间;同样Mutex也表示与数据处理模块端的对应的软件锁,即两端操作的是相同的地址空间。这里就略去双口在DSP上的起始地址说明和初始化部分。*/

char Data[1024*512];

while(1){

if(!(*Mutex[0])){

*Mutex[0]=0xff;\

Write_Buffer(0,Data);

*BufferFlag[0]=0xff;

*Mutex[0]=0x00;

}

else if (!(*Mutex[1])){

    *Mutex[1]=0xff;

    Write_Buffer(1,Data);

    *BufferFlag[1]=0xff;

    *Mutex[1]=0x00;

}

}

return (0);

}


    ____________
11.1案例6-5、在进行面板键盘处理设计时,通常在扫描键盘过程中,按键会产生机械抖动。针对抖动问题,王工人为只有通过硬件设计才能消除抖动,而李工认为用软件方法就可以解决该问题。针对抖动问题,硬件使用什么方式消除?
    ____________
11.1案例6-6、在进行面板键盘处理设计时,通常在扫描键盘过程中,按键会产生机械抖动。针对抖动问题,王工人为只有通过硬件设计才能消除抖动,而李工认为用软件方法就可以解决该问题。针对抖动问题,软件使用什么方式消除?
    ____________
11.1案例7、某公司承接了开发周期为6个月的某机载嵌入式系统软件的研制任务。该机载嵌入式系统硬件由数据处理模块、大容量模块、信号处理模块、FC网络交换模块和电源模块组成,如图11-23所示。 数据处理模块和大容量模块的处理器为PowerPC7447,数据处理模块主要对机载数据进行处理,完成数据融合;大容量模块主要存储系统数据,同时也有数据处理的能力;信号处理模块的处理器为专用的数字信号处理DSP,完成雷达数据处理,并将处理后的数据发送给数据处理模块;FC网络交换模块为已开发的模块,本次不需要开发软件,主要负责系统的数据交换;电源模块主要负责给其他模块供电,电源模块上没有软件。

PowerPC7447和DSP是32位处理器,内存按字节编址。PowerPC7447以大端方式(big_endian)存储数据,DSP以小端方式(little_endian)存储数据。

11.1案例7-1、在数据处理模块1中,需要使用A/D转换器对外部电源模块的电压进行检测。当前数据处理模块中的A/D转换器为10位,当A/D转换器的输入模拟电压最大为5.115V时,A/D输出为3FFH。

通过配置A/D转换器的中断寄存器及比较寄存器(比较寄存器的值是用来和A/D转换结果进行比较),可以将A/D转换器配置为输入电压大于一定值时产生中断,也可以配置为输入电压小于一定值时产生中断,通过此种方式向系统报警。

此A/D转换器的量化间隔为多少毫伏?(量化间隔为A/D转换器最低有效位1位所代表的模拟电压值)。

    ____________
11.1案例7-2、在数据处理模块1中,需要使用A/D转换器对外部电源模块的电压进行检测。当前数据处理模块中的A/D转换器为10位,当A/D转换器的输入模拟电压最大为5.115V时,A/D输出为3FFH。

通过配置A/D转换器的中断寄存器及比较寄存器(比较寄存器的值是用来和A/D转换结果进行比较),可以将A/D转换器配置为输入电压大于一定值时产生中断,也可以配置为输入电压小于一定值时产生中断,通过此种方式向系统报警。

如果规定下限阈值为4.092V,要使用中断检测这个电压,此时A/D转换器的比较寄存器应配置为多少?

    ____________
11.1案例7-3、在数据处理模块1中,需要使用A/D转换器对外部电源模块的电压进行检测。当前数据处理模块中的A/D转换器为10位,当A/D转换器的输入模拟电压最大为5.115V时,A/D输出为3FFH。

通过配置A/D转换器的中断寄存器及比较寄存器(比较寄存器的值是用来和A/D转换结果进行比较),可以将A/D转换器配置为输入电压大于一定值时产生中断,也可以配置为输入电压小于一定值时产生中断,通过此种方式向系统报警。

如果采用查询方式实现电源电压超限报警功能,程序如何判断A/D转换器完成了单次数据转换?

当采用查询方式来检查电源电压是否超过一定阈值或者低于一定阈值的时间时,需要

___的___的___,____的____,____通过不断查询____中对应的___来判断是否____。

    ____________
11.1案例7-4、李工负责系统软件的研发。在软件策划过程中为了加快软件的开发,确保进度,李工将软件分解位若干软件配置项,每个软件配置项指定一人开发。每个配置项的开发过程包括:软件需求分析、软件概要设计、软件详细设计、软件编码、软件单元测试和部件级测试六个阶段。李工的做法符合软件工程的要求吗?(回答一项)为什么?(回答一项)如果不符合,软件____和软件____在____时将不能通过。
    ____________
11.1案例7-5、田工负责编写信号处理模块与数据处理模块的通信程序,约定好的数据组织方式如表11-5所示。

以下是信号处理模块端的一段程序:

unsigned int msgid=0x01;//表示从信号处理模块发送到数据处理模块2的消息ID

typedef struct FCSND_Data_struct {

unsigned char A;

unsigned int B;

unsigned short C;

unsigned char D[16];

}FCSND_DATA;

FCSND_DATA sendData;

FillfcData(&senddata);//将待发送数据赋值到sendData数据结构中sendfc((msgid, &sendData, sizeof(FCSND_DATA));//发送数据

以下是数据处理模块2端的一段程序:

unsigned int msgid =0x00;//接收到的消息ID

typedef struct FCRCV_Data_struct{

unsigned char A;

unsigned int B;

unsigned short C;

unsigned char D[16];

}FCRCV_DATA;

FCRCV_DATA recvData;

recvfc((msgid, &recvData, sizeof (FCRCV_DATA));//接收数据

请问以上程序是否存在问题?如果存在问题,请分析原因。


    ____________
11.1案例8、个人数字助理(Personal Digital Assistant, PDA)是典型的嵌入式系统,具有计算、电话、网络和个人信息管理等多项功能。某单位欲开发一款PDA产品,选择S3C2410作为CPU,存储器采用SRAM、DRAM和NAND Flash三种内置存储器,显示器采用LCD,图11-24为PDA的硬件示意图。软件采用嵌入式Linux操作系统。
11.1案例8-1、不同类型的存储器,其特性也不同,请完成表11-6中的空白处内容,在“易失性”栏中填写“是”或“否”,在“相对读写速度”栏中填写“块”“中”或“慢”。
    ____________
11.1案例8-2、该PDA产品的软件如下所示: (1)记事本(2)电源管理(3)TCP/IP协议栈(4)文件系统(5)LCD驱动程序(6)游戏软件(7)GUI软件(8)GPS导航定位软件(9)处理触屏的软件(10)Word文字处理软件。以上所列软件属于“应用软件”的是____。(填数字,用空格区分)
    ____________
11.1案例8-3、该PDA产品的软件如下所示: (1)记事本(2)电源管理(3)TCP/IP协议栈(4)文件系统(5)LCD驱动程序(6)游戏软件(7)GUI软件(8)GPS导航定位软件(9)处理触屏的软件(10)Word文字处理软件。以上所列软件属于“系统软件”的是____。(填数字,用空格区分)
    ____________
11.1案例8-4、该PDA产品的软件如下所示: (1)记事本(2)电源管理(3)TCP/IP协议栈(4)文件系统(5)LCD驱动程序(6)游戏软件(7)GUI软件(8)GPS导航定位软件(9)处理触屏的软件(10)Word文字处理软件。以上所列软件属于“网络软件”的是____。(填数字,用空格区分)
    ____________
11.1案例8-5、该PDA产品的软件如下所示: (1)记事本(2)电源管理(3)TCP/IP协议栈(4)文件系统(5)LCD驱动程序(6)游戏软件(7)GUI软件(8)GPS导航定位软件(9)处理触屏的软件(10)Word文字处理软件。以上所列软件属于“驱动软件”的是____。(填数字,用空格区分)
    ____________
11.1案例8-6、该PDA产品的操作系统采用嵌入式Linux,网络协议采用TCP/IP,图11-26是未完成的面向连接的Socket通信流程图。 当前有列子程序(参数和返回值略)A-“Accept()”、B-“Bind()”、C-“Connect()”、D-“Listen()”、E-“Read()”、F-“Write()”;则图11-26的空缺处(1)为____,(2)为____,(3)为____,(4)为____,(5)为____,(6)为____,(7)为____。(填入对应的字母)
    ____________

20题 | 被引用0次

模板修改
使用此模板创建