问答题 假设小区中每个住宅单元的门禁子系统由1个门厅控制器和若干个住户终端组成。本题要求设计一个门厅控制器,其基本功能有:
(1)本单元住户可以通过刷IC卡将单元门解锁,解锁10s之后门自动上锁。
(2)访客可以通过按键来呼叫单元内的住户,若住户未响应,30s后自动结束本次呼叫;若住户响应,发送访客的视频图像给住户终端,并进行对话。
(3)住户响应后,若允许进入,住户控制单元门解锁,解锁10s后门自动上锁;若禁止进入,住户控制结束本次呼叫。
根据上述功能要求的描述,若采用S3C2410芯片为核心来构建门厅控制器的硬件平台,并在无操作系统环境下构建其应用软件,请完善下面的叙述(程序)和回答有关的问题。
问答题 硬件构件设计时,除了需要设计电源电路、时钟电路、复位电路、存储器子系统、键盘及其接口电路、单元门解锁驱动电路、与住户终端的通信接口电路等硬件构件外,还需要设计的硬件构件是:
______电路、______电路和IC卡读卡模块等。
【正确答案】
【答案解析】视频采集电路 音频采集及回放电路
问答题 若单元门解锁驱动电路由GPC0引脚控制,GPC0引脚输出“0”信号时为上锁,GPC0引脚输出“1”信号时为解锁。GPC0引脚的初始化语句为
rGPCCON= ( (rGPCCON | 0x00000001) &OxFFFFFFFD); //rGPCCON是端口C的控制寄存器
则上锁控制语句和解锁控制语句分别为
rGPCDAT =______ //rGPCDAT是端口C的数据寄存器
rGPCDAT =______
【正确答案】
【答案解析】rGPCDAT & 0xFFFE
rGPCDAT | 0x0001
问答题 设计门厅控制器的应用程序时,需要设计3个任务函数,分别是:Main_Task() (主任务函数)、Key_Task() (键盘任务函数)、Card_Task() (读卡任务函数)。应用程序主函数的代码可以编写如下:
int main(void)
{
ARMTargetlnit(); //初始化ARM CPU的硬件
______; //初始化μC/OS-Ⅱ
OSTaskCreate(Main_Task,(void * )0,(OS_STK * )&Main_Stack[30],5);
OSTaskCreate(______,(void * )0,(OS_STK * )&Key_Stack[30],6);
OSTaskCreate(Card_Task,(void * )0,(OS_STK * )&Card_Stack[30],7);
______; //启动多任务调度
return 0;
}
在上述所生成的3个任务函数中,其中______任务函数的优先级最低。
【正确答案】
【答案解析】OSInit()
Key_Task()
OSStart()
Card_Task()或Card_Task或读卡
问答题 若IC卡读卡模块采用专用构件,该构件通过异步串行口提供读卡信息,其波特率为11520b/s,数据格式为:8位数据位、无校验、1位停止位。若设计时选用了UART1来完成其接口电路设计,请补充完善下面的初始化函数(注:主频参数为PCLK):
void UART1_Init()
{
rPCONH=(rPCONH&0xFFFFFOFF)10x0A00; //设置引脚功能
rUFCON1=0x0: //FIFO disable
rUMCON1=0x0:
rULCON1=______ //设置线路控制寄存器
rUCON1=0x245; //设置控制寄存器
//设置波特率,小数采用四舍五入
rUBRDIV1=( (int)(PCLK/______)-1);
}
【正确答案】
【答案解析】(0<<3) | (0<<2) | (3)
(115 200×16)+0.5