ARM课程设计——UDP通信

ARM课程设计——UDP通信
ARM课程设计——UDP通信

UDP通信实验

【摘要】

利用基于嵌入式实时操作系统μC/OS-II的ZLG/IP软件包,利用实验板光盘提供的UDPtest软件可以实现实验板跟PC机的数据收发。

【关键词】

ARM UDP μC/OS-II操作系统

目录

第1章硬件实现 (1)

1.1RTL8019AS网络控制器介绍 (1)

第2章μC/OS-II操作系统 (3)

2.1μC/OS-II系统简介 (3)

2.2μC/OS-II的特点 (3)

2.3任务模式 (3)

2.4支持的指令集 (4)

2.5移植μC/OS-II (4)

第3章ZLG/IP软件包结构和配置 (6)

3.1ZLG/IP软件包结构 (6)

第4章设计过程 (8)

4.1设计步骤 (8)

4.2实验程序 (10)

4.2.1宏定义 (10)

4.2.2RTL8019AS监听任务 (11)

4.2.3UDP通信程序 (12)

4.2.4创建系统任务并初始化 (14)

4.2.5主程序 (15)

4.2.6定时器中断控制 (16)

第5章实验结果 (19)

第6章课程设计体会 (21)

第1章硬件实现

1.1 RTL8019AS网络控制器介绍

RTL8019AS是一种全双工即插即用的以太网控制器,它在一块芯片上集成了RTL8019内核和一个16KB的SDRAM存储器。它兼容RTL8019控制软件和NE2000 8bit或16bit的传输,支持UTP,AUI,BNC和PNP自动检测模式,支持外接闪烁存储器读写操作,支持I/O口地址的完全解码,具有LED指示功能。其接口符合Ethernet2和IEEE802.3(10Base5,10Base2,10BaseT)标准。

RTL8019AS采用100脚PQFP封装,其主要引角功能如下:

引角1-4,97-100:中断控制INT0-7;

引角33:复位控制;

引脚34:使能控制角AEN,低电平有效;

引脚6,7,70,89:数字电源,+5V;

引脚14,28,83,86:数字地GND;

引脚47,57:模拟电源:+5V;

引脚44,52:模拟地;

引脚7-13,15,16,18-27:ISA地址总线;

引脚36-43,87,88,90-95:ISA数据总线;

引脚31:Boot ROM读操作控制;

引脚32:Boot ROM写操作控制;

引脚62:RX接收数据显示LED1脚;

引脚63:TX发送数据显示LED2脚;

引脚58,59:接收数据TP IN+/-;

引脚45,46:发送数据TP OUT+/-;

引脚50,51:外接晶体。

图 1 RTL8019AS接线图

第2章μC/OS-II操作系统

2.1 μC/OS-II系统简介

μC/OS-II读做“microCOS2”,意为“微控制器操作系统版本2”。μC/OS-II是著名的、源码公开的实时内核,可用于各类8位、16位和32位单片机、arm或DSP等等。μC/OS-II是一个完整的、可移植、可固化、可剪裁的占先式实时多任务内核。应用程序处于整个系统的顶层.每个任务都可以认为自己独占了CPU,因而可以设计成为一个无限循环。

2.2 μC/OS-II的特点

●可移植性(portable)

●可固化(ROMmable)

●可剪裁(scalable)

●可剥夺(preemptive)

●多任务

●可确定性

●任务栈

●系统服务

●中断管理

●稳定性与可靠性

多任务是指:μC/OS-II可以管理64 个任务,然而,μC/OS-II的作者建议用户保留8 个给μC/OS-II。这样,留给用户的应用程序最多可有56 个任务。

系统服务指:μC/OS-II 提供很多系统服务,例如信号量、互斥信号量、时间标志、消息邮箱、消息队列、块大小固定的内存的申请与释放及时间管理函数等。

中断管理指:中断可以使正在执行的任务暂时挂起,如果优先级更高的任务被中断唤醒,则高优先级的任务在中断嵌套全部退出后立即执行,中断嵌套层数可达255 层。

2.3 任务模式

ARM7 处理器核具有用户、系统、管理、中止、未定义、中断和快中断七种模式。

用户模式(USER MODE)是ARM 通常执行状态,用于执行大多数应用程序;快速中断模式(FIQ MODE)支持数据传输或通道处理;中断模式(IRQ MODE)用于通用中断处理;超级用户模式(SVC MODE)是一种操作系统受保护的模式:数据中止模式(ABT MODE)指令预取指中止、数据中止时进入该模式;未定义模式(UND MODE)当执行未定义的指令时进入该模式;系统模式(SYS MODE)是操作系统一种特许的用户模式。

除了用户模式之外,其他模式都归为特权模式,特权模式用于中断服务、异常或者访问受保护的资源

特权模式中除系统模式之外另5种模式又称为异常模式,在移植过程中必须设置中断向量表来处理异常。uCOS II的移植主要处理标准中断(IRQ)、快速中断(FIQ)和软件中断(SWI)。

2.4 支持的指令集

带T变量的ARM7处理器核具有两个指令集:标准32位ARM指令集和16位Thumb指令集,两种指令集有不同的应用范围,μC/OS-II包含了这些指令集的切换(TaskIsARM()和TaskIsTHUMB()用于改变指令集)。

2.5 移植μC/OS-II

μC/OS-II 要求所有.C 文件的都要包含都文件includes.h,这样使得用户项目中的每个.C文件不用分别去考虑它实际上需要哪些头文件。使用includes.h的缺点是它可能会包含一些实际不相关的头文件,这意味着每个文件的编译时间可能会增加,但却增强了代码的可移植性。在本移植中另外增加了一个头文件config.h,我们要求所有用户程序必须包含config.h,在config.h中包含includes.h 和特定的头文件和配置项。而μC/OS-II 的系统文件依然只是包含includes.h,即μC/OS-II 的系统文件完全不必改动。所有的配置改变包括头文件的增减均在config.h中进行,而includes.h定下来后不必改动(μC/OS-II 的系统文件需要包含的东西是固定的)。这样,μC/OS-II 的系统文件需要编译的次数大大减少,编译时间随之减少。

μCOS-II 不使用C语言中的short、int、long等数据类型的定义,因为它们与处理器类型有关,隐含着不可移植性。代之以移植性强的整数数据类型,这样,既直观又可移植。

在使用周立功提供的μC/OS-II模板的任何功能之前,必须调用函数OSInit(),它完成μC/OS-II的初始化并建立空闲任务。在开始多任务之前,必须建立至少一个用户任务(不包括μC/OS-II的空闲任务),这是通过调

用函数OSTaskCreate()或函数OSTaskCreateExt()实现。最后函数main()调用函数OSStart()将控制权交给μC/OS-II内核main()函数也就结束了。μC/OS-II应用程序主函数如下:

程序清单 1

int main (void)

{

OSInit(); //初始化uC/OS-II

OSTaskCreate(TaskStart,(void *)0, &TaskStartStk[127], 3); //创建起动任务

OSStart(); //开始多任务}

第3章ZLG/IP软件包结构和配置

3.1 ZLG/IP软件包结构

为了使软件可移植性强、易维护,该软件包采用分层的方法编写。包括网络传输用到的协议、硬件驱动及μC/OS-II的结构进行分层。ZLG/IP包相关文件说明如表格 1

表格 1 软件包相关文件说明

传输层有两个协议传输数据:传输控制协议TCP和用户数据报协议UDP。TCP协议是面向连接的一个协议,可靠性高,费用也高;UDP协议是提供最少服务和费用的传输层协议。

UDP是最简单的传输层协议,它具有以下特点:

●无连接:UDP不基于连接来传输数据。

●不可靠:UDP的数据报发送时没有定序,所以UDP

传送的数据是不可靠的,只有靠应用层协议中增加超时重

发等功能才能提供可靠的服务。

●提供应用层协议标识:UDP报头有定义应用层协

议标识和目标应用层标识。

●提供UDP报的校验和:UDP报头包含有整个UDP

报(包括报头和有效负载)及伪报头的校验和,计算方法

与计算IP数据报校验和的计算方法相同。

●缓冲:UDP协议不提供任何数据接收或发送的缓

冲区。缓冲区应该由应用层协议提供。

分段:UDP协议不提供分段传输方式,所以应用层协议要尽量发送小的包。

SOCKET接口函数是TCP/IP的API。使用SOCKET API函数编写UDP通信的任务时,分为服务器方式两种。服务器方式是先接收到数据再进行处理,而客户机则是先发生数据后等待回应处理,它们用到的SOCKET API函数都是相同的。如图2所示就是UDP通信时服务器端和客户机通信函数应用过程图。

服务器端客户机端

图 2 UDP通信是SOCKET API函数的应用

第4章设计过程

4.1 设计步骤

由于使用DM9000的网络控制芯片的Magic2200的实验箱有点问题,后来我们改用使用RTL8019AS网络控制芯片的EasyARM2200教学实验平台。

1)启动ADS1.2,使用ARM Executable Image for μCOS-II (lpc22xx)工程模板建立一个工程shiyan。

2)把μCOS-II内核源码和移植文件,ZLG/IP软件包目录拷贝到已建工程目录下,如图3所示,arm目录为移植文件目录,Source 目录为μCOS-II内核源码,tcpip目录为ZLG/IP软件包目录。

图 3 项目目录结构

3)修改tcpip\include\cfg_net.h文件,修改MAC地址为:

0x00,0x14,0x97,0x0F,0x1F,0x9D、子网掩码为255.255.0.0、IP地址:172.30.172.77、本地网关地址为PC机IP:172.30.172.125。如程序清单2

程序清单 2 MAC和IP设置

/************** first Net Port Config

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

#define My_Mac_1ID {0x00,0x14,0x97,0x0F,0x1F,0x9D} //将

RTL8019的物理地址存储在程序空间?

#define IP_MARK_1ID {255,255,0,0}

//255.255.255.0,子网掩码

#define MY_IP_1ID {172,30,172,77}

#define MY_GATEWAY_1ID {172,30,172,125}

/**************End Net Port Config ***************/

4)修改shiyan\src\os_cfg.h文件,OS_MAX_EVENTS改为42,OS_LOWEST_PRIO改为62,OS_MAX_QS改为10。

5)在ADS的项目窗口中添加TCPIP的文件组;然后把tcpip\目录下的ARP\Arp.c、ETHERNET\Ethernet.c、

HARDWARE\Hardware.c、IP\Ip.c、PING\Icmp.c、

SOCKET\zlg_socket.c和TCP\Tcp.c、UDP\Udp.c等文件添加到该文件组,最后把程序编好添加到ADS项目窗口的user文件组中,如

图 4 shiyan工程窗口

6)在Startup.s文件的ResetInit子程序中,修改存储器接口Bank3总线配置,如程序清单

程序清单 3 存储器接口Bank3总线配置

LDR R0, =BCFG3 ;设置BCFG3寄存器

LDR R1, =0x10001460

STR R1, [R0]

4.2 实验程序

4.2.1宏定义

首先对程序进行初始化宏定义,如程序清单 4

程序清单 4 初始化宏定义

#include "config.h"

#include "../include/cfg_net.h"

void Timer1_Init(void);

#define TASK_START_ID 0

#define TASK_1_ID 1

#define TASK_2_ID 2

#define TASK_3_ID 3

#define TASK_4_ID 4

#define TASK_5_ID 5

#define TASK_6_ID 6

#define TASK_START_PRIO 10

#define TASK_1_PRIO 11

#define TASK_2_PRIO 12

#define TASK_3_PRIO 13

#define TASK_4_PRIO 14

#define TASK_5_PRIO 15

#define TASK_6_PRIO 16

#define MSG_QUEUE_SIZE 20

OS_EVENT *RecPackedFlag;

OS_EVENT *RecBufOverFlowFlag;

OS_EVENT *RecTcpPackedFlag;

OS_EVENT *RecPingPackedFlag;

OS_STK task0_stack[3000];

OS_STK task1_stack[1000];

OS_STK task2_stack[2000];

OS_STK task3_stack[1000];

OS_STK task4_stack[2000];

4.2.2RTL8019AS监听任务

网络控制器监听程序,如程序清单 5

程序清单 5 网卡监听任务

void TaskB(void *pdata) //重要的监听RTL8019AS任务{

void * UdpTemp;

uint8 eer;

while (1)

{

UdpTemp=OSQPend(RecUdpQFlag,0,&eer);

if(eer==OS_NO_ERR)

{

Udp_Process((Rec_Ptr *)UdpTemp);

eer=eer;

}

}

}

4.2.3UDP通信程序

UDP通信程序见程序清单6

程序清单 6 UDP服务器

void TaskD(void *pdata)

{

uint8 add[36]={"ZLGMCUyhbabcdefghijklmnopqrstuvwxyz"};//当接收到“A”时发送的数据

uint8 add1[10]={"123456789"};//当出错是发送的数据

uint8 rec_buffer[100]; //发送缓存区

SOCKET s;

uint8 couter_byte=5; //重复发送的次数

int rec_coute,send_coute;

uint16 iii;

struct sockaddr servaddr,clientaddr;

OSTimeDly(60);

servaddr.sin_family=0; //设置客户机IP

servaddr.sin_addr[0]=172;

servaddr.sin_addr[1]=30;

servaddr.sin_addr[2]=172;

servaddr.sin_addr[3]=125;

servaddr.sin_port=1026; //设置服务器端口号

OSTimeDly(60);

s=*socket( 0, SOCK_DGRAM, UDP_PROTOCOL);//建立SOCKET

clientaddr.sin_family=0; //设置本地IP

clientaddr.sin_addr[0]=172;

clientaddr.sin_addr[1]=30;

clientaddr.sin_addr[2]=172;

clientaddr.sin_addr[3]=77;

clientaddr.sin_port=1025; //设置本地监听端口号

iii=bind( (SOCKET * )&s, (struct

sockaddr*)&clientaddr,sizeof(clientaddr)); //绑定服务器地址

while (1)

{

rec_coute=recvfrom( s, rec_buffer, 100, 0, (struct sockaddr*)&servaddr, &iii ); //接收数据

if(rec_coute>0)

{

if(rec_buffer[0]=='A') //如果第一个数据是“A”

couter_byte=5;

else

send_coute=sendto(s, rec_buffer, rec_coute, 0, (struct sockaddr*)&servaddr, sizeof(servaddr) ); //把接收的数据返回}

while(couter_byte!=0) //循环发送数据

{

send_coute=sendto(s, add, 34, 0, (struct sockaddr*)&servaddr, sizeof(servaddr) );

if(send_coute==34)

OSTimeDly(40);

else

send_coute=sendto(s, add1, 9, 0, (struct sockaddr*)&servaddr, sizeof(servaddr) ); //出错后发送的数据

OSTimeDly(40);

couter_byte--;

}

}

}

4.2.4创建系统任务并初始化

创建系统任务并初始化如程序清单7

程序清单7 系统任务

void task0(void *pdata)

{ /*在第1个任务中设置定时器0及中断*/

UBYTE iii;

#if OS_CRITICAL_METHOD == 3

OS_CPU_SR cpu_sr;

#endif

TargetInit();

OSTaskCreateExt(TaskB, //重要的监听RTL8019AS任务

(void *)0,

&task1_stack[999],

TASK_1_PRIO,

TASK_1_ID,

&task1_stack[0],

1000,

(void *)0,

0);

OSTaskCreateExt(TaskD, //接受数据和发送数据

(void *)0,

&task3_stack[999],

TASK_3_PRIO,

TASK_3_ID,

&task3_stack[0],

1000,

(void *)0,

0);

SetNetPort();

InitNic(0); //RTL8019芯片初始化,在global.c中定义

Initial_arp();

Tcp_Initial();

Udp_Initial();

while(1)

{

OSTimeDly(4);

do

{

iii=Rec_Packet();

}

while(iii!=0);

}

}

void Uart_SendChar(INT8U data)

{

while((U0LSR & 0x00000020) == 0);

U0THR = data;

}

4.2.5主程序

程序清单8 主程序

int main (void)

{UBYTE iii;

Timer1_Init();

OSInit();

OSTaskCreateExt(task0,

(void *)0,

&task0_stack[2999],

TASK_START_PRIO,

TASK_START_ID,

&task0_stack[0],

3000,

(void *)0,

0);

RecPackedFlag= OSSemCreate(0);

RecBufOverFlowFlag= OSSemCreate(0);

RecTcpPackedFlag= OSSemCreate(0);

RecPingPackedFlag= OSSemCreate(0);

SendFlag= OSSemCreate(1);

RecIcmpQFlag=

OSQCreate(&RecIcmpQ[0],Q_Max_Size);

RecTcpQFlag=

OSQCreate(&RecTcpQ[0],Q_Max_Size);

RecUdpQFlag=

OSQCreate(&RecUdpQ[0],Q_Max_Size);

OSStart();

}

4.2.6定时器中断控制

程序清单9 中断控制

void Timer1_Init(void)

{

OS_ENTER_CRITICAL();

T1IR = 0xffffffff;

T1TC = 0;

T1TCR = 0x01;

T1MCR = 0x03;

T1MR0 = 0xffffff;

OS_EXIT_CRITICAL();

}

void Timer1(void)

{

static uint8 m_10sec=0;

static uint8 p_sec=0;

static uint8 p_min=0;

uint8 num;

OS_ENTER_CRITICAL();

T1IR = 0x01;

m_10sec++;

if(m_10sec==100)

{

p_sec++;

m_10sec=0;

if(Ping_IP_TTL>0)

Ping_IP_TTL--;

for(num=0;num

{

for(p_min=0;p_min

{

if(NetPort[num].ARP_TERM[p_min].TTL>0)

NetPort[num].ARP_TERM[p_min].TTL--;

}

if(Gateway_IP_TTL>0)

NetPort[num].Gateway_IP_TTL--;

}

if(p_sec==60)

{

p_min++;

p_sec=0;

if(p_min==60)

{

p_min=0;

}

}

}

VICVectAddr = 0; // 通知中断控制器中断结束

OS_EXIT_CRITICAL();

}

WWW服务器配置实验报告

信息科学与技术学院实验报告 课程名称: 计算机网络应用技术教程实验项目: WWW服务器配置 实验地点:指导教师: 日期: 2013/10/29 实验类型:验证性实验(验证性实验综合性实验设计性实验)专业: 班级: 11级姓名: 学号: 一、实验目的及要求 1.实验目的: 1.正确理解WWW服务的运行机制,了解常用的wed服务器软件。 2.掌握IIS服务器的安装和管理,创建wed站点利用IIS在一台服务器上运行多个网站。 3.掌握虚拟机主机和虚拟目录的创建删除。 2.实验要求: 1.理解IIS服务的概念及其所具有的功能。 2.掌握IIS服务的安装方法。 3.掌握WWW服务的配置包括IP地址、端口号、默认文档、安全等设定,以及如何应用WWW服务的方法。 4.了解虚拟目录服务的作用。 二、实验仪器、设备或软件 1.实验仪器:电脑一台 三、实验内容及原理 1.实验内容: (1).学会安装IIS。 (2).掌握www服务器的配置和使用。 (3).创建虚拟目录。 2.实验原理: 万维网WWW(World Wide Web)服务,又称为Web服务,是目前TCP/IP互联网上最方便和最受欢迎的信息服务类型,是因特网上发展最快同时又使用最多的一项服务,目前已经进入广告、新闻、销售、电子商务与信息服务等诸多领域,它的出现是TCP/IP互联网发展中的一个里程碑。 WWW服务采用客户/服务器工作模式,客户机即浏览器(Browser),服务器即Web服务器,它以超文本标记语言(HTML)和超文本传输协议(HTTP)为基础,为用户提供界面一致的信息浏览系统。信息资源以页面(也称网页或Web页面)的形式存储在Web服务器上(通常称为Web站点),这些页面采用超文本方式对信息进行组织,页面之间通过超链接连接起来。这些通过超链接连接的页面信息既可以放

网络设计与通信课程设计报告

课程设计报告 课程名称网络技术及应用 课题名称网络设计与通信系统实现 专业信息管理与信息系统 班级1302 学号27 姓名陈静 指导教师余新宇谢雅赵锦元张益星 2015年12 月28日

湖南工程学院 课程设计任务书 课程名称网络技术及应用 课题网络设计与通信系统实现 专业班级信管1302 学生姓名陈静 学号27 指导老师余新宇谢雅赵锦元张益星审批 任务书下达日期2015年12月28 日 任务完成日期2015年1 月8 日

目录 1、课程设计目的及要求 (1) 1.1实训项目内容 (4) 1.2实训内容及要求 (1) 2、需求分析及设计原则 (2) 2.1需求分析 (2) 2.2设计原则 (2) 3、详细设计 (4) 3.1拓扑结构图 (4) 3.2详细步骤 (4) 3.2.1设备选型 (4) 3.2.2 VLAN及IP地址规划 (5) 3.2.3 服务器等设备的IP地址分配 (5) 3.3 路由器或交换机配置的代码 (6) 3.3.1 三层交换机 (6) 3.3.2 二层交换机 (9) 3.3.3 接入路由器 (10) 4、校园网络安全 (12) 4.1 网络安全的概念 (12) 4.2 网络安全的脆弱性及面临的威胁 (12) 4.3 网络安全防范的内容 (12) 4.4 网络安全的主要技术 (13) 5、系统测试的结果 (13) 6、总结 (15) 7、参考文献 (15) 8、评分表 (16)

1.课程实训目标 ?增加学生对于网络系统分析设计、通信软件的实现。 ?了解实际网络项目设计及软件开发全过程。 ?体验企业工作环境和工作方式。 ?加强团队意识,增强交流和表达能力、书写文档的能力。 1.1实训项目内容 (1)典型企业网络方案分析与设计(网络拓扑参考例图如下) (2)通信项目软件实现:使用Java技术实现窗体效果、能够实现在线点对点私聊、组群聊天等功能 开发环境: Eclipse版本JDK1.6以上 1.2课程实训内容及要求 组网设计部分: (以方案设计为主,以网络仿真为辅,仿真部分需要用Packet Tracer) 要求: (1)要求论述详尽,主要内容有: 需求分析、总体设计方案与拓扑图、设备选型、关键设计、仿真配置与测试。 (2)对方案中关键设计,尽可能用仿真软件进行仿真配置与测试。

基于STM32和uC_OS-II的多任务设计-嵌入式系统课程设计报告

基于STM32和uC_OS-II的多任务设计-嵌入式系统课程设 计报告 NORTH CHINA UNIVERSITY OF SCIENCE AND TECHNOLOGY 嵌入式系统课程设计报告 学生姓名: 学号: 学院: 专业班级: 指导教师: 同组成员: 2016年 12 月 26 日 嵌入式系统课程设计报告 一、课程设计目的 本课程设计是在《嵌入式系统原理与应用》课程的基础上,通过软件编程及仿真调试的实践,进一步掌握嵌入式系统的原理和应用方法,是毕业设计前的一 次重要实践,为今后从事嵌入式系统相关工作岗位打下良好的基础。 二、设计题目及要求 2.1 设计题目: 基于STM32和uC/OS-II的多任务设计 2.2 功能实现:

使用uC/OS-II的任务管理函数和STM32库函数控制相应的寄存器,完成一个多任务设计。整个设计共有4个任务,驱动一个LED指示灯闪烁、由3个LED指示灯组成的流水灯、驱动蜂鸣器和利用swd方式进行printf输出。 2.3 设计要求: 理解和熟练使用KEIL软件、STM32寄存器、STM32库函数和uC/OS-II任务管理函数,用KEIL软件完成编程和调试,下载到开发板中实现4个设定的任务,并完成课程设计报告。 四个任务分别为: (1)驱动1个LED指示灯闪烁、 (2)由3个LED指示灯组成流水灯 (3)驱动蜂鸣器发出响声。 (4)利用swd方式进行printf输出。 三、设计原理说明 3.1 硬件说明 本次课程设计主要使用的是STM32 神舟 IV 号开发板为基础进行课程设计的,本节将详细介绍神舟IV号开发板的各部分硬件原理与实现。 (1)开发板资源图 - 1 - 嵌入式系统课程设计报告

嵌入式Linux开发课程设计指导书

嵌入式Linux开发课程设计指导书 课程编码: 适应专业:计算机专业、电子信息工程专业 学时:3周(计算机专业),2周(电子信息工程专业) 学分: 3(计算机专业),2(电子信息工程专业)时间安排:分散 先修课程:高级语言程序设计、计算机组成原理、接口技术,嵌入式系统,操作系统指导书名称: 一、目的与任务: 课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际应用问题进行有机结合,锻炼学生分析、解决实际问题的能力。 本课程设计采用理论指导与实践相结合的方式,系统地学习并实践嵌入式Linux程序开发技术。通过课程设计,学生可以熟练掌握Linux的基本操作,系统管理,并具备Linux 下文件、进程、网络、GUI的开发方法,为实际应用开发打下坚实的基础。 二、目标 通过本次课程设计要求学生达到以下目标: 1)熟悉Linux操作系统具体操作(安装、基本命令、系统管理、FTP服务器搭建) 2)熟悉Linux下C程序开发调试的基本过程。 3)熟悉嵌入式Linux进程及进程间通信 4)能够熟练编写Linux应用程序,包括文件、网络、图形等 三、内容 任务1、基础知识,完成以下任务: Linux操作系统的安装、基本命令的使用,网络的配置,FTP服务器搭建,VI编辑器的使用,文件压缩方法。 任务2、Linux系统C程序设计的基本知识,完成以下任务 1)GCC编译器的使用,Linux系统C程序设计编译、调试方法。 2)分别用if和switch判断一个数的奇偶性并输出结果。 3)用for语句编写程序,计算100到200之间所有奇数的和。 4)用while语句编写程序,计算1000到2000之间所有能被16整除的数的和。

网络实验(服务器配置)要求

实验报告提交要求 所有的网络实验报告全部完成后一次性打包提交。 发送邮件到:homework_2007@https://www.360docs.net/doc/0419102968.html, 邮件主题:学号姓名网络实验 本次实验报告word文档命名要求:学号姓名网络实验(服务器配置). doc 常用服务器的配置管理 【实验内容】 安装IIS,配置管理WEB,FTP,邮件服务器 一、安装IIS 1、如果是xp操作系统,请下载IIS安装包 2、打开控制面板,然后打开其中的“添加/删除程序” 3、在添加或删除程序窗口左边点击“添加/删除Windows组件” 4、稍等片刻系统会启动Windows组建向导,在Internet信息服务(IIS)前面选勾, 点击右下角的“详细信息”,在弹出的选项中把“FTP”勾选上,点击下一步 6、安装过程中多次提示要插入光盘的,都选择IIS安装包所在位置 7、系统安装成功 二、配置管理WEB 1.启动管理控制台 开始---设置---控制面板---管理工具---internet服务器管理 2.配置web站点标识 默认web站点---属性---说明(命名:姓名学号+web)---ip地址(本机的ip)---tcp 端口(默认80) 3.主目录设置 简单写一个html文档,内容要求显示:我的学号是XXXX 我的姓名是XXX。 把存放该文档的文件夹做为主目录 4.文档属性设置

把上一步建立的html文档设置为默认文档 5.测试 在另一台连网的计算机的浏览器中输入http://IP地址,来查看个人主页 三、ftp服务 1.启动管理控制台 开始---设置---控制面板---管理工具---internet服务器管理 2.配置ftp站点标识 默认ftp站点---属性---说明(命名:姓名学号+ftp)---ip地址(本机的ip)---tcp 端口(默认21) 3.消息 欢迎框中,写:欢迎访问姓名学号的网站 4.主目录 设置上传下载文件的文件夹路径 5.安全帐号设置 输入访问用户名和密码 5.测试 在另一台连网的计算机的浏览器中输入ftp://IP地址,下载文件 四、DNS配置管理 (注:如果实验环境为XP操作系统,该项可以不做) 1.启动DNS管理控制台 控制面板---管理工具---DNS 2.右点击主机名下的正向搜索,进行设置 3. 新建区域,请命名为:姓名拼音首字母学号.cn 4. 新建主机,web服务器命名www,ftp服务器命令ftp 5. 在另一台连网的计算机的浏览器中输入域名,分别测试web服务器和ftp服务器 五、电子邮件服务器的配置与管理 1.Imail安装

网络编程课程设计

课程设计说明书 课程名称:Windows网络编程 设计题目:基于JA V A网络聊天室设计 学院:计算机科学与信息工程学院 专业班级:网络工程12级 指导教师: 小组成员: 2015年6月 目录 摘要 (1) 引言: (1) 1.需求分析 (1) 1.1需求分析 (1) 1.2系统简介 (2) 2. 系统开发技术 (2)

2.1 JAVA网络编程技术 (2) 2.2 Socket套接字 (3) 2.3 TCP三次握手 (3) 3. 系统总框图与功能分析 (4) 3.1系统总框图 (4) 3.2系统功能模块分析 (5) 4. 系统模块代码设计与分析 (6) 4.1系统流程分析 (6) 4.2类的设计与分析 (7) 4.3客户端模块部分代码 (7) 4.4服务器端模块部分代码: (9) 5.系统测试 (11) 6. 总结 (13) 7.成员分工 (13) 参考文献: (14)

网络聊天室 摘要:随着我国经济发展和网络的普及,网络技术也越来越多地被应用于日常工作之中。在程序设计领域,面向对象的编程技术正在逐步代替面向过程的程序设计技术,成为计算机应用设计开发的主流,对于人与人之间通过网络的沟通和交流,聊天室是人们最常见、最直接的交流的方式。本聊天系统以聊天交流为主,为广大用户提供一个借助网络进行人际交往的平台,也是网络与现实最贴近的实用型应用。本文所介绍的网络聊天系统是基于JAVA应用程序开发设计的,其主要特性是简单、面向对象、分布式、解释执行、安全、体系结构中立、可移植、高性能、多线程以及动态性。 关键词:局域网、聊天室、JAVA、Socket、WindowsSocket 引言:目前,基于TCP/IP协议的网络得到了普及和飞速的发展,Windows下的网络程序越来越显得重要。利用TCP/IP协议提供的编程接口———Socket(套接字)可以开发出TCP/IP应用程序。正确的使用WindowsSocket,就可使得不同地址下的进程得以在Windows 环境下顺利进行各种网络通信,因此研究WinSock更有意义。而基于TCP/IP协议网络环境下的应用程序是通过客户机/服务器(C/S)作用方式模式在网络(应用)编程界面实现的。本次实验采用java语言设计一个基于C/S模式的TCP网络通讯程序。实现客户端与服务器端之间的数据传输。 1.需求分析 1.1需求分析 根据当前网络的需求,网络聊天越来越受到各种网民所青睐。因此开发网络聊天是相当有必要,而且在网站内增加聊天功能,它不仅可以提高网站的访问量,同时可以留着访客,更重要的是让访客透过聊天室实时的互相交流。而小组成员也都学习过JAVA 语言,对网络编程也较有兴趣,为了更好的考验自己对JAVA语言的掌握程度,小组成

嵌入式系统设计课设报告分析解析

福州大学 《嵌入式系统设计课设》 报告书 题目:基于28027的虚拟系统 姓名: 学号: 学院:电气工程与自动化学院 专业:电气工程与自动化 年级: 起讫日期: 指导教师:

目录 1、课程设计目的 (1) 2、课程设计题目和实现目标 (1) 3、设计方案 (1) 4、程序流程图 (1) 5、程序代码 (1) 6、调试总结 (1) 7、设计心得体会 (1) 8、参考文献 (1)

1、课程设计目的 《嵌入式系统设计课设》是与《嵌入式系统设计》课程相配套的实践教学环节。《嵌入式系统设计》是一门实践性很强的专业基础课,通过课程设计,达到进一步理解嵌入式芯片的硬件、软件和综合应用方面的知识,培养实践能力和综合应用能力,开拓学习积极性、主动性,学会灵活运用已经学过的知识,并能不断接受新的知识。培养大胆发明创造的设计理念,为今后就业打下良好的基础。 通过课程设计,掌握以下知识和技能: 1.嵌入式应用系统的总体方案的设计; 2.嵌入式应用系统的硬件设计; 3.嵌入式应用系统的软件程序设计; 4.嵌入式开发系统的应用和调试能力 2、课程设计题目和实现目标 课程设计题目:基于28027的虚拟系统 任务要求: A、利用28027的片上温度传感器,检测当前温度; B、通过PWM过零中断作为温度检测A/D的触发,在PWM中断时 完成温度采样和下一周期PWM占空比的修正;PWM频率为1K; C、利用按键作为温度给定;温度给定变化从10度到40度。 D、当检测温度超过给定时,PWM占空比增减小(减小幅度自己设 定);当检测温度小于给定时,PWM占空比增大(增大幅度自己 设定); E、把PWM输出接到捕获口,利用捕获口测量当前PWM的占空比; F、把E测量的PWM占空比通过串口通信发送给上位机; 3、设计方案-----介绍系统实现方案和系统原理图 ①系统实现方案: 任务A:利用ADC模块通道A5获取当前环境温度。 任务B:PWM过零触发ADC模块,在PWM中断服务函数中,将当前环境温度和按键设定温度进行比较,并按照任务D的要求修订PWM占空比。

广东海洋大学嵌入式系统课程设计

《嵌入式系统》设计报告学生姓名 Adao (学号) 所在学院数学与计算机学院 所在班级计科1141 指导教师 成绩

目录 1.课程设计目的 (2) 2.系统分析与设计 (2) 3.系统结构图 (2) 4.实现过程 (3) 5.实验效果 (5) 6.代码分析 (6) 7.系统测试出现的问题和解决的方案 (7) 8.系统优缺点 (7) 9.心得体会 (8) 参考文献 (8)

双按键控制流水灯系统开发 1.课程设计目的: 本次课程设计目的主要是对之前所学习的STM32的某个实验进行更深入的学习与了解,弄懂引脚,端口等相关的配置,对实验原理和具体实现有一定的理解,能做到自己通过原理图和使用库函数等把功能实现出来。我选择的是EXTI-外部中断实验并加以整合,具有一定实用功能的系统,可以对外提供服务。 2.系统分析与设计: 本课程设计所定义的系统主要功能为,通过两个按键KEY1(PA0)、KEY2(PC13)可以实现对流水灯进行同步控制,即一个开关控制产生的灯的状态可以被另一个开关去改变,按键控制需要对两个按键的端口,引脚等进行相关配置,并在两个引脚的中断服务程序中完成对流水灯状态同步控制的操作。本还想通过使用SysTick(系统滴答定时器)功能对流水灯进行精确定时,但由于时间比较匆促,最终没有实现。 3.系统结构图: 图3-1

4.实现过程: 1、GPIO的输入模式有上拉输入模式、下拉输入模式、浮空输入模式和模拟输入模式。GPIO 中的每个引脚可以通过配置端口配置寄存器来配置它的模式。每个引脚的模式由寄存器的4个位控制。 上拉/下拉输入模式:1000 浮空输入模式:0100 模拟输入模式:0000 2、STM32的所有GPIO都可以用作外部中断源的输入端。STM32的中断由中断控制器NVIC 处理。STM32的中断向量具有两个属性,一个为抢占属性,另一个为响应属性,其属性编号越小,表面它的优先级别越高。抢占属性会出现嵌套中断。 3、编写NVIC_Configuration()函数配置NVIC控制器的函数。 static void NVIC_Configuration(uint8_t IRQ) { NVIC_InitTypeDef NVIC_InitStructure; //将NVIC中断优先级分组设置为第1组 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); /* 配置中断源 */ NVIC_InitStructure.NVIC_IRQChannel = IRQ;//设置中断线 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;//设置抢占优先级 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;//设置响应优先级 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); //对NVIC中断控制器进行初始化 } 4、调用GPIO_EXTILineConfig()函数把GPIOA、Pin0和GDIOC、PIN13设置为EXTI输入线。 GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource0); GPIO_EXTILineConfig(GPIO_PortSourceGPIOC, GPIO_PinSource13); 5、填写EXTI的初始化结构体,然后调用EXTI_Init()把EXTI初始化结构体的参数写入寄存器。编写EXTI_PA0_Config()函数完成各种需要的初始化。 void EXTI_Pxy_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; EXTI_InitTypeDef EXTI_InitStructure; /* config the extiline clock and AFIO clock */

【实用】Windows_Server_2003服务器配置课程设计报告

1、Windows server 2003的安装 (1)实验目的:通过本实例的学习,让我们学会为服务器选择合适的操作系统并进行安装。(2)实验环境:windows server 2003 +VMware workstation (3)实验步骤: 1)打开虚拟机,安装windows server 2003,单击“下一步”; 2)选好系统镜像所在位置,单击“下一步”; 3)输入密钥,单击“下一步”;

4)选择系统所安装磁盘大小,单击“下一步”; 5)等待系统的安装

6)安装好了的界面。 再此虚拟机上需要安装两个相同的windows server 2003系统,一个当作服务器,另一个作客户机。 6)配置服务器和主机的IP: 网络基础配置,右键单击“网上邻居”,从菜单中选择“属性”命令。打开网络连接。在“此连接使用下列项目”列表框中选择“internet协议”组件。单击“属性”按钮,打开对话框,设置服务器的IP,子网掩码是自动生成的; 同理在设置客户机的IP要与主机的IP不一样;

(4)遇到的问题及解决方法:网络号的作用,是划分子网。 (5)实验总结:本次在虚拟机上安装windows server 2003系统,使我第一次接触到windows server 2003这个系统,更加深入的了解了windows server 2003系统中的构造,觉得它与windows XP很相似,就是视觉上没有XP漂亮;学会了如何配置IP,如何通过DOS来查看IP地址。 2、FTP服务器搭建与配置 (1)实验目的:利用IIS创建FTP站点,管理FTP站点。 (2)实验环境:windows server 2003 +VMware workstation+IIS (3)实验步骤: 1)安装FTP 在“控制面板”上找到“添加或删除程序”选中“应用程序服务器”,单击“详细信息”再选中“Internet 信息服务(IIS)”,单击“详细信息”,把“文件传输协议(FTP)服务”选上,单击“确定”至此成功安装了FTP组件;

数据通信课程设计报告

《计算机控制技术》 课程设计 目录一....................................................................... 课程设计目的.. (3) 二....................................................................... 课程设计题目和要求. (3) 2.1 课程设计题目 2.2课程设计要求 三....................................................................... 设计内容 (4) 3.1 设计方案的选定与说明 3.2 系统总体框图 3.3论述方案的各部分工作原理; 3.4 设计说明书 四....................................................................... 设

计总结 (11) 参考书目 (11)

一.课程设计目的 通过本课程设计主要目的是实现两台西门子1200PLC之间的通信,利用PLC1发 送指令给PLC2 PLC2接到指令后控制电动机的启停,主要训练和培养学生的以下能 力: (1).查阅资料:搜集与本设计有关的资料(包括从已发表的文献中或者通过网络 交流平台搜集)的能力; (2).软件使用:了解并掌握西门子S7-1200软件的使用,明白网络通信实现的机 理与过程; (3).用简洁的文字,清晰的图表来表达自己设计思想的能力。 .课程设计题目和要求 2.1课程设计题目 题目:当一台S7-1200上发出一个启停信号时,另一台S7-1200收到信号,并启停一台电动机 1)主要软硬件配置 一套Step7 Basic v10.5(或以上版本),一根网线,2台CPU 1214C 2)相关指令:TSEND_C (发送数据指令),TRCV_C(接受数据指令) 3)硬件组态与编程 新建工程--- 添加硬件--- 用子网连接两个cpu ----- 编写主控cpu程序----- 调整主控cpu连接参数 --- 编写另一台cpu程序----- 调整另一台cpu连接参数

嵌入式系统课程设计

嵌入式系统课程设计 学号:1070410014030 班级:通信10 姓名:刘豆

嵌入式系统在智能交通中的应用摘要:介绍了嵌入式系统及其操作系统,并将其系统和通用计算机系统作了比较,总结了嵌入式系统产品在ITS(Intelligent Traffic system ),智能交通系统应用中的工作稳定性高,环境适应能力强和设备独立性三个特点,且结合嵌入式产品在ITS中应用的这几个特点,探讨了嵌入式系统在智能交通系统中应用研究。最后,展望嵌入式系统在ITS(智能交通系统)中的广泛应用。 关键词:嵌入式系统;嵌入式操作系;ITS;数字信号 中图分类号: Application of Embedded System in ITS Abstract: This article mainly introduce embedded system and its operation system , the embedded system are compared with general computer system. And this article summarizes three characteristics about embedded systems’ production applied to ITS: the high working stabilities, the strong ability for environment and the independency of equipments .Combining with the application research of embedded systems in ITS。At last, the author prospects that embedded systems are used widely in ITS in the whole nation. Keywords; embedded system; embedded operational systems ; ITS ; digital signal 嵌入式系统如今在实际生活中有巨大应用,观察身边不难发现电子产品、智能家居等大多用嵌入式系统来实现。这篇论文举一个应用实例,即智能交通系统。一个智能交通系统(ITS)主要由交通信息采集、交通状况监视、交通控制、信息发布和通信5大子系统组成。各种信息都是ITS的运行基础,而以嵌入式为主的交通管理系统就像人体内的神经系统一样在ITS 中起至关重要的作用。嵌入式系统应用在测速雷达、(返回数字式速度值)运输车队遥控指挥系统、车辆导航系统等方面,在这些应用系统中能对交通数据进行获取、存储、管理、传输、分析和显示,以提供交通管理者或决策者对交通状况现状进行决策和研究。 1.嵌入式系统与嵌入式操作系统 1.1嵌入式系统 通俗来讲,嵌入式系统是带有操作系统的单片机系统;主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统组。他的框架可分为5个部分:处理器、内存、输入/输出、操作系统与应用软件(如图1所示)。嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通讯协议、数据库系统、标准化浏览器和应用软件等。总体看来,嵌入式系统具有便利灵活、性能价格比高、嵌入性强等特点,可以嵌入到现有任何信息家电和工业控制系统中。软件角度来看,嵌入式系统具有不可修改性,系统所需配置要求较低&系统专业性和实时性较强等特点。 1.2 嵌入式操作系统 对于目前发展迅速的信息产品来说,其最关键的核心技术就是嵌入式操作系统。嵌入式操作系统EOS(Embedded Operating System)是一种支持嵌入式系统应用的操作系统软件。嵌入式操作系统具有通用操作系统的基本特点,如能够有效管理越来越复杂的系统资源;能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以及应用程序;另外,嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。

嵌入式课设

河海大学计算机及信息工程学院(常州)课程设计报告 题目基于uCOSII的LCD驱动 专业、学号 授课班号 学生姓名 指导教师 完成时间2013,06,25

课程设计(报告)任务书 (理工科类) Ⅰ、课程设计(报告)题目: 基于uCOSII的LCD驱动 Ⅱ、课程设计(论文)工作内容 一、课程设计目标 1、培养综合运用知识和独立开展实践创新的能力; 2、掌握基于uCOSII的LCD驱动编写开发过程; 3、掌握在UCOSII操作系统下添加LCD驱动程序的基本方法; 4、使用做好的驱动程序做一些简单的应用实例。 二、研究方法及手段应用 1、将任务分成若干模块,查阅相关论文资料; 2、分模块调试和完成任务。 三、课程设计预期效果 1、完成实验环境搭建; 2、在移植好的uCOSII工程中添加LCD的驱动程序; 3、学习在uCOSII下,LCD应用任务的简单编程实例,实现实验箱的CPU板上的D7、D8灯闪烁的同时,在LCD屏上也进行D7、D8灯的模拟闪烁。 4、在完成要求任务的情况下,添加其他模块。 学生姓名:彭华亮专业年级:自动化10级

目录 前言 ............................................ 错误!未定义书签。第一章课题目标及总体方案.. (3) 第二章系统设计 (3) 2.1系统及工具简介 (3) 2.1.1 EL-ARM-830实验箱 (3) 2.1.2 ADS v1.2集成开发环境 (4) 2.2系统功能实现 (4) 2.2.1 uCOSII内核移植 (4) 2.2.2 LCD驱动程序的编写 (6) 2.2.3 uCOSII操作系统下添加LCD驱动程序 (7) 2.2.4 测试程序的编写 (8) 第三章实验(测试)结果及讨论 (9) 3.1测试步骤 (9) 3.2注意事项 (9) 3.3测试结果 (10) 心得体会 (10) 参考文献 (12) 附录 (13)

基于UDP网络通信系统的服务端程序设计课程设计报告

毕业论文声明 本人郑重声明: 1.此毕业论文是本人在指导教师指导下独立进行研究取得的成果。除了特别加以标注地方外,本文不包含他人或其它机构已经发表或撰写过的研究成果。对本文研究做出重要贡献的个人与集体均已在文中作了明确标明。本人完全意识到本声明的法律结果由本人承担。 2.本人完全了解学校、学院有关保留、使用学位论文的规定,同意学校与学院保留并向国家有关部门或机构送交此论文的复印件和电子版,允许此文被查阅和借阅。本人授权大学学院可以将此文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本文。 3.若在大学学院毕业论文审查小组复审中,发现本文有抄袭,一切后果均由本人承担,与毕业论文指导老师无关。 4.本人所呈交的毕业论文,是在指导老师的指导下独立进行研究所取得的成果。论文中凡引用他人已经发布或未发表的成果、数据、观点等,均已明确注明出处。论文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究成果做出重要贡献的个人和集体,均已在论文中已明确的方式标明。 学位论文作者(签名): 年月

关于毕业论文使用授权的声明 本人在指导老师的指导下所完成的论文及相关的资料(包括图纸、实验记录、原始数据、实物照片、图片、录音带、设计手稿等),知识产权归属华北电力大学。本人完全了解大学有关保存,使用毕业论文的规定。同意学校保存或向国家有关部门或机构送交论文的纸质版或电子版,允许论文被查阅或借阅。本人授权大学可以将本毕业论文的全部或部分内容编入有关数据库进行检索,可以采用任何复制手段保存或编汇本毕业论文。如果发表相关成果,一定征得指导教师同意,且第一署名单位为大学。本人毕业后使用毕业论文或与该论文直接相关的学术论文或成果时,第一署名单位仍然为大学。本人完全了解大学关于收集、保存、使用学位论文的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存或汇编本学位论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入学校有关数据 库和收录到《中国学位论文全文数据库》进行信息服务。在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。 论文作者签名:日期: 指导教师签名:日期:

嵌入式系统课程设计

《嵌入式系统设计与应用》课程设计 题目嵌入式系统的实践教学探讨 1.嵌入式系统设计与应用课程的内容概述 1.1 内容概述 本课程适用于计算机类专业,是一门重要的专业课程。它的任务是掌握嵌入式系统的基本概念;掌握嵌入式处理器 ARM 体系结构,包括ARM总体结构、存储器组织、系统控制模块和I/O外围控制模块;掌握ARM指令集和Thumb指令集;掌握ARM汇编语言和C语言编程方法;了解基于ARM 的开发调试方法。它的目的是了解和掌握嵌入式处理器的原理及其应用方法。 1)介绍嵌入式系统开发的基础知识,从嵌入式计算机的历史由来、嵌入式系统的定义、嵌入式系统的基本特点、嵌入式系统的分类及应 用、嵌入式系统软硬件各部分组成、嵌入式系统的开发流程、嵌入 式技术的发展趋势等方面进行了介绍,涉及到嵌入式系统开发的基 本内容,使学生系统地建立起的嵌入式系统整体概念。 2)对ARM技术进行全面论述,使学生对ARM技术有个全面的了解和掌握,建立起以ARM技术为基础的嵌入式系统应用和以ARM核为基础 的嵌入式芯片设计的技术基础。 3)ARM指令系统特点,ARM 指令系统,Thumb 指令系统,ARM 宏汇编,ARM 汇编语言程序设计,嵌入式 C 语言程序设计。 1.2实践教学探讨 在IEEE 计算机协会2004年6月发布的Computing Curricula Computer Engineering Report, Ironman Draf t 报告中把嵌入式系统课程列为计算机工程学科的领域之一,把软硬件协同设计列为高层次的选修课程。美国科罗拉多州立大学“嵌入式系统认证”课程目录包括实时嵌入式系统导论、嵌入式系统设计和嵌入式系统工程训练课程。美国华盛顿大学嵌入式系统课程名称是嵌入式系统

嵌入式课程设计

嵌入式课程设计报告 学院信息电子技术 专业电子信息工程 班级13级 学籍号 姓名 指导教师 2016年0月00日

基于ARM9的无线智能家居控制系统 1.引言 当网络席卷整个社会,带来经济飞速发展的同时,也给人们的生活带来无限的惊奇。不断更新的生活方式,使得越来越多的人追求对生活的舒适度和享受度。智能家居作为新生力量呼之欲出,自然地走进了我们的生活,随之,引领新一代的数字家庭生活。 所谓“智能家居”(Smart Home),又称智能住宅。它利用先进的计算机嵌入式系统、通信技术、现代传感技术和网络技术,将家庭中的各种设备(如照明系统、安防系统、信息家电)通过家庭内部无线网络连接到一起。一方面,智能家居将使得使用它的用户能够更加方便、快捷和轻松的管理自己的家电设备,例如,用户可以通过平板电脑、智能手机和其他控制终端设备对家用设备进行远程操控和状态的实时监控,进行室内场景配置以及形成多个家电设备的联动功能等等;另一方面,智能家居内的各种设备不需要通过用户的操控就可以实现相互间的通讯,从而根据相关家电设备的不同的状态互动运行,为用户提供高效、便利、舒适与安全的智能家居生活。 2.系统设计 (1)硬件电路设计 文中提出的基于ARM9的无线智能家居控制系统主要包括ARM9核心控制模块,无线通信模块、LCD触摸屏模块和家居电器,另外还有传感检测,语音报警和电源等模块。系统总体结构模型图如图1所示。 图1系统总体结构模型图 其中ARM是整个系统的控制核心,通过GPRS和ZigBee无线通信网络收

发控制指令实现对家居电器进行综合监控,同时提供防火墙的功能,阻止外界对家庭内部设备的非法访问和攻击。 无线通信模块分为本地和远程两部分,本地通信主要通过新型的ZigBee无线通信技术实现系统与家居电器的通信,达到对其控制;远程通信是利用手机通过GPRS通信网络或利用计算机通过互联网实现人与控制系统的通信,进而达到对家居电器的远程监控。采用无线通信技术省去了布线使家居布局更加灵活,远程控制使家居电器工作更加贴近人们的工作和生活要求。 智能家居控制系统的具体功能包括:家居电器的综合监控、室内环境信息采集、自动报警、本地控制、远程控制、安全防盗等。 基本电路组成 1)主控芯片S3C2440A 本系统采用的是Samsung公司推出的16/32位RISC微处理器S3C2440A,它具有0.13μm的CMOS标准宏单元和存储器单元,它的杰出的之处是其处理器核心,该核心是由Advanced RISC Machines有限公司设计的ARM920T内核,ARM920T内核实现了MMU,AMBA BUS和Harvard高速缓冲体系结构,这一体系结构具有独立的16KB指令Cache和16KB数据Cache。 2)电源电路 电源是整个智能家居控制系统的能量之源,电源的稳定供电为系统得以安全、正确的运行提供了保障,本系统共需要两种电压5V和3.3V。为了提高终端设备内部的安全性并进一步减低系统的设计成本,本系统选用的市面上的12V、2A的开关稳压电源作为系统的基本供电输入,首先经过LM2576转换成5V,并经过滤波和稳压电路输出稳定的5V电压,为系统上需要5V电源的电路供电。其次,5V输出再经过LM1117D转换成3.3V,经过一定的滤波处理后为系统需要3.3V供电的电路供电,如图2所示。 图2 3.3V电压转换输出电路 3)复位电路的设计

计算机网络与通信课程设计:小型校园网的组建

湖南涉外经济学院课程设计报告 学院:计算机科学与技术 专业名称:计应1001、计软1001 课程名称:计算机网络与通信 设计题目:小型校园网的组建 学生姓名: 指导教师: 时间:2015年6月23日

任务分配表

摘要 随着计算机网络通信技术和Internet的飞速发展,校园网络的建设是学校向信息化发展的必然选择,校园网网络系统是一个非常庞大而复杂的系统,它不仅为现代化教学、综合信息管理和办公自动化等一系列应用提供基本操作平台,而且能提供多种应用服务,使信息能及时、准确地传送给各个系统。而校园网工程建设中主要应用了网络技术中的重要分支局域网技术来建设与管理的,因此本课程设计课题将主要以校园局域网络建设过程可能用到的各种技术及实施方案为设计方向,为校园网的建设提供理论依据和实践指导。 关键字:计算机网络通信技术,局域网,Internet

目录 任务分配表....................................................................................................................................... I 摘要 ............................................................................................................................................... II 第1章引言.. (1) 1.1 课程设计目的及要求 (1) 1.2 问题陈述 (1) 第2章需求分析及设计原则 (2) 2.1 需求分析 (2) 2.2 设计原则: (2) 2.2.1 实用性和经济性 (2) 2.2.2 先进性和成熟性 (3) 2.2.3 可靠性和稳定性 (3) 2.2.4 可扩展性和易维护性 (3) 第3章课程设计的内容 (4) 3.1 拓扑结构图 (4) 3.2 详细步骤: (4) 3.2.1 设备选型 (4) 3.2.2 VLAN及IP地址规划如下 (5) 3.2.3 服务器等设备的IP地址分配如下 (5) 3.3 路由器或交换机配置的代码: (5) 3.3.1 三层交换机 (5) 3.3.2 二层交换机 (9) 3.3.3 接入路由器 (10) 3.3.4 校园服务器的IP配置 (11) 3.3.5 外网服务器的IP配置 (12) 第4章校园网络安全 (13) 4.1 网络安全的概念 (13) 4.2 网络安全的脆弱性及面临的威胁 (13) 4.3 网络安全防范的内容 (13) 4.4 网络安全的主要技术 (14) 第5章系统测试的结果 (15) 5.1 学生ping教师 (15) 5.2 教师ping学生 (15) 5.3 学生ping实验中心 (16) 5.4 实验中心ping外网服务器 (16) 第6章课程设计总结 (17) 参考文献 (18)

嵌入式课程设计流水灯

流水灯编程 实验目的: 掌握GPIO端口的基本控制方法 掌握硬件电路仿真方法。 实验内容: 1、复习流水灯的工作原理。 2、按教材上 3、4节的内容或实验指导书2、1节的内容创建好项目,生成可执行文件。 3、阅读LED示例程序代码。 4、软件模拟,无误后下载到实验板上运行,观察效果。 5、通过硬件仿真的方式调试程序。分析LED_Init、main这2个函数中每一行代码的作用。 6、修改程序使得灯改变一次状态的时间间隔为0、02、0、01、0、1、0、3、0、5、1、2秒。 7、修改程序使得灯闪动的方向反向。 8、修改循环亮灯的程序,使每次亮灯的起始位置依次下移。 选做进阶版 1.用左边4个灯闪烁代表绿灯,右边4个灯闪烁代表红灯,8个灯 全亮代表黄灯。模拟交通信号灯运行(绿灯10秒,红灯20秒, 绿到红过渡时黄灯3秒) 2、将自己的学号编码用LED灯效果展示出来。 实验原理:

电路中有L0,L1,L2,L3,L4,L5,L6,L7共八个发光二极管,当引脚LED_SEL输入为1,对于A、B、C、D、E、F、G、H引脚,只要输入为1,则点亮相连接的发光二极管。 A~H引脚连接STM32F108VB芯片的PE8~PE15,程序初始化时,对其进行初始设置。引脚LED_SEL为1时,发光二极管才工作,否则右边的数码管工作。注意,LED_SEL连接于PB3,该引脚具有复用功能,在默认状态下,该引脚的IO不可用,需对AFIO_MAPR寄存器进行设置,设置其为IO可用。 实验过程及结果描述: 按实验内容的步骤一步一步的来。重点描述实验内容的6、7、8还有选修进阶的1、2、 要实现改变灯状态的时间间隔,只需改变delay_ms这函数的里面的参数即可,例如时间间隔改为0、02秒就将参数改为20,1秒就将参数改为1000,(delay_ms()函数里面参数的单位为ms)其它以此类推。通过参数的改变可以瞧到灯状态改变的时延相应的改变了。 改变灯的闪动方向则将light左移或者右移位数的值赋给light,例如循环一次左移一位,则light=light<<1,右移则就是light=light>>1;这里又涉及到当左移(右移)到最左(右)一位时,再次亮灯时的起始位置设置的问题,这里就可以设置当左移(右移)到最左(最右),设置一个判断语句当左移(右移)到左(右)端点时,将初始值赋给题目要求的位置即可。 实验结果:灯的移动方向改变。每次循环完一次之后通过改变赋给初

相关文档
最新文档