2024年上学期嵌入式系统设计课程大作业。
1、叙述下列相关名词的含义。
arm、xscale、pxa255、risc、体系结构。
2、画出嵌入式硬件系统组成的模块结构图。
3、叙述基于linux的嵌入式平台的搭建过程。
4、判断题。
)1.嵌入式系统调试通常可以分为硬件级调试和****器调试。
)2.在arm处理器中,快速中断(fiq)的优先级高于外部中断(irq)。
)能够永久或半永久地保存数据,rom内的数据永远不会丢失。
)4.内建测试系统(bist)是soc片上系统的重要结构之一,jtag测试接口是ic芯片测试方法的标准。
)的基本单元描述不包括库。
)6.嵌入式arm架构的嵌入式处理器同时支持大端、小端(big/little-endian)数据类型。
)7.嵌入式操作系统通常采用整体式内核或层次式内核的结构。
)中的t代表增强型乘法器。
)9.看门狗(watch dog)实际是一个简单的定时器,在固定时间内若正常清零,则自动复位处理器。
)由多家不同制造商生产,芯片外部提供的总线是不一致的。
) 内核稳定、功能强大并且可以裁减,因为非常适合嵌入式应用。
) 内核的中断服务程序运行于与所有进程都无关的中断上下文中。
)遵循posix标准,意味着绝大多数unix应用程序不需要任何改动就可以在linux系统上编译且运行。
)内核支持可以裁减的功能,因此它属于微内核架构。
)在fork()时采用了写时拷贝(简称cow)技术,允许父进程和子进程同时共享相同的物理页面。
)16.任何一个linux应用程序都需要调用exit()函数。
)17.当前的linux调度算法非常高效,但是查找当前最高优先级的可运行程序时,开销会随着可运行程序的多少而变化。
)的系统调用是作为c库的一部分提供的。
×)19.为了对硬件做出迅速的响应并完成对时间严格的操作,中断处理下半部必须在关中断状态下执行。
)的内存管理采用了分页的机制,因此即使是内核本身也全部是分页的。
)21.嵌入式系统由上到下主要分为3个层次:应用软件层,系统软件层,硬件层。
)22.嵌入式系统的软硬件是独立设计的。
)23.嵌入式系统设计需要建立交叉开发环境。
)24.通用系统程序开发不需要建立和使用交叉编译环境。
)25.对于c++**,gcc命令只能编译其源文件,而不能自动和c++程序使用的库链接。
)26.嵌入式系统可以没有操作系统。
)测试允许多个器件通过jtag接口串联在一起形成一个jtag链,能实现对各个器件分别测试。
)调试器只支持本地调试应用程序。
)程序是一个专门用于调试linux内核的gdb调试桩。
)30.片上调试器是存在重叠ram。
5、分析pxa270平台的按键扫描程序,给出复合按键的程序**。
6、下面是linux下的一个简单的设备驱动程序,写出linux设备驱动常用的数据结构,同时阅读下面**,请给出测试程序中的每条语句加以注释。
设备驱动程序的源**:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define lednkey_major 251
#define keypad_name "x-hyper250 keypad"
#define keypad_version "version 0.1"
#define ext_key_cs ext_port2
#define ext_led_cs ext_port3
#define led_show 10
*ext_key_cs 为向外部led进行数值设定,它定义在其它头文件里*/
void led_off_on()
int i;
ext_led_cs = 0xff;
for(i =0 ; i<8;++i)
ext_led_cs = 0xff;
int lednkey_open(struct inode *inode, struct file *filp)
mod_inc_use_count;
return (0success
int lednkey_release(struct inode *inode, struct file *filp)
led_off_on();
mod_dec_use_count;
return (0);
ssize_t lednkey_read(struct file *filp, char *putbuf, size_t length, loff_t *f_pos)
unsigned short bottonstatus;
unsigned char bottontmp = 0;
int i;
bottonstatus = ext_key_cs & 0xff );
for(i = 0 ; i < 8; +i)
copy_to_user( putbuf, &bottontmp, length);
return length;
ssize_t lednkey_write(struct file *filp, const char *getbuf, size_t length, loff_t *f_pos)
int num;
unsigned char usrwantled;
copy_from_user( &usrwantled, getbuf, length);
num = usrwantled) &0xff );
ext_led_cs = 1 < return (0); int lednkey_ioctl(struct inode *inode, struct file *filp, unsigned int cmd,unsigned long arg) switch(cmd) return 0; struct file_operations lednkey_fops = printf("keypad app : press the push button see show led - exit ctrl-c ",dev_name); ioctl(fd,led_show,1); while(1) while(data ==0); if( pre_data ==0) close( fd ); return 0; 黑龙江科技学院。计算机与信息工程学院。嵌入式大作业。专业班级学号。成绩。姓名教师。2010年12月24日。前导问题 1.选a,完全独立完成2.一 基础问题。1.答 嵌入式系统是指用于执行独立功能的专用计算机系统,作为装置或设备的一部分。嵌入式系统通常由嵌入式微处理器 嵌入式操作系统 应用软件和外围设... 一。简述jtag接口在嵌入式开发中的作用?1关于jtag jtag joint test action group,联合测试行动小组 是一种国际标准测试协议,主要用于芯片内部测试及对系统进行 测试。jtag技术是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路tap test access po... 嵌入式的系统应用和发展趋势。班级 09电子信息工程2班。组员 刘奥 09700226 刘扬 09700227 何翔 09700228 指导老师 赵洁。计算机与信息工程学院 2012年11月20日。嵌入式系统 embedded system 是一种 完全嵌入受控器件内部,为特定应用而设计的专用计算机系...嵌入式大作业
嵌入式大作业
嵌入式大作业