文档库 最新最全的文档下载
当前位置:文档库 › 定时闹钟课程设计大作业

定时闹钟课程设计大作业

定时闹钟课程设计大作业
定时闹钟课程设计大作业

微型计算机控制技术大作业

设计题目:定时闹钟课程设计

院系:计算机科学与信息工程学院

学生姓名:曹紫莹

学号: 2

专业班级:计算机科学与技术(嵌入式方向)11-1

指导教师:赵凯

2014.06.07

目录

1、课程内容要求及目的 0

1.1设计题目 0

1.2 设计要求 0

1.3能显示时时-分分-秒秒。 0

1.4能够设定定时时间、修改定时时间。 0

2、设计实现方案 (1)

2.1原理 (1)

2.2 原理及工作过程说明 (1)

3、硬件设计 (2)

3.1 主控芯片AT89C51的设计 (2)

3.2 时钟电路部分设计 (3)

3.3 LCD显示电路部分 (4)

4、软件设计 (5)

4.1 软件设计概述 (5)

4.2 主函数的设计 (5)

4.3.1 程序初始化 (6)

4.3.2 闹钟的实现 (7)

4.3.3 显示程序 (7)

5、实验总结及心得体会 (22)

6、参考文献 (23)

基于单片机的定时闹钟

1、课程内容要求及目的

1.1设计题目

基于单片机的定时闹钟

1.2 设计要求

1、能显示时时-分分-秒秒。

2、能够设定定时时间、修改定时时间。

3、定时时间到能发出报警声或者启动继电器,从而控制电器的启停。

1.3LCD电子闹钟的特点和功能介绍

时钟是将小时、分钟、秒钟显示于人的肉眼的计时装置。而单片机模块中最常见的正是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。而LCD电子定时闹钟是以单片机为基础的数字电路实现对时、分、秒的数字显示的数字计时装置,它的计时周期为24小时,另外应有校时功能和一些显示日期、闹钟等附加功能。一个基本的数字钟电路主要由译码显示器、“时”,“分”,“秒”,“星期”计数器、校时电路、报时电路和振荡器组成。目前电子钟广泛用于各种私人和公众场合,成为我们生活、工作和学习中不可缺少的好帮手。

由于时钟的实用性和在人们生活中的重要性,所以尝试设计以单片机为核心的数字时钟是很有意义的。钟表原先的报时功能已经原不能满足人们日益增长的

要求,现代的电子时钟多带有类似自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、通断动力设备、甚至各种定时电气的自动启用等功能,本设计中LCD电子时钟采用LCD显示时间和日期年月,直观实用,而且可以方便的校调,附带的万年历和定时功能也是很方便和实用的。

2、设计实现方案

2.1原理

本LCD定时闹钟,是以单片机及外围接口电路为核心硬件,辅以其他外围硬件电路,用汇编语言设计的程序来实现的。根据C51单片机的外围接口特点扩展相应的硬件电路,然后根据单片机的指令设计出数字钟相应的软件,再利用软件执行一定的程序来实现数字钟的功能。由于采用集成芯片性的单片机来制作电子钟,这样设计制作简单而且功能多、精确度高,也可方便扩充其他功能,实现也十分简单。本设计是利用AT89C51单片机为主控芯片,由LCD、晶振、电阻、电容、发光二极管、开关、喇叭等元件组成硬件电路,通过编写软件程序来实现和控制的数字定时闹钟。如图2.1所示。

图2.1

2.2 原理及工作过程说明

使用AT89C51单片机结合字符型LCD显示器设计一个简易的定时闹钟LCD时钟。

定时闹钟的基本功能如下:

●显示格式为“时时:分分”。

●由LED闪动来做秒计数表示。

●一旦时间到则发出声响,同时继电器启动,可以扩充控制家电的开启

和关闭。

程序执行后工作指示灯LED闪动,表示程序开始执行,LCD显示“00:00”,按下操作键K1~K4动作如下:

(1) K1—设置现在的时间。

(2) K2—显示闹钟设置的时间。

(3) K3—设置闹铃的时间。

(4) K4—闹铃ON/OFF的状态设置,设置为ON时连续三次发出“哗”的一声,设置为OFF发出“哗”的一声。

设置当前时间或闹铃时间如下。

(1) K1—时调整。

(2) K2—分调整。

(3) K3—设置完成。

(4) K4—闹铃时间到时,发出一阵声响,按下本键可以停止声响。

本题目的难点在于4个按键每个都具有两个功能。

3、硬件设计

3.1 主控芯片AT89C51的设计

在本LCD电子闹钟设计中就是采用利用我们熟悉的AT89C51单片机为主控芯片。AT89C51单片机由微处理器,存储器,I/O口以及特殊功能寄存器SFR等部分构成。其存储器在物理上设计成程序存储器和数据存储器两个独立的空间,片内程序存储器的容量为4KB,片内数据存储器为128个字节。89C51单片机有4个8位的并行I/O口:P0口,P1口,P2口和P3口。各个接口均由接口锁存器,输出驱动器,和输入缓冲器组成。P1口是唯一的单功能口,仅能用作通用的数据输入/输出口。P3口是双功能口除了具有数据输入/输出功能外,每条接口还具有不同的第二功能,如P3.0是串行输入口线,P3.1口是串行输出口线。在需要外部程序存储器和数据存储器扩展时,P0可作为分时复用的低8位地址/数据

总线,P2口可作为高8位的地址总线。P3口也可作为AT89C51的一些特殊功能口,同时为闪烁编程和编程校验接收一些控制信号.

3.2 时钟电路部分设计

AT89C51系列的单片机的时钟方式分为内部方式和外部方式。内部方式就是在单片机的XTAL1和XTAL2的两引脚外接晶振,就够成了自激振荡器在单片机内部产生时钟脉冲信号。外部时钟方式是把外部已经有的时钟信号引入到单片机内部。时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间。

本LCD电子闹钟设计是采用内部时钟方式,用一个12MHz晶振和两个30Pf 瓷片电容组成,为单片机提供标准时钟,其中两个瓷片电容起微调作用.其电路图见图3.1。

图3.1

而之所以采用高性能的振荡电路,因为:

1.单片机电子钟的计时脉冲基准是由外部晶振的频率经过12分频后提供,采用内部的定时/计数器来实现计时功能。所以,外接晶振频率精确度直接影响电子钟计时的准确性。

2.单片机电子钟利用内部定时/计数器溢出产生中断(12M晶振一般为50ms)再乘以相应的倍率来实现秒、分、时的转换。大家都知道从定时/计数器产生中断请求到响应中断需要3-8个机器周期,定时中断子程序中的数据入栈

和重装定时/计数器的初值还需要占用数个机器周期,还有从中断入口转到中断子程序也要占用一定的机器周期。

3.3 LCD显示电路部分

为了获得更好的效果本设计并没有采用常见的LED,而是采用了型号为1602的 LCD。LCD有LED数码显示更好的更的直观效果,也更加经久耐用。液晶显示模块体积小功耗低、显示内容丰富,现在字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件之一了。本LCD是2行16列液晶可显示2行16列英文字符,有8位数据总线D0-D7,RS,R/W,EN三个控制端口(共14线),工作电压为5V。没背光,和常用的1602B功能和引脚一样(除了调背光的二个线脚). 该模块也可只用

D4-D7作为四位数据分两次传送。这样的话可以节省MCU的I/O口资源。

引脚说明,见表3.1。

VDD:电源正极,4.5-5.5V,通常使用5V电压;

VL:LCD对比度调节端,电压调节范围为0-5V。接正电源时对比度最弱,接地电源时对比度最高,但对比度过高时会产生“鬼影”,因此通常使用一个10K 的电位器来调整对比度或者直接串接一个电阻到地;

RS:MCU写入数据或者指令选择端。MCU要写入指令时,使RS为低电平;MCU要写入数据时,使RS为高电平;

R/W:读写控制端。R/W为高电平时,读取数据;R/W为低电平时,写入数据;

E:LCD模块使能信号控制端。写数据时,需要下降沿触发模块。

D0-D7:8位数据总线,三态双向。如果MCU的I/O口资源紧张的话,该模块也可以只使用4位数据线D4-D7接口传送数据。本充电器就是采用4位数据传送方式;

BLA: LED背光正极。需要背光时,BLA串接一个限流电阻接VDD,BLK 接地,实测该模块的背光电流为50mA左右;

BLK: LED背光地端.

表3.1 LCD显示屏引脚说明

4、软件设计

4.1 软件设计概述

这里用汇编的单片机程序构成了本LCD电子闹钟的软件系统。该程序实现时间及定时(时间以0点0分0秒为基准计算,闹铃定时以0时0分为基准计算)的显示,有外中断0和五个开关实现校时,闹钟功能。其中程序的晶振频率为12MHz,最小计时单位为1/20秒。

主芯片p0.1-p0.7输出数据到LCD数据总线,p3.0-2.2输出LCD控制信号,P2.1输出声音信号,.P1.0-P1.3输入外部控制信号,整个软件系统也是根据这个关系连接成一个完整的系统。

4.2 主函数的设计

本LCD电子闹钟的的主程序流程图如图4.1所示:

图4.1

4.3.1 程序初始化

在系统开始上电时,需要.首先初始化液晶:

void TimeInit()

{

write_com(0x01); //初始化1602液晶

write_com(0x80); //设置现实初始坐标

for(num=0;num<9;num++) //显示年月日

{

write_date(table[num]);

delay(5);

}

write_com(0x80+0x40+6); //写出时间显示部分的两个冒号 write_date(':');

delay(5);

write_com(0x80+0x40+9);

write_date(':');

delay(5);

write_sfm(4,shi); //分别送去液晶显示

write_com(0x80+0x40+4);

write_sfm(7,fen);

write_com(0x80+0x40+7);

write_sfm(10,miao);

write_com(0x80+0x40+10)

4.3.2 闹钟的实现

闹钟功能的实现涉及到两个方面:闹铃时间设定和是否闹铃判别与相应处理。闹铃时间设定模块的设计可参照时间设定模块,这里着重阐述闹铃判别与处理模块的设计问题。闹铃判别与.闹铃处理的关键在于判别何时要进行闹铃。当时十位、时个位、分十位、分个位中任一位发生改变(进位)时,就必须进行闹铃判别。程序设计思想如图4.2。

图4.2

4.3.3 显示程序

显示程序包括时钟显示和定时显示程序。具体程序见附录。液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是

告诉模块在哪里显示字符,表4.1是TC1602EL液晶模块的内部显示地址。

表4.1

附录1 定时闹钟仿真电路图

附录2 定时闹钟的控制程序代码

#include

#define uint unsigned int

#define uchar unsigned char

sbit key1=P1^0;

sbit key2=P1^1;

sbit key3=P1^2;

sbit key4=P1^3;

sbit lcden=P2^2;

sbit lcdrs=P2^0;

sbit lcdrw=P2^1;

sbit jdq=P2^3;

sbit led=P2^4;

sbit sound=P2^5;

int

a,b,i,min,hour,minge,minshi,hourge,hourshi,amin,ahour,aminge,aminshi, ahourge,ahourshi,sec,secshi,secge;

//unsigned char code x[]={0xFF,0xC7,0x83,0x01,0x00,0x00,0x00,0x01,0x03,0x07,0x0F,0x1F,0x3F ,0x7F,0xFF,0xFF};

//unsigned char code z[]={0xFF,0xE3,0xC1,0x80,0x00,0x00,0x00,0x80,0xC0,0xE0,0xF0,0xF8,0xFC ,0x7F,0xFF,0xFF};

uchar code table1[]={'0','1','2','3','4','5','6','7','8','9'};

uchar code table2[]="Time:00:00:00 " ;

uchar code Alarm_1[]="Alarm:00:00 ";

uchar code nul[]=" ";

uchar num1,num2;

bit flag=0;

void delay(unsigned int xms) //延时程序

{

uint i,j;

for(i=xms;i>0;i--)

for(j=124;j>0;j--);

}

void write_com(uchar com) //LCD命令控制,写指令函数

{

delay(5) ;

lcdrs=0;

P0=com;

delay(5);

lcden=1;

delay(5);

lcden=0;

}

void write_data(uchar date) //LCD数据控制,写数据函数{

delay(5);

lcdrs=1;

P0=date;

delay(5);

lcden=1;

delay(5);

lcden=0;

}

void time() //设置时间函数

{

while(1)

{

if(key1==0)

{

delay(10);

if(key1==0)

{

if(hour==23) //"时"设置

hour=0;

else

hour++;

hourge=hour%10;

hourshi=hour/10;

write_com(0x0f);

delay(2);

write_com(0x80+6);

write_data(table1[hourge]); //"时"个位写入LCD第二行第6位

delay(5);

write_com(0x80+5);

delay(2);

write_data(table1[hourshi]); //"时"十位写入LCD第二行第5位

while(!key1);

//delay(1);

}

}

if(key2==0)

{

delay(10);

if(key2==0)

{

if(min==59) //"分"设置

min=0;

else

min++;

minge=min%10;

minshi=min/10;

write_com(0x0f);

write_com(0x80+9);

write_data(table1[minge]); //"分"个位写入LCD第二行第9位

delay(1);

write_com(0x80+8);

write_data(table1[minshi]); //"分"十位写入LCD第二行第8位

delay(1);

while(!key2);

}

}

if(key3==0)

{

delay(10);

if(key3==0)

{

write_com(0x0c); //整体显示,关光标,不闪烁

TR1=1; //定时计数器1启动

while(!key3);

break; //key3松开时,显示时间"时""分"位均已设置完毕

}

}

}

}

void alarm() //设置闹钟时间函数

{

while(1)

{

if(key1==0)

{

delay(10);

if(key1==0)

{

if(ahour==23) //闹钟"时"设置

ahour=0;

else

ahour++;

ahourge=ahour%10;

ahourshi=ahour/10;

write_com(0x0f);

//delay(2);

write_com(0x80+0x40+8);

write_data(':');

write_com(0x80+0x40+7);

write_data(table1[ahourge]);

delay(1);

write_com(0x80+0x40+6);

//delay(2);

write_data(table1[ahourshi]);

delay(1);

while(!key1);

}

}

if(key2==0) //闹钟"分"设置{

delay(10);

if(key2==0)

{

if(amin==59)

amin=0;

else

amin++;

aminge=amin%10;

aminshi=amin/10;

write_com(0x0f);

//delay(2);

write_com(0x80+0x40+10);

write_data(table1[aminge]);

delay(1);

write_com(0x80+0x40+9);

// delay(2);

write_data(table1[aminshi]);

delay(1);

while(!key2);

}

}

if(key3==0)

{ flag=~flag;

delay(10);

if(key3==0)

{

write_com(0x0c);

write_com(0x80+0x40);

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

write_data(nul[i]);

while(!key3);

break; //设置结束,此时LCD第二行无数据显示,只有第一行有时间显示

}

}

}

}

void keyscan() //键盘扫描

{

if(key1==0)

{

delay(10);

if(key1==0)

{

while(!key1); //key1键松开后执行下一行程序

time(); //调用time()函数,即时间设置}

}

else if(key2==0)

{

delay(10);

if(key2==0)

{

while(!key2)

{

ahourge=ahour%10;

ahourshi=ahour/10;

write_com(0x80+0x40+7);

write_data(table1[ahourge]);

delay(5);

write_com(0x80+0x40+6);

delay(2);

write_data(table1[ahourshi]);

aminge=amin%10;

aminshi=amin/10;

write_com(0x80+0x40+10);

write_data(table1[aminge]);

delay(5);

write_com(0x80+0x40+9);

delay(2);

write_data(table1[aminshi]);

write_com(0x80+0x40);

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

write_data(Alarm_1[i]); //显示闹钟设置的时间

}

write_com(0x80+0x40);

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

write_data(nul[i]); //key2松开后,LCD 只有第一行显示时间,闹钟设置时间不显示

}

}

else if(key3==0)

{

delay(10);

if(key3==0)

{

while(!key3); //表示闹钟时间设置退出 ahourge=ahour%10;

ahourshi=ahour/10;

write_com(0x80+0x40+7);

write_data(table1[ahourge]);

delay(5);

write_com(0x80+0x40+6);

delay(2);

write_data(table1[ahourshi]);

aminge=amin%10;

aminshi=amin/10;

write_com(0x80+0x40+10);

write_data(table1[aminge]);

delay(5);

write_com(0x80+0x40+9);

delay(2);

write_data(table1[aminshi]);

write_com(0x80+0x40);

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

write_data(Alarm_1[i]); //显示闹钟设置时间

alarm(); //调用闹钟时间设置函数

}

}

else if(key4==0) //以下进行闹铃开关的设置

delay(5);

if(key4==0)

{

while(!key4);

a=a+1;

if(a%2==0) //闹钟"on"

{

for(b=0;b<6;b++)

{

sound=~sound; //蜂鸣器发出3次"哗"的响声

delay(200);

数据库课程设计大作业

《数据库原理》课程设计报告 专业:测控技术与仪器 班级:测控071班 学号:200710402112 200710402115 姓名:杜文龙王京京 题目名称:物资管理系统 完成日期:2009年12月25日 昆明理工大学信息工程与自动化学院 2009年12月

物资管理系统 一、课程设计目的: 1.加深对讲授内容的理解 《数据库原理及应用》中有关数据库技术的基本理论、基本概念、设计与实现的方法和阶段性知识,光靠课堂讲授既枯燥无味又难以记住,但它们都很重要,要想熟练掌握,必须经过大量实践环节加深对它们的理解。 2.通过课程设计,掌握数据库系统设计与开发的方法及步骤 数据库是一门应用性很强的学科,开发一个数据库系统需要集理论、系统和应用三方面为一体,以理论为基础,以系统(DBMS)作支柱,以应用为目的,将三者紧密结合起来。同时结合实际需要开发一个真实的数据库系统,对于较大型的系统可多人一起完成,但无论如何都应完成数据库的需求分析、数据的分析与建模、数据库的建立、数据库的开发与运行等全部过程。在此过程中将所学的知识贯穿起来,达到能够纵观全局,分析、设计具有一定规模的题目要求,基本掌握数据库系统设计与开发的基本思路和方法并且做到对知识的全面掌握和运用。 3.培养学生自学以及主动解决问题的能力 通过本次设计,使同学能够主动查阅与数据库相关资料,掌握一些课堂上老师未曾教授的知识,从而达到培养学生自学以及主动解决问题的能力的目的。 二、课程设计基本要求: 1.课程设计应由学生本人独立完成,严禁抄袭。 2.掌握所学的基础理论知识,数据库的基本概念、基本原理、关系数据库的设 计理论、设计方法等。熟悉数据建模工具Visio与数据库管理系统SQLServer 软件的使用。 3.按时上机调试,认真完成课程设计。 4.认真编写课程设计报告。 三、需求分析 信息管理系统是集计算机技术、网络通讯技术为一体的信息系统工程,它能够使企业运行的数据更加准确、及时、全面、详实,同时对各种信息进一步地加工,使企业领导层对生产、经营的决策依据更充分,更具有合理性和库、科学性,并创建出更多的发展机会;另外也进一步加强企业的科学化、合理化、制度化、规范化管理,为企业的管理水平跨上新台阶,为企业持久、健康、稳定的发展打下基础。 这个物资管理系统是以客户机/服务器模式的信息管理模式的信息管理系统。它的开发过程不仅仅是一个编写应用程序的过程,而是以软件工程的思想为指导,从可行性研究开始,经过系统分析、系统设计、系统实施

定时闹钟设计 课程设计报告

定时闹钟设计 摘要: 本设计目的是利用单片机设计制作一个简易的定时闹铃时钟,可以放在宿舍或教室使用,在夜晚或黑暗的场合也可以使用。可以设置现在的时间以及闹铃的时间并且显示出来,若时间到则发出一阵声响。 本次设计的定时闹钟在硬件方面就采用了AT89C52芯片,用6位LED数码管进行显示。LED用P0口进行驱动,采用的是动态扫描显示,能够比较准确显示时时—分分—秒秒。通过五个功能按键可以实现对时间的修改、定时和闹铃终止,闹钟设置的时间到时蜂鸣器可以发出声响。在软件方面用C51编程。整个定时闹钟系统能完成时间的显示,调时和设置闹钟、停止响铃等功能,并经过系统仿真后得到了正确的结果。 关键词:定时闹钟;蜂鸣器;AT89C52;74HC245;

目录 第1章绪论 (1) 1.1设计目的 (1) 1.2设计要求和任务 (1) 1.2.1设计要求: (1) 1.2.2设计任务: (1) 1.3论文主要内容 (1) 第2章系统总体设计 (2) 2.1系统设计需求 (2) 2.2总体设计方案 (2) 2.3系统软件 (3) 2.4系统硬件 (3) 第3章系统硬件设计 (4) 3.1系统硬件模块及功能 (4) 3.2主控模块 (4) 3.2.1主芯片AT89C52 (4) 3.2.2时钟电路设计 (7) 3.2.3 74HC245芯片 (7) 3.3 LED显示模块 (9) 3.4 按键模块 (9) 3.5警报模块 (10) 第4章系统软件设计 (11) 4.1系统软件设计概述 (11) 4.2主程序设计 (11) 4.3单片机的中断系统 (11) 4.3.1中断源 (11) 4.3.2中断的优先级别 (12) 4.4主程序 (12) 第5章系统测试 (13) 5.1测试内容 (13) 5.2测试环境 (13) 5.3测试步骤 (13) 5.3.1测试环境的构建 (13) 5.3.2测试内容 (14) 5.4测试结果 (14)

数据库课程设计完整版

数据库课程设计完 整版

HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目:宿舍管理信息系统姓名: 学号: 专业:信息与计算科学指导教师:

20年 12月1日 目录 引言3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要5 1.4软件处理对象 6 1.5系统可行性分析6 1.6系统设计目标及意义7 1.7系统业务流程及具体功能 7

1.8.1数据流程图8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20参考文献 20 引言

学生宿舍管理系统对于一个学校来说是必不可少的组成部分。当前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强能够接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,而且具备修改功能,能够快速的查询学校所需的住宿信息。 面对当前学校发展的实际状况,我们经过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。

(完整版)大工16秋《道路勘测设计课程设计》大作业答案

网络教育学院《道路勘测设计课程设计》 题目:某公路施工图设计 学习中心: 专业: 年级: 学号: 学生: 指导教师:

学 号学 生: 指导教师: 乔 娜 1 设计交通量的计算 设计年限内交通量的平均年增长率为7%,路面竣工后第一年日交通量如下: 桑塔纳2000:2300辆; 江淮a16600:200辆; 黄海dd680:420辆; 北京bj30:200辆; Ep140:580辆; 东风sp9250:310辆。 设计交通量:d N =0N ×() 1 1n r -+ 式中:d N —远景设计年平均日交通量(辆/日); 0N —起始年平均交通量(辆/日); r —年平均增长率; n —远景设计年限。 代入数字计算: 解: 0N =2300+200+420+200+580+310=4010(辆/日) 假设远景设计年限为20年,则将上述的种种数字带入公式后计算: 设计交通量:d N =0N ×() 1 1n r -+ =4010×(1+0.07)19 =14502(辆/日)

2 平面设计 路线设计包括平面设计、纵断面设计和横断面设计三大部分。道路是一个三维空间体系,它的中线是一条空间曲线。中线在水平面上的投影称为路线的平面。沿着中线竖直的剖切,再展开就成为纵断面。中线各点的法向切面是横断面。道路的平面、纵断面和各个横断面是道路的几何组成。 道路的平面线形,受当地地形、地物等障碍的影响而发生转折时,在转折处需要设置曲线,为保证行车的舒顺与安全,在直线、圆曲线间或不同半径的两圆曲线之间要插入缓和曲线。因此,直线、圆曲线、缓和曲线是平面线形的主要组成因素。 直线是平面线形中的基本线形。在设计中过长和过短都不好,因此要加以限制。直线使用与地形平坦、视线目标无障碍处。直线有测设简单、前进方向明确、路线短截等特点,直线路段能提供较好的超车条件,但长直线容易使司机由于缺乏警觉产生疲劳而发生事故。 圆曲线也是平面线形中常用的线性。《公路路线设计规范》规定,各级公路不论大小均应设置圆曲线。平曲线的技术标准主要有:圆曲线半径,平曲线最小长度以及回头曲线技术指标等。 平曲线的半径确定是根据汽车行驶的横向稳定性而定: )(1272 i V R +=μ 式中:V-行车速度km/h ; μ-横向力系数; i -横向超高,我国公路对超高的规定。 缓和曲线通过曲率的逐渐变化,适应汽车转向操作的行驶轨迹及路线的顺畅,以构成美观及视觉协调的最佳线形;离心加速度的逐渐变化,不致产生侧向冲击;缓和超高最为超高变化的过渡段,以减小行车震荡。 平曲线要素: 切线增长值:q=2s L -2 3 240R L s 内移值: p=R L s 242-3 4 2384R L s

汽车修理管理系统 课程设计 数据库大作业(有源文件)

数据库大作业 《数据库原理与设计》课程设计汽车修理管理系统 学号: 姓名: 年级层次: 教学中心:

汽车修理管理系统 一. 概述 1.项目背景 在计算机不断发展的今天,计算机已经运用到各个领域,计算机的作用使由手工的操作到计算机的操作是一个大的飞跃,代替的复杂的容易出错的人工操作,节省了大量的时间,提高了正确性,提高了数据的可靠性。因此每个公司使用计算机建立自己的业务是迫在眉睫,汽车修理厂根据业务发展的需要,决定建立一个数据库管理系统,以代替单一的人工管理。这样使人工操作的管理方便,简单。 2.编写目的 编写的目的是使汽车修理厂由单一的人工管理到计算机管理的飞跃,使汽车修理厂的管理的效率得到很大的提高,使人工管理的出错的机会大大减少,实现数据的共享,便于查询自己的数据信息,使汽车修理厂的业务的流程时间大大减少,从而可以提高该汽车修理厂的竞争性,在社会有立足之地。 3.软件定义 该软件为第一版,既汽车修理管理系统1.0 版。 4.开发环境 数据库: SQL SERVER 2000 开发和编译环境: Visual C++6.0。 二.需求分析 1.通过分析得知,该修理厂共使用5种单据,4种账册和3种主要报表。 ⑴五种单据如表1所示: 表中D1由送修人填写。修理派工员据此开出修理单D2,分派给指定的修理工执行。如果在修理中需要更换零件,一律由修理工填写零件领用单D3向仓库领用。修理结束后,修理工将D2交回给派工员,然后转财务部门结账并开修车发票D5。D4在零件入库时由仓库管理员验收并且填写。图6显示了这些单据的格式内容。 编号名称填写人 D1 修车登记单送修人 D2 汽车修理单修理派工员和修理工 D3 零件领用单修理工 D4 零件入库单仓库管理员 D5 修车发票财务人员 表1 当前系统单据一览表

单片机课程设计 电子定时闹钟

学号:************ HEBEI UNITED UNIVERSITY 单片机课程设计说明书 设计题目:电子定时闹钟 学生姓名: 专业班级: 学院: 指导教师: **年**月**日

成绩评定表

摘要 本设计是采用单片机技术的电子定时闹钟,近年来集成电路技术的出现和应用,是推动了人类文明的突飞猛进。基于集成电路技术的单片机产品更是方便了人们的生活和工作,目前以单片机技术的应用为核心的产品种类非常丰富。应用我们所学过的知识和查阅相关资料,我制作了这个单片机技术为基础的LCD可校时可定时电子闹钟,这是一个简单的实用的单片机电子设计产品。 本“LCD定时电子闹钟’设计采用AT89C51为主控芯片。在充分理解了设计的要求后,准确的定位了设计的目的,然后构思了总体的方案。在选择和合适的硬件完成了电路的设计后,又进行了软件的设计和调试。本系统的硬件组成以及工作原理都有详细的图文说明,所应用的软件技术和各个模块设计的功能及工作过程也有详细的介绍,最后的部分则详细描述了了软件仿真及调试过程。

Abstract This design is the use of single-chip computer technology electronic timing alarm clock, in recent years, integrated circuit technology and applications, is to promote the human civilization make a spurt of progress. Based on the integrated circuit single chip computer product is more convenience to people's life and work, the single chip technology as the core of the products is very rich. Apply what we have learned the knowledge and access to relevant information, I produced the single chip technology based on LCD timing timing electronic alarm clock, which is a simple and practical single chip electronic product design. The" LCD electronic timing alarm clock ' design uses AT89C51as the main control chip. In the full understanding of the design requirements, accurate positioning of the design objective, then the overall scheme design. In the choice and appropriate hardware circuit design, and software design and debugging. The system hardware composition and working principle of a detailed graphic shows, by the application of the software technology and each module function and the working process is also introduced in detail, the last part is a detailed description of the software simulation and debugging process.

数据库课程设计完整版

HUNAN CITY UNIVERSITY 数据库系统课程设计设计题目:宿舍管理信息系统 姓名: 学号: 专业:信息与计算科学 指导教师: 20年 12月1日 目录 引言 3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要 5 1.4软件处理对象 6 1.5系统可行性分析 6 1.6系统设计目标及意义7

1.7系统业务流程及具体功能 7 8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20 参考文献 20 引言 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了

内燃机设计课程设计大作业

第一部分:四缸机运动学分析 绘制四缸机活塞位移、速度、加速度随曲轴转角变化曲线(X -α,V -α,a -α)。 曲轴半径r=52.5mm 连杆长度l=170mm, 连杆比31.0==l r λ 1、位移:)]2cos 1(4 1 )cos 1[(αλα-+-=r x 2、速度:)2sin 2 (sin αλ αω+ =r v 3、加速度:)2cos (cos 2αλαω+=r a

第二部分:四缸机曲柄连杆机构受力分析 1、初步绘制四缸机气缸压力曲线(g F -α),绘制活塞侧击力变化曲线(N F -α),绘制连杆力变化曲线(L F -α),绘制曲柄销上的切向力(t F ),径向力(k F )的变化曲线(-α),(-α)。 平均大气压MPa p 09839.098.39kPa 0== 缸径D=95mm 则 活塞上总压力 6 010 )(?-=A P P F g g 24 D A π = 单缸活塞组质量:kg m h 277.1= 连杆组质量: 1.5kg =l m 则 往复运动质量:l h j m m m 3.0+= 往复惯性力:)2cos (cos 2αλαω+-=-=r m a m F j j j )sin arcsin(αλβ=又 合力:g j F F F += 侧击力:βtan F F N = 连杆力:β cos F F L = 切向力:)sin(βα+=L t F F 径向力:)cos(βα+=L k F F t F k F

2.四缸机连杆大头轴承负荷极坐标图,曲柄销极坐标图 连杆大头集中质量产生的离心力:2 227.0ωωr m r m F l rL == 连杆轴颈负荷: qy qx p F F arctan =α 连杆轴承负荷: ?+++=180βαααq P )sin(p P px F F α= 2m rL L q F F F +=k rL qx F F F -=t qy F F =q p F F -=)(p p py con F F α=

数据库课程设计工厂管理系统大作业

摘要 姓名:颜超丽学号:200915553013027 此文运用了数据字典、数据流图等方法对工厂管理系统进行了需求分析,运用E-R图进行了概念结构设计,在逻辑结构设计中将E-R图转化为关系模型,在物理结构设计中确定该数据库的存储结构,最后通过SQL语言实现数据库的设计。在这过程中,还详细地分析了各个子系统的属性、实体间的联系以及子系统间的关系。在这基础上,通过金仓数据库软件,运用SQL语言将所建工厂管理系统数据库顺利实现。 关键字:数据字典,E-R图,SQL语言 目录 一、系统概述 (1) 二、需求分析 (1) 1信息分析 (1) 2数据流图 (2) 3数据字典 (2) 三、概念结构设计 (4) 1实体列表 (4) 2分E-R图 (4) 3全局E-R图 (5) 四、物理结构设计 (5) 1关系模式存取方式选择 (5) 2确定数据库的存储结构 (5)

3评价物理结构 (5) 五、逻辑结构设计 (6) 六、数据库的实施 (7) 七、设计总结........ (8) 八、文献 (9)

工厂管理系统库 一、系统概述 工厂管理信息化是工厂管理系统应用信息技术及其产品的过程,是信息技术应用于工厂管理的过程。工厂信息化的实施,自下而上而言,必须以管理人员使用信息技术水平的逐步提高为基础;自上而下而言,必须与工厂的制度创新、组织创新和管理创新结合。 工厂管理系统算是比较简单一种信息系统。它主要应用于工厂仓库管理、职工管理、车间管理和零件管理。其中车间对职工和零件来说是很重要的。 工厂管理信息化建设工作具有长期性和内容的多变性;正因为这样,车间管理信息系统也不是一个简单的、静止的、封闭的系统,而是一个开放的,随着时间的推移会逐步变化和发展的系统。 二、需求分析 1、信息分析 根据工厂方面取得的信息资料,得出系统的信息需求和处理要求,得到设计所需的需求信息。这些信息是是选择了对数据库设计直接有用的信息。 A.工厂系统: a.车间:一个工厂有很多个车间,每个车间有车间号、车间主任名、地址、 电话。 b.工人:一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和 工种。 c.产品:一个车间生产多钟产品,产品有产品号,价格。 d.零件:一个车间有多个零件,一个零件也可以由多个车间制造。零件有 零件号、重量和价格。 e.仓库:产品与零件存入仓库中,厂内有多个仓库,仓库有仓库号、仓库 保管员、姓名、电话。 B.系统联系: a.生产:一个车间有多个零件,一个零件也可以由多个车间制造。 b.组成:一个产品由多个零件组成,一种零件也可装配多中产品内。 c.保管:产品与零件存入仓库中,厂内有多个仓库。

基于单片机的定时闹钟课程设计报告书

任务书 一、设计目的 本设计主要是对51单片机的一个方面的扩展,是能实现一般定时闹钟功能的设计。需要实现某一功能时,按对应的按键即可,经过多次验证,此设计灵活简便,可以实现显示、定时、修改定时、定时时间到能发出报警声的功能。 二、设计要求 1、能显示时时—分分—秒秒。 2、能够设定定时时间,并修改定时时间。 3、定时时间到能发出警报声。

目录 1.绪论 (1) 2.方案论证 (1) 3.方案说明 (2) 4.硬件方案设计 (2) 4.1单片机STC89C52 (2) 4.2 时钟电路 (4) 4.3数码管显示电路 (4) 4.4键盘电路 (6) 4.5报警电路 (7) 5.软件方案设计 (7) 5.1系统软件设计 (7) 5.2键盘程序 (7) 5.3 LED (8) 5.4音响报警电路 (8) 5.5 程序流程图 (8) 6.调试 (9) 7.小结 (10) 8.参考文献 (11) 9.附录:定时闹钟源程序 (12)

1.绪论 系统采用单片机STC89C52作为本设计的核心元件,在其基础上外围扩展芯片和外围电路,附加时钟电路,复位电路,键盘接口及LED显示器。键盘采用独立连接式。还有定时报警系统,即定时时间到,通过扬声器发出报警声,提示预先设定时间时间到,从而起到定时作用。 外围器件有LED显示驱动器及相应的显示数字电子钟设计与制作可采用单片机来完成。由于其功能的实现主要通过软件编程来完成,那么就降低了硬件电路的复杂性,而且其成本也有所降低,所以在该设计与制作中采用单片机STC89C52,它是低功耗、高性能的CMOS型8位单片机。片内带有8KB的Flash 存储器,且允许在系统内改写或用编程器编程。另外, STC89C52的指令系统和引脚与8051完全兼容,片内有512B的RAM、32条I/O口线、3个16位定时计数器、4个外部中断、一个7向量4级中断结构(兼容传统51的5向量2级中断结构)等。 在LED显示器中,分成静态显示和动态显示两类,在这个设计的最小系统中主要用了它的动态显示功能,动态显示器利用了人视觉的短暂停留,在数据的传输中是一个一个传输的,且先传输低位。 2.方案论证 单片机作为核心的控制元件,使得电路的可靠性比较高,功能也比较强大,而且可以随时的更新系统,进行不同状态的组合。 本系统采用单片机STC89C52作为本设计的核心元件,利用两个4位7段共阴LED作为显示器件。接入共阴LED显示器,可显示时,分钟,秒,单片机外围接有定时报警系统,定时时间到,蜂鸣器发出报警声,提示预先设定时间到。 电路由下列部分组成:时钟电路、复位电路、控制电路、LED显示、报警电路,芯片选用STC89C52单片机。 系统基本框图如图2.1所示:

现代控制理论课程设计(大作业)

现代控制理论课 程设计报告 题目打印机皮带驱动系统能控能观和稳定性分析 项目成员史旭东童振梁沈晓楠 专业班级自动化112 指导教师何小其 分院信息分院 完成日期 2014-5-28

目录 1. 课程设计目的 (3) 2.课程设计题目描述和要求 (3) 3.课程设计报告内容 (4) 3.1 原理图 (4) 3.2 系统参数取值情况 (4) 3.3 打印机皮带驱动系统的状态空间方程 (5) 4. 系统分析 (7) 4.1 能控性分析 (7) 4.2 能观性分析 (8) 4.3 稳定性分析 (8) 5. 总结 (10)

项目组成员具体分工 打印机皮带驱动系统能控能观和稳定性 分析 课程设计的内容如下: 1.课程设计目的 综合运用自控现代理论分析皮带驱动系统的能控性、能观性以及稳定性,融会贯通并扩展有关方面的知识。加强大家对专业理论知识的理解和实际运用。培养学生熟练运用有关的仿真软件及分析,解决实际问题的能力,学会使用标准、手册、查阅有关技术资料。加强了大家的自学能力,为大家以后做毕业设计做很好的铺垫。 2.课程设计题目描述和要求 (1)环节项目名称:能控能观判据及稳定性判据 (2)环节目的: ①利用MATLAB分析线性定常系统的可控性和客观性。 ②利用MATLAB进行线性定常系统的李雅普诺夫稳定性判据。 (3)环节形式:课后上机仿真 (4)环节考核方式: 根据提交的仿真结果及分析报告确定成绩。 (5)环节内容、方法: ①给定系统状态空间方程,对系统进行可控性、可观性分析。 ②已知系统状态空间方程,判断其稳定性,并绘制出时间响应曲线验

证上述判断。 3.课程设计报告内容 3.1 原理图 在计算机外围设备中,常用的低价位喷墨式或针式打印机都配有皮带驱动器。它用于驱动打印头沿打印页面横向移动。图1给出了一个装有直流电机的皮带驱动式打印机的例子。其光传感器用来测定打印头的位置,皮带张力的变化用于调节皮带的实际弹性状态。 图1 打印机皮带驱动系统 3.2 系统参数取值情况 表1打印装置的参数

数据库课程设计(完整版)

HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目:宿舍管理信息系统 姓名: 学号: 专业:信息与计算科学 指导教师: 20年 12月1日

目录 引言 3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要 5 1.4软件处理对象 6 1.5系统可行性分析 6 1.6系统设计目标及意义7 1.7系统业务流程及具体功能 7 1.8.1数据流程图8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20参考文献 20

引言 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备修改功能,能够快速的查询学校所需的住宿信息。 面对目前学校发展的实际状况,我们通过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。

C语言课程设计大作业

郑州大学 课程报告 课程名称:C语言程序设计 专业班级:(15)班 学生姓名:谢* 学号: *** 任课教师:赵** 学期: 2012-2013-2 课程报告任务书

成绩评定教师:一. 需求分析

1,具有数据的插入、修改、删除、显示和查询功能的电话簿管理程序。 2,数据包括:人名、工作单位、电话号码和E-MAIL地址。 3,可对记录中的姓名和电话号码进行修改。 4,可增加和删除记录。 5,可显示所有的保存记录。 6,可按人名或电话号码进行查询。 分析 建议采用结构体数组和文件系统实现。结构体成员包括人名、工作单位、电话号码和E-MAIL地址。 根据题目的要求程序应该采用结构体数组和文件系统实现。应该有文件的操作功能;在程序中应该包括输入、显示、删除、查询、添加、修改、保存、加载和退出的功能。 二、概要设计 (1).程序的模块组成及各个函数的功能: 程序的模块组成: 主函数:main(); 输出数据函数:printf(); 读取数据函数:scanf(); 显示记录函数:Display(); 删除记录函数:shanchu(); 查找记录函数:chaxun(); 自定义清屏函数:system(“cls”); 自定义输入函数:input(); 字符输入函数:getchar(); 修改数据函数:xiugai(); 保存数据函数:baocun(); 排序数据函数:paixu(); 各函数的主要功能: 输出数据函数:随时输出数据; 读取数据函数:读取输入的数据信息;

显示菜单函数:显示可供选择的主菜单; 显示记录函数:显示通讯录所有输入的信息; 删除记录函数:显示要删除的通讯录所有输入的信息; 查找记录函数:显示要查询的通讯录所有输入的信息; 自定义清屏函数:清除前面运行留下的信息; 自定义输入函数:输入通讯录的成员;; 字符输入函数:从终端输入一个字符,遇回车键返回; 修改数据函数:修改通讯录的成员信息; 保存数据函数:保存通讯录的成员信息; 排序数据函数:排序通讯录的成员信息; (2)程序中的抽象数据类型的定义: 用户的状态结构 用户 { 编号: 姓名: 电话; 年龄; 邮箱: 地址; (3)总体流程图 根据上面的分析,可以将程序系统的设计分为如下几个模块:插入、显示、删除、查询、修改、保存和退出。 } 三. 详细设计

大数据库课程设计——图书管理系统

数据库系统原理课程设计 课题名称:图书信息管理系统 姓名: 班级: 学号: 指导老师: 2014年 01月 02日

目录 1.绪论------------------------------------------------------------ 3 1.1背景介绍------------------------------------------------------ 3 1.2开发背景的选用及介绍------------------------------------------ 3 2.需求分析-------------------------------------------------------- 4 2.1系统分析------------------------------------------------------ 4 2.2系统目标------------------------------------------------------ 4 2.3总体需求------------------------------------------------------ 4 3.概念设计阶段---------------------------------------------------- 5 3.1实体E-R图---------------------------------------------------- 5 3.2数据流程图---------------------------------------------------- 8 4.逻辑结构设计阶段------------------------------------------------ 8 4.1E-R图转换为关系模型 ------------------------------------------ 8 4.2数据字典------------------------------------------------------ 9 5.物理结构设计阶段---------------------------------------------- 10 5.1物理设计阶段的目标和任务------------------------------------- 10 5.2数据存储方面------------------------------------------------- 10 6.数据库实施与维护----------------------------------------------- 10 6.1创建数据库,数据表------------------------------------------- 10 6.2创建视图----------------------------------------------------- 12 6.3创建索引----------------------------------------------------- 13 6.4创建触发器--------------------------------------------------- 13 6.5数据表的初始化----------------------------------------------- 14 6.6初始表的显示------------------------------------------------- 16 7.数据库界面实现------------------------------------------------ 19 7.1系统总的功能模块图------------------------------------------- 19 7.2系统的实现--------------------------------------------------- 19 8.心得体会------------------------------------------------------- 25

定时闹钟课程设计

扬州大学水利与能源动力工程学院课程设计报告 题目:定时闹钟 课程:单片机原理及应用课程设计 专业:电气工程及其自动化 班级:电气1201 姓名:陈明飞 学号:121704102

第一部分 任 务 书

《单片机原理及应用》课程设计任务书 一、课题名称 详见《单片机课程设计题目(一)》:主要是软件仿真,利用Proteus软件进行仿真设计并调试; 《单片机课程设计题目(二)》:主要是硬件设计,利用单片机周立功实验箱进行设计并调试。 二、课程设计目的 课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义。 《单片机原理及应用》是一门理论性、实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。单片机原理及应用课程设计的目的是让学生在理论学习的基础上,通过完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设计与编程应用,使学生不但能将课堂上学到的理论知识与实际应用结合起来,而且能进一步加深对电子电路、电子元器件等知识的认识与理解,同时在软件编程、排错调试、相关软件和仪器设备的使用技能等方面得到较全面的锻炼和提高。为今后能够独立进行某些单片机应用系统的开发设计工作打下一定的基础。通过单片机硬件和软件设计、调试、整理资料等环节的培训,使学生初步掌握工程设计方法和组织实践的基本技能,逐步熟悉开展科学实践的程序和方法。 三、课程设计内容 设计以89C51单片机和外围元器件构成的单片机应用系统,并完成相应的软硬件调试。 1. 系统方案设计:综合运用单片机课程中所学到的理论知识,学生根据所选课题的任务、要求和条件进行总体方案的设计。 2. 硬件电路设计:对方案中以单片机为核心的电路进行设计计算,包括元器件的选择和电路参数的计算,并画出总体电路图。 3. 软件设计:根据已设计出的软件系统框图,用汇编语言或C51编制出各功能模块的子程序和整机软件系统的主程序。 4. 调试:在单片机EDA仿真软件环境Proteus下进行仿真设计并调试;或在单片机周立功实验箱上进行相关设计并调试。 四、课程设计要求 详见《单片机课程设计题目(一)》 《单片机课程设计题目(二)》 五、进度安排

数据库课程设计报告户籍管理系统完整版

. 中北大学 数据库课程设计 说明书 班 级: 学号: 姓 名: 学 专 方 向: 指导教师: 企业信息化软件开发与应用

成绩: 2014 年 6 月 1.需求分析 随着城市人口规模的扩大和公安部门对城市及农村人口管理工作规性的逐渐增强,户籍管理工作的业务量急剧增大。传统的手工方法,存在效率低、易出错等缺点,已经难以满足当前户籍管理工作的要求。 因此,结合当前日益成熟的计算机相关技术,开发一个专门针对户籍管理的系统已经非常必要了。户籍管理信息系统是公安部门不可缺少的一部分,更是适应现代户籍制度并推动户籍管理走向科学化、规化、自动化的必要条件。该管理系统能够为用户提供充足的信息和快捷的查询手段,以帮助用户了解户籍工作的情况。它大大改善了公安部门管理、查询户籍的基础工作环境,在一定程度上反映出户籍管理的现代化管理模式。因此人口户籍管理信息系统的开发迫在眉睫。 该课程设计就户籍的迁入、迁出、注销,身份证的办理、领取做了简单地设计。 1.1项目开发背景 近年来,随着计算机技术的发展和互联网时代的到来,我们已经进入了信息时代,随着人口的不断增长,户籍管理部门也应得到良好的发展,利用现代化管理工具使其变成半自动化必定会提高其工作效率。 1.2项目开发目的 户籍管理系统是针对户籍管理部门而开发的,为其改变人口信息仍需要手动处理和查询,个人的信息在处理中丢失或者不明确等现象而设计的。通过这个户籍管理系统,可以让

户籍管理部门提高工作质量和效率,从而达到更快捷、更准确、更方便的目的。 1.3需求分析阶段的目标与任务 1.3.1划分功能模块 在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求化分系统功能模块,这样就把一个大的系统分解为几个小的系统。经过调查分析,户籍信息管理系统应具有以下功能: (1)对户籍的变动进行处理。任何管理部门的户籍信息不会是一成不变的,总是在不断的变化:有迁出、有迁入、户口合并,也有因故注销。因此,设计系统时应考虑到这些情况,实现户籍的日常管理工作。 (2)对所管辖户籍所分离出的个人信息的计算、统计。找到符合条件的个人,进行核对无误后,生成档案文件进行转存,保证数据的安全完整,以此来实现身份证的办理与领取。 (3)查询统计功能。要求即可以单项查询,比如查看某个人工的户口情况等;也可以多项查询,比如同一户口特征的户口浏览,并按照所需的要求进行数据的转存。 1.3.2处理对象 户籍信息:户籍号,户主姓名 户籍成员信息:姓名,户主关系,性别,民族,籍贯,住址,身份证号,文化程度,职业,户籍号,迁入时间,迁出时间,迁入地,迁出地 身份证:姓名,身份证号,性别,民族,地址

计算机操作系统”课程设计大作业

华南理工大学 “计算机操作系统”课程设计大作业 1)给出数据定义和详细说明; struct block_s{ /* 该块的实际长度,不包括block_s的大小。 */ int length; /* 申请该块的作业,为0表示该块空闲。 */ int owner; /* 当该块是空闲块时,offset表示下一空闲块的偏移,offset为TOTAL_BYTE表示该块是最后一个空闲块。 当该块非空闲块时,offset表示作业实际申请的大小。 */ int offset; }; 2)给出实现思想和设计流程; 该算法遍历空闲链表,找第一个大小能满足要求的块。 然后,若找到的块足够大,再把该块切成两块,返回第一块给调用者;把第二块加到空闲区链表中。

该算法遍历整个空闲链表,找一个大小能满足要求的块。并且该块是所有能满足要求的空闲块中,大小最小的块。 然后,若找到的块足够大,再把该块切成两块,返回第一块给调用者;把第二块加到空闲区链表中。 3)调试完成源程序; #include "stdio.h" #include #include #define n 10 /*假定系统允许的最大作业为n,假定模拟实验中n值为10*/

#define m 10 /*假定系统允许的空闲区表最大为m,假定模拟实验中m值为10*/ #define minisize 100 struct { float address; /*已分分区起始地址*/ float length; /*已分分区长度,单位为字节*/ int flag; /*已分配区表登记栏标志,用"0"表示空栏目*/ }used_table[n]; /*已分配区表*/ struct { float address; /*空闲区起始地址*/ float length; /*空闲区长度,单位为字节*/ int flag; /*空闲区表登记栏标志,用"0"表示空栏目,用"1"表示未分配*/ }free_table[m]; /*空闲区表*/ allocate(char J,float xk) { /*采用最优分配算法分配xk大小的空间*/ int i,k; float ad; k=-1; for(i=0;i=xk&&free_table[i].flag==1) if(k==-1||free_table[i].length

相关文档
相关文档 最新文档