版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、嵌入式软件开发课程设计报告课题名称:基于ARM11FF发平台小球碰撞设计与实现专业班级:计算机科学与技术指导教师评语:签名:嵌入式软件开发课程设计报告1、使用技术介绍12、需求分析33、概要设计44、详细设计55、成果展示116、设计总结13167、附录嵌入式软件开发课程设计报告一、使用技术介绍1.1 LCD显示屏技术液晶显示屏,英文通称为LCD(LiquidCrystalDisplay),是属于平面显示器的一种。用于电视机及计算机的屏幕显示。LCD液晶显示器的工作原理,在显示器内部有很多液晶粒子,它们有规律的排列成一定的形状,并且它们的每一面的颜色都不同分为:红色,绿色,蓝色。这三原色能还原
2、成任意的其他颜色,当显示器收到电脑的显示数据的时候会控制每个液晶粒子转动到不同颜色的面,来组合成不同的颜色和图像。1)分辨率:显示器支持的像素多少,一般采用屏幕的宽x高表示,如:800x600,1600x1200,480x320。2)“像素”(Pixel)是由Picture(图像)和Element(元素)这两个单词的字母所组成的,是用来计算数码影像的一种单位,是计算机屏幕上所能显示的最小单位。3)颜色深度:显示一个像素点的位数;4)颜色:单色、伪彩色、彩色、真彩色像素颜色是由红(Red)、绿(Green)、蓝(Blue)三种颜色组成,即所谓RGB对于16位深颜色来说,采用565格式表示颜色,其
3、中Red占高5、Green占中间6位、Blue占低5位。每个像素占VRAW的2个字节。对于24位深颜色,RGE&别占用8位,每个像素占用VRAW的3个字节。1.2 电阻式触摸屏技术电阻式触摸屏是一种传感器,基本上是皿加上玻埴的结构,薄膜和玻璃相邻的一面上均涂有ITO(纳米钿锡金属氧化物)涂层,ITO具有很好的导电性和透明性。当触摸操作时,薄膜下层的ITO会接触到玻璃上层的ITO,它将矩形区域中触摸点(X,Y)的物理位置转换为代表X坐标和Y坐标的电压,如图1.2。而完成点选的动作,并呈现在屏幕上。很多LCD真块都采用了电阻式触摸屏,这种屏幕可以用四线、五线、七线或八线来产生屏幕偏置电压,
4、同时读回触摸点的电压。运算公式:T_w=T_x2-T_x1T_h=T_y2-T_y1L_x=(T_x2-T_x)*L_w/T_wLy=(Ty-Ty1)*Lh/Th嵌入式软件开发课程设计报告邛肥送屏LCD!ii-求屏T_xl.T_ylJ图1.21.3 五点校准法为了方便理解,我们首先引入2个概念,坐标和逻辑坐标。物理坐标就是触摸屏上点的实际位置,我们通常以液晶上点的个数来度量。逻辑坐标就是触摸屏上这一点被触摸时A/D转换后的坐标值。由于电阻式触摸屏的电压成线性均匀分布,那么A/D转换后的坐标也成线性。假如我们将液晶最左下角点对应的解摸屏上的点定为物理坐标原点A其物理坐标记为(XA=0,YA=O,
5、其逻辑坐标记为(XLA,YLA(不一定为0)。那么触摸屏上任意一点B的逻辑坐标可表达为:XLB=XLA+KXX,BYLB=YLA+KYY映中KXKY分别为触摸屏X方向和Y方向的因子系数,这就像弹簧一样,拉力与弹簧伸长正比。KXKY可能为正,也可能为负,这根据具体触摸屏安装的方向和特性。每个液晶触摸屏,我们也应该单独计算每一个触摸屏的K系数。如果A点不是坐标原点,也是任意一点可以表达成:XLB=XLA+KX(XB-XA)YLB=YLA+KY(YB-YA)我们可以推出计算K系统的公式:KX=(XLB-XLA)/(XB-XA),KY=(YLB-YLA)/(YB-YA)。在液晶上固定的位置显示五个点,
6、因为是固定的位置,所以这五个点的物理坐标是预知的。这五个点不应太靠边,因为边缘点对应的触摸屏线性一般不太好。(1)首先在ABCDE寸应的位置逐步用尖状物触摸,得到五个点的逻辑坐标。(2)分别比较A和GB和D的横坐标,如果差值不在允许范围(你自己规定一个即可,比如5),则重复操作(1)(2)步。(3)分别比较A和RC和D的纵坐标,如果差值不在允许范围(你自己规定一个即可,比如5),则重复操作(1)(3)步。(4)用2组数据计算X向K系数平均值KX=(XLB-XLA)/(XB-XA)+(XLD-XLD)/(XD-XC)/2(5)用2组数据计算Y系数平均值KY=(YLA-YLC)/(YA-YC)+(
7、YLB-YLD)/(YB-YD)/2(6)将C点逻辑坐标作为基坐标,根据式2-2则触摸屏上任意一点F逻辑坐标与基坐标的关系为:XLF=XLC+KX(XF-XC)嵌入式软件开发课程设计报告YLF=YLC+KY(YF-YC)根据这个公式,我们也可逆推出F点的物理坐标XF=(XLF-XLC)/KX+XCYF=(YLF-YLC)/KY+YC(7)用公式2-4求出E点逻辑坐标,并与(1)步得到的E点坐标比较,如果差值不在允许范围(你自己规定一个即可,比如5),则重复操作以上步骤直到满足要求。(8)将基坐标XLCYLCXCYC和KXKY记录在存储设备,触摸屏校正完成。二、需求分析2.1 功能需求主要功能:
8、实验设计在基于嵌入式Linux操作系统,armll开发平台上进行相关操作,要求在LCD显示屏内,分别控制2个不同颜色的小球在LCD屏矩形显示区内不停地运动,当小球碰到边界时,反射改变运动方向,当两个小球相碰时,小球改变运动方向,并统计碰撞的次数。2.2 界面需求实验界面简洁,显示为一个矩形边框,界面中有两个个小球,小球通过撞击边框和相互碰撞不断运动。开始碰撞:运行程序会出现小球碰撞程序主界面,如图2.2,点击开始碰撞进入小球碰撞程序;退出:点击退出,返回退出小球碰撞界面,如图2.3炊迎进入小球碰撞程序开始碰撞退出图2.2程序主界面嵌入式软件开发课程设计报告退出小球使用界面谢谢使用图2.主界面图
9、2.3退出小球碰撞界面三、概要设计3.1 系统组成小球碰撞系统基于ARMIff台,利用Linux系统的调用和PC机的调试通过使用触摸屏在LED显示屏上显示两个小球相撞。如图3.1图3.1系统组成图1 .ARM11处理:采用real6410基于ARM1做入式处理器内核,主频800MHz2 .LCD显示器:4.3寸,分辨率480x272,16位RGB56彩色;3 .触摸屏:电阻式,支持4096x4096;4 .网络:以太网,支持100MbpsTCP/IP协议;3.2 功能模块工程文件夹:ball头文件程序:gui.h;ts.h主控模块:main.c触摸校准模块:ts.c嵌入式软件开发课程设计报告通
10、过主控模块main.c来调用图形库gui.h和校准模块ts.c,以及小球碰撞函数,来在显示屏上实现小球碰撞功能,如图3.2。主福快图3.2功能模块图四、详细设计4.1 main()函数:main函数:程序入口,调用显示屏、触摸屏等初始化函数,显示主界面,等待触摸操作,转相应的功能处理。如图4.1函数原型:intmain(intagrc,char*argv);输入参数:argc整型,命令行以空格分隔的字符串个数;argv指针的指针型,指向存放字符串的开始地址。返回值:整型,0表示正常,非0表示异常嵌入式软件开发课程设计报告图4.1main函数流程图4.2 ball_move()函数:voidba
11、ll_move()函数:实现画出小球并让小球运动,当两个小球碰壁或相撞时,小球向反方向弹开并计算碰撞次数,运动到初始位置时,小球停止。如图4.2函数原型:voidball_move(ball_t*b)输入参数:b结构体指针类型通过b的值来判断小球碰撞的次数返回值:无返回值小球运动算法:1)初始化:w=480;h=272;x=old_x=100;y=old_y=100;r=16;x_dir=1;y_dir=-1;2)如果x<=r,则x_dir=1碰到左边界,向右运动;3)如果x+r>=w,则x_dir=-1碰到右边界,向左运动;4)如果y<=r,则y_dir=1碰到上边界,向下
12、运动;5)如果y+r>=h则y_dir=-1碰到下边界,向上运动;嵌入式软件开发课程设计报告6)更新圆心坐标:x+=x_dir;y+=y_dir;7)在原来位置用背景色画(即清除);8)在新位置用前景色画圆;9)延时一段时间,使圆停留在屏幕上显示;10)old_x=x;old_y=y;11)如果运动到初始位置,则退出,否则跳转到2)图4.2ball_move函数流程图4.3 get_hotpoint(intx,inty)函数:get_hotpoint()函数:获得触摸屏幕上的热点,并判断是不是点击相应的位置,是返回一个值,不是返回-1,如图4.3函数原型:get_hotpoint(int
13、x,inty);输入参数:x整型,获得x坐标y整型,获得y坐标。嵌入式软件开发课程设计报告返回值:整型,返回r->v表示正常,返回-1表示异常图4.3获得热点函数流程图4.4 小球函数所需要的相关函数1)创建子进程fork():一个进程,包括代码、数据和分配给进程的资源。pid_tpid;pid=fork();/创建子进程if(pid=-1)exit(-1);/创建失败if(pid=0)/子进程else/父进程2)延时函数usleep()嵌入式软件开发课程设计报告函数原型:intusleep(useconds_tusec);参数:usec:延时时间值,微秒包含头文件#include<
14、;unistd.h>3)进程之间共享内存通信:进程A地址空间进程B地址空间创建或获取一个共享内存:命令格式:shmget(key,size,flag)功能:获得一个内部标识为shmid的共享存储区语句格式:Intshmid=intshmget(key_tkey,intsize,intflag);参数说明:key共享存储区关键字,可以由用户指定,如果使用IPC_PRIVATE其值由系统产生size存储区的大小(字节数)。如果存储区定义为字符型,则大小为定义的字符个数;如果存储区定义为整型,大小可以使用sizeof(int)加以定义。flag用户设置的标志或访问方式,与消息缓冲shmget中
15、的含义相同,在实验中,可以使用0666|IPC_CREAT表示任意进程可读写。返回值:正确返回:共享存储区的内部标识符shmid错误返回:-14)将共享内存附接到进程虚拟地址空间:嵌入式软件开发课程设计报告命令格式:字符型共享内存:Shmat(intshmid,char*shmaddr,intmsgflg,ulong*raddr);数值型共享内存:Shmat(intshmid,int*shmaddr,intmsgflg,ulong*raddr);功能:逻辑上将内部标识符为shmid的共享存储区附接到进程的虚拟地址空间shmaddr。参数说明:shmid共享存储区的描述符,可以由shmget()
16、的返回值得到;shmaddr用户提供的共享存储区附接的虚拟地址,若shmaddr为0,则由系统选择一个适当的地址来附接该存储区;flag规定了对该存储区的操作权限,以及系统是否要对用户规定的地址做舍除操作。若果flag中设置了SHM_RNDt示操作系统在必要时舍去这个地址;如果设置了SHM_RDONLYg示只允许读,flag为0表示可读可写。viraddr附接的虚拟地址,若定义为char*viraddr,则该共享内存作为字符存储区使用,若定义为int*viraddr,则该共享内存作为整型存储区使用。5)将共享内存从进程地址空间断开:命令格式:shmdt(viraddr)功能:将一个共享存储区从
17、指定进程的虚拟地址空间断开。参数说明:shmaddr系统调用shmat()所返回的虚拟地址。返回值:正确返回:0错误返回:-16)对共享内存操作:命令格式:shmctl(intshmid,intcmd,structshmid_ds*buf)功能:从而对共享存储区进行控制,包括删除对与共享存储区关联的各种参数进行操作,共享存储区10嵌入式软件开发课程设计报告参数说明:shimd共享存储区的内部标识符,由shmget()调用返回;buf用户级数据结构地址,其结构类型与系统定义的shmid_ds一致,可以用0cmd规定操作的类型。具规定如下:IPC_STAT返回包含在指令的shmid相关数据结构中的
18、状态信息,并把它放置在用户存储区中的*buf指针所指的数据结构中。执行此命令的进程必须有读取允许权。IPC_SETX寸于指定的shimd,为它设置有效用户和小组标识符和操作存取权。IPC_RMIDB除指定的shimd以及与它相关的共享存储区数据结构。SHM_LOCK内存中锁定指定的共享存储区,必须是超级用户才可以进行此项操五、成果展7K5.1 将相关的图片、驱动拷贝到用户目录下sain图5.1拷贝文件5.2 编译程序rjr-riF'J1=FilfEditvitfwsearchTermrrialutlprwtubunti:cd/uir/locaiArcr>dTn»t*ib
19、untui/usr/1ocal/src/ts#nkelake;ftothingtobedonefflrall',rtiotubuntu:/ur/lo<aI/src/ts*nakecle3nrr-rfball,.bakrnGti?ubuntu:/uir/tocal/src./Lsgul.hlibgui.amain,bitpmlncMakeHUwer.bfliptouclits,cts.hrDdtubuntil:/uir/local/src/ts*rmk*dri-none-linux-gnuediii-gcc-c7Mill*。-mjji.inin.c:function'irn
20、ubutton1:iGndlL:naming;pastingarqmnent5of'drawstring16'diserdsqualifiers1rnipaintertargettypeart-none-Linusgnueabi-gcc-c-aTs.dTs.caci-nons-Linux-gnueabi-gcc-obaitrainLgtsg-Lpthreed-LJ-LguirdDtQubuntu:/usr/lo(al/£ft/c图5.2编译程序11嵌入式软件开发课程设计报告5.3 连接目标机,运行程序rootubuntu:一FileEditViewSearchTerm
21、inalHelprootubuntu:-#telnet192*168.1.2aTrying192.168.1,26._Connectedto192.168.1.2Q,Escapecharacteris'A*.Kernel2.6.28.6on(/dev/pts/C)Real64ielogin:root(rootReal&41O/J#cd/usrrootReal641G/usr#*/ball486x272bpp:16mmaped0x462490905.45.5登录界面展小小球碰撞界面展示图5.5小球碰撞界面12嵌入式软件开发课程设计报告5.6退出界面展示图5.6退出界面六、设计总结
22、七、附录7.1主函数程序#include<unistd.h>#include<stdio.h>#include<stdlib.h>#include<fcntl.h>#include<string.h>#include<sys/types.h>#include<sys/ipc.h>#include<sys/shm.h>#include"gui.h"#include"ts.h"#defineK_SIZE4typedefstructintx,y,r,c;13嵌入式软
23、件开发课程设计报告intdir_x,dir_y;ball_t;/定义一个小球结构体key_tkeyld;intshmid;intw,h;char*bb;ball_t*b1,*b2;/小球碰撞函数voidball_move(ball_t*b)intold_x,old_y;intdis,cnt;old_x=b->x;old_y=b->y;cnt=0;while(1)小球之dis=(b1->x-b2->x)*(b1->x-b2->x)+(b1->y-b2->y)*(b1->y-b2->y);/间的距离if(dis<=(b1->r
24、+b2->r)*(b1->r+b2->r)/如果小球相撞b->dir_x=-b->dir_x;b->dir_y=-b->dir_y;if(b=b1)cnt+;printf("cnt=%dn",cnt);/统计碰撞次数elseif(b->x<=b->r)b->dir_x=1;if(b->y<=b->r)b->dir_y=1;if(b->x+b->r)>=w)b->dirx=-1;14嵌入式软件开发课程设计报告if(b->y+b->r)>=h)b-
25、>dir_y=-1;)b->x+=b->dir_x;b->y+=b->dir_y;/重新定义圆心坐标fill_circle(old_x,old_y,b->r,BLACK);/在原来的地方清屏fill_circle(b->x,b->y,b->r,b->c);/在新的地方画圆usleep(5000);/延时函数old_x=b->x;old_y=b->y;)/定义按键坐标结构体typedefstructRECTintx;inty;intw;inth;intv;rect;structRECTbtn_star=232,127,142
26、,37,0x30;开始按键坐标structRECTbtn_exit=232,192,142,37,0x31;/退出按键坐标/建立坐标位置structRECT*btn_menu_set口=&btn_star,&btn_exit,NULL;/获取屏幕热点函数intget_hotpoint(intx,inty)rect*r;inti;i=0;15嵌入式软件开发课程设计报告for(;)(r=btn_menu_seti;if(r=NULL)按键为空break;/获得一个热点范围if(x>r->x)&&(x<(r->x+r->w)&&a
27、mp;(y>r->y)&&(y<(r->y+r->h)(returnr->v;i+;return-1;/*/画一个按钮函数voiddraw_button(intx,inty,intw,inth,constchar*str)(fill_rectangle(x,y,w,h,GRAY);draw_h_line(x,y,w,WHITE);draw_v_line(x,y,h,WHITE);draw_h_line(x,y+h-1,w,BLACK);draw_v_line(x+w-1,y,h,BLACK);draw_string16(x+4,y+4,BLA
28、CK,GRAY,str,0);*/intmain(intargc,char*argv)(intx,y,btn_n;unsignedinton;fb_init();/设备初始化函数clrscreen(BLACK);/清屏函数16嵌入式软件开发课程设计报告ts_init();/触摸屏初始化函数on=0;draw_bmp("main.bmp",0,0);for(;)(/获取屏幕上的坐标get_scrn_xy(&x,&y);/获得热点坐标btn_n=get_hotpoint(x,y);if(btn_n=0x30)(onA=1;/状态取反if(on)pid_tpid;
29、w=480;h=272;fb_init();clr_screen(BLACK);keyld=ftok(argv0,0);shmid=shmget(keyld,sizeof(ball_t)*2,0777|IPC_CREAT);bb=shmat(shmid,NULL,0);bl=(ball_t*)bb;b1->r=24;b1->c=RED;b1->x=100;b1->y=100;b1->dir_x=1;b1->dir_y=-1;/初始ball2b2=(ball_t*)bb+sizeof(ball_t);b2->r=24;b2->c=GREEN;b2-
30、>x=200;17嵌入式软件开发课程设计报告b2->y=120;b2->dir_x=-1;b2->dir_y=1;pid=fork();if(pid=0)ball_move(b1);elseball_move(b2);if(btn_n=0x31)onA=1;/状态取反if(on)draw_bmp("over.bmp",0,0);ts_close();fb_close();return0;7.2 编写构建文件EXEC=flashOBJS=main.ots.oCROSS-COMPILER=arm-none-linux-gnueabi-CC=$(CROSS
31、_COMPILER)gccCFLAG=-cLIBS=-lpthread-L./-lguiall:$(EXEC)$(EXEC):$(OBJS)$(CC)-o$(OBJS)$(LIBS)18嵌入式软件开发课程设计报告cp$/nfsroot/usr/%.o:%.c$(CC)$(CFLAG)-o$<clean:rm-rf$(EXEC)*.o*bak7.3 编写校准文件#include<stdio.h>#include<sys/types.h>#include<sys/stat.h>#include<fcntl.h>#include<linux
32、/input.h>#include"gui.h"#defineCALIB_FNAME"calib.txt"typedefstructTS_POINTintscrn_x;intscrn_y;intts_x;intts_y;ts_point;/*(20,20)(ts_x1,ts_y1)(460,20)(ts_x2,ts_y2)(240,136)(ts_x5,ts_y5)(20,252)(ts_x3,ts_y3)(460,252)(ts_x4,ts_y4)*/#if0/事件数据结构structinput_eventstructtimevaltime;_u
33、16type;_u16code;_s32value;19嵌入式软件开发课程设计报告/*Eventtypes*/#defineEV_SYN0x00#defineEV_KEY0x01#defineEV_REL0x02#defineEV_ABS0x03#defineEV_MSC0x04#defineEV_SW0x05#defineEV_LED0x11#defineEV_SND0x12#defineEV_REP0x14#defineEV_FF0x15#defineEVPWR0x16#defineEV_FF_STATUS0x17#defineEV_MAX0x1f#defineEV_CNT(EV_MAX+
34、1)/*eventcode*/#defineABS_X0x00#defineABS_Y0x01#defineABS_Z0x02#defineABS_RX0x03#defineABS_RY0x04#defineABS_RZ0x05#defineABSTHROTTLE0x06#defineABS_RUDDER0x07#defineABS_WHEEL0x08#defineABS_GAS0x09#defineABS_BRAKE0x0a#defineABS_HAT0X0x10#defineABS_HAT0Y0x11#defineABS_HAT1X0x12#defineABS_HAT1Y0x13#defi
35、neABSHAT2X0x1420嵌入式软件开发课程设计报告#defineABS_HAT2Y0x15#defineABS_HAT3X0x16#defineABSHAT3Y0x17#defineABSPRESSURE0x18#defineABSDISTANCE0x19#defineABS_TILT_X0x1a#defineABS_TILT_Y0x1b#defineABS_TOOL_WIDTH0x1c#defineABSVOLUME0x20#defineABSMISC0x28#defineABSMAX0x3f#defineABSCNT(ABS_MAX+1)#defineBTNTOUCH0x14a#e
36、ndif#defineDEVNAME"/dev/input/event1"/触摸屏设备event0按键设备intts_fd;/选取显示屏上的5个点structTS_POINTtp5=20,20,0,0,460,20,0,0,20,252,0,0,460,252,0,0,240,136,0,0;/触摸屏校准使用的变量intts_min_x,ts_max_x;intts_min_y,ts_max_y;floatrat_x,rat_y;/*获取触摸屏坐标*/staticvoidget_ts_xy(int*x,int*y)structinput_eventt;intsx,sy,ix
37、,iy;21嵌入式软件开发课程设计报告while(1)(if(read(ts_fd,&t,sizeof(t)=sizeof(t)/读一个事件(/printf("type:code:value=%x:%x:%xn",t.type,t.code,t.value);if(t.type=EV_ABS)/事件类型为绝对位置(switch(t.code)(caseABS_X:sx+=t.value;ix+;break;caseABS_Y:sy+=t.value;iy+;break;caseABS_PRESSURE:/屏上有触摸if(t.value=1)/按下=3,24,2(sx
38、=0;sy=0;ix=0;iy=0;if(t.value=0)&&(ix>0)&&(iy>0)/抬起(*x=sx/ix;*y=sy/iy;return;break;default:22嵌入式软件开发课程设计报告break;)/*画十字交叉线*/staticvoiddraw_cross_line(intx,inty,intcolor)(draw_h_line(x-10,y,20,color);draw_v_line(x,y-10,20,color);)/*校准程序*/voidcalib(void)(inti;for(i=0;i<5;i+)(draw_cross_line(tpi.scrn_x,tpi.scrn_y,WHITE);get_ts_xy(&tpi.ts_x,&tpi.ts_y);draw_cross_line(tpi.scrn_x,tpi.scrn_y,BLACK);)ts_min_x=(tp0.ts_x+tp2.ts_x)/2;ts_max_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 临终关怀灵性关怀技师考试试卷及答案
- 跨境电商海外仓一件代发运维技师考试试卷及答案
- 2025年中国水电基础局有限公司招聘(25人)笔试历年参考题库附带答案详解
- 2025山西忻州神达能源集团有限公司招录集团所属单位各岗位人员10人笔试历年参考题库附带答案详解
- 2025山东济南润隆饰品有限公司招聘12人笔试历年参考题库附带答案详解
- 2025安徽鼎信数智技术集团股份有限公司社会招聘25人笔试历年参考题库附带答案详解
- 2025四川长虹美菱国际区品牌运营中心招聘产品策划岗位4人笔试历年参考题库附带答案详解
- 2025四川省自然资源投资集团招聘30人笔试历年参考题库附带答案详解
- 2025内蒙古能源集团有限公司招聘55人笔试历年参考题库附带答案详解
- 2025内蒙古三峡陆上新能源总部社会招聘49人(第一批)笔试历年参考题库附带答案详解
- 人工智能在医疗临床决策支持系统中的应用
- 沙子石子购销合同
- 年产3200吨酱香型白酒工厂设计(重点车间:制酒)
- 第六单元第06课时 怎样通知最快 大单元教学课件 人教版五年级数学下册
- SQL的语句及习题
- GRR标准表格-偏倚
- 珠海长隆海洋王国游记作文(通用5篇)
- GB/T 3457-2013氧化钨
- GB/T 13810-2007外科植入物用钛及钛合金加工材
- 决策理论与方法-决策的基本概念课件
- 纳米材料的力学性能课件
评论
0/150
提交评论