当前位置:文档之家› 《嵌入式操作系统》实验报告

《嵌入式操作系统》实验报告

《嵌入式操作系统》实验报告
《嵌入式操作系统》实验报告

《嵌入式操作系统》实验报告

班级计算机

学号

姓名

指导教师庄旭菲

内蒙古工业大学信息工程学院计算机系

2018年6月

实验一Linux内核移植与编译实验

1. 实验目的

了解Linux 内核相关知识与内核结构

了解Linux 内核在ARM 设备上移植的基本步骤和方法

掌握Linux 内核裁剪与定制的基本方法

2. 实验内容

分析Linux 内核的基本结构,了解Linux 内核在ARM 设备上移植的一些基本步骤及常识。

学习Linux 内核裁剪定制的基本配置方法,利用UP-Magic210 型设备配套Linux 内核进行自定义功能(如helloworld 显示)的添加,并重新编译内核源码,生成内核压缩文件zImage,下载到UP-Magic210 型设备中测试。

3. 实验步骤

实验目录:/UP-Magic210/SRC/kernel/编译内核:在宿主机端为UP-Magic210 设备的Linux 内核编写简单的测试驱动(内核)程序并修改内核目录中相关文件,添加对测试驱动程序的支持。

(1)、使用vim 编辑器手动编写实验代码

内如如下:

#include

#include

MODULE_LICENSE("Dual BSD/GPL");

(3)、进入实验内核源码目录修改driver/char/目录下的Makefile 文件,按照内核中Makefile 语法添加helloworld程序的编译支持

[root@localhost vi drivers/char/Makefile

在Makefile 中(大约在91 行)添加如下一行

obj-$(CONFIG_TOSHIBA) +=

obj-$(CONFIG_I8K) +=

obj-$(CONFIG_DS1620) +=

obj-$(CONFIG_HW_RANDOM) += hw_random/

obj-$(CONFIG_HELLO_MODULE) +=

obj-$(CONFIG_PPDEV) +=

(4)、运行make menuconfig 配置内核对helloworld 程序的支持:

[root@localhost make distclean

[root@localhost make menuconfig

先加载内核配置单,如图:

然后进入到Device Drivers --->菜单中如图:

进入到Character devices--->如图:

进入该菜单会发现[ ] Hello World Test 选项,按下空格将其静态编译进内核

退出保存内核配置

(5)、重新编译内核

在内核源码的顶层目录下编译内核

[root@localhost make

scripts/kconfig/conf -s arch/arm/Kconfig CHK include/linux/

CHK include/generated/

make[1]:“include/generated/”是最新的。CALL scripts/

CHK include/generated/

CC drivers/char/

LD drivers/char/

LD drivers/

LD

MODPOST

初次编译内核源码,由内核代码庞大,所需较长时间(大约几分钟至10 几分钟不等)。编译成功后会在内核源码目录的arch/arm/boot/目录下生成内核压缩文件zImage。

[root@localhost ls arch/arm/boot/zImage

arch/arm/boot/zImage

[root@localhost 、将新生成的内核镜像文件zImage 烧写到UP-Magic210 型设备中,这里不在赘述(烧写步骤可以参考文档“UP-Magic210出厂程序烧写手册(LINUX)第23页)。新内核烧写成功后启动UP-Magic210 型系统,可以在串口终端中查看到Linux 内核在启动过程中打印出来的如下信息:

S3C_LCD clock got enabled :: Mhz

Window[0]- FB1 : map_video_memory: clear ff600000:00096000

FB1 : map_video_memory: dma= cpu=ff600000 size=00096000

Console: switching to colour frame buffer device 80x30

fb-52: frame buffer device

lp: driver loaded but no devices found

###################Hello, world###################

ppdev: user-space parallel port driver

: ttySAC0 at MMIO 0x7f005000 (irq = 37) is a S3C

: ttySAC1 at MMIO 0x7f005400 (irq = 38) is a S3C

: ttySAC2 at MMIO 0x7f005800 (irq = 39) is a S3C

RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize

loop: loaded (max 8 devices)

nbd: registered device at major 43

dm9000 Ethernet Driver

eth0: dm9000 at c7866000,c7866002 IRQ 78 MAC: 00:22:12:34:56:90

S3C IrDA driver, (c) 2006 Samsung Electronics

Linux video capture interface:

可以看到在终端上打印出###################Hello, world###################信息。同样进入ARM 系统后也可以通过dmesg 命令查看内核启动信息。

[root@UP-TECH yaffs]# dmesg

S3C_LCD clock got enabled :: Mhz

Window[0]- FB1 : map_video_memory: clear ff600000:00096000

FB1 : map_video_memory: dma= cpu=ff600000 size=00096000

Console: switching to colour frame buffer device 80x30

fb-52: frame buffer device

lp: driver loaded but no devices found

###################Hello, world###################

ppdev: user-space parallel port driver

: ttySAC0 at MMIO 0x7f005000 (irq = 37) is a S3C

: ttySAC1 at MMIO 0x7f005400 (irq = 38) is a S3C

: ttySAC2 at MMIO 0x7f005800 (irq = 39) is a S3C

RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize

4.实验结果

思考:如何能在Linux系统启动时,输出显示自定义的文本信息,请修改Linux内核启动代码,完成此功能。

5. 实验中遇到的问题及解决方法

在实验中遇到一些问题,例如在复制的时候我记得原来用cp –a /tmp/ 就可以了,可这次不行必须要用cp –a /tmp/ ./到自己的目录下。不过最后都顺利解决了问题,在编译复习了make menuconfig的编译配置。

实验二根文件系统实验

1. 实验目的

了解UP-Magic210 魔法师实验套件Linux 系统下根文件系统结构

掌握根文件系统的搭建过程

掌握busybox、mkcramfs 等工具的使用方法

2. 实验内容

使用busybox 生成文件系统中的命令部分,使用mkcramfs 工具制作CRAMFS 格式的根文件系统。

分析根文件系统etc 目录下重要配置文件的格式及语法,熟悉根文件系统的启动过程

3.实验步骤

实验目录:/UP-Magic210/SRC/kernel/一、在内核中添加文件系统类型支持

(1)、进入宿主机中UP-Magic210 型光盘内核目录:

[root@localhost ~]# cd /UP-Magic210/SRC/kernel/(2)、运行make menuconfig 命令配置内核文件系统相关支持

添加对CRAMFS 根文件以及YAFFS2 文件系统系统支持

进入File systems --->菜单

进入Miscellaneous filesystems --->菜单

选择<*> Compressed ROM file system support (cramfs) 支持,如图:

选择<*> YAFFS2 file system support 支持,配置如下图

退出保存内核配置

运行make编译内核,重新烧写内核。

二、根文件系统的实现

(1)、制作BUSYBOX 工具集

进入本次实验目录

[root@localhost rootfs]# cd /UP-Magic210/SRC/rootfs/

[root@localhost rootfs]# ls

rootfs

解压压缩包

[root@localhost rootfs]# tar xjvf 产生目录

[root@localhost rootfs]# ls

rootfs

进入目录进行busybox 的修改及配置

修改此目录的Makefile 文件,更改ARCH 和CROSS_COMPILE =宏定义,如下:CROSS_COMPILE = arm-none-linux-gnueabi-

ARCH = arm

退出保存。

运行make menuconfig 对工具集进行定制[root@localhost make menuconfig

进入Busybox Settings --->选项

进入Busybox Library Tuning --->选项

选中[*]Fancy shell prompts 支持

进入Miscellaneous Utilities --->选项

去除[ ] inotifyd 选项

接下来的配置可以根据具体情况来设置或裁剪相关工具。

退出保存设置。

编译busybox

[root@localhost make

安装busybox

[root@localhost make install

成功后会在当前目录下生成_install 目录,编译的工具也都集成在该安装目录下。

[root@localhost cd _install/

[root@localhost _install]# ls

bin linuxrc sbin usr

[root@localhost _install]#

可以看到_install 目录下生成了根文件系统常用的命令及工具,接下来的工作,用户可以根据需要将_install目录下生成的命令拷贝到根文件系统相应目录下。

例如:将从busybox 生成的which 命令拷贝到根文件系统目录的usr/bin 目录下,这样,我们的根文件系统就支持which 命令了。

(2)、制作CRAMFS 根文件系统镜像

实验中已经提供了mkcramfs 制作工具以及脚本文件,用户只需执行脚本文件来使用mkcramfs 制作根文件系统镜像即可。

当然也可以手动的执行命令:./mkcramfs rootfs_up210

[root@localhost rootfs]# ./

此时在当前目录下生成根文件系统镜像文件

[root@localhost rootfs]# ls

mkcramfs rootfs_up210

三、烧写根文件系统

将新生成的根文件系统镜像文件烧写到UP-Magic210 型设备中进行测试,这里不在赘述(烧写步骤可以参考文档“UP-Magic210出厂程序烧写手册(LINUX)第24页)。如果用户新添加了相关命令或工具(例如which 命令)启动系统后可以验证用户添加入的新命令或工具。

4.实验结果

5. 实验中遇到的问题及解决方法

make 编译有错误,进行源代码的修改。之后再make menuconfig中将这个宏对应的东西配置成没有就好了,如果没有这个宏,那么就直接用出错的那个文件的名字找就行了,找到后给它去掉,将来make的时候就不会编译这个文件了,在次进行make 编译后,编译出来了busybox这个东西,就在证明编译通过了。

实验三模块方式驱动实验

1. 实验目的

学习在LINUX 下进行驱动设计的原理

掌握使用模块方式进行驱动开发调试的过程

2. 实验内容

在PC 机上编写简单的虚拟硬件驱动程序并进行调试,实验驱动的各个接口函数的实现,分析并理解驱动与应用程序的交互过程。

在ARM 设备上创建设备驱动节点,编写用户空间应用程序,对驱动程序进行测试。

3. 实验步骤

(1)、编译驱动程序/UP-Magic210/SRC/exp/driver/01_demo /,手工加载驱动程序,通过设备号建立驱动设备节点,执行应用程序测试该驱动及设备,分析驱动程序。

进入实验目录编译源程序

[root@localhost /]# cd /UP-Magic210/SRC/exp/driver/01_demo/

清除中间代码,重新编译

[root@localhost 01_demo]# make clean

[root@localhost 01_demo]# make

当前目录下生成驱动程序和应用测试程序test_demo。

启动UP-Magic210 实验系统,连好网线、串口线。通过串口终端挂载宿主机实验目录(注意:虚拟机IP地址需要设置为:)。

[root@UP-TECH yaffs]# mount -t nfs -o nolock /mnt/nfs

进入串口终端的NFS 共享实验目录

[root@UP-TECH yaffs]# cd /mnt/nfs/SRC/exp/driver/01_demo/

手动加载驱动程序

[root@UP-TECH 01_demo]# insmod

通过设备号建立驱动设备节点

[root@UP_210 01_demo]# mknod /dev/demo c 251 0

执行应用程序测试该驱动及设备,分析应用程序测试结果。

[root@UP-TECH 01_demo]# ./test_demo

(2)、请参考驱动程序,编写一个虚拟字符设备驱动程序并进行调试,该虚拟字符设备驱动程序完成如下功能:

在内核模块初始化函数中,实现动态申请设备号并注册该设备,动态建立设备文件节点;

在内核模块的退出函数中,实现设备注销,删除该设备文件节点;

实现file_operations设备驱动文件结构体中的open、read、write、ioctl和release函数功能,其中:

open函数:设置一个计数器count,每调用一次open函数,计数器count加1。

read函数:读取用户写入的字符串数据的排列结果。

write函数:实现将用户写入的字符串数据,按照每个字符的ASCII值逆序或升序排序(根据开关值asc排序:asc=0,逆序排序;asc=1,升序排序;)。

ioctl函数:设置排序方式开关值asc。

release函数:每调用一次release函数,计数器count减1。

4.实验结果

5. 实验中遇到的问题及解决方法。

没有修改makefile文件直接进行编译导致出错。实验前没有认真阅读实验原理,看懂实验代码,所以在使用make命令以后无法实现。最后在同学的帮助下找到了原因。忽略了自己使用的是gcc 编译而不是交叉编译,因而没有设置节点。尝试了很多次以后才发现了问题,期间以为是

test_demo文件的问题,但是导入导出很多次都没有解决,问了同学才找到了问题。

实验四LED 驱动及控制实验

1. 实验目的

了解ARM 设备外围电路结构与接口原理

熟悉Linux 系统下硬件驱动编程

编程实现对嵌入式设备上LED 灯的控制

2. 实验内容

阅读UP-Magic210 平台硬件文档,熟悉ARM 处理硬件外围接口电路

编程实现UP-Magic210 平台设备上LED 驱动及应用测试程序

3. 实验步骤

编写UP-Magic210 平台设备上LED 驱动及应用测试程序并进行调试,该LED驱动程序完成如下功能:

在内核模块初始化函数中,实现动态申请设备号并注册该设备,动态建立设备文件节点;

在内核模块的退出函数中,实现设备注销,删除该设备文件节点;

实现file_operations设备驱动文件结构体中的ioctl函数,完成如下功能:

一次调用控制所有的LED亮或灭;

控制单个LED亮或灭;

实现流水灯显示,流水灯显示效果自行定义,流水灯循环显示次数由用户应用程序传入。

程序:

驱动程序分析:

#include

#include

#include

#include

#include

#include

#include

#include

#include

MODULE_LICENSE("GPL");

#define DEVICE_NAME "leds" wner = THIS_MODULE,

.ioctl = uptech_leds_ioctl,

n");

return -1;

}

led led_number on|off\n");

fprintf(stderr, "Options:\n");

fprintf(stderr, "\t led_number from 0 to 4\n");

fprintf(stderr, "\t on: 1 off: 0\n");

exit(1);

}

验结果

5. 实验中遇到的问题及解决方法

本次实验了解了ARM 设备外围电路结构与接口原理;熟悉了Linux 系统下硬件驱动编程过程;通过编程对嵌入式设备上LED 灯的控制,对嵌入式开发有了进一步的认识和理解,实验结果尚未得到验证。

实验五WEB服务器移植与模块驱动综合实验

1. 实验目的

了解常用的嵌入式Web服务器及其原理

掌握嵌入式Web服务器boa的移植方法

掌握基本的CGI程序设计方法

熟悉UP-Magic210 型嵌入式实验平台下的传感器及控制设备驱动程序设计

2. 实验内容

对嵌入式Web服务器boa源码进行配置、编译,完成移植

编写CGI程序,调用多个设备模块驱动

在嵌入式Web服务器boa上运行动态网页,运行测试CGI程序

3. 实验步骤

(1)、将老师提供的实验文件“实验五.rar”在Windows下解压,拷贝到虚拟机Linux下的/UP-Magic210目录中。

(2)、切换目录到/UP-Magic210/boa,解压文件boa]# cd /UP-Magic210/boa/

[root@localhost boa]# tar -xzvf (3)、配置boa生成Makefile

[root@localhost boa]# cd src]# ./configure

(4)、修改源码文件

修改Makefile:

修改:

CC = gcc

CPP = gcc -E

为:

嵌入式操作系统实验报告

中南大学信息科学与工程学院实验报告 姓名:安磊 班级:计科0901 学号: 0909090310

指导老师:宋虹

目录 课程设计内容 ----------------------------------- 3 uC/OS操作系统简介 ------------------------------------ 3 uC/OS操作系统的组成 ------------------------------ 3 uC/OS操作系统功能作用 ---------------------------- 4 uC/OS文件系统的建立 ---------------------------- 6 文件系统设计的原则 ------------------------------6 文件系统的层次结构和功能模块 ---------------------6 文件系统的详细设计 -------------------------------- 8 文件系统核心代码 --------------------------------- 9 课程设计感想 ------------------------------------- 11 附录-------------------------------------------------- 12

课程设计内容 在uC/OS操作系统中增加一个简单的文件系统。 要求如下: (1)熟悉并分析uc/os操作系统 (2)设计并实现一个简单的文件系统 (3)可以是存放在内存的虚拟文件系统,也可以是存放在磁盘的实际文件系统 (4)编写测试代码,测试对文件的相关操作:建立,读写等 课程设计目的 操作系统课程主要讲述的内容是多道操作系统的原理与技术,与其它计算机原理、编译原理、汇编语言、计算机网络、程序设计等专业课程关系十分密切。 本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统概念,理解和巩固操作系统基本理论、原理和方法,掌握操作系统开发的基本技能。 I.uC/OS操作系统简介 μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。它被广泛应用于微处理器、微控制器和数字信号处理器。 μC/OS 和μC/OS-II 是专门为计算机的嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU 硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU 上。用户只要有标准的ANSI 的C交叉编译器,有汇编器、连接器等软件工具,就可以将μC/OS-II嵌入到开发的产品中。μC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB 。μC/OS-II 已经移植到了几乎所有知名的CPU 上。 严格地说uC/OS-II只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务。但由于uC/OS-II良好的可扩展性和源码开放,这些非必须的功能完全 可以由用户自己根据需要分别实现。 uC/OS-II目标是实现一个基于优先级调度的抢占式的实时内核,并在这个内核之上提供最基本的系统服务,如信号量,邮箱,消息队列,内存管理,中断管理等。 uC/OS操作系统的组成 μC/OS-II可以大致分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分。如下图:

人工智能实验报告大全

人工智能实验报告大 全

人工智能课内实验报告 (8次) 学院:自动化学院 班级:智能1501 姓名:刘少鹏(34) 学号: 06153034 目录 课内实验1:猴子摘香蕉问题的VC编程实现 (1) 课内实验2:编程实现简单动物识别系统的知识表示 (5)

课内实验3:盲目搜索求解8数码问题 (18) 课内实验4:回溯算法求解四皇后问题 (33) 课内实验5:编程实现一字棋游戏 (37) 课内实验6:字句集消解实验 (46) 课内实验7:简单动物识别系统的产生式推理 (66) 课内实验8:编程实现D-S证据推理算法 (78)

人工智能课内实验报告实验1:猴子摘香蕉问题的VC编程实现 学院:自动化学院 班级:智能1501 姓名:刘少鹏(33) 学号: 06153034 日期: 2017-3-8 10:15-12:00

实验1:猴子摘香蕉问题的VC编程实现 一、实验目的 (1)熟悉谓词逻辑表示法; (2)掌握人工智能谓词逻辑中的经典例子——猴子摘香蕉问题的编程实现。 二、编程环境 VC语言 三、问题描述 房子里有一只猴子(即机器人),位于a处。在c处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图1所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。要求通过VC语言编程实现猴子摘香蕉问题的求解过程。 图1 猴子摘香蕉问题

四、源代码 #include unsigned int i; void Monkey_Go_Box(unsigned char x, unsigned char y) { printf("Step %d:monkey从%c走到%c\n", ++i, x, y);//x表示猴子的位置,y为箱子的位置 } void Monkey_Move_Box(char x, char y) { printf("Step %d:monkey把箱子从%c运到%c\n", ++i, x, y);//x表示箱子的位置,y为香蕉的位置 } void Monkey_On_Box() { printf("Step %d:monkey爬上箱子\n", ++i); } void Monkey_Get_Banana() { printf("Step %d:monkey摘到香蕉\n", ++i); } void main() { unsigned char Monkey, Box, Banana; printf("********智能1501班**********\n"); printf("********06153034************\n"); printf("********刘少鹏**************\n"); printf("请用a b c来表示猴子箱子香蕉的位置\n"); printf("Monkey\tbox\tbanana\n"); scanf("%c", &Monkey); getchar(); printf("\t"); scanf("%c", &Box); getchar(); printf("\t\t"); scanf("%c", &Banana); getchar(); printf("\n操作步骤如下\n"); if (Monkey != Box) { Monkey_Go_Box(Monkey, Box); } if (Box != Banana)

网络管理实验报告

实验1:W i n d o w2003S N M P服务配置 1.掌握简单网络管理协议的操作知识 (SNMP网络管理模型,抽象语法表示(ASN.1),管理信息结构(SMI),常用的管理信息(MIB)。SNMP协议数据格式与工作模式,网络管理系统) 2.收集在网络上实现SNMP所必需信息 (1)一个典型的网络管理系统包括四个要素:管理员、管理代理、管理信息数据库、代理服务设备。一般说来,前三个要素是必需的,第四个只是可选项。 (2)网络管理软件的重要功能之一,就是协助网络管理员完成管理整个网络的工作。网络管理软件要求管理代理定期收集重要的设备信息,收集到的信息将用于确定独立的网络设备、部分网络、或整个网络运行的状态是否正常。管理员应该定期查询管理代理收集到的有关主机运转状态、配置及性能等的信息。? 网络管理代理是驻留在网络设备中的软件模块,这里的设备可以是UNIX工作站、网络打印机,也可以是其它的网络设备。管理代理软件可以获得本地设备的运转状态、设备特性、系统配置等相关信息。管理代理软件就象是每个被管理设备的信息经纪人,它们完成网络管理员布置的采集信息的任务。管理代理软件所起的作用是,充当管理系统与管理代理软件驻留设备之间的中介,通过控制设备的管理信息数据库(MIB)中的信息来管理该设备。管理代理软件可以把网络管理员发出的命令按照标准的网络格式进行转化,收集所需的信息,之后返回正确的响应。在某些情况下,管理员也可以通过设置某个MIB对象来命令系统进行某种操作。 路由器、交换器、集线器等许多网络设备的管理代理软件一般是由原网络设备制造商提供的,它可以作为底层系统的一部分、也可以作为可选的升级模块。设备厂商决定他们的管 理代理软件可以控制哪些MIB对象,哪些对象可以反映管理代理软件开发者感兴趣的问题。 (3)管理信息数据库(MIB)定义了一种数据对象,它可以被网络管理系统控制。MIB是一个信息存储库,这里包括了数千个数据对象,网络管理员可以通过直接控制这些数据对象去控制、配置或监控网络设备。网络管理系统可以通过网络管理代理软件来控制MIB数据对象。不管到底有多少个MIB

土地利用规划实验指导书

《土地利用规划》课程实验指导书 环境与地理科学系 2009 年 9 月 10 日

实验一土地需求量预测 一、实验目的 1.了解土地需求量预测的必要性和意义; 2.掌握不同的土地需求量预测方法,明确不同方法的实用性; 3.能够借助传统手工方式或计算机计算方式熟练使用不同的预测方法。 二、实验原理 预测是土地利用管理的重要手段,是了解和协调时期和区域土地利用供给量与需求量之间的关系的重要内容。土地需求量受一定时期国民经济、社会发展、土地质量和区位条件等的影响。耕地需求量预测是土地利用规划预测中最基本的内容。 三、实验过程 1.确定预测目的; 2.检验土地需求量预测案例提供的资料; 3.利用传统手工方式或者计算机软件实施预测过程:分别采用趋势预测法和回归分析法对案例(见附件1)进行预测。其中,手工计算方式严格按照预测方法的原理进行逐步计算;计算机计算可以采用EXCEL数据分析工具或者SPSS软件等; 4.比较传统手工和计算机两种计算方式的优缺点; 5.分析预测误差。 四、注意事项 数据输入时要仔细,分析过程中做到谨慎认真。 五、上交资料 提交实验报告,内容书写要规范。

附件1: 例1. 根据某县市1970-1999年30年耕地面积资料(表-1),采用趋势预测法计算出预测方程并绘制趋势线,同时计算出2000年的耕地面积,最后对预测误差进行分析。 表-1 ××县1970-1999年耕地面积

例2.未来耕地面积受多种因素的制约,如人口、单产、总产、基建投资等,并随着上述因素的变化而变化,在它们之间存在着因果关系。下表提供了某县市1970-1999年30年人口、粮食总产量和耕地面积的资料(表-2),由此采用回归分析法预测2000年的耕地面积,并列出回归分析方程,最后分析预测误差。 表-2 ××县1970-1999年人口、粮食总产量和耕地面积

嵌入式操作系统实验报告

中南大学信息科学与工程学院实验报告 :安磊 班级:计科0901 学号: 0909090310 指导老师:宋虹

目录 课程设计容 ----------------------------------- 3 uC/OS操作系统简介 ------------------------------------ 3 uC/OS操作系统的组成 ------------------------------ 3 uC/OS操作系统功能作用 ---------------------------- 4 uC/OS文件系统的建立 ---------------------------- 6 文件系统设计的原则 ------------------------------ 6 文件系统的层次结构和功能模块 --------------------- 6 文件系统的详细设计 -------------------------------- 8 文件系统核心代码 --------------------------------- 9 课程设计感想 ------------------------------------- 11 附录 -------------------------------------------------- 12

课程设计容 在uC/OS操作系统中增加一个简单的文件系统。 要求如下: (1)熟悉并分析uc/os操作系统 (2)设计并实现一个简单的文件系统 (3)可以是存放在存的虚拟文件系统,也可以是存放在磁盘的实际文件系统 (4)编写测试代码,测试对文件的相关操作:建立,读写等 课程设计目的 操作系统课程主要讲述的容是多道操作系统的原理与技术,与其它计算机原理、编译原理、汇编语言、计算机网络、程序设计等专业课程关系十分密切。 本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统概念,理解和巩固操作系统基本理论、原理和方法,掌握操作系统开发的基本技能。 I.uC/OS操作系统简介 μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统核。它被广泛应用于微处理器、微控制器和数字信号处理器。 μC/OS 和μC/OS-II 是专门为计算机的嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU 硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU 上。用户只要有标准的ANSI 的C交叉编译器,有汇编器、连接器等软件工具,就可以将μC/OS-II嵌入到开发的产品中。μC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小核可编译至 2KB 。μC/OS-II 已经移植到了几乎所有知名的CPU 上。 严格地说uC/OS-II只是一个实时操作系统核,它仅仅包含了任务调度,任务管理,时间管理,存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务。但由于uC/OS-II良好的可扩展性和源码开放,这些非必须的功能完全可以由用户自己根据需要分别实现。 uC/OS-II目标是实现一个基于优先级调度的抢占式的实时核,并在这个核之上提供最基本的系统服务,如信号量,,消息队列,存管理,中断管理等。 uC/OS操作系统的组成 μC/OS-II可以大致分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分。如下图:

游戏人工智能实验报告四

实验四有限状态机实验 实验报告 一、实验目的 通过蚂蚁世界实验掌握游戏中追有限状态机算法 二、实验仪器 Windows7系统 Microsoft Visual Studio2015 三、实验原理及过程 1)制作菜单 设置参数:点击会弹出对话框,设置一些参数,红、黑蚂蚁的家会在地图上标记出来 运行:设置好参数后点击运行,毒药、食物、水会在地图上随机显示 下一步:2只红蚂蚁和2只黑蚂蚁会随机出现在地图上,窗口右方还会出现红、黑蚂蚁当前数量的统计 不断按下一步,有限状态机就会不断运行,使蚁群产生变化 2)添加加速键 资源视图中 下方

选择ID和键值 3)新建头文件def.h 在AntView.cpp中加入#include"def.h" 与本实验有关的数据大都是在这里定义的 int flag=0; #define kForage 1 #define kGoHome 2 #define kThirsty 3 #define kDead 4 #define kMaxEntities 200 class ai_Entity{ public: int type; int state; int row; int col; ai_Entity(); ~ai_Entity() {} void New (int theType,int theState,int theRow,int theCol); void Forage(); void GoHome(); void Thirsty(); void Dead(); }; ai_Entity entityList[kMaxEntities]; #define kRedAnt 1 #define kBlackAnt 2

软件工程实验报告

软件工程实验报告 姓名:冯巧 学号 实验题目:实验室设备管理系统 1、系统简介: 每天对实验室设备使用情况进行统计,对于已彻底损坏的作报废处理,同时详细记录有关信息。对于有严重问题(故障)的要即时修理,并记录修理日期、设备名、修理厂家、修理费用、责任人等。对于急需但又缺少的设备需以“申请表”的形式送交上级领导请求批准购买。新设备购入后立即对新设备登记(包括类别、设备名、型号、规格、单价、数量、购置日期、生产厂家、购买人等),同时更新申请表的内容。 2、技术要求及限定条件: 采用C#语言设计桌面应用程序,同时与数据库MySql进行交互。系统对硬件的要求低,不需要网络支持,在单机环境下也能运行,在局域网环境下也能使用。方案实施相对容易,成本低,工期短。 一:可行性分析 1、技术可行性分析 计算机硬件设备,数据库,实验室设备管理软件与实验室设备管理系统的操作人员组成,能够实现实验室设备管理的信息化,提高工作效率,实现现代化的实验室设备管理。系统需要满足实验室设备管理(包括对实验设备的报废、维修和新设备的购买)、实验室设备信息查询(包括按类别进行查询和按时间进行查询)、实验室设备信息统计报表(包括对已报废设备的统计、申请新设备购买的统计和现有设备的统计)。这些功能框图如下图所示: 2、经济可行性分析 依据用户的现实需求、技术现状、经济条件、工期以及其他局限性因素等等因素,考虑到工期的长短、技术的成熟可靠、操作方便等因素,本方案具备经济可行性。

3、系统可选择的开发方案 ①方案A用C#开发系统的特点是:开发工具与数据库集成一体,可视化,开发速度较快,但数据库能够管理的数据规模相对较小。系统对硬件的要求低,不需要网络支持,在单机环境下也能运行,在局域网环境下也能使用。方案的实施相对容易,成本低,工期短。 ②方案B:以小型数据库管理系统为后台数据库,该前台操作与数据库分离,也能够实现多层应用系统。系统对硬件的要求居中,特别适合在网络环境下使用,操作方便。但系统得实现最复杂,成本最高,工期也较长。 二:软件需求分析 1.软件系统需求基本描述: 实验室设备管理系统是现代企业资源管理中的一个重要内容,也是资源开发利用的基础性工作。实验室设备在信息化之前,在用户系统管理、设备维修管理、设备的增删改查管理等方面存在诸多不利于管理的地方,不适应现代的企业管理形势和资源的开发利用。 2.软件系统数据流图(由加工、数据流、文件、源点和终点四种元素组成): 1)顶层数据流图 2)二层流程图 3)总数据流图

土地利用规划-耕地需求量预测 实验报告

贵州大学实验报告 实验 4 :耕地需求量预测 学院:农学院 专业:农业资源与环境 班级: 姓名: 学号: 指导教师:周焱 时间: 2014 年 06 月 11 日

第一部分实验目的 通过本实验的学习,使学生掌握耕地需求量预测的具体过程。 第二部分实验原理 本实验以兴义市,根据兴义市自然、社会经济条件和发展趋势,预测2010年和2020年兴义市耕地保有量和基本农田保护面积。 第三部分实验步骤 1、搜集兴义市自然经济条件等相关资料; 2、根据人口历史资料和兴义市相关发展规划,对2010年和2020年人口规模进行预测; 3、根据人口预测和相关粮食标准对耕地保有量和基本农田保护面积进行预测; 第四部分报告正文 根据表1中1997年——2005年年平均人口自然增长率,得出年平均人口增长率为0.82%,年平均人口机械增长率为0.38%,以2004年作为参考依据,预测出2010年与2020年的人口规模: P t = P o ×(1+K+P)(t-to)+(c-d) 式中:P t ——规划年人口数 P t0 ——基期年人口数 t-t ——预测年期 K——人口自然增长率 c——规划期内迁入人数 d——规划期内迁出人数 P t2010 = P t2004 ×(1+K+P)(t-to)+(c-d) =73.42×(1+0.82%+0.38%) 6+4.3 =83.17 (万人) P t2020 = P t2004 ×(1+K+P)(t-to) =73.42×(1+0.82%+0.38%) 16+4.3 = 93.16(万人) 根据年平均增长率法计算出年均粮食单产,其中r为2000年——2005年的年平均增长率的平均值1.03%: a n = a o ×(1+r)n

嵌入式系统实验报告

实验报告 课程名称:嵌入式系统 学院:信息工程 专业:电子信息工程 班级: 学生姓名: 学号: 指导教师: 开课时间:学年第一学期

实验名称:IO接口(跑马灯) 实验时间:11.16 实验成绩: 一、实验目的 1.掌握 STM32F4 基本IO口的使用。 2.使用STM32F4 IO口的推挽输出功能,利用GPIO_Set函数来设置完成对 IO 口的配置。 3.控制STM32F4的IO口输出,实现控制ALIENTEK 探索者STM32F4开发板上的两个LED实现一个类似跑马灯的效果。 二、实验原理 本次实验的关键在于如何控制STM32F4的IO口输出。IO主要由:MODER、OTYPER、OSPEEDR、PUPDR、ODR、IDR、AFRH和AFRL等8个寄存器的控制,并且本次实验主要用到IO口的推挽输出功能,利用GPIO_Set函数来设置,即可完成对IO口的配置。所以可以通过了开发板上的两个LED灯来实现一个类似跑马灯的效果。 三、实验资源 实验器材: 探索者STM32F4开发板 硬件资源: 1.DS0(连接在PF9) 2.DS1(连接在PF10) 四、实验内容及步骤 1.硬件设计 2.软件设计 (1)新建TEST工程,在该工程文件夹下面新建一个 HARDWARE文件夹,用来存储以后与硬件相关的代码。然后在 HARDWARE 文件夹下新建一个LED文件夹,用来存放与LED相关的代码。 (2)打开USER文件夹下的test.uvproj工程,新建一个文件,然后保存在 LED 文件夹下面,保存为 led.c,在led.c中输入相应的代码。

(3)采用 GPIO_Set 函数实现IO配置。LED_Init 调用 GPIO_Set 函数完成对 PF9 和 PF10 ALIENTEK 探索者 STM32F407 开发板教程 119 STM32F4 开发指南(寄存器版) 的模式配置,控制 LED0 和 LED1 输出 1(LED 灭),使两个 LED 的初始化。 (4)新建一个led.h文件,保存在 LED 文件夹下,在led.h中输入相应的代码。 3.下载验证 使用 flymcu 下载(也可以通过JLINK等仿真器下载),如图 1.2所示: 图1.2 运行结果如图1.3所示:

实验室设备管理系统实验报告1讲解

本科实验报告 课程名称:软件工程导论 实验项目:实验室设备管理系统 实验地点:实验楼210 专业班级:软件1319 学号:2013005655 学生姓名:张卫东 指导教师:王会青 2015年05 月21 日

一、实验目的和要求 1.系统简介 某大学每学年都需要对实验室设备使用情况进行统计、更新。 其中: (1)对于已彻底损坏的实验设备做报废处理,同时详细记录有关信息。 (2)对于有严重问题(故障)的需要及时修理,并记录修理日期、设备名、编号、修理厂家、修理费用、责任人等。 (3)对于急需使用但实验室目前又缺乏的设备,需以“申请表”的形式送交上级领导请求批准购买。新设备购入后要立即进行设备登记(包括类别、设备名、编号、 型号、规格、单价、数量、购置日期、生产厂家、保质期和经办人等信息),同 时更新申请表的内容。 (4)随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段等条件进行查询。 2.技术要求及限制条件 (1)所有工作由专门人员负责完成,其他人不得任意使用。 (2)每件设备在做入库登记时均由系统按类别加自动顺序号编号,形成设备号;设备报废时要及时修改相应的设备记录,且有领导认可。 (3)本系统的数据存储至少包括:设备记录、修理记录、报废记录、申请购买记录。 (4)本系统的输入项至少包括:新设备信息、修理信息、申请购买信息、具体查询统计要求。 (5)本系统的输出项至少包括:设备购买申请表、修理/报废设备资金统计表。 二、实验内容和原理 可行性分析报告 可行性研究主要是初步确定项目的规模和目标,确定项目的约束和限制。对于项目的功能和性能方面的要求进行简要的概述。详见组长田彦博的实验报告。 需求规格说明书 需求规格说明书主要是进一步定制实验室设备管理系统软件开发的细节问题,便于用户与开发商协调工作。在此主要绘制了系统的数据流图、相应的数据字典、E-R图、以及系统的功能图,对于各个方面的需求进行了详细的阐述。详见组长田彦博的实验报告。 概要设计说明书 概要设计说明书是为了说明整个实验室设备管理系统的体系架构,以及需求用例的各个功能点在架构中的体现。在此主要绘制了系统流程图、总体结构和模块的外部设计,而且对于数据库中逻辑结构方面也进行了详细的设计。详见组长田彦博的实验报告。

南邮嵌入式系统B实验报告2016年度-2017年度-2

_* 南京邮电大学通信学院 实验报告 实验名称:基于ADS开发环境的程序设计 嵌入式Linux交叉开发环境的建立 嵌入式Linux环境下的程序设计 多线程程序设计 课程名称嵌入式系统B 班级学号 姓名 开课学期2016/2017学年第2学期

实验一基于ADS开发环境的程序设计 一、实验目的 1、学习ADS开发环境的使用; 2、学习和掌握ADS环境下的汇编语言及C语言程序设计; 3、学习和掌握汇编语言及C语言的混合编程方法。 二、实验内容 1、编写和调试汇编语言程序; 2、编写和调试C语言程序; 3、编写和调试汇编语言及C语言的混合程序; 三、实验过程与结果 1、寄存器R0和R1中有两个正整数,求这两个数的最大公约数,结果保存在R3中。 代码1:使用C内嵌汇编 #include int find_gcd(int x,int y) { int gcdnum; __asm { MOV r0, x MOV r1, y LOOP: CMP r0, r1 SUBLT r1, r1, r0 SUBGT r0, r0, r1 BNE LOOP MOV r3, r0 MOV gcdnum,r3 //stop // B stop // END } return gcdnum; } int main() { int a; a = find_gcd(18,9);

printf("gcdnum:%d\n",a); return 0; } 代码2:使用纯汇编语言 AREA example1,CODE,readonly ENTRY MOV r0, #4 MOV r1, #9 start CMP r0, r1 SUBLT r1, r1, r0 SUBGT r0, r0, r1 BNE start MOV r3, r0 stop B stop END 2、寄存器R0 、R1和R2中有三个正整数,求出其中最大的数,并将其保存在R3中。 代码1:使用纯汇编语言 AREA examp,CODE,READONL Y ENTRY MOV R0,#10 MOV R1,#30 MOV R2,#20 Start CMP R0,R1 BLE lbl_a CMP R0,R2 MOVGT R3,R0 MOVLE R3,R2 B lbl_b lbl_a CMP R1,R2 MOVGT R3,R1 MOVLE R3,R2 lbl_b B . END 代码2:使用C内嵌汇编语言 #include int find_maxnum(int a,int b,int c)

人工智能实验报告大全

人工智能课内实验报告 (8次) 学院:自动化学院 班级:智能1501 姓名:刘少鹏(34) 学号: 06153034

目录 课内实验1:猴子摘香蕉问题的VC编程实现 (1) 课内实验2:编程实现简单动物识别系统的知识表示 (5) 课内实验3:盲目搜索求解8数码问题 (18) 课内实验4:回溯算法求解四皇后问题 (33) 课内实验5:编程实现一字棋游戏 (37) 课内实验6:字句集消解实验 (46) 课内实验7:简单动物识别系统的产生式推理 (66) 课内实验8:编程实现D-S证据推理算法 (78)

人工智能课内实验报告实验1:猴子摘香蕉问题的VC编程实现 学院:自动化学院 班级:智能1501 姓名:刘少鹏(33) 学号: 06153034 日期: 2017-3-8 10:15-12:00

实验1:猴子摘香蕉问题的VC编程实现 一、实验目的 (1)熟悉谓词逻辑表示法; (2)掌握人工智能谓词逻辑中的经典例子——猴子摘香蕉问题的编程实现。 二、编程环境 VC语言 三、问题描述 房子里有一只猴子(即机器人),位于a处。在c处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图1所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。要求通过VC语言编程实现猴子摘香蕉问题的求解过程。 图1 猴子摘香蕉问题 四、源代码 #include unsigned int i; void Monkey_Go_Box(unsigned char x, unsigned char y) {

数据库设备管理系统

郑州轻工业学院本科 数据库课程设计总结报告 设计题目:设备管理系统 学生姓名:xx 、xx 系别:计算机与通信工程学院 专业:计算机科学与技术 班级:计算机科学与技术10~01 学号:xx 指导教师:张保威金松河 2012 年12月30 日

郑州轻工业学院 课程设计任务书 题目设备管理系统 专业、班级计算机科学与技术10-1 学号 xx 姓名 xx 学号 xx 姓名 xx 主要内容: 了解设备管理的基本流程,根据构思活出E---R图。根据所化E---R图,对相应的试题和关系建立表格,实现数据的初始化。用SQL建立数据库表,然后再用其他软件建立界面(如此设备管理系统用的是C#实现界面),将建立好的界面同数据库进行链接,实现对数据库的简单的增删改查。 E-R图思路: 部门向设备处申请所需设备的数量及类型,设备处产生采购清单递交给采购员。 采购员从供应商获得设备存放在设备存放处,设备管理员将设备分配到需要设备的各个部门,部门将设备分给员工进行使用。 在使用设备的过程中,如果设备在保修期限内出现质量问题部门向设备处申请,设备退回供应商;如果设备损坏,由部门向维修人员报修;若无维修价值,则申请报废。 基本要求: 立足于科技日益发达,自动化组不占据主要市场,要求学生根据自己所学的数据库知识,建立简单的数据库实现对设备管理的机械化,自动化。 1:能够数量掌握SQL; 2:能够运用其他辅助工具做图形界面。 3:能够实现对C#和数据库的链接。 4:作出的系统能够对数据库进行简单的增删改查。 5:通过机械化,自动化工具的使用,提高工作效率、准确率。 主要参考资料等: 《数据库系统概论》作者:王珊萨师煊出版社:高等教育出版社 《数据库系统概论》课堂课件。 完成期限:两周 指导教师签名: 课程负责人签名: 2012年 12月 30 日

土地信息系统(空间数据可视化)实验报告

一、实验目的与要求 1、对数字地图制图有初步的认识 2、掌握了解符号化、注记标注、格网绘制以及地图整饰的意义 3、掌握MAPGIS工程文件、点、线、面文件创建及保存方法 4、掌握基本的符号化方法、自动标注操作以及相关地图的整饰和数据的操作 通过综合实验,加深理解地理信息系统基本理论、核心技术,掌握GIS 图形输入、编辑、数据库建立、空间分析、地学分析、统计分析、专题图制作、制图输出等基本应用技能,结合环规专业进行开发区建设规划,为GIS 在资源环境与城乡规划管理中应用打下基础。 二、实验准备 阅读PPT严格按照下面的符号特征要求来做: 1 数据符号化显示 A.地图中共有6个区,将这6个区按照ID字段来用分类色彩表示; B.将道路按class字段分类:分为1~4级道路,并采用不同的颜色表示; C.地铁线符号Color:深蓝色,Width:1.0; D.区县界线Color:橘黄色,Width:1.0 ; E.区县政府Color:红色,Size:10,样式:Star3; F.市政府符号在区县政府基础上改为大小18 2注记标记 A.对地图中6个区的Name字段使用自动标注,标注统一使用Country2 样式,大小:16; B.手动标注黄浦江(双线河),使用宋体、斜体、16号字,字体方向为纵 向,使用曲线注记; C.地铁线使用自动标注,采用Country3样式; D.道路中,对道路的Class字段为GL03的道路进行标注,字体:宋体, 大小:10; E.区县政府使用自动标注,字体:宋体,大小:10; F.市政府使用自动标注,字体:楷体,大小:14

3绘制格网 采用索引参考格网,使用默认设置。 4 添加图幅整饰要素 A.添加图例,包括所有字段; B.添加指北针,选择ESRI North 3样式; C.添加比例尺,选择Alternating Scale Bar 1样式 三、实验内容与主要过程 制作上海市行政区划图 (一)数据符号化 首先我们打开ArcMap,点击Add Data添加各数据,选取数据层所在位置,添加各图层。 在区县界面图层上右键打开Properties对话框,在Value Field中选择字段Name,单击Add All Values按钮,将6个区的名称都添加进来,并选择合适的配色,单击确定按钮完成符号化设置

嵌入式系统实验实验报告

嵌入式系统实验实验报告 一、实验目的 1.基本实验

. Word 资料搭建PXA270嵌入式LINUX开发软硬件环境;安装LINUX操 作系统;安装与配置建立宿主机端交叉编译调试开发环境;配置宿主机 PC 机端的minicom(或超级终端)、TFTP服务、NFS服务,使宿主PC机与PXA270开发板可以通过串口通讯,并开通TFTP 和NFS服务。 2.人机接口 键盘驱动;LCD控制;触摸屏数据采集与控制实验; 3.应用实验 完成VGA显示;Web服务器实验;网络文件传输实验;多线程应用实验。 4.扩展应用实验 完成USB摄像头驱动与视频采集;GPS实验;GSM/GPRS通讯;视频播放移植;USB蓝牙设备无线通讯;NFS文件服务器;蓝牙视频文件服务器。 5.QT实验 完成基本嵌入式图形开发环境搭建;“Hello world!”QT初探;创建一个窗口并添加按钮;对象通信:Signal和Slot;菜单和快捷键;工具条和状态栏;鼠标和键盘事件;对话框;QT的绘图;俄罗斯方块;基于QT的GSM手机在嵌入式LINUX下的设计与实现。 二、实验内容 1.人机接口实验 实验十九键盘驱动实验 ?实验目的:矩阵键盘驱动的编写

?实验内容:矩阵键盘驱动的编写 ?作业要求:完成键盘加减乘除运算 ?实验作业源码及注释: #INCLUDE #INCLUDE #INCLUDE #INCLUDE #INCLUDE #INCLUDE #DEFINE DEVICE_NAME “/DEV/KEYBOARD” INT MAIN(VOID){ INT FD; INT RET; UNSIGNED CHAR BUF[1]; INT I,F,J; DOUBLE X; INT A[2]={0}; CHAR PRE_SCANCODE=0XFF; FD=OPEN(DEVICE_NAME,O_RDWR); IF(FD==-1)PRINTF(“OPEN DEVICE %S ERROR\N”,DEVICE_NAME); ELSE{ BUF[0]=0XFF; I=0;F=0; WHILE(1){ READ(FD,BUF,1);

用友ERP生产管理系统实验报告

用友ERP生产管理系统实验报告 本课程共分14单,以用友ERP-U8.72为实验平台,以一个企业的生产经营业务贯穿始终,分别介绍了ERP生产管理系统中物料清单、主生产计划、产能管理、需求规划、生产订单、车间管理、工程变更、设备管理的生产制造模块,以及与生产管理活动有关的销售管理、采购管理、委外管理、库存管理、应收款管理及应付款管理等模块的相关功能。 用友ERP生产管理系统是ERP-U8企业管理软件的重要组成部分,是企业信息化管理核心的和有效的方法和工具。它面向离散型和半离散型的制造企业资源管理的需求,遵循以客户为中心的经营战略,以销售订单及市场预测需求为导向,以计划为主轴,覆盖了面向订单采购、订单生产、订单装配和库存生产四种制造业生产类型,并广泛应用于机械、电子、食品、制药等行业。 本实验报告要针对的实验项目有客户订货、排程业务、产能管理、采购业务、委外业务、生产业务、车间管理、销售发货业务、应收款和应付款系统的制单业务、期末处理、物料清单维护、工程变更管理和设备管理。 实验一客户订货 一、实验目的 1.理解销售报价的作用,掌握销售报价的操作。 2.理解销售订货管理的主要功能,掌握相关的基本操作。 二、实验内容 1.输入销售报价单。 2.审核销售报价单。 3.输入销售预订单。 4.输入销售订单。 5.审核销售订单。 6.修改已审核销售订单。 三、实验步骤 1.输入报价单。 2.审核报价单。 3.根据报价单生成销售订单。 4.审核销售订单。 5.修改已审核销售订单。 6.手工输入新的销售订单。 7.审核手工输入的销售订单。

四、实验成果 实验二排程业务 一、实验目的 理解主生产计划和物料需求计划的作用,掌握产销排程和物料需求计划的操作。 二、实验内容 1.MPS累计提前天数推算和库存异常状况查询。 2.MPS计划参数维护。 3.MPS计划生成。 4.MPS计划作业的供需资料查询。 5.MRP累计提前天数推算和库存异常状况查询。 6.MRP计划参数维护。 7.MRP计划生成。 8.MRP供需资料查询。 三、实验步骤 1.MPS累计提前天数推算和库存异常状况查询。 2.MPS计划参数维护。 3.MPS计划生成。

土地资源调查与评价实验一

实验一土地要素分析 1208140515 土资122班 张舵 一、实验目的 根据研究区域基础数据资料,分析地形、植被、土壤、土地利用方式等土地构成要素的空间演替的规律。 二、实验数据 1.北京市海淀区数字高程模型(DEM) 2.北京市海淀区土壤类型图(土壤.*) 3.北京市海淀区土地利用现状图(简化)(HDDLTB.*) 4.北京市海淀区“凤凰岭-稻香湖”样区条带遥感影像(Sat_DXH31.tif)

三、实验过程 1.将DEM由Raster转化为TIN 打开ArcMap10.2,点击加载实验数据,在Arc Toolbox中选择3D Analyst Tools→Conversion→From Raster→Raster to TIN(图1),输入栅格为DEM图层(图2),将数字高程模型(DEM)由栅格格式(Raster)转化为不规则三角网格式(TIN)(图3)。 图 1 Arc Toolbox工具栏 图 2 Raster to TIN窗口

图 3不规则三角网格式(TIN)的数字高程图 2.选择断面 将遥感影像图层置于所有图层顶端,在研究样区条带内,点击,选择一条东西向、横跨研究样区的断面,并用红线加粗显示(图4) 图4 断面位置示意图 断面在栅格中的具体位置如下图(图5) 图5断面栅格位置图 3.断面地形分析 (1)点击生成断面高程变化图,结合遥感影像进行地形判断。 (2)在Arc Toolbox中选择Spatial Analyst Tools→Surface→Contour,

把生成的TIN图作为输入图层,等值线高差为50米,生成等值线图,进行等值线分析。(图6) 图6等值线分析 4.地貌类型分析 在Arc Toolbox中选择Spatial Analyst Tools→Surface→Slope,把生成的TIN图作为输入图层,生成坡度图,与高程变化图、等值线图对照,分析地貌类型及其部位。 5.土壤类型和属性 在土壤类型图的图层属性中选择符号系统,值字段为土类,添加所有值,并将卵石滩值移除后确定(图7) 图7 土类图层属性表

嵌入式系统实验报告

郑州航空工业管理学院 嵌入式系统实验报告 (修订版) 20 – 20第学期 赵成,张克新 院系: 姓名: 专业: 学号: 电子通信工程系 2014年3月制

实验一ARM体系结构与编程方法 一、实验目的 了解ARM9 S3C2410A嵌入式微处理器芯片的体系结构,熟悉ARM微处理器的工作模式、指令状态、寄存器组及异常中断的概念,掌握ARM指令系统,能在ADS1.2 IDE中进行ARM汇编语言程序设计。 二、实验内容 1.ADS1.2 IDE的安装、环境配置及工程项目的建立; 2.ARM汇编语言程序设计(参考附录A): (1)两个寄存器值相加; (2)LDR、STR指令操作; (3)使用多寄存器传送指令进行数据复制; (4)使用查表法实现程序跳转; (5)使用BX指令切换处理器状态; (6)微处理器工作模式切换; 三、预备知识 了解ARM嵌入式微处理器芯片的体系结构及指令体系;熟悉汇编语言及可编程微处理器的程序设计方法。 四、实验设备 1. 硬件环境配置 计算机:Intel(R) Pentium(R) 及以上; 内存:1GB及以上; 实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器; 2. 软件环境配置 操作系统:Microsoft Windows XP Professional Service Pack 2; 集成开发环境:ARM Developer Suite (ADS) 1.2。 五、实验分析 1.安装的ADS1.2 IDE中包括和两个软件组件。在ADS1.2中建立类型的工程,工程目标配置为;接着,还需要对工程进行、及链接器设置;最后,配置仿真环境为仿真方式。 2.写出ARM汇编语言的最简程序结构,然后在代码段中实现两个寄存器值的加法运算,给出运算部分相应指令的注释。 ; 文件名:

人工智能实验报告

实验报告 1.对CLIPS和其运行及推理机制进行介绍 CLIPS是一个基于前向推理语言,用标准C语言编写。它具有高移植性、高扩展性、 强大的知识表达能力和编程方式以及低成本等特点。 CLIPS由两部分组成:知识库、推理机。它的基本语法是: (defmodule< module-n ame >[< comme nt >]) CLIPS的基本结构: (1).知识库由事实库(初始事实+初始对象实例)和规则库组成。 事实库: 表示已知的数据或信息,用deftemplat,deffact定义初始事实表FACTLIS,由关系名、后跟 零个或多个槽以及它们的相关值组成,其格式如下: 模板: (deftemplate [] *) :: = | 事实: (deffacts [] *) 当CLIPS系统启动推理时,会把所有用deffact定义的事实自动添加到工作存储器中。常用命令如下:asser:把事实添加到事实库(工作存储器)中retract:删除指定事实 modify :修改自定义模板事实的槽值duplicate :复制事实 clear:删除所有事实 规则库 表示系统推理的有关知识,用defrule命令来定义,由规则头、后跟零个或多个条件元素以 及行为列表组成,其格式如下: (defrule [] * ; =>

相关主题
文本预览
相关文档 最新文档