嵌入式课程设计指导书

2024-08-11

嵌入式课程设计指导书(精选8篇)

嵌入式课程设计指导书 篇1

课程设计

课 程 名嵌入式软件开发技术

题 目 基于嵌入式Linux的温度监测系统的

设计与实现

专 业 计算机科学与技术(嵌入式系统方向)班 级 13计算机嵌入式系统班 学 号 学生姓名

2016年6月

摘要

温度是个很普遍而又非常重要的参数,在日常生活、工农业生产以及科研领域都有着广泛的应用。因此,研制能够准确地测量和记录这个参数值的系统具有十分重要的意义。

基于ARM的嵌入式温度监测系统是采用嵌入式Linux作为操作系统,针对以S5PV210为处理器的开发板设计的一个嵌入式温度监测系统。论文在分析了Linux设备驱动程序的基本工作原理基础上,讨论了开发中经常会碰到的中断处理、拥塞处理、I/O端口,并在此基础上实现了基于S5PV210嵌入式处理器的开、读、写、关外部RAM的字符设备驱动和网络驱动。结合高精度温度传感器DS18B20,实现温度的正确采集,并通过以太网络将数据上传给上位机客户端。

论文首先介绍了通信网络中各种设备特性、总线结构及传输技术,然后根据单片机与PC机之间的串行通信原理,用ubantu完成温度监测系统的软件设计与实现,为用户提供一个友好的人机界面,对监测系统进行控制并显示采集后的数据。本系统还通过多线程实现了多个客户端与服务器的通信。

关键词:S5PV210;嵌入式Linux操作系统;DS18B20;网络编程

I

Abstract

Temperature is a very common and very important parameter, in daily life, industrial and agricultural production and scientific research fields have a wide range of applications.Therefore, it is very important to develop a system that can accurately measure and record the value of this parameter.The temperature monitoring system of base on the ARM is use of embedded Linux as the operating system for the processor to S5PV210 development board designed for an embedded temperature monitoring system.Based on the analysis of the basic working principle based on the Linux device drivers discussed development often encounter interrupt handling, congestion handling, I / O ports, and on this basis to achieve the embedded processor based on open S5PV210 reading, writing, characters off the external RAM device driver and network drives.Combined with precision temperature sensor DS18B20, to achieve the correct temperature acquisition, and upload the data via Ethernet to a PC client.At first,the paper introduces the characteristics of various devices in a communication network, the bus structure and transmission technology, and according to the principle of serial communication between SCM and PC, with ubantu complete temperature monitoring system software design and implementation, to provide users with a friendly man-machine interface, the monitoring system to control and display the data after collection.The system also enables communication via a plurality of multi-threaded client and the server.Key words:S5PV210;embedded Linux operating system;DS18B20;Network programming

II

1.引言.......................................................................................................................................1 1.1 设计背景及意义...............................................................................................................1 1.2 设计的主要内容................................................................................................................2 2.相关技术...............................................................................................................................2 2.1 嵌入式Linux......................................................................................................................2 2.2 S5PV210.............................................................................................................................3 2.3 socket网络编程..............................................................................................................3 3.具体实现功能.......................................................................................................................4 3.1总体框架图........................................................................................................................4 3.2客户端功能........................................................................................................................5 3.3 服务器功能........................................................................................................................5 3.4 实验板输出信息...............................................................................................................5 4.具体实现过程.......................................................................................................................6 4.1 交叉编译工具的安装.......................................................................................................6 4.2 客户端模块的设计...........................................................................................................7 4.3 服务器模块.......................................................................................................................8 4.4 LED点亮模块..................................................................................................................10 4.5 温度感应模块.................................................................................................................11 5.测试结果分析.....................................................................................................................13 5.1 各模块运行的效果.........................................................................................................13 5.2 可扩展功能......................................................................................................................15 6.总结与展望.......................................................................................................................15

第一章 引言

1.1 设计背景及意义

温度作为工业、农业、国防和科研等部门最普遍的测量项目。它在工农业生产、现代科学研究以及高新技术开发过程中也是一个极其普遍而又非

常重要的参数。因此,在这些领域中,对于这个参数的测量与控制就显得尤为重要,特别是在纺织工业、冶金、化工、食品、温室种植,汽车制造以及气象预报和科研实验室等许多地方,都具有举足轻重的作用。

以往这些工作大多是由人工完成,不但工作量大,记录的数据少,对温度的调节缺乏实时性,而且电路复杂,标定和校准也比较麻烦,难以满足现代温度测量的要求[1]。自从传感器技术、微控制器技术和计算机技术日渐成熟之后,现代的温度测量与控制系统克服了以往系统中存在的一些问题,比如对环境温度的控制与调节以及数据的记录都由微控制器或计算机自动完成,人们的工作量大大地降低,而且测得的数据也更加的精确,对环境温度的调节更具有实时性[2]。

1.2 设计的主要内容

此次主要采用嵌入式Linux作为操作系统,针对以S5PV210为处理器的开发板设计的一个嵌入式温度监测系统。在Linux设备驱动程序的基本工作原理基础上,讨论了开发中经常会碰到的中断处理、拥塞处理、I/O端口,并在此基础上实现了基于S5PV210嵌入式处理器的开、读、写、关外部RAM的字符设备驱动和网络驱动。结合高精度温度传感器DS18B20,实现温度的正确采集,并通过以太网络将数据上传给上位机客户端。

温度监测系统根据Linux中的网络通信技术和串口通信技术来传输数据。用ubantu完成温度监测系统的软件设计与实现,为用户提供一个友好的人机界面,对监测系统进行控制并显示采集后的数据。本系统还通过多线程实现了多个客户端与服务器的通信。

第二章 相关技术

2.1 嵌入式Linux Linux是UNIX系统的一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。它诞生与1991年的10月5日。以后借助与Internet

网,并进过全世界各地计算机爱好者的共同努力下,现已成为世界上使用最多的一种UNIX类操作系统,并且使用人数还在迅猛增涨。

本次设计采用Linux作为嵌入式操作系统的原因有以下几点:[3] 1)低成本开发系统: 2)可应用于多种硬件平台 3)可定制的内核 4)性能优异 5)良好的网络支持

2.2 S5PV210

S5PV210又名“蜂鸟”(Hummingbird),是三星推出的一款适用于智能手机和平板电脑等多媒体设备的应用处理器。

S5PV210采用了ARM CortexTM-A8内核,ARM V7指令集,主频可达1GHZ,64/32位内部总线结构,32/32KB的数据/指令一级缓存,512KB的二级缓存,可以实现2000DMIPS(每秒运算20亿条指令集)的高性能运算能力。

包含很多强大的硬件编解码功能,内建MFC(Multi Format Codec),支持MPEG-1/2/4,H.263,H.264等格式视频的编解码,支持模拟/数字TV输出。JPEG硬件编解码,最大支持8000x8000分辨率

内建高性能PowerVR SGX540 3D图形引擎和2D图形引擎,支持2D/3D图形加速,是第五代PowerVR产品,其多边形生成率为2800万多边形/秒,像素填充率可达2.5亿/秒,在3D和多媒体方面比以往大幅提升,能够支持DX9,SM3.0,OpenGL2.0等PC级别显示技术。

具备IVA3硬件加速器,具备出色的图形解码性能,可以支持全高清、多标准的视频编码,流畅播放和录制30帧/秒的1920×1080像素(1080p)的视频文件,可以更快解码更高质量的图像和视频,同时,内建的HDMIv1.3,可以将高清视频输出到外部显示器上。

2.3 socket网络编程

Socket是进程通讯的一种方式,即调用这个网络库的一些API函数实现分布在不同主机的相关进程之间的数据交换。[4] 几个定义:

(1)IP地址:即依照TCP/IP协议分配给本地主机的网络地址,两个进程要通讯,任一进程首先要知道通讯对方的位置,即对方的IP。

(2)端口号:用来辨别本地通讯进程,一个本地的进程在通讯时均会占用一个端口号,不同的进程端口号不同,因此在通讯前必须要分配一个没有被访问的端口号。

(3)连接:指两个进程间的通讯链路。

(4)半相关:网络中用一个三元组可以在全局唯一标志一个进程:(协议,本地地址,本地端口号)

这样一个三元组,叫做一个半相关,它指定连接的每半部分。(4)全相关:一个完整的网间进程通信需要由两个进程组成,并且只能使用同一种高层协议。也就是说,不可能通信的一端用TCP协议,而另一端用UDP协议。因此一个完整的网间通信需要一个五元组来标识:(协议,本地地址,本地端口号,远地地址,远地端口号)

这样一个五元组,叫做一个相关(association),即两个协议相同的半相关才能组合成一个合适的相关,或完全指定组成一连接。

第三章 具体实现功能

3.1总体框架图

图1 项目总体框架图

3.2客户端功能

1)显示简单的用户界面 2)发送命令给服务器 3)接收服务器传输的数据 4)显示温度数据

3.3 服务器功能

1)接收客户端发送的命令 2)处理命令

3)把命令转发给硬件 4)获取硬件处理所得的数据 5)把该数据传给客户端

3.4 实验板输出信息

1)LED灯按照客户端的指令亮灭 2)蜂鸣器唱歌

3)核心板控制输出温度传感器的数据到服务器

第四章 具体实现过程

个应用系统要完成各项功能,首先必须有较完善的硬件作保证。同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编和有时会变得很简单。因此充分利用其内部丰富的硬件资源和软件资源。

程序设计语言有三种:机器语言、汇编语言、高级语言。本系统运用的是高级语言所编写,也就是C语言。所用到的开发平台为ubuntu系统。

4.1 交叉编译工具的安装

(1)考虑到现今Linux平台发展,交叉编译平台编统一为arm-linux-gcc-4.4.3(2)在windows系统下,建立一个共享目录,如:e:/linux_file(3)将光盘目录linux中的arm-linux-gcc-4.4.3.tar.gz 复制到e:/linux_file(4)注意在进行虚拟机设置时使共享目录的有效,并添加共享目录e:/linux_file(5)进入linux操作系统,root目录下建立一个Armcode的子目录,将共享目录下的文件arm-linux-gcc-4.4.3.tar.gz复制到该目录(6)然后进入到该目录,执行解压命令:#cd /root/Armcode;#tar xvzf arm-linux-gcc-4.4.3.tgz –C /;注意:C 后面有个空格,并且C 是大写的,它是英文单词“Change”的第一个字母,在此是改变目录的意思。(7)执行

令,将

arm-linux-gcc

到/opt/FriendlyARM/toolschain /4.4.3/bin 目录。

(8)把编译器路径加入系统环境变量,运行命令:#gedit /root/.bashrc 编辑/root/.bashrc 文件,在最后一行添加:export PATH=$PATH: /opt/FriendlyARM/toolschain/4.4.3/bin(9)重新登录系统(不必重启机器,开始->logout 即可),使以上设置生效,在命令行输入:arm-linux-gcc –v,会出现如下信息,这说明交叉编译环境已经成功安装。

4.2 客户端模块的设计

用户界面的显示:

void interface_print(char *temp){ system(“clear”);printf(“e[31m*******************2016梧*********************e[0mn”);printf(“e[31m*

*e[0mn”);printf(“e[31m*e[0m e[32m点亮LED1: on1

on2e[0me[31m

*e[0mn”);printf(“e[31m*e[0m e[33m关闭LED1: off1

off2e[0me[31m

*e[0mn”);printf(“e[31m*e[0m e[34m开蜂鸣器: onb

songe[0me[31m

*e[0mn”);printf(“e[31m*e[0m e[35m获取温度: get

e[31m *e[0mn”,temp);printf(“e[31m*e[0m e[36m退

出: e[0me[31m

*e[0mn”);printf(“e[31m*

*e[0mn”);printf(“e[31m******************未

来**********************e[0mn”);}

发送命令给服务器:

/*5.调用I/O函数(read/write)与客户端通讯。*/ int i = 5;int pos;while(1){

ret = poll(pfd,2,-1);

if(ret > 0){

if(pfd[0].revents == POLLIN){

interface_print(temp);

/*从终端读取数据*/

memset(buf,0,sizeof(buf));

ret = read(pfd[0].fd,buf,sizeof(buf)-1);7

州学院

|

点亮LED2:

|

关闭LED2:

|

播放音乐:

|

温度:[%s]e[0m quit

|

的大

} if(ret > 0){

}

/*发送数据给服务器*/ write(sockfd,buf,ret);

接受服务器传输的数据:

if(pfd[1].revents == POLLIN){

if(!strncmp(buf,“get”,3)){

/*接收服务器发送的信息*/

memset(temp,0,sizeof(temp));

ret = read(pfd[1].fd,temp,sizeof(temp)-1);

if(ret > 0){

temp[ret-1] = ';

/*把信息显示到终端*/

interface_print(temp);

}

} } 4.3 服务器模块

接收客户端发送的命令:

/*读取客户端信息*/

memset(buf,0,sizeof(buf));

ret = read(newfd,buf,sizeof(buf)-1);

if(ret > 0){

把命令转发给硬件:

/*发送命令给硬件*/

if(!strncasecmp(buf,“on1”,3)){

cmd = LED_ON;

val = 3;

}else if(!strncasecmp(buf,“on2”,3)){

cmd = LED_ON;

val = 4;

}else if(!strncasecmp(buf,“off1”,4)){

cmd = LED_OFF;

val = 3;

}else if(!strncasecmp(buf,“off2”,4)){

cmd = LED_OFF;

}

val = 4;

}else if(!strncasecmp(buf,“onb”,3)){

pwm_on();

}else if(!strncasecmp(buf,“song”,4)){

pwm_music_fun();

}

if(ioctl(fd_led,cmd,(unsigned long)val)< 0){

perror(“ioctl failedn”);

exit(1);

} } } return(void *)0;

获取硬件处理所得的数据:

void *do_temp(void *arg){ int newfd = *(int *)arg;char buf[100];int dev_fd;unsigned int temp[2];float tempvalue=0;unsigned pos;

dev_fd = open(“/dev/fs210_gpio”,O_RDWR | O_NONBLOCK);if(dev_fd < 0){

perror(“open”);

exit(1);}

while(1){

temp[1]= ioctl(dev_fd,GPIO_ON,temp);

/*

temp[1]&=0xffff;

tempvalue=(float)(temp[1])*0.0625;

*/

if(temp[1]&0x8000)

{

temp[1]= ~temp[1]+1;

temp[1]&=0xffff;

tempvalue=(float)(temp[1])*0.0625;

} } else {

temp[1]&=0xffff;

tempvalue=(float)(temp[1])*0.0625;} memset(buf,0,sizeof(buf));sprintf(buf,“%f”,tempvalue);strcat(buf,“n”);write(newfd,buf,strlen(buf));memset(buf,0,sizeof(buf));sleep(1);} return(void *)0;4.4 LED点亮模块

/*参考内核,采用静态的方式实现点灯和灭灯*/ void led_on(unsigned long val){ printk(“ %ld %sn”,val,__func__);gpio_set_value(S5PV210_GPC0(val),1);}

void led_off(unsigned long val){ printk(“ %ld %sn”,val,__func__);gpio_set_value(S5PV210_GPC0(val),0);}

long test_ioctl(struct file *file, unsigned int cmd, unsigned long data){ unsigned long val = data;switch(cmd){

case LED_ON:

led_on(val);

break;

case LED_OFF:

led_off(val);

break;

default:

break;

}

} return 0;/*向系统注册申请设备号*/ ret = register_chrdev(LED_MAJOR,LED_NAME,&led_fops);if(ret){ printk(“register chrdev failed!n”);errno =-EBUSY;

goto err1;}

/*创建一个设备类*/ led_dev->led_class = class_create(THIS_MODULE, LED_MODULE);if(IS_ERR(led_dev->led_class)){ printk(“class create failedn”);errno = PTR_ERR(led_dev->led_class);goto err2;} /*创建一个设备文件,之后系统会自动在/dev目录下自动创建一个设备文件*/ led_dev->led_device = device_create(led_dev->led_class,NULL,MKDEV(LED_MAJOR,0),NULL,“led”);if(IS_ERR(led_dev->led_device)){

printk(“class create failedn”);

errno = PTR_ERR(led_dev->led_device);

goto err3;} led_init();

return 0;

4.5 温度感应模块

static void WriteOneChar(unsigned char dat){ unsigned char i=0;

writel((readl(gph1con)& 0xFFFFFFF0)| 0x1, gph1con);//gph1_0,output spin_lock(&lock);for(i=0;i<8;i++){

writel(readl(gph1dat)&(0xFFFFFFFE), gph1dat);

__udelay(15);

if(dat&0x01){

writel(readl(gph1dat)| 0x1 , gph1dat);

}

else{

writel(readl(gph1dat)&(0xFFFFFFFE), gph1dat);

}

__udelay(45);

writel(readl(gph1dat)| 0x1 , gph1dat);

__udelay(1);

dat>>=1;} spin_unlock(&lock);}

static unsigned int ReadTemp(void){ unsigned char T_h=0;unsigned char T_l=0;unsigned int temp=0;

writel((readl(gph1pud)& 0xFFFc)| 0x02, gph1pud);//gph1_0,pull-up enabled

spin_lock(&lock);Init_DS18B2O();spin_unlock(&lock);__udelay(400);writel((readl(gph1con)& 0xFFFFFFF0)| 0x1, gph1con);//gph1_0,output writel(readl(gph1dat)| 0x1 , gph1dat);WriteOneChar(0xcc);WriteOneChar(0x44);mdelay(100);spin_lock(&lock);Init_DS18B2O();spin_unlock(&lock);__udelay(400);writel((readl(gph1con)& 0xFFFFFFF0)| 0x1, gph1con);//gph1_0,output writel(readl(gph1dat)| 0x1 , gph1dat);WriteOneChar(0xcc);WriteOneChar(0xBE);T_l=ReadOneChar();//L T_h=ReadOneChar();//H

temp=(unsigned int)(((unsigned int)T_h<<8)|T_l);

printk(“temp=%xrn”,temp);

return temp;}

第五章5.1 各模块运行的效果

客户端:

测试结果分析13

图2 客户端运行效果

服务器:

图3 服务器运行效果

开发板:

图4 开发板的显示效果

5.2 可扩展功能

本项目的只是完成其中的一些功能,其可扩展性强,对进行加强完善,还可作如下扩展:

1.拓展成温度报警器,设定一个上限值和下下限值,当温度达到某个值时,如低于20摄氏度时,LED灯亮,高于40摄氏度时,蜂鸣器发出报警提示音。

2.可使开发板的核心板链接生活中的物件,如台灯,或者房间的灯,从而控制生活中物件的开关。

3.找到家庭电器中的接口,连接相应接口可实现远程控制家电。

第六章 总结与展望

通过这次的课程设计,让我受益匪浅,让我对智能硬件有了更深一层的了解,也体会了智能化在现实生活中的重要性,也让我了解和掌握了一些编程思想。让

我把理论知识用在实践中,实现了理论和实践相结合,从中更懂得理论的是实践的基础,实践有能检验理论的正确性,更激发了我对专业知识的渴求,这些对我以后参加工作或者继续学习都会有很大的帮助和影响。通过这次课程设计,让我意识到了自己的一些不足,从而让我认识到了学习的重要性。

虽然这次实训是那么短暂的1周时间,但是这几天我所学到的还是很多的,通过此次培训学生运用本专业所学的理论知识和专业知识来分析解决实际问题的重要教学环节,是对三年所学知识的复习和巩固。同时通过这次培训让我明白了一个很深刻的道理,让我意识到了团队合作的重要性,一个人不能完成的事情,团队能完成。团队精神有利于提高组织整体效能,只有通过发扬团队精神,才能取得更好的成绩。

因时间及精力有限,系统做的还不是很完善,还是有不足的地方,如果时间充足的话,还可以做得更完善,对其进行功能扩展。

以上这些收获对我来说是非常有帮助的,让我受益匪浅,它也是我人生中一笔宝贵的财富。

参考文献

[1] 李勇, 艾竹君, 刘巧云等.一种新型温度测量系统的设计[J].低温与超导, 2007, 35(5):451-454 [2] 马净, 李晓光,宁伟.几种常用温度传感器的原理及发展[J].中国仪器仪表, 2004,(6):1

[3] 曹忠明, 程姚根.从实践中学嵌入式Linux操作系统[M].北京:电子工业出版社, 2014:8-9 [4] 陈刚 , 冯利美.从实践中学嵌入式Linux应用程序开发[M].北京:电子工业出版社, 2012:193-192

嵌入式课程设计指导书 篇2

嵌入式课程的教学目的是为了培养学生具有独立自主的软硬件开发能力,但是目前大部分高校仍然采用传统的教学方式和教学方法,带来的后果是学生的动手实践能力依然不足以从事技术类的设计工作。

1教与学的现状

1.1教学的现状

传统的嵌入式课程教学主要由理论课堂教学和实验教学两部分组成。课堂教学普遍采用多媒体设备,将教学内容制作成幻灯片,对着PPT讲解电路和程序、CPU内部结构、IO接口、 硬件、软件,均采用演示的方法。在实验中教师认真讲解硬件的连接方式,学生按照教师讲解的编程流程进行验证。

1.2学生学习的现状

与重点院校相比,我校的办学目的是培养应用型人才。我校生源质量和重点大学是有较大的差距,如果采用传统方式进行教学,不根据课程自身与学生的特点,依然采用老师讲、学生做,无法培养学生的工程应用能力。

2课程的教学改革和实践

2.1理论教学

在教学内容的选择上,需要简要讲解嵌入式系统的开发流程和交叉开发环境,各个层次需要掌握的技术,目的让学生有针对性学习,根据自身特点确立技术的方向。在具体实施中用少量简单例子说明各环节的相关知识和开发方法。

在教学的方法方面,对于ARM技术的教学以介绍为主,尽可能改进传统的满堂灌的教学方式,在教学中采用对比教学的方法,比如:和51核单片机对比,避免抽象乏味的教学方式。

在授课方式方面,整合课堂资源,让学生在课堂上能够理解嵌入式系统开发的基本理论与基本技能,根据课堂教学的实际情况,精心设计与课堂讲授相对应的实践内容。对于实践强的教学内容,把以前理论课堂讲解的内容放在实验室开展教学。例如:对于ARM指令和汇编编程的讲解要突出应用性,我们尝试在实验室完成这部分的教学,不再是按照传统进行逐条地讲解指令和语法,而是通过一个个例程讲解程序的结构,中间用到的指令让学生采用查阅方式进行“Learning by Doing”。 在实践中学生学习的积极性明显提高了。

2.2新的教学方法的实践

改变传统的单一的教学方式,传统的教学是上课地点在教室里面,教学设备只有黑板和投影设备,极大限制了教师教学方法的发挥,教师只能按照PPT进行讲解,学生只能被动地接受,往往到了课程结束也不知道该如何搭建嵌入式的开发环境,即便上完配套的实验课程也仅仅是理论的验证,学生往往连基本的调试能力都不具备,更别说培养应用开发能力了。

新的授课方式:把传统的理论课堂和实验课堂结合起来授课,前面讲述基本ARM技术部分放在教室进行,汇编程序和芯片部分在实验室进行。例如:对于ARM汇编指令部分教学,根据ARM汇编虽用得少但又很重要的特点,在讲述汇编指令时改变传统的授课方法,以具体的工程实例进行教学,汇编指令学生以查找的方式进行实践,通过5个例程练习,学生可以以软件模拟的方式快速掌握ARM汇编代码的调试和阅读代码的能力。经过这样的训练学生可以阅读ARM开发板的启动代码。在讲述芯片的接口和相关控制器时,在实验室进行理论部分的教学教师就更好发挥灵活的教学方式了,这样的教学方式压缩了理论授课的课时,让学生成为课堂的主题,教师是辅助教学,学生的动手实践机会增加,学习的惰性减少,积极性获得提高。而且明显提高了教学的效率。

在教学中精讲理论部分,对于难于理解的理论要少讲,在实践中理解。扩大课程的知识面。

双师制的尝试:ARM+LINUX教学安排可以安排2个教师来进行教学,发挥教师的所长,擅长底层硬件的老师进行ARM部分的教学,擅长LINUX部分的教师进行操作系统部分教学。

2.3实践环节的改革

1)实验课程的教学改革

针对嵌入式课程实践性强的特点和实验课时普遍偏少的现状,整合教学内容,压缩传统的汇编指令部分的课时,同时开放实验室和发放开发板,学生可以把便携的嵌入式开发板带回去,随时随地地进行嵌入式的学习。我们在教学中提高了实验课比例。把总学时的3/4安排为实验课,整合理论和实验课堂, 把与实验直接相关的理论带到实验课上讲解。理论课占仅总学时的1/4左右,主要讲授ARM技术和芯片工作的基本原理。 在实践中对学生开放实验室确实弥补了实验课时的不足,提高学生动手能力,学生通过把便携开发板带回学习也极大带动了同寝室学生的学习积极性。

在实验教学中我们发现学生过于依赖实验箱的问题,在以往试验中学生只需按照试验箱自带的实验指导书的步骤一步一步操作就可以轻松完成实验。针对这种情况,我们改进了教学设备,利用接口全开放的开发板,既可以满足常规的验证性的实验教学也可以进行设计性的实验。

2)集中实践环节的教学改革

由于面向电子信息类专业学生,学生就业的方向更加偏向底层,在硬件实践训练更加侧重,硬件设计中接口的扩展、电路的绘制和驱动程序的编写。以2周的课程设计为例,引入企业的项目管理机制,在集中实践环节,按照3人为一个项目组开展实践,整个工作流程尽可能接近实际产品研发流程。从方案选择,硬件的电路图绘制、焊接、硬件调试、代码的编写,其中每个环节要更接近产品研发的流程。学生的团队协作能力得到了提高。重点也培养三个能力:创新能力、动手能力和团队协作能力。

3结论

综上所述,我校通信专业的嵌入式系统课程教学进行了2年的教学改革的实践,学生学习的积极性明显获得了提高,在蓝桥杯和电子设计大赛中多次获奖,在毕业设计中更多学生选择利用嵌入式技术来完成毕业设计课题。教师也在教学实践中需要优化教学内容和设计开发了实践性的课题,得到了提升。目前我院正在建立高性能的嵌入式实验室,通过更多的创新性的综合设计性项目来改善和提高我院的嵌入式课程教学。

参考文献

[1]刘彦文.嵌入式系统原理及接口技术[M].北京:清华大学出版社,2010.

[2]刘太安,杜春玲.嵌入式教学模式探索与实践[J].科技创新导报,2009(22):160.

[3]白玉.嵌入式系统及应用课程案例教学模式的研究与探索[J].教育教学论坛,2015(13):155-156.

[4]俞远志,张立庆.开放性实验教学模式的实践与思考[J].实验室研究与探索,2012,31(3):153-155.

嵌入式课程设计指导书 篇3

关键词:机械设计基础 课程设计 指导

中图分类号:G728.8文献标识码:A文章编号:1673-1875(2007)02-082-02

《机械设计基础》课程设计是在该课程学习的结束阶段,对学生进行的一次以《机械设计基础》课程知识为基本内容的实践训练。课程设计的目的是培养学生从事机械设计工作的能力,灵活运用《机械设计基础》及相关课程知识的能力和独立分析、解决工程实际问题的能力,为毕业设计和学生今后独立工作打下良好的基础。由于这一工作要求学生有较好的基础知识和多方面的能力,所以在完成这一教学环节时,学生感到困难,无从下手,这就给我们指导老师提出一个课题:如何指导学生做好《机械设计基础》课程设计,确保质量,提高收效呢?

一、《机械设计基础》课程设计中学生常存在的问题

通过对几届学生进行设计的观察可以发现,学生在设计中往往出现以下一些问题:

(一)把课程设计等同于做习题,缺少创新性。设计过程是一个边分析、边论证、边计算的过程,许多方面比如一些参数的选择、加工工艺的选取等,需要学生自己确定,显然是与做习题是不同的,但是有些学生习惯于用习题的思路、方法来对待设计,既不对具体问题加以具体分析,又不对设计结果加以论证、校核,致使整个设计纸上谈兵,脱离实际,严重时出现错误。如:有的学生在设计齿轮减速箱的齿轮过程中,对齿轮材料的选择只按照书上的设计过程计算一遍,没有对设计过程中的一些具体环节(如:是开式传动还是闭式传动,是低速级还是高速级)仔细考虑,不是所选材料的力学性能不满足使用要求就是所选材料的经济性能不满足要求。

(二)只考虑结构要求,不进行综合分析。《机械设计基础》课程设计是一次综合的技术运用过程,一份好的设计方案应满足结构性能、使用性能和经济性能的要求,但是有些学生在设计中只以结构性能要求为惟一要求,缺少对零件的加工性能以及经济性要求的分析,以及加工设备的正确选择加以探索。虽然结构设计满足要求,但是算不上好的设计,没有达到设计的目的。

(三)团队精神和协同合作意识不强。设计是一项复杂的工作,有时一个设计课题需要多个人共同研究来完成,为了节约时间,提高效率,设计过程中,就要既讲分工又讲合作,分工是为了加快速度,合作是为了集思广益,增加设计的可行性,这方面学生表现出的主要不足有:(1)不会合作;(2)不愿意合作;(3)合作成为抄袭他人成果的借口。

(四)准备工作不充分,只想一蹴而就。要搞好《机械设计基础》课程设计,学生必须做好充分的准备工作,再动手设计,设计准备包括:(1)读懂设计任务书;(2)搜集资料;(3)制定个人设计进度计划。但是有些学生忽视这一环节,设计不查阅资料,遇到问题按自己的理解去进行设计;设计没有计划性,没有一个整体安排,缺少完整的构思,造成设计东拼西凑,设计结束了,感觉什么收获也没有。

二、指导教师的任务和重要性

那么学生课程设计中产生这些问题的原因又是什么呢?我认为这里既有学生综合运用知识能力不够的原因,又有教师在对学生进行能力培养、能力训练方面做得不够的原因;既有学生初次接触设计工作,对设计缺少感性认识、创新意识的原因,又有教师在设计各环节上指导把握不力的原因,而教师的指导,是对设计的好坏起着直接的制约作用的。通过多年的指导实践,我认为要想指导好《机械设计基础》课程设计,必须把握好以下四个环节。

(一)课题贴切 任务明确 课题选择是搞好《机械设计基础》课程设计的基础。课题选择合理可以使后续设计进展顺利,同时又可以收到良好的效果。《机械设计基础》的主要任务是:传动类型的选择和结构设计。《机械设计基础》课程中讲授的齿轮传动、带传动、链传动等均可以选为设计课题,但为了达到效果,选题应遵循以下原则:(1)满足教学要求原则。选题应达到专业培养目标和教学大纲的要求,在此前提下,课题可有多种形式,可以是虚拟题,也可以是结合生产实际的题目,可以一人完成一个课题的设计内容,也可以同一课题多人平等完成。但应注意使每一个学生都熟悉设计的全过程并完成一定的设计任务,这样使学生获得较全面的训练机会。(2)切合实际原则。选题应符合本校或本地区的实际情况,要使学生在本校或本地区能够查阅到有关的资料,同时选题也要符合学生的实际,题目不宜过大,难度要适中,任务量要保证大多数学生在规定的时间内经过努力可以完成。

(二)认真动员 制定计划 《机械设计基础》课程设计是五年制高职机电一体化专业学生首次接触设计任务,学生往往会感到束手无策,为此设计前的动员是必不可少的。动员工作要使学生了解此课程设计的目的、性质、任务和基本要求,对设计思路要多启发和诱导,对设计步骤和方法的介绍要简化;对设计工作态度要提出严格要求,对学生的设计思路和思想少设定框框,必要时可以对设计中可能出现的问题先向学生提出,以减少学生在设计过程中少走弯路。

课程设计是一个系统工程,要制定好个人工作计划。在教师的指导下,明确各阶段应完成的任务,切不可前松后紧,马虎了事。

(三)过程指导 严肃认真 过程指导是《机械设计基础》课程设计中最主要的指导部分,花费的时间最长,涉及的内容最多,可以采用以下方法做好过程指导工作。(1)分段检查。就是将整个设计过程分为若干阶段,学生每完成一个阶段的设计任务就应将草稿交指导老师处检查,教师应将学生的设计情况做好记录,对学生设计中出现的错误给予及时指出,这样,一方面教师能及时了解学生设计的进度,另一方面学生能及时知道所完成的设计部分有无方向性的错误,以免前功尽弃。如,将设计工作可分为制定设计任务书;搜集和查阅资料;设计方案的比较、论证及确定;设计计算和绘制图纸;编写设计说明书。每个阶段指导老师都应认真检查,并做好记载。(2)个别指导。即教师深入学生设计工作场所进行现场指导,但应以学生和学生提出问题为主,教师在回答问题时以启发式为主,指出解决问题的方向,引导学生自我解决问题。过程指导中,教师要抓好以下几个关键问题:(1)检查学生设计方案选取是否满足使用性能和结构上合理的要求;(2)检查学生设计参数确定是否符合国家标准,加工工艺性是否满足要求,是否便于维修且使用安全可靠;(3)检查学生能否运用已学知识对设计过程中加工工艺参数、结构参数进行比较、筛选,能否对已经确定的方案进行分析、论证其优缺点,针对不足之处提出可供改进的设想、措施;(4)检查学生设计说明书编制是否规范和完整;(5)检查学生设计图纸绘制是否符合国家制图标准。这五方面的检查,如果发现问题应及时纠正,这样才使设计达到一定水平,收到真正的效果。

(四)成绩评定 严格标准 《机械设计基础》课程设计的成绩是在学生完成了设计任务规定的内容后,再经过答辩,综合评定出来的,主要从以下几方面考虑:学生平时工作态度,设计说明书编写和计算的质量,设计图纸部分的质量,答辩中回答问题的水平等。具体分数根据各部分工作在整个设计过程中的权重确定,逐项考核。对完成设计工作好的学生,指导教师应该提出表扬,设计资料交学校有关部门建档。对设计中存在欠缺的,答辩过程中或设计工作总结时,指导教师应指出存在问题,并帮助学生提出改进方案,真正使学生的设计能力通过《机械设计基础》课程设计得到锻炼和提高。

总之,《机械设计基础》课程设计的指导工作是一项较为复杂的工作,它要求指导教师不仅要精通《机械设计基础》课程的内容,还要精通《机械工程制图》、《机械制造基础》、《金属材料及热处理》、《计算机绘图》等方面的知识,但是只要我们在指导工作中不断的探索和总结,《机械设计基础》课程设计这项工作是可以圆满完成的。

参考文献:

[1]曾宗福主编.机械设计基础[M].南京:江苏科学技术出版社,2006.2

[2]曾宗福主编.机械设计基础学习与实验指导书[M].南京:江苏科学技术出版社,2006.2

[3]曲中谦主编.机械设计基础[M].南京:江苏科学技术出版社,1991.1

嵌入式原理与应用-课程设计目的 篇4

(08级电气自动化01班与02班)

1.课程设计题目:

1)设计一个LED灯指示控制直流电机控制装置

使用4个LED灯指示,包括直流电机的低速转动与停转,高速转动与停转。

2)设计一个LED灯指示控制步进制电机控制装置

使用4个LED灯指示,单(单相绕组通电)四拍(A-B-C-D-A。。)步进制电机的顺时针转动与停转,逆时针转动与停转。

3)设计一个红绿LED灯指示控制人行道过马路装置

使用7个或14个LED灯做一位或两位7段数码管管倒计时控制红绿黄灯亮,实现对人行道和车行道的控制;或用多个LED和蜂鸣器在另一个定时器的指示下控制红绿黄灯亮,实现对人行道和车行道的控制。

2.课程设计目的:

1)理解与掌握嵌入式袁智勇教材5.4节I/O端口。2)理解嵌入式袁智勇教材6.1节中断概述。

3)理解与掌握嵌入式袁智勇教材6.3节定时器工作原理。

4)掌握与使用周立功教程4.2节GPIO,掌握自动化流程控制的通断控制LED灯的控制编程与硬件实现。

5)掌握与使用周立功教程4.5节定时器0与定时器1,准确的使用定时器0与定时器1进行自动化流程控制直流电机的控制编程与硬件实现;步进制电机的控制编程与硬件实现;及7段数码管倒计时指示交通灯的编程与硬件实现。

6)根据上述理论与资源和嵌入式指导书2440实验182页-188页,写出该课程设计报告。

3.课程设计主要内容:

1)每两至三人一组根据该组所选的题目,可选1-2个题目,绘出该课程设计电路图和列出使用器件明细表;领取明细表器件与焊接工具。完成该电路图的焊接。

2)每组每人根据所选的题目编写该课题程序,调试正确后,烧写到LPCARM2103模块中去;实现该课程设计。

3)使用A4纸每人结合本课程设计目的和课程设计主要内容,撰写一份设计《嵌入式原理与应用课程设计报告》;并包含课题原理论述,实现电路与编程论述,电路图,器件明细表,实现程序,调试烧写过程,课程设计检验测试与实现,展望联想与总结。

4.课程设计资料:

1)《嵌入式系统原理与应用技术》北京航空航天大学出版社教材 袁智勇著 2)《EasyARM2103教材》广州周立功单片机发展有限公司编 3)直流电机dynamo-1 程序和步进制电机motor-0程序 作者指导教师刘敦放

5.课程设计提交时间:

课程设计报告和课程设计演示和设计实用工具、LPCARM2103模块及仿真器一起在2011年12月15日以前一起交给刘敦放老师。

6.课程设计报告撰写要求

1)报告格式

封面

课程设计报告

题目: 专业班级: 姓名: 指导教师: 日期: 目录 正文

设计任务与要求 设计依据原则

硬件系统设计(设计电路图和列出使用器件明细表)

软件系统设计(实现程序,调试烧写过程,课程设计检验测试与实现)

心得体会、收获,意见与建议

展望联想与总结

参考文献

按“作者,书名,出版社,出版时间,引用教材,引用程序”格式逐一列出

附录

如:图纸(电路图)及完整程序

2)报告要求

用word排版,电路图绘制图纸,表格、插图均需编号。注明页次,装订成册(纸质版)。

3)提交资料:课程设计报告纸质版 1份。

7.嵌入式原理与应用课程设计成绩评定方法:

课程设计报告成绩60%,设计硬件15%,课程设计演示15%,考勤10%。

嵌入式原理与应用课程设计指导教师

刘敦放

嵌入式课程设计指导书 篇5

课程设计指导书

设计时间:2周执笔人:王小江

学 分 数:2.0 编写日期:2004年10月

一、课程设计的目的信息系统分析与设计课程设计作为独立的教学环节,是信息管理专业集中实践性环节系列之一,是学习完《信息系统分析与设计》课程后进行的一次全面的综合练习。其目的在于:

1、进一步巩固和加深学生所学的专业理论知识,加深对信息系统基础理论和基本知识的理解;

2、初步掌握使用信息系统分析、设计的基本内容和方法,培养学生独立分析和解决实际管理问题的能力;

二、课程设计的一般步骤

课程设计大体分五个阶段:

1)选题与搜集资料:选择课题,进行系统调查,搜集资料。

2)系统概述:介绍所选题目的背景及范围,预计将完成哪些主要功能等。

3)分析与设计:根据搜集的资料,进行功能与数据分析,并进行数据库、系统功能等设计。

4)程序设计:运用掌握的语言,编写程序,实现所设计的模块功能。

5)系统调试:自行调试程序,测试程序,并记录测试情况。

三、课程设计的内容与要求

本课程设计重视书面材料的撰写(信息系统前期的系统调查,系统分析,系统设计),要求最后采用相应的程序开发工具(例如VB、PowerBuilder、Delphi、ASP等)进行信息系统的开发实施。

1、根据课程设计时间选择适当规模大小的设计课题。可以从参考题目或采用生产实习的调研内容作为课程设计选题。

2、根据合理的进度安排,按照系统开发的流程及方法,踏实地开展课程设计活动。

3、课程设计过程中,根据选题的具体需求,在开发各环节中撰写相关的技术文档,最后要求提交比较详细的课程设计报告,内容应包括:系统概述、系统分析、系统设计、系统实施等部分。

四、内容格式要求

1、课程设计报告要求用16k纸排版,单面打印,并装订成册,内容包括:

1)封面(包括题目、院系、专业班级、学生学号、学生姓名、指导教师姓名、职称、起止时间等)

2)目录

3)正文(系统概述、系统分析部分、系统设计部分等)

①系统概述(现状分析,系统目标等)

②系统分析部分(必需)

需求分析

业务流程图(重点)

数据流程图(重点)

数据词典

③系统设计部分(必需)

模块结构设计(HIPO图)

输出设计(主要指打印输出界面设计)

存储文件格式设计(数据库结构设计)

输入设计(主要指数据录入界面设计)

代码设计(职工证号和部门代号等)

④系统实施等

4)参考文献

2、课程设计正文参考字数:5000字。

3、目录格式

①标题“目录”(三号、黑体、居中)

②章标题(四号字、黑体、居左)

③节标题(小四号字、宋体)

④页码(小四号字、宋体、居右)

4、正文格式

①页边距:上2.5cm,下2.5cm,左2.5cm,右2cm,页眉1.5cm,页脚

1.75cm,左侧装订;

②字体:章标题,四号字、黑体、居左;节标题,小四号字、宋体;正文文字,小四号字、宋体;

③行距:1.5倍行距;

④页码:底部居中,五号;

5、参考文献格式

①标题:“参考文献”,小四,黑体,居中。

②示例:(五号宋体)

期刊类:[序号]作者1,作者2,„„作者n.文章名.期刊名(版本).出版年,卷次(期次):页次.图书类:[序号]作者1,作者2,„„作者n.书名.版本.出版地:出版社,出版年:页次.五、考核方式与成绩评定

课程设计报告作为考核的内容,成绩计分按优、良、中、及格和不及格5级评定。

六、参考题目

题目1:商城管理系统

1.基本数据管理

2.商品类别数据维护

3.商品基本数据维护

4.供应商数据维护

题目2:学生成绩查询系统设计

1.各代课老师能够根据权限,把学生成绩录入教学管理科的数据库中。

2.各学院成绩办公室同样能够把学生成绩上传到教务处教学管理科,或把学生成绩下载到学院成绩办公室自己的数据库服务器。

3.学院网站发布学生各科成绩。

4.学生成绩查询与打印报表。(其中包括按年级查询、班级查询、课程名查询、代课老师名查询、学号查询及相应的报表打印)

题目3:图书借阅管理系统设计

1.书目查询设计

2.用户借阅信息查询

3.过期书目汇总

4.预定书目通知设计

题目4:机房上机管理系统设计

1.管理员及用户登陆设计

2.计算机状态查询设计

3.上机费用计价设计

4.费用汇总设计

题目5:车票预定系统设计

1.车票、车次信息查询设计

2.客户基本信息输入设计

3.车票订购设计

4.退票功能设计

题目5:酒店客房管理系统设计

1.客房状态信息查询设计

2.客户基本信息输入设计

3.费用结算设计

题目6:旅游在线报名站点设计

1.旅游信息查询设计

2.客户基本信息输入设计

3.旅游报名汇总设计

4.旅游费用计算设计

题目7:人才招聘系统设计

1.企业人才信息发布设计

2.人才需求信息查询设计

3.个人信息发布设计

4.企业与人才交流设计

题目8:教学辅助系统的设计与实现

1.用户管理

2.作业管理

3.习题与教程文章管理

4.网上答疑

题目9:留言簿系统设计

1.用户登陆设计

2.用户基本信息输入设计

3.留言发布设计

4.留言查询设计

5.留言管理设计

题目10:毕业设计管理系统

1.毕业设计成绩网上评定设计

2.毕业设计论文管理设计

3.毕业设计成绩汇总及打印

4.成绩查询设计

题目11:奖学金评定系统设计

1.奖学金评定信息查询

2.根据奖学金评定办法,自动生成(班级、专业)名次表。

3.用户可按多种方式查询成绩及名次

4.奖学金发放汇总

题目12:实验室设备管理系统

1.设备信息的添加、删除、修改

2.设备按多种方式查询和统计

3.设备报表输出

题目13:选课系统

1.根据课程开设的时间,动态实现被选课程科目。

2.用户网上对所选课程进行增加、修改和删除。

3.用户登陆设计,保证网络安全。

4.用户选课课程表生成设计

题目14:考试成绩查询系统

1.可查询学生的某学期,学年的单科成绩

2.查询学生不及格成绩

3.查询学生的所有成绩,并进行汇总统计

4.设定使用权限,不同的用户有不同的权限

题目15:学生选修课程管理系统

1. 学生入学登记。

2. 学生选修课程控制(如人数控制)。

3. 选修课程统计(成绩.课数等)。

4. 学生统计。

5.学生选修课程分析(什么课程选修人数比较多,什么课程教师开课多等)

题目16:人事管理系统

1.增加记录

2.修改、删除记录

3.考核、奖惩

4.人事信息查询

题目17:高校学生管理系统

1.可增加、删除记录

2.实现任意条件查询、打印功能

3.学生信息输入包括基本信息(家庭、联系、民族等)

4.实现每个学生计算成绩平均分(分学期、总学期)

题目18:学校教师工作量及课时计算系统

1.能够完成工作量和课时的输入

2.计算工作量和课时

3.能够查询某位教师的总课时、具体的分项课时

4.能够实现排序功能

5.报表输出

题目19:食堂管理系统

1.食堂用餐卡发售与注销,资金注入.2.食堂用餐登记,3.食堂用餐统计。

4.食堂用餐的人数,哪个食堂用餐人数最多,消费金额最高。

5.哪些菜最受欢迎等。

题目20:通用超市管理系统

1.顾客购买登记,计算顾客的购买总金额及收款金额与找出另钱

2.商品销售统计(含每日/月/年结帐功能)

3.商品进货登记

4.库存查询,提示是否进货

5.报表打印及标价签打印,包括商品号码,销售单价等

题目21:教材管理系统

1. 现有库存教材查询(书目、数量)

2.依据学生数确定,参照现有库存量,最终确定需要征购的教材数量

3.领书出库时自动提示相应班级报订的教材种类与数量

4.可分供书单位提供对帐单,能以班级或单个学生为帐户进行结算。

5.能记录并查询教师领用教材情况,便于同财务管理部门进行结算。

6.能按课程查询近年来教材选用情况;提供上报教育部的教材使用情况表。题目22:电脑组配网上报价系统

1.计算机硬件查询(价格、性能)

2.电脑配置自动生成总金额

3.用户自己选择配置,只需点击配件名称,自动生成总金额

4.用户可记住自己的自选配置单号进行查询、更改,会员用户可登陆查询自选配置单号

《铁路信号基础》课程设计指导书 篇6

指 导 书

[目录]

第一章信号平面布置图设计

第一节道岔、线路编号 第二节确定道岔的辙叉号数 第三节确定道岔的定位位置 第四节布置信号机并命名 第五节划分轨道电路并命名 第二章联锁表的编制

附图车站信号平面布置图

[指导书正文]

第一章信号平面布置图设计 第一节道岔、线路编号

为便于车站生产指挥作业的联系和对设备的维修管理,站内的线路和道岔均应统一编号,且同一车站或同—车场内的线路和道岔均不得有相同的编号。

(一)线路编号

线路编号规定正线用罗马数字,站线用阿拉伯数字。

1.单线铁路车站内的线路,由靠近站房的线路起向站房对侧依次顺序编号;位于站房左、右或后方的线路,在站房前的线路编完后,再由正线方向起,向远离正线顺序编号。

2.双线铁路车站内的线路,从正线起按列车运行方向分别向外顺序编号,上行编双数,下行编单数。

双线铁路横列式区段站的线路,不适宜按列车运行方向分别编号,可比照单线铁路车站的线路编号方法编号。

3.尽头式车站,站房位于线路—侧时,从靠近站房的线路起,向远离站房方向顺序编号。

站房位于线路终端时,面向终点方向由左侧线路起顺序向右编号。

4.大型车站当有数个车场时,应分别车场编号。车场靠站房时,从靠近站房线路起,向站房对侧顺序编号;车场远离站房时,顺公里标前进方向从左向右顺序编号;且在线路编号前冠以罗马数字表示车场。

(二)道岔编号

道岔编号方法:从车站两端用阿拉伯数字,由外向内,先主要进路,后次要进路

依次编号。上行列车到达端编为双数,下行列车到达端编为单数。同一渡线或梯线上的道岔应编连续单号或双号。

站内道岔一般以站房中心线划分上、下行区域,若站房远离车站中心时,以车站或车场中心线划分。

车站一端衔接两个及其以上方向,有上行又有下行时,应按主要方向编号。大型车站当有数个车场时,每一车场的道岔应单独编号,道岔号码使用三位数字,百位数字表示车场号码,十位和个位数表示道岔编号,如I场道岔编为101~199。—个车场的道岔数在100副及以上时,用千位数往下编千位数表示车场号码,如I场的第100副道岔,编为1100号。各车场以外的道岔编为1~99。

第二节确定道岔的辙叉号数

按《技规》第41条的规定进行,具体内容: 第41条 道岔辙叉号数应符合下列规定:

1.用于侧向通过列车,速度超过80km/h的单开道岔,不得小于30号; 2.用于侧向通过列车,速度超过50km/h的单开道岔,不得小于l8号; 3.用于侧向通过列车,速度不超过50km/h的单开道岔,不得小于l2号(非AT弹性可弯尖轨为45 km/h);

4.用于侧向接发停车旅客列车的单开道岔,不得小于12号;

5.用于侧向接发停车货物列车并位于正线的单开道岔,在中间站不得小于l2号,在其他车站不得小于9号;

6.其他线路的单开道岔,不得小于9号; 7.狭窄的站场采用交分道岔,不得小于9号,但尽量不用于正线,必须采用时,不得小于l2号;

8.峰下线路采用对称道岔,不得小于6号;采用三开道岔,不得小于7号;

9.段管线采用对称道岔,不得小于6号。

既有道岔的类型及辙叉号数不符合上述规定时,应按各该道岔的号数限制行车速度,但应有计划地进行改造。驼峰下线路现有6.5号对称道岔,允许保留。

第三节确定道岔的定位位置

按《铁路信号基础》P239相关内容进行。

第四节布置信号机并命名

按《铁路信号基础》P79相关内容进行

第五节划分轨道电路并命名

按《铁路信号基础》P115相关内容进行。

第二章编制联锁表

嵌入式课程设计指导书 篇7

为了这个培养目标,在进行课程体系设置时,主要是从三个方面考虑:一是电子技术知识,既有模电也有数电;二是计算机编程知识,即软件开发这一块,实现嵌入式程序的设计;三是计算机硬件这一块,能对单片机及一些控制芯片进行应用。其中编程知识的学习,包括第一学年的主干课程《C语言程序设计》,第二学年开设《面向对象编程技术》课程。在嵌入式专业人才培养方案中,并没有限定面向对象编程课程具体讲授哪一种面向对象编程语言,在教学内容上,有这样几种常用的语言是可以选择的:Java语言,这是一种典型的面向对象编程语言,现在应用也比较广泛;再就是C#语言,与C语言有一定的衔接,同样也是面向对象编程,应用也比较多。这两种语言语法简洁、实用,易学好懂,学生容易产生兴趣,教学效果较好。另外一个选择是C++语言。

那么,在这3种语言中,该以哪种语言作为嵌入式专业学生学习面向对象程序设计的样板呢?不妨从如下几个方面作一个比较:

1 与C语言的关系

嵌入式系统编程不同于一般形式的软件编程,它是建立在特定的硬件平台上,其编程语言应具备较强的硬件直接操作能力。当然,汇编语言具备这样的特质。但是,由于汇编语言开发的复杂性,它并不是嵌入式系统开发的一般选择。与之相比,C语言—一种“高级的低级语言”,则成为嵌入式系统开发的最佳选择。

C++和C#,以及Java这3种语言都是面向对象(OOP)的,都使用了类似C语言风格的语法,但C++并不是纯面向对象的,它保留了很多模块化的东西。C++与C的关系更紧密一些。它是基于C发展起来的程序设计语言,是C的一个面向对象的解释。C++为C扩充了大规模工程应用,复杂的系统结构和掌控方法,对C有着很好的兼容性,而C#和Java对C语言没有任何兼容性。

2 语法

Java和C#相对于C++的不同最大的有两点:第一点是他们运行在一个虚拟环境之中,第二点就是语法简单。前二者非常相似,都抛弃了最灵活,同时也是应用起来最复杂的指针问题,不再深入地址单元去执行相关操作,对内存的管理完全自动化,这样虽然带来了程序的稳定性和安全性,但是在某种程序上丢失了效率。

除了语法的相对简单,Java还提供了丰富的类库帮助你解决应用问题———因为它是面向应用的语言,包括多线程标准、JDBC标准、GUI标准,而这些标准在C++中是不存在的。C#没有宏和模板,不允许多重继承,而这些都是C++的重要应用方面。C++语言的强大功能和灵活性是建立在其复杂的语法之上的,因此对于初学者来说,不象C#、Java语言那样容易上手。

3 应用领域

目前,在Web开发上,C++没有多大的市场。在企业级应用软件的开发上,以Java、C#居多,正是这两种语言的简洁实用,使软件的开发周期大大缩短,但这个领域C++仍占有一席之地。在系统级的开发上,C/C++应用居多。这3种语言各有特色。总的来说,C++的应用集中在如下主要领域:

高级系统程序设计:包括操作系统核心、网络管理系统、编译系统、文字排版系统、图像和声音的编排系统、通讯系统、数据库系统等等。在网络软件的设计方面,C++拥有很多成熟的用于网络通信的库,其中最具有代表性的是跨平台的、重量级的ACE库,该库可以说是C++语言最重要的成果之一。操作系统编程中,C语言是主要使用的编程语言,但C++凭借其对C的兼容性,以及面向对象的性质在该领域也崭露头角。

嵌入式系统:近5年来,C语言在嵌入式软件开发中使用最多,同时,C++在嵌入式软件设计领域维持27%左右的占有率。

视频游戏:C++的效率是一个很重要的原因。

在科学计算领域,FORTRAN是使用最多的语言之一。但是近年来,C++凭借先进的数值计算库、泛型编程等优势在这一领域也应用颇多,包括仿真、实时数据获取和数据库访问等等。

另外,在设备驱动程序、分布式应用、移动(手持)设备等领域,C++语言也占据着比较重要的地位。

就Java和C#二者单独来看,C#更像是微软公司和SUN公司进行商业斗争的产物。历史上,微软公司是支持过Java语言的,代表性的产品有Visual J++和WFC。后来因为众所周知的原因,微软公司推出了C#,其目的很明确,就是和Java竞争。

实际上C#和Java在特性上也非常类似(不仅仅是语法)。二者都是为了更加方便地解决应用问题,在GUI、数据库访问、网络通信、多线程等和实际应用密切相关的点上都有成熟的解决方案。C++更多地靠第三方的库来实现这些功能,因为C++是一个国际标准,要在C++中加入这些语言之外的、面向应用的特性还需要很长一段路要走。而C#、Java的拥有者是商业化公司,各种动作自然要敏捷得多。

4 结论

C++可以说是全世界应用最广泛的语言,主流语言中功能最强大,开发平台多,同时它在嵌入式系统开发的作用也是不容忽视的。对于嵌入式专业的学生来说,C++是他们学习面向对象编程课程的最佳选择。

摘要:目前高职高专院校的计算机嵌入式专业,在开设《面向对象程序设计》课程时,选择何种具有面向对象编程特点,同时切合嵌入式专业的编程语言作为教学内容,是设置该课程需要考虑的问题。在对C#、Java以及C++3种面向对象编程的语言进行比较后,选择C++语言最合适。

关键词:面向对象程序设计,Java,C#,C++

参考文献

[1]强锋科技,朱洪波.Visual C++完全自学宝典[M].北京:清华大学出版社,2008.

[2]王斌.常用嵌入式高级编程语言比较[J].蒙自师范高等专科学校学报,2002,4(6).

嵌入式课程设计指导书 篇8

技工学校学生的来源主要是初中毕业生,其中大部分是中考落选生,近几年来,经过对学生入校后的简单调查发现,有约60%左右学生表示上技校是“无奈”的选择;20%左右的学生表示是父母让他们上技校;只有20%左右的学生表示对某专业感兴趣而填报技校。因此,有大部分学生由于原来的文化基础较差,加之学习目的性不够明确,在学习过程中,对理论课“厌学”,只有在上技能课(实习)时才表现出较高的学习兴趣。为了充分调动学生的学习热情,引导学生在专业技能方面得到有效提高,在课程设计实习这一环节要做到一下几点。

1.认真组织,选好课题

电子技术专业课程的理论性、技术性、应用性都很强。但技工学校的学生大部分仅有初中文化基础,起点低,学习主动性差,学习效率低;在一个班级的学生中,由于他们学习层次的不同,在实施教学的过程中,指导教师要充分了解学生,善于发现各个学生的优点与长处,统筹兼顾,因材施教,充分发挥其在教学中的主体作用。因此,认真组织,选好课题是实习指导教学的基础工作。具体做法是:

(1)明确实习任务,提供参考资料,推荐参考书籍,引导学生确定选题思路和选题范围。要求以实习小组为单位确定选题,并尽可能采用EDA辅助设计。

(2)学生分组,根据实习学生情况,每3~5人组成一个小组,结合学生平时表现,将理论成绩与技能成绩(动手能力)等因素进行综合考虑、合理搭配,以其达到在实习中互相学习、相互促进的作用。同时每个小组指定一名学习能力、组织能力和责任心强的同学任小组长,负责协调本小组成员的分工以及与实习指导教师的沟通联系,以减轻老师负担,提高实习教学的工作效率。

(3)提供备选课题,在课题选择方面应考虑:典型性、实用性、综合性、趣味性;难易适中;考虑所需器材、器件的许可。当然,有些实习小组可能会有自选课题,只要符合选题要求,这种做法应当给予鼓励和支持。

2.合理安排,正确指导

这里所说的安排主要是实习时间及实习任务的安排。这一工作是整个实习过程成败的关键。通常情况下,一个大型的课程实习都只有4周左右时间,它有别于进厂的生产实习。在各实习小组的课题选定之后,要求学生充分熟悉课题的主要技术指标(电路功能),拟定方案组成逻辑方框图,画出电原理图及工作原理简述,各单级电路元器件的参数选取,完成元器件的型号规格清单,写出电路调试步骤说明(调试工艺)及所需测试仪器设备。另一方面教师综合各小组的课题,对小组的计算说明书或参数选取说明给予认真验证、审阅并准备充分的元器件及其他辅助器材,督促落实各小组成员的合理分工,做到人人有任务,整体上要求计划周密,工作扎实、紧凑、分工合理;再用1~2周时间让各小组进行装联、调试和检修。在装联之前各小组依据经教师审阅过的元器件清单领取元器件和其他辅助材料,并要求学生利用仪表、仪器等检测工具对元器件进行质量判别,当元器件都符合质量要求后再按电路进行装联,装联的过程必须满足工艺要求,装联完成后,要求学生必须进行自检、互检。各小组装联的电路都必须在教师确认装接无误的情况下,才能通电调试,以确保实习教学安全。

电路调试是目前技校学生的薄弱环节,他们对电路功能的理解还比较抽象,在调试过程中,会出现许多问题,这个阶段老师应加强指导,但绝对防止包办代替,在调试中遇到问题时引导学生自已去观察现象、分析问题,并找出解决问题的办法,只有这样,才能使学生的智力、能力得到一定的发挥和提高。

二、教学互动与总结提高

对于三年制电子技术专业的学生,课程设计实习一般安排在第三学期进行,通过第一、二学期的基础性基本技能实习后,学生对本专业的所学所用有了比较清楚的认识,但如何将专业知识与实际应用相结合,却是学生比较迫切探知的,课程设计实习正是要让学生将所学知识进行综合运用的引导,也是对今后创新应用的启蒙。

1.教学互动,巩固知识

在实习中,学生经过选题、参数设计计算、电路装联调试后,对自身在理论知识方面存在的不足和装调的技能、技巧方面的欠缺都会有比较深刻的认识和感受,老师要善于抓住机会,及时组织学生进行实习总结。这个环节是一个教学互动,巩固知识的环节,时间也要有合理的安排,这个阶段的内容最丰富且最实际,也容易引起大家的共鸣,对提高教学效果具有重要意义。具体做法是:

(1)布置学生完成实习报告;

(2)组织各实习小组相互交流经验,展示、演示自已的实习成果;

(3)分析各自在装调中出现过的问题及解决办法;

(4)各小组选出代表对本小组的课题进行说明,有哪些知识得到巩固,哪些电路得到应用;

(5)老师及时进行总结点评,并给出建议;

(6)对各实习小组考核和成绩评定。

通过这些过程,实现教学互动,使教师的主导和学生的主体作用得到充分体现。

2.积累经验,总结提高

课程设计实习虽然只有4周左右时间,实习任务紧,但每一届学生在这一环节的实习都有一些新的内容、课题或成果,这些新课题在训练学生能力的同时,对教师教学水平提高和经验积累也是一份很好的材料。在安装调试过程中,学生可以由基础实践向学科专业技能过渡提升,为后续参加生产实习积累经验,对专业知识的深入学习和探索创新提高自主性。多年来,每次从学生的实习总结报告中可以看出,他们确实得到了一定的收获,比如:了解和感受了产品的设计和生产的工艺流程的常识。;基本掌握正确选择和使用测试仪器、仪表的能力;积累了一些观察现象、分析问题、查找和排除故障的经验;加强了小组成员间互相学习、取长补短、协同配合完成任务的团队精神的锻炼。学生的这些收获其实也正是实习指导教学所要达到的目的,他们的进步也正是技校老师期望的结果。

三、改革创新思考

技校电子技术专业在20世纪80年代,其教学方向是以家电维修为目的开设专业课程。学生毕业后,学有所学,用有所用,就业前景广阔。90年代后期,随着人们对家用电器的使用在观念上的改变,出现家电维修人员过剩,加上生源质量下降,学生从学校出来真正有维修技术的人员百分之二十不到,所以出现学生学有所学,但不能从事本专业就业的尴尬局面。另外,电子产品生产企业专业分工的细化,使大多数技校电子专业毕业生到企业就业所从事的工作大多是一线的生产工人(流水线上的工人),这些工作劳动时间长,待遇低,没有多大技术含量,学生就业后频繁跳槽,对未来的发展很茫然,致使近几年来选择电子技术专业的学生人数日渐缩减现象。

随着时代的进步,电子技术的应用已更加广泛,作为技工学校电子技术专业的教师,如何在专业实习过程中,引入更多与实际应用相结合的课题,拓展知识面,增加创新能力培养,让学生真正成为学有所学,用有所用,能学会用的新时期高素质人才。笔者认为,除了教师要提高自已的学术水平、教学水平、加大教学改革创新力度外,还需要政府各部门、社会各方面共同努力。只有这样,技工教育才能真正得到发展,到那时,才是职业教育进入良性循环发展的时期。

上一篇:拼搏奋斗的励志名言下一篇:学校校本课程开设规划