嵌入式系统GPIO输入输出实验报告

嵌入式系统GPIO输入输出实验报告
嵌入式系统GPIO输入输出实验报告

实验四 GPIO 输入实验

一、实验目的

1、能够使用GPIO的输入模式读取开关信号。

2、掌握GPIO相关寄存器的用法和设置。

3、掌握用C语言编写程序控制GPIO。

二、实验环境

PC机一台

ADS 1.2集成开发环境一套

EasyARM2131教学实验平台一套

三、实验内容

1.实验通过跳线 JP8 连接KEY1与P0.16,程序检测按键KEY1 的状态,控制蜂鸣

器BEEP 的鸣叫。按下KEY1,蜂鸣器鸣叫,松开后停止蜂鸣。(调通实验后,改为KEY3键进行输入)。

2.当检测到KEY1有按键输入时点亮发光二极管LED4并控制蜂鸣器响,软件延时

后关掉发光管并停止蜂鸣,然后循环这一过程直到检测按键没有输入。(键输入改为键KEY4,发光管改为LED6)。

3.结合实验三,当按下按键Key1时,启动跑马灯程序并控制蜂鸣器响,软件延时

后关掉发光管并停止蜂鸣,然后循环这一过程直到检测按键再次按下。

四、实验原理

当P0 口用于GPIO输入时(如按键输入),内部无上拉电阻,需要加上拉电阻,电路图参见图 4.2。

进行 GPIO 输入实验时,先要设置IODIR 使接口线成为输入方式,然后读取IOPIN 的值即可。

图 4.2按键电路原理图

实验通过跳线 JP8 连接KEY1_P0.16,程序检测按键KEY1 的状态,控制蜂鸣器BEEP 的鸣叫。按下KEY1,蜂鸣器鸣叫,松开后停止蜂鸣。

在这个实验中,需要将按键KEY1 输入口P0.16 设为输入口而蜂鸣器控制口P0.7 设置为输出口。蜂鸣器电路如图 4.3 所示,当跳线JP6 连接蜂鸣器时,P0.7 控制蜂鸣器,低电平时蜂鸣器鸣叫。LED灯电路如图4.4所示,低电平时灯亮。

图 4.3 蜂鸣器控制电路

图 4.4 LED 控制电路

程序首先设置管脚连接寄存器PINSEL0 和PINSEL1,设置P0.16 为输入,设置P0.7,P1.21 为输出。然后检测端口P0.16 的电平,对P0.7, P1.21进行相应的控制,流程图如图 4.5 所示,实现程序见程序清单 4.1。

图 4.5 按键输入实验流程图

五、实验步骤、源代码及调试结果

内容1

实验步骤

①启动ADS1.2IDE集成开发环境,选择ARM Executable Image for lpc2131

工程模板建立一个工程BEEP_key。

②在user组里编写主程序代码main.c。

③选用DebugInFLASH生成目标,然后编译链接工程。

④将EasyARM教学实验开发平台上的相应管脚跳线短接。

⑤选择Project->Debug,启动AXD进行JLINK仿真调试。

⑥全速运行程序,程序将会在main.c的主函数中停止。如下图所示:

⑦单击Context Variable图标按钮(或者选择Processor Views->Variables)

打开变量观察窗口,通过此窗口可以观察局部变量和全局变量。选择System Views->Debugger Internals 即可打开LPC2000系列ARM7微控制器的片内外寄存器窗口。

通过变量窗口可以观察变量BEEP、KEY1等的值和ARM7微控制器的片内外寄存器窗口。如下图所示:

⑧可以单步运行程序,先按下Key1,观察IO0PIN寄存器的值,然后断开Key1,

观察IO0PIN寄存器的值。可以设置/取消断点;或者全速运行程序,停止程

序运行,观察变量的值,判断蜂鸣器控制

是否正确。如下图所示:

图4.6 未按下Key1时IO0PIN的值图4.7 按下Key1时IO0PIN的值

由上两图可知,当按下Key1时,IO0PIN寄存器的第16位由1变为0(F变为E),key1与P0.16相连,按下Key1时,P0.16管脚输出电平由1变为0,寄存器值变化,蜂鸣器响,说明控制是正确的。

现象描述:按下KEY1,蜂鸣器鸣叫,松开后停止蜂鸣。

源代码:

#include "config.h"

const uint32 BEEP = 1 << 7; // P0.7 控制蜂鸣器

const uint32 KEY1 = 1 << 16; // P0.16 连接KEY1

(改为KEY3时,只需“const uint32 KEY1 = 1 << 16”改为“const uint32 KEY3 = 1 << 18”,其余不变。)

/********************************************************************************* **********

** 函数名称:main()

** 函数功能:GPIO 输入实验测试。

** 检测按键KEY1。KEY1 按下,蜂鸣器蜂鸣,松开后停止蜂鸣。

** 跳线说明:把 JP8 的KEY1 跳线短接,JP11 连接蜂鸣器。

********************************************************************************** *********/

int main (void)

{ PINSEL0 = 0x00000000; // 所有管脚连接GPIO

PINSEL1 = 0x00000000;

IO0DIR = BEEP; // 蜂鸣器控制口输出,其余输入

while (1)

{ if ((IO0PIN & KEY1) == 0) IO0CLR = BEEP; // 如果KEY1 按下,蜂鸣器鸣叫

else IO0SET = BEEP; // 松开则停止蜂鸣

}

return 0;

}

内容二

实验步骤

①启动ADS1.2IDE集成开发环境,选择ARM Executable Image for lpc2131

工程模板建立一个工程BEEP_key。

②在user组里编写主程序代码main.c。

③选用DebugInFLASH生成目标,然后编译链接工程。

④将EasyARM教学实验开发平台上的相应管脚跳线短接。

⑤选择Project->Debug,启动AXD进行JLINK仿真调试。

⑥全速运行程序,程序将会在main.c的主函数中停止。如下图所示:

⑦单击Context Variable图标按钮(或者选择Processor Views->Variables)打开变量观察窗口,通过此窗口可以观察局部变量和全局变量。选择System Views->Debugger Internals 即可打开LPC2000系列ARM7微控制器的片内外寄存器窗口。

通过变量窗口可以观察变量BEEP、KEY1等全局变量、i等本地变量和ARM7微控制器的片内外寄存器窗口。如下图所示:

左图所示为ARM7微控制器的片内

寄存器窗口。

图4.9 本地变量

图4.8 全局变量

⑧可以单步运行程序,先按下Key1,观察IO0PIN寄存器的值,然后断开Key1,观察IO0PIN寄存器的值。可以设置/取消断点;或者全速运行程序,停止程序运行,观察变量的值,判断蜂鸣器控制是否正确。如下图所示:

.

图4.10 未按下KEY1时IO0PIN的值

图4.11 按下KEY1后IO0PIN的值

对比图4.10和4.11,发现按下KEY1后,IO0PIN寄存器的第16位由1变为0;而KEY1对应管脚P0.16,当按下时输入低电平,这说明KEY1的控制是正确的。

上图所示为运行“IO0CLR = BEEP”后IO0PIN寄存器的值,与图4.10对比,发现第8位由1变为0,BEEP对应P0.7管脚,这说明BEEP的控制是对的。

现象描述:当按下KEY1时,蜂鸣器鸣响,LED4亮;当松开KEY1后,蜂鸣器静音,LED4灭。

源代码如下:

#include "config.h"

const uint32 BEEP = 1 << 7; // P0.7 控制蜂鸣器

const uint32 KEY1 = 1 << 16; // P0.16 连接KEY1

(改为KEY4按键时,只需把上句代码改为“const uint32 KEY4=1<<19”,其余不变)

const uint32 LEDS4= 1 << 21; // P1[21]控制LED4,低电平点亮

(改为LED6时,只需把上句代码改为“const uint32 LED6=1<<23”,其余不变。)

/***************************************************************************

** 函数名称:main()

** 函数功能:GPIO 输入实验测试。

** 检测按键KEY1。KEY1 按下,蜂鸣器蜂鸣,松开后停止蜂鸣。

** 跳线说明:把 JP8 的KEY1 跳线短接,JP11 连接蜂鸣器。

********************************************************************************** *********/

int main (void)

{

Uint32 i;

PINSEL0 = 0x00000000; // 所有管脚连接GPIO PINSEL1 = 0x00000000;

IO0DIR = BEEP; // 蜂鸣器控制口输出0

IO1DIR = LEDS4; // 设置LED4 灯亮

while (1)

{ if ((IO0PIN & KEY1) == 0)

for(i=0; i<1000; i++); // 软件延时{

IO0CLR = BEEP; // 如果KEY1 按下,蜂鸣器鸣叫IO1DCLR = LEDS4; // 设置LED4 灯亮

}

else

{

IO0SET = BEEP; // 松开则停止蜂鸣

IO1SET= LEDS4; // 设置LED4 灯灭

}

for(i=0; i<1000; i++); // 软件延时

}

return 0;

}

内容三

实验步骤

①启动ADS1.2IDE集成开发环境,选择ARM Executable Image for lpc2131

工程模板建立一个工程BEEP_key。

②在user组里编写主程序代码main.c。

③选用DebugInFLASH生成目标,然后编译链接工程。

④将EasyARM教学实验开发平台上的相应管脚跳线短接。

⑤选择Project->Debug,启动AXD进行JLINK仿真调试。

⑥全速运行程序,程序将会在main.c的主函数中停止。如下图所示:

⑦单击Context Variable图标按钮(或者选择Processor Views->Variables)

打开变量观察窗口,通过此窗口可以观察局部变量和全局变量。选择System

Views->Debugger Internals 即可打开LPC2000系列ARM7微控制器的片内

外寄存器窗口。

通过变量窗口可以观察变量BEEP、KEY1等的值和ARM7微控制器的片内外寄存器窗口。如下图所示:

⑧可以单步运行程序,先按下Key1,观察IO0PIN寄存器的值,然后断开Key1,

观察IO0PIN寄存器的值。可以设置/取消断点;或者全速运行程序,停止程

序运行,观察变量的值,判断蜂鸣器控制

是否正确。如下图所示:

图4.12未按下Key1时IO0PIN的值图4.13按下Key1时IO0PIN的值

由上两图可知,当按下Key1时,IO0PIN寄存器的第16位由1变为0(F变为E),key1与P0.16相连,按下Key1时,P0.16管脚输出电平由1变为0,寄存器值变化,蜂鸣器响,流水灯亮,说明控制是正确的。

现象描述:当按下按键KEY1时,蜂鸣器鸣响,流水灯亮;松开后,蜂鸣器静音,流水灯灭。

源代码如下:

#include "config.h"

const uint32 BEEP = 1 << 7; // P0.7 控制蜂鸣器

const uint32 KEY = 1 << 16; // P0.16 连接KEY1

const uint32 LEDS8 = 0xFF << 18; // P1[25:18]控制LED8~LED1,低电平点亮

void DelayNS(uint32 dly)

{ uint32 i;

for(; dly>0; dly--)

{

for(i=0; i<50000; i++);

}

}

/*********************************************************************** ********************

** 函数名称:liushuideng()

** 函数功能:流水灯显示实验。

** 调试说明:连接跳线 JP12 至LED8~LED1。

************************************************************************ *******************/

/* 流水灯花样,低电平点亮,注意调用时候用了取反操作 */

const uint32 LED_TBL[] =

{

0x00, 0xFF, // 全部熄灭后,再全部点亮

0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, // 依次逐个点亮

0x01, 0x03, 0x07, 0x0F, 0x1F, 0x3F, 0x7F, 0xFF, // 依次逐个叠加

0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01, // 依次逐个递减

0x81, 0x42, 0x24, 0x18, 0x18, 0x24, 0x42, 0x81, // 两个靠拢后分开

0x81, 0xC3, 0xE7, 0xFF, 0xFF, 0xE7, 0xC3, 0x81 // 从两边叠加后递减

};

int liushuideng(void)

{ uint8 i;

PINSEL1 = 0x00000000; // 设置管脚连接GPIO

IO1DIR = LEDS8; // 设置LED 控制口为输出

while (1)

{

for (i=0; i<42; i++)

{ /* 流水灯花样显示 */

IO1SET = ~((LED_TBL[i]) << 18);

DelayNS(20);

IO1CLR = ((LED_TBL[i]) << 18);

DelayNS(20);

}

}

return 0;

}

//主函数

int main(void)

{

uint32 i;

PINSEL0 = 0x00000000; // 所有管脚连接GPIO PINSEL1 = 0x00000000;

IO0DIR = BEEP; // 蜂鸣器控制口输出0

while (1)

{ if ((IO0PIN & KEY) == 0)

{for(i=0; i<1000; i++); // 软件延时{

IO0CLR = BEEP; // 如果KEY 按下,蜂鸣器鸣叫liushuideng();

}

}

else

{

IO0SET = BEEP; // 松开则停止蜂鸣

IO1SET= LEDS8;

}

for(i=0; i<100; i++); // 软件延时}

return 0;

}

六、思考题

1、如果将P0.30设置为GPIO输入模式,且管脚悬空,那么读取P0.30得到的值是0还是1?或者是不确定?

当管脚悬空时,该管脚有可能是高电平也有可能是低电平。读取IO0PIN的值并不能确定管教的值。有时管脚是高电平,读取到的不一定是高电平。

2、如果需要读取当前P0.7的输出值(不是管脚上的电平),如何实现?

将该管脚与一个LED连接,若LED亮,则输出值为0,否则为1.教育之通病是教用脑的人不用手,不教用手的人用脑,所以一无所能。教育革命的对策是手脑联盟,结果是手与脑的力量都可以大到不可思议。

网络安全实验报告[整理版]

一Sniffer 软件的安装和使用 一、实验目的 1. 学会在windows环境下安装Sniffer; 2. 熟练掌握Sniffer的使用; 3. 要求能够熟练运用sniffer捕获报文,结合以太网的相关知识,分析一个自己捕获的以太网的帧结构。 二、实验仪器与器材 装有Windows操作系统的PC机,能互相访问,组成局域网。 三、实验原理 Sniffer程序是一种利用以太网的特性把网络适配卡(NIC,一般为以太同卡)置为杂乱模式状态的工具,一旦同卡设置为这种模式,它就能接收传输在网络上的每一个信息包。 四、实验过程与测试数据 1、软件安装 按照常规方法安装Sniffer pro 软件 在使用sniffer pro时需要将网卡的监听模式切换为混杂,按照提示操作即可。 2、使用sniffer查询流量信息: 第一步:默认情况下sniffer pro会自动选择网卡进行监听,手动方法是通过软件的file 菜单下的select settings来完成。 第二步:在settings窗口中我们选择准备监听的那块网卡,把右下角的“LOG ON”勾上,“确定”按钮即可。 第四步:在三个仪表盘下面是对网络流量,数据错误以及数据包大小情况的绘制图。 第五步:通过FTP来下载大量数据,通过sniffer pro来查看本地网络流量情况,FTP 下载速度接近4Mb/s。 第六步:网络传输速度提高后在sniffer pro中的显示也有了很大变化,utiliazation使用百分率一下到达了30%左右,由于我们100M网卡的理论最大传输速度为12.5Mb/s,所以4Mb/s刚好接近这个值的30%,实际结果和理论符合。 第七步:仪表上面的“set thresholds”按钮了,可以对所有参数的名称和最大显示上限进行设置。 第八步:仪表下的“Detail”按钮来查看具体详细信息。 第九步:在host table界面,我们可以看到本机和网络中其他地址的数据交换情况。

嵌入式操作系统实验报告

中南大学信息科学与工程学院实验报告 姓名:安磊 班级:计科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个部分。如下图:

嵌入式实验报告

课题:按键控制流水灯 专业:物联网工程 班级:01 学号:14154951 姓名:李政 指导教师:何建军 设计日期:2016.12.21—2016.12.30 成绩: 重庆大学城市科技学院电气学院

嵌入式设计报告 一、设计目的作用 通过编程实现对LED灯项目的改变,加深对stm32芯片的理解,对keil软件的熟悉掌握,工程的搭建以及头文件的使用。掌握外部设备的接入以及外部中断的实现。 二、设计要求 用四个按键控制8个流水灯的流水显示 (1).按键A按下时候流水灯按从左往右的流水显示。 (2).按键B按下时候流水灯按从右往左的流水显示。 (3).按键C按下时候流水灯按中心开花的方式流水显示:从中间向两边流水显示 (4).按键D按下时候流水灯按从两边到中心移动的方式流水显示。(5).(选做)引入时针中断: 默认的流水方式: (1)对时钟中断的次数进行计数 (2)当时钟中断的次数除以4的余数为0时:按从左到右的顺序流水显示(3)当时钟中断的次数除以4的余数为1时:按从右到左的顺序流水显示(4)当时钟中断的次数除以4的余数为2时:按中心开花的方式流水显示(5)当时钟中断的次数除以4的余数为3时:从两边到中心移动的方式流水显示。 系统启动时按默认的流水方式显示,当按下A、B、C、D四个按键时,按指定的方式流水显示,当按下按键E时恢复按默认的流水方式。 三、设计的具体实现 1、设计原理 这次使用的是stm32f103系列芯片,芯片引脚如下图

Stm32内部资源

GPIO原理及应用: 有7个16位并行I/O口:PA、PB、PC、PD、 PE、PF、PG 都是复用的,最少有2种 功能,最多有6种功能

STM32嵌入式系统实验报告模板

实验一使用固件函数库创建库函数模板 一、实验目的 1. 熟悉STM32的开发环境MDK Keil和仿真软件Proteus 2. 熟悉STM32的固件库函数文件夹 3. 掌握STM32固件库的使用方法 二、实验内容 1.开发自己的固件库函数模板 三、预备知识 掌握基于STM32固件库进行编程的方法。 四、实验设备 1. 硬件环境配置 计算机:Intel(R) Pentium(R) 及以上; 内存:1GB及以上; 实验设备:嵌入式开发平台,USB转串口数据线; 2. 软件环境配置 操作系统:Microsoft Windows XP Professional Service Pack 2; 集成开发环境:Keil μVision5 IDE; 五、实验过程 1.创建本地文件夹和软件中的文件夹 2. 对软件中的文件夹进行配置

3.软件设计及代码(写一个简单的main函数)

六、遇到的问题及解决方法

实验二使用STM32固件库点亮LED灯 一、实验目的 1. 掌握STM32固件库的使用方法 2. 掌握基于库函数模板的开发方法 3. 掌握基于固件库进行GPIO端口编程的方法 二、实验内容 1. 使用Proteus软件设计点亮LED灯电路 2. 基于固件库进行编程 3. 基于固件库编程控制GPIO端口的输出,进而控制LED灯的显示状态 三、预备知识 掌握基于STM32固件库进行编程的方法;掌握Proteus软件的使用方法;掌握GPIO端口的组成、工作方式、编程方法。 四、实验设备 1. 硬件环境配置 计算机:Intel(R) Pentium(R) 及以上; 内存:1GB及以上; 实验设备:嵌入式开发平台,USB转串口数据线; 2. 软件环境配置 操作系统:Microsoft Windows XP Professional Service Pack 2; 集成开发环境:Keil μVision5 IDE; 五、实验过程 1.LED灯电路设计 2. GPIO初始化过程

计算机网络ACL配置实验报告

计算机网络ACL配置实验报告 件)学院《计算机网络》综合性、设计性实验成绩单开设时间:xx学年第二学期专业班级学号姓名实验题目ACL自我评价本次ACL的实验,模拟实现了对ACL的配置。在实验中,理解ACL对某些数据流进行过滤,达到实现基本网络安全的目的的过程。我加深了对网络中安全的理解,如何控制非法地址访问自己的网络,以及为什么要进行数据过滤,对数据进行有效的过滤,可以使不良数据进入青少年中的视野,危害青少年的身心健康发展。该实验加深了我对网络的理解,同时加强了自身的动手能力,并将理论知识应用到实践当中。教师评语评价指标:l 题目内容完成情况优□ 良□ 中□ 差□l 对算法原理的理解程度优□ 良□ 中□ 差□l 程序设计水平优□ 良□ 中□ 差□l 实验报告结构清晰优□ 良□ 中□ 差□l 实验总结和分析详尽优□ 良□ 中□ 差□成绩教师签名目录 一、实验目的3 二、实验要求3 三、实验原理分析3 四、流程图5 五、配置过程 51、配置信息 52、配置路由器R

1、R 2、R37(1)配置路由器R17(2)配置路由器R27(3)配置路由器R3 83、配置主机PC0、PC18(1)配置PC0的信息8(2)配置PC1的信息 94、配置路由器R2(R1)到路由器R1(R2)的静态路由10(1) 路由器R2到R1的静态路由10(2)路由器R1到R2的静态路由105、配置路由器R2(R3)到路由器R3(R2)的静态路由10(1) 路由器R2到R3的静态路由10(2) 路由器R3到R2的静态路由10六、测试与分析1 11、配置静态路由前1 12、配置好静态路由后1 23、结论13七、体会13实验报告 一、实验目的通过本实验,可以掌握如下技能: (1) ACL的概念(2) ACL的作用(3)根据网络的开放性,限制某些ip的访问(4)如何进行数据过滤 二、实验要求Result图本实验希望result图中PC2所在网段无法访问路由器R2,而只允许主机pc3访问路由器R2的tel 服务 三、实验原理分析ACL 大概可以分为标准,扩展以及命名ACL

嵌入式操作系统实验报告

中南大学信息科学与工程学院实验报告 :安磊 班级:计科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个部分。如下图:

嵌入式实验报告

嵌入式技术 实验报告 系别:计算机与科学技术系 班级:计12-1班 姓名:刘杰 学号:12101020128 总成绩: 评语: 日期:

2.在弹出的对话框中依次选择“cedevice emulator emulator kdstub”。 3.选择“Build OS”菜单的“sysgen”开始构建平台。 1.1.4连接,下载和运行平台 1.选择“Target”菜单下的“Connection option”菜单项。 2.在新的对话框中,配置连接关系 3.选择“Target”菜单下的“attach”菜单项,开始下载。 ?实验结果 操作系统定制成功,能正常运行。 ?结果截图 ?问题总结 由于对实验平台了解不够,致使操作过程中添加和删除组件时不知道该如何下手,影响整个实验进度。 实验1.2: 1.打开Platform Builder,并且打开实验1的工程,在实验1的工程基础上做本实验。

进程显示 IE信息查看

报文监测 实验1.3使用Platform Builder开发应用程序 简单实验步骤 1.打开Platform Builder。 2.选择“File”菜单下的“Open Workspace…”,然后打开实验1中创建的平台,本实验要基于 上面的实验的基础上做。 3.选择“File”菜单下的“New Project or File…”,打开“New Project or File”对话框。 4.在“Projects”选项页中选择“WCE Application”;在“Project Name”中输入项目的名字,例 如“MyApp”。 5.在“New Project Wizard – step 1 of 1”中选择“A typical Hello World Application”,点击“Finish” 按钮。 6.选择“Build”菜单中的“Build MyApp.exe”来编译应用程序。

ACL配置实验报告

南京信息工程大学实验(实习)报告 实验(实习)名称ACL的配置实验(实习)日期得分指导教师刘生计算机专业计科年级 09 班次 03 姓名童忠恺学号 20092308916 1.实验目的 (1)了解路由器的ACL配置与使用过程,会运用标准、扩展ACL建立基于路由器的防火墙,保护网络边界。 (2)了解路由器的NA T配置与使用过程,会运用NA T保护网络边界。 2.实验内容 2.1 ACL配置 (1)实验资源、工具和准备工作。Catalyst2620路由器2台,Windows 2000客户机2台,Windows 2000 Server IIS服务器2台,集线器或交换机2台。制作好的UTP网络连接(双端均有RJ-45头)平行线若干条、交叉线(一端568A,另一端568B)1条。网络连接和子网地址分配可参考图8.39。 图8.39 ACL拓扑图 (2)实验内容。设置图8.39中各台路由器名称、IP地址、路由协议(可自选),保存配置文件;设置WWW服务器的IP地址;设置客户机的IP地址;分别对两台路由器设置扩展访问控制列表,调试网络,使子网1的客户机只能访问子网2的Web服务80端口,使子网2的客户机只能访问子网1的Web服务80端口。 3.实验步骤 按照图8.39给出的拓扑结构进行绘制,进行网络互连的配置。 ①配置路由器名称、IP地址、路由协议(可自选),保存配置文件。 ②设置WWW服务器的IP地址。设置客户机的IP地址。 ③设置路由器扩展访问控制列表,调试网络。使子网1的客户机只能访问子网2的Web服务80端口, 使子网2的客户机只能访问子网1的Web服务80端口。 ④写出各路由器的配置过程和配置命令。 按照图8.38给出的拓扑结构进行绘制,进行网络互连的配置。参考8.5.7节内容。写出各路由器的配置过程和配置命令。

嵌入式系统实验报告

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

实验名称: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所示:

计算机网络实验报告(7)访问控制列表ACL配置实验

一、实验项目名称 访问控制列表ACL配置实验 二、实验目的 对路由器的访问控制列表ACL 进行配置。 三、实验设备 PC 3 台;Router-PT 3 台;交叉线;DCE 串口线;Server-PT 1 台; 四、实验步骤 标准IP访问控制列表配置: 新建Packet Tracer 拓扑图 (1)路由器之间通过V.35 电缆通过串口连接,DCE 端连接在R1 上,配置其时钟频率64000;主机与路由器通过交叉线连接。 (2)配置路由器接口IP 地址。 (3)在路由器上配置静态路由协议,让三台PC 能够相互Ping 通,因为只有在互通的前提下才涉及到方控制列表。 (4)在R1 上编号的IP 标准访问控制。 (5)将标准IP 访问控制应用到接口上。 (6)验证主机之间的互通性。 扩展IP访问控制列表配置: 新建Packet Tracer 拓扑图 (1)分公司出口路由器与外路由器之间通过V.35 电缆串口连接,DCE 端连接在R2 上,配置其时钟频率64000;主机与路由器通过交叉线连接。 (2)配置PC 机、服务器及路由器接口IP 地址。 (3)在各路由器上配置静态路由协议,让PC 间能相互ping 通,因为只有在互通的前提下才涉及到访问控制列表。 (4)在R2 上配置编号的IP 扩展访问控制列表。 (5)将扩展IP 访问列表应用到接口上。 (6)验证主机之间的互通性。 五、实验结果 标准IP访问控制列表配置: PC0: PC1:

PC2:

PC1ping:

PC0ping: PC1ping: 扩展IP 访问控制列表配置:PC0: Server0:

南邮嵌入式系统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)

嵌入式实验报告心得

嵌入式实验报告心得 篇一:嵌入式系统原理实验总结报告 嵌入式系统原理实验总结报告 车辆座椅控制系统实验 XX/5/23 嵌入式系统原理实验总结报告 一、技术性总结报告 (一)题目:车辆座椅控制系统实验(二)项目概述: 1.为了实现车辆座椅控制的自动化与智能化。 2.方便用户通过智能手机与车载传感器之间的联动。 3.使车辆作为当今物联网中重要的一个节点发挥作用。 4.通过车辆座椅控制系统实验实现对嵌入式系统原理课程的熟练掌握与对嵌入式系统原理知识的深化记忆。 5. 加强本组学生对嵌入式系统原理的更深层次的理解与运用。 (三)技术方案及原理 本次试验分为软件、硬件两个部分。 1.软件部分。 A.智能手机部分,包括通过智能手机对座椅的控制部分、手机所携带的身份信息部分。 本部分软件使用Java编写,其程序部分为:主程序:package ;

import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ; import ;import ; import ; import ; public class MainActivity extends ActionBarActivity { private Button Up = null; private Button Left = null; private Button Dowm = null; private Button Right = null; private Socket socket = null; private static final String HOST = "";private static final int PORT = 10007; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(; initControl();} private void initControl() {

访问控制列表ACL配置-实验报告

课设5:访问控制列表ACL的配置 【实验目的】: 1.熟悉掌握网络的基本配置连接 2.对网络的访问性进行配置 【实验说明】: 路由器为了过滤数据包,需要配置一系列的规则,以决定什么样的数据包能够通过,这些规则就是通过访问控制列表ACL定义的。访问控制列表是偶permit/deny语句组成的一系列有顺序的规则,这些规则根据数据包的源地址、目的地址、端口号等来描述。 【实验设备】: 【实验过程记录】:

步骤1:搭建拓扑结构,进行配置 (1)搭建网络拓扑图: (2 虚拟机名IP地址Gateway PC0 PC1 PC2 PC3 PC4 上节课的实验已经展示了如何配置网关和IP地址,所以本次实验将不再展示,其配置对应数据见上表。 (3)设置路由信息并测试rip是否连通

三个路由器均做route操作。 对rip结果进行测试,测试结果为连通。

(4)连通后对访问控制列表ACL进行配置 代码如下: Route(config)#route rip Route(config-route)#net Route(config-route)#net Route(config-route)#exit Route(config)#access-list 1 deny Route(config)#access-list 1 permit any Route(config)#int s3/0 Route(config-if)#ip access-group 1 in Route(config-if)#end

步骤2:检验线路是否通畅 将访问控制列表ACL配置完成后点开PC0进行ping操作,ping 。 检验结果:结果显示目的主机不可达,访问控制列表ACL配置成功。

嵌入式系统实验实验报告

嵌入式系统实验实验报告 一、实验目的 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);

嵌入式实验报告

目录 实验一跑马灯实验 (1) 实验二按键输入实验 (3) 实验三串口实验 (5) 实验四外部中断实验 (8) 实验五独立看门狗实验 (11) 实验七定时器中断实验 (13) 实验十三ADC实验 (15) 实验十五DMA实验 (17) 实验十六I2C实验 (21) 实验十七SPI实验 (24) 实验二十一红外遥控实验 (27) 实验二十二DS18B20实验 (30)

实验一跑马灯实验 一.实验简介 我的第一个实验,跑马灯实验。 二.实验目的 掌握STM32开发环境,掌握从无到有的构建工程。 三.实验内容 熟悉MDK KEIL开发环境,构建基于固件库的工程,编写代码实现跑马灯工程。通过ISP 下载代码到实验板,查看运行结果。使用JLINK下载代码到目标板,查看运行结果,使用JLINK在线调试。 四.实验设备 硬件部分:PC计算机(宿主机)、亮点STM32实验板、JLINK。 软件部分:PC机WINDOWS系统、MDK KEIL软件、ISP软件。 五.实验步骤 1.熟悉MDK KEIL开发环境 2.熟悉串口编程软件ISP 3.查看固件库结构和文件 4.建立工程目录,复制库文件 5.建立和配置工程

6.编写代码 7.编译代码 8.使用ISP下载到实验板 9.测试运行结果 10.使用JLINK下载到实验板 11.单步调试 12.记录实验过程,撰写实验报告 六.实验结果及测试 源代码: 两个灯LED0与LED1实现交替闪烁的类跑马灯效果,每300ms闪烁一次。七.实验总结 通过本次次实验我了解了STM32开发板的基本使用,初次接触这个开发板和MDK KEILC 软件,对软件操作不太了解,通过这次实验了解并熟练地使用MDK KEIL软件,用这个软件来编程和完成一些功能的实现。作为STM32 的入门第一个例子,详细介绍了STM32 的IO口操作,同时巩固了前面的学习,并进一步介绍了MDK的软件仿真功能。

嵌入式系统实验报告

郑州航空工业管理学院 嵌入式系统实验报告 (修订版) 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汇编语言的最简程序结构,然后在代码段中实现两个寄存器值的加法运算,给出运算部分相应指令的注释。 ; 文件名:

嵌入式综合实验报告

《嵌入式系统综合实验》报告 学号: 姓名: Shanghai University of Engineering Science School of Electronic and Electrical Engineering

基于STM32的GPS信息显示系统 ——嵌入式系统综合实验报告 班级:0211112 姓名:褚建勤学号:021111228 班级:0211112 姓名:于心忆学号:021111216 班级:0211112 姓名:乐浩奎学号:021111232 一、产品设计要求(产品规格描述) 1 、嵌入式产品名称 GPS信息显示系统 2 、嵌入式产品目的 在学校的生活中,你经常可能需要联系不是同一间宿舍的同学,但是你不能确定他现在在什么地方,这时候全球定位系统(GPS)就可以发挥作用了,但是传统的GPS系统只能提供经纬度信息,不能直观的显示你想要找到人在何处,我们的系统就在传统的GPS的基础上添加了对应位置显示的功能,方便你更方便更快捷的找到你想找的同学 3 、嵌入式产品功能 使用GPS输入用户位置信息 GPS将相关经纬度信息反馈给主处理器 主处理器处理相关位置信息并将信息转换为对应位置在LCD上显示出来 在LCD上输出用户状态信息 4 、嵌入式产品的输入和输出 输入设备:GPS系统 输出设备:LCD 二、产品方案设计(产品设计方案) 1 2 1 )处理器选择 本系统选用基于ARMCortex-M3内核的STM32F103RB嵌入式微控制器作为处理器。 ①选用原因 A 技术因素 工作频率: 最高72MHz。 内部和外部存储器: 128K字节的闪存程序存储器,用于存放程序及数据;多达20K字节的内置SRAM,CPU能以0等待周期访问(读/写)。

嵌入式系统GPIO输入输出实验报告

实验四GPIO 输入实验 一、实验目的 1、能够使用GPIO的输入模式读取开关信号。 2、掌握GPIO相关寄存器的用法和设置。 3、掌握用C语言编写程序控制GPIO。 二、实验环境 PC机一台 ADS 1.2集成开发环境一套 EasyARM2131教学实验平台一套 三、实验内容 1.实验通过跳线JP8 连接KEY1与P0.16,程序检测按键KEY1 的状态,控制蜂鸣 器BEEP 的鸣叫。按下KEY1,蜂鸣器鸣叫,松开后停止蜂鸣。(调通实验后,改为KEY3键进行输入)。 2.当检测到KEY1有按键输入时点亮发光二极管LED4并控制蜂鸣器响,软件延时 后关掉发光管并停止蜂鸣,然后循环这一过程直到检测按键没有输入。(键输入改为键KEY4,发光管改为LED6)。 3.结合实验三,当按下按键Key1时,启动跑马灯程序并控制蜂鸣器响,软件延时 后关掉发光管并停止蜂鸣,然后循环这一过程直到检测按键再次按下。 四、实验原理 当P0 口用于GPIO输入时(如按键输入),内部无上拉电阻,需要加上拉电阻,电路图参见图 4.2。 进行GPIO 输入实验时,先要设置IODIR 使接口线成为输入方式,然后读取IOPIN 的值即可。

图4.2按键电路原理图 实验通过跳线JP8 连接KEY1_P0.16,程序检测按键KEY1 的状态,控制蜂鸣器BEEP 的鸣叫。按下KEY1,蜂鸣器鸣叫,松开后停止蜂鸣。 在这个实验中,需要将按键KEY1 输入口P0.16 设为输入口而蜂鸣器控制口P0.7 设置为输出口。蜂鸣器电路如图 4.3 所示,当跳线JP6 连接蜂鸣器时,P0.7 控制蜂鸣器,低电平时蜂鸣器鸣叫。LED灯电路如图4.4所示,低电平时灯亮。 图4.3 蜂鸣器控制电路

嵌入式系统实验报告

嵌入式系统实验报告文件排版存档编号:[UYTR-OUPT28-KBNTL98-UYNN208]

大连理工大学 本科实验报告 课程名称:嵌入式系统实验 学院(系):电子信息与电气工程学部 专业:自动化 班级: 0804 学号: 学生姓名:何韬 2011年 11月 18日 大连理工大学实验报告 学院(系):电信专业:自动化班级: 0804 姓名:何韬学号:组: ___ 实验时间: 2011-11-12 实验室: d108 实验台: 指导教师签字:成绩: 实验二ARM的串行口实验 一、实验目的和要求 见预习报告 二、实验原理和内容 见预习报告 三、主要仪器设备

硬件:ARM嵌入式开发平台、用于ARM7TDMI 的JTAG 仿真器、PC机Pentium100 以上、串口线。 软件:PC 机操作系统win98、Win2000 或WinXP 、ARM SDT 或集成开发环境、仿真器驱动程序、超级终端通讯程序。 四、实验步骤 见预习报告 五、核心代码 在主函数中实现将从串口0接收到的数据发送到串口0() int main(void) { char c1[1]; char err; ARMTargetInit(); 通过调用OSTaskCreate()或OSTaskCreateExt()创建至少一个任务; . OSStart(); /ucos-ii/" /* uC/OS interface */ #include "../ucos-ii/add/" #include "../inc/" #include "../inc/sys/" #include "../src/gui/" #include <> #include <>

访问控制列表实验

0分计。 4. 实验报告文件以PDF 格式提交。 【实验题目】访问控制列表(ACL )实验。 【实验目的】 1. 掌握标准访问列表规则及配置。 2. 掌握扩展访问列表规则及配置。 3. 了解标准访问列表和扩展访问列表的区别。 【实验内容】 完成教材实例5-4(P190),请写出步骤0安装与建立FTP 、WEB ,的步骤,并完成P192~P193的测试要求。 【实验要求】 重要信息信息需给出截图, 注意实验步骤的前后对比。 【实验记录】(如有实验拓扑请自行画出) 【实验拓扑】 本实验的拓扑图结构如下图: 【实验设备】 路由器一台,PC 5台(其中两台作为WWW Server 和FTP Server )。 【实验原理】 基于时间的ACL 是在各种ACL 规则(标准ACL 、扩展ACL 等)后面应用时间段选项(time-range )以实现基于时间段的访问控制。当ACL 规则应用了时间段后,只有在此时间范围内规则才能生效。此外,只有配置了时间段的规则才会在指定的时间段内生效,其他未引用时间段的规则将不受影响。 要基于时间的ACL 一生效,一般需要下面的配置步骤。

(1)定义时间段及时间范围。 (2)ACL自身的配置,即将详细的规则添加到ACL中。 (3)应用ACL,将设置好的ACL添加到相应的端口中。 【实验步骤】 步骤0: (1)配置3台PC(PC1、PC2和Manager)的IP地址、掩码、网关。 (2)检查PC与服务器的连通性如何? PC与服务器无法连通,因为还未安装FTP Server和WWW Server和配置路由器。 (3)在服务器上安装FTP Server和WWW Server。FTP Server需至少创建一个用户名和口令。 FTP Server我们选择Serv-U,下载安装后见如下界面。

相关文档
最新文档