首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C语言代码,回答问题,将解答填入答题纸的对应栏内。 【说明】 在某工厂的物流车间,设计一款智能监测系统,实现对车间进行24小时不问断图像采集的功能。王工设计了一个实时监测采集系统,主要由图像采集卡和数据存储卡组成。由于实时图像的数据量
阅读下列说明和C语言代码,回答问题,将解答填入答题纸的对应栏内。 【说明】 在某工厂的物流车间,设计一款智能监测系统,实现对车间进行24小时不问断图像采集的功能。王工设计了一个实时监测采集系统,主要由图像采集卡和数据存储卡组成。由于实时图像的数据量
admin
2020-05-31
34
问题
阅读下列说明和C语言代码,回答问题,将解答填入答题纸的对应栏内。
【说明】
在某工厂的物流车间,设计一款智能监测系统,实现对车间进行24小时不问断图像采集的功能。王工设计了一个实时监测采集系统,主要由图像采集卡和数据存储卡组成。由于实时图像的数据量巨大,设计采用DMA方式进行数据传输,当DMA传输完成后,DMA控制器会发起一个硬件中断。操作系统接收到硬件中断,调用中断服务程序。
该系统的软件基于某嵌入式操作系统开发,支持中断管理、多任务调度等功能。与DMA相关的一段驱动程序示例代码如下。
【C语言程序声明与定义】
/*DMA控制寄存器基地址*/
#define DMA0_BASE_ADDR 0xC0021100
#define DMA1_BASE_ADDR 0xC0021180
/*DMA中断向量号*/
#define DMA0_INT_VECTOR 5
#define DMA1_INT_VECTOR 6
UINT32 Dma err ret=0;/* DMA传输状态全局变量,用于在DMA传输函数和DMA中断处理程序中传递DMA完成状态*/
SEM_ID sem_DMA1;/*互斥信号量*/
SEM_ID sem_DMA2;/*同步信号量*/
SEM_ID semBCreate(int/*排队规则*/,int/*初始值*/);/*操作系统创建信号量api*/
int semTake(int/*信号量ID*/,int/*等待时间*/); /*操作系统获取信号量api*/
int semGive(int/*信号量ID*/);/*操作系统释放信号量api*/
extern int intConnect(int/*中断向量*/,VOIDFUNCPTR/*中断服务程序*/,int/*参数*/);/*操作系统释中断连接程序api*/
【程序1】
/* DMA功能初始化*/
UINT32 dma_init()
{
/*创建互斥信号量*/
sem DMA1=semBCreate(SEM_Q_FIFO/*系统定义的排队方式*/,1);
/*创建同步信号量*/
sem DMA2=semBCreate(SEM_Q_FIFO/*系统定义的排队方式*/,0);
/*向操作系统挂接中断处理程序*/
intConnect(DMA0_INT_VECTOR,((1)________________)dma_intHandle,0);
return 0;
}
【程序2】
/*DMA传输函数
返回值1表示正常完成,2表示传输超时,4表示奇偶校验错
*/
UINT32 dma trans(UINT32 src_addr,/*DMA传输源地址*/
UINT32 dst addr,/*DMA传输目的地址*/
UINT32 length /*DMA传输长度*/
)
{
Dma_err_ret=0; //第1行
/* DMA控制寄存器的操作序列为原子操作,进入临界区*/
semTake((2)________________,WAIT_FOREVER/*系统定义的等待时间*/); //第2行
/* DMA寄存器初始化*/
/*代码略…*/
/*设置DMA传输的源地址、目的地址、长度*/
/*代码略…*/
/*启动DMA传输*/
/*代码略…*/
/*等待DMA传输完成*/
semTake((3)________________,WAIT_FOREVER/*系统定义的等待时间*/); //第3行
/*退出临界区*/
semGive((4)________________); //第4行
/*返回DMA传输完成状态*/
return(Dma_err_ret); //第5行
)
【程序3】
/*DMA中断处理程序*/
void dma_intHandle()
{
UINT32 tempReg=0;
UINT32 baseAddr=DMA0_BASE_ADDR;
/*获取DMA传输完成状态寄存器*/
tempReg=*(UINT32*)(base_addr+0x04);
*(UINT32*)(base_addr+0x04)=tempReg&0xff;
/*
*保存DMA传输完成状态到全局变量
* 1表示正常完成,2表示传输超时,4表示奇偶校验错
*/
Dma_err_ret=tempReg&0xff;
/*释放同步信号量,通知DMA传输完成*/
semGive((5)________________);
}
DMA控制器的寄存器操作序列,必须为原子操作,该程序中使用了两个信号量,一个用于进行寄存器操作系统的临界区保护,一个用于在传输函数和DMA完成中断处理程序之间同步。请根据信号量创建时的不同初始值,在程序2的dma_trans函数和程序3 dma_intHandle函数中,补充空(2)________________、(3)________________、(4)________________、(5)________________处的内容。
选项
答案
(2)sem_DMA1 (3)sem_DMA2 (4)sem_DMA1 (5)sem_DMA2
解析
多任务互斥是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。同步则是指在互斥的基础上(大多数情况),通过其他机制实现访问者对资源的有序访问。在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥的。少数情况是指可以允许多个访问者同时访问资源。
该程序中使用了两个信号量来实现同步与互斥机制,一个是互斥信号量sem DMA1,用于进行寄存器操作的临界区保护,一个是同步信号量sem DMA2,用于在传输函数和DMA完成中断处理程序之间同步。
转载请注明原文地址:https://kaotiyun.com/show/6LWZ777K
本试题收录于:
嵌入式系统设计师下午应用技术考试题库软考中级分类
0
嵌入式系统设计师下午应用技术考试
软考中级
相关试题推荐
试题五阅读下列说明和代码,回答问题1和问题2,将解答写在答题纸的对应栏内。[说明]某一本地口令验证函数(C语言环境,X8632指令集)包含如下关键代码:某用户的口令保存在字符数组origPassword中,用户输入的口令保存在字符数组userPass
阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。[说明]防火墙是一种广泛应用的网络安全防御技术,它阻挡对网络的非法访问和不安全的数据传递,保护本地系统和网络免于受到安全威胁。图3—1给出了一种防火墙的体系结构。[问题3]设图
阅读下列说明和图,回答问题1至问题2,将解答填入答题纸的对应栏内。[说明]访问控制是对信息系统资源进行保护的重要措施,适当的访问控制能够阻止未经授权的用户有意或者无意地获取资源。访问控制一般是在操作系统的控制下,按照事先确定的规则决定是否允许用户对资源
阅读下列说明,回答问题,将解答填入答题纸的对应栏内。【说明】假设用户A和用户B为了互相验证对方的身份,设计了如下通信协议:1.A→B:RA2.B→A:f(PAB||RA)||RB3.A→B:f(PAB||_____
信息通过网络进行传输的过程中,存在着被篡改的风险,为了解决这一安全隐患,通常采用的安全防护技术是()。
在信息系统安全防护体系设计中,保证“信息系统中数据不被非法修改、破坏、丢失等”是为了达到防护体系的__________________的目标。
含有两个密钥的3重DES加密:C=Ek1[Dk2[Ek1[P]]],其中Kk1≠Kk2,则其有效的密钥长度为(35)________。
数字签名是对以数字形式存储的消息进行某种处理,产生一种类似于传统手书签名功效的信息处理过程。数字签名标准DSS中使用的签名算法DSA是基于ElGamal和Schnorr两个方案而设计的。当DSA对消息m的签名验证结果为True,也不能说明(11)_____
在操作系统中,解决进程间的(1)两种基本关系,往往运用对信号量进行(2)的(3)。例如,为保证系统数据库的完整性,可以把信号量定义为某个库文件(或记录)的锁,初值为1,任何进程存取该库文件(或记录)之前先对它作一个(4),存取之后对它作一个(5),从而做到
Thedocumentmanagementofinformationsystemengineeringsupervisionisanimportantwork,amongthem,the_______isageneralc
随机试题
下列哪些蛋白在应激急性期反应时少
在建设工程设计施工一体化/总承包合同中,对争议的处理,一般以()作为解决的最终方式。
甲乙两公司签订的购货合同约定,乙公司应当在8月30日向甲公司交付货物。8月初,乙公司通过铁路运输将货物发运到甲公司所在地车站,此时甲公司享有的权利有( )。
均质土坝土料压实的现场施工质量采用()控制。
甲乙二人共同盗得某珍贵文物。二人为了便于分赃同时也利于销赃,将文物砸碎私分。甲乙的行为构成盗窃罪与故意毁损文物罪。()
以下说法不正确的是()。
在CORBA体系结构中,负责屏蔽底层网络通信细节的协议是______。A.IDLB.RPCC.ORBD.GIOP
Thispartistotestyourabilitytodopracticalwriting.Youarerequiredtowriteabroadcastingannouncementaccordingtothe
Surfingisathrillinganddangerousactivityinwhichapersonbalancesonaboardandridesthesurfaceofabig,crashocean
A、Itissomethingthattheycancontrol.B、Theyknowthesituationwellenough.C、Theyarealwaysverypowerful.D、Theyhateto
最新回复
(
0
)