sql+vs课程设计报告

sql+vs课程设计报告
sql+vs课程设计报告

洛阳理工学院

课程设计报告

课程名称数据库课程设计

设计题目学生成绩管理系统

专业计算机科学与信息工程系班级B110505

学号B11050522

姓名

完成日期2013年12月27日

课程设计任务书

设计题目:学生成绩管理系统

设计内容与要求:

1.学生信息按照行政班级组织;

2.提供学生成绩的查询功能,输入学生的学号或姓名,能查找出该生各学期各门课程的成绩。

3.能对成绩数据进行添加、删除、修改等基本操作。

4.用户权限控制,一般用户只能查询,管理员用户可以修改数据库的内容。

5.根据以上功能,设计数据结构和Windows UI界面,完成程序设计。

指导教师:姬晓辉

2013年12 月27 日

课程设计评语

成绩:

指导教师:_______________

年月日

目录

1概述 (2)

1.1设计要求 (2)

1.2技术要求 (2)

1.3开发环境及工具 (2)

1.4安全性 (2)

2 需求分析 (3)

1.1 系统背景分析 (3)

1.2系统目标 (3)

1.3性能需求分析 (3)

3总体设计 (4)

3.1设计概述 (4)

3.2系统功能流程图 (4)

3.3系统数据库概念结构设计 (4)

3.3.1系统E-R图 (5)

3.3.2系统数据库的设计 (5)

3.4系统安全保密设计 (6)

4详细设计 (7)

4.1系统程序流程图 (7)

4.2系统主要功能模块简介 (7)

4.2.1登陆界面 (7)

4.2.2学生操作 (8)

4.2.3教师操作 (9)

4.2.4修改密码 (10)

5主要功能模块代码 (11)

5.1数据库创建代码 (11)

5.2 C#主要代码 (12)

5.2.1登录 (12)

5.2.2成绩查询 (13)

5.2.3成绩录入或修改 (13)

5.2.4选课 (14)

5.2.5修改密码 (15)

6设计总结 (16)

7体会与收获 (17)

参考文献 (18)

1概述

1.1设计要求

系统名称:学生成绩管理系统

使用语言:C#程序设计语言

使用软件:Microsoft SQL Server 2005、Microsoft Visual Studio 2005

针对给定的数据库应用问题-学生成绩管理系统,全面运用数据库原理课程所学知识,从系统需求分析着手,进行数据库的概念设计、逻辑设计、物理设计、系统的总体设计和模块设计、编程、调试,并在各个环节中提供相关的文档。

1.2技术要求

本系统主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是用计算机对学生信息进行日常管理,如查询、修改、增加、删除,另外还考虑到用户登录的权限,针对学生信息和权限登录的学生成绩管理系统。

本系统主要包括教师管理、学生信息查询、添加、修改、删除等部分。其功能主要有:

学生信息按照行政班级组织;

提供学生成绩的查询功能,输入学生的学号或姓名,能查找出该生各学期各门课程的成绩。

能对成绩数据进行添加、删除、修改等基本操作,并能进行一般的统计计算(如计算学生的总分和平均分,课程的平均分等)

其它辅助管理功能,如统计具有各等级奖学金资格的人数。

用户权限控制,一般用户只能查询,管理员用户可以修改数据库的内容。

根据以上功能,设计数据结构和Windows UI界面,完成程序设计。

1.3开发环境及工具

本系统后台数据库采用Microsoft SQL Server 数据库,该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大,效率高;前台采用Microsoft 公司的Visual Studio 2012作为主要开发工具,可与SQL Server 2005数据库无缝链接。系统开发语言选择C#.

1.4安全性

具有较高的安全性。系统对不同的用户提供不同的功能模块,只有具有高级权限的部门管理者或维护人员用户才能对用户和图书信息进行增加、修改和删除等管理,一般的读者用户只能查看图书信息和借阅情况。

还应具有一定的保护机制,防止系统被恶意攻击,信息被恶意修改和窃取。有完善的备份机制,如果系统被破坏应该能快速恢复。

2 需求分析

1.1 系统背景分析

随着电脑的普及,信息量的增大,现在几乎每个学校乃至每个教育机构也顺应时代的发展,纷纷抛弃繁琐的人工管理学生的成绩以及学生的信息的方式,而是采用各种管理软件进行管理。采用软件系统进行管理具有处理数据速度更快、信息量更多、更加准确、更加简便等特点。所以学生成绩管理系统成为学校和其他教育机构不可或缺的管理软件。

1.2系统目标

建立学生成绩数管理系统,数据信息文本文件存储,也可以采用数据库存储。

(1)学生信息按照行政班级组织;

(2)提供学生成绩的查询功能,输入学生的学号或姓名,能查找出该生各学期

各门课程的成绩。

(3)能对成绩数据进行添加、删除、修改等基本操作,并能进行一般的统计计

算(如计算学生的总分和平均分,课程的平均分等)

(4)其它辅助管理功能,如统计具有各等级奖学金资格的人数。

(5)用户权限控制,一般用户只能查询,管理员用户可以修改数据库的内容。

(6)根据以上功能,设计数据结构和Windows UI界面,完成程序设计。

1.3性能需求分析

(1)登录、用户界面需求:简洁、易懂、易用、友好的用户界面。

(2)安全保密性需求:只有凭借用户名和密码登陆系统,才能进行信息的管理

等。

3总体设计

3.1设计概述

根据需求把整个系统分化成不同的模块,每个模块完成一个特定的子功能。把这些模块结合起来组成一个整体。逐一实现各个功能;

3.2系统功能流程图

图3-1 系统功能流程图

3.3系统数据库概念结构设计

根据对数据项与数据结构的分析,设计出能够满足系统需求的各种实体,及它们之间的关系,为后面的逻辑结构设计打下基础。

图3-2系统E-R图结构

3.3.1系统E-R图

系统E-R图可以将各个实体之间的关系显示出来,将各个实体间的属性依赖表示明白。如图3-2系统E-R图结构。

3.3.2系统数据库的设计

综合以上分析,要实现上面的所有功能模块,主要设计表如下:

表3-1用户登录表

表3-2学生表

表3-3课程表

表3-4成绩表

表3-5教师表

3.4系统安全保密设计

系统设计了登录界面,每个合法用户有用户名及一个密码,只有当用户输入正确的用户名及密码组合后才能够对学生信息进行操作。

4详细设计

4.1系统程序流程图

程序流程图又称为程序框图,它是历史悠久使用最广泛的描述软件设计的方法。它可将整个程序的总体流程清楚明白的显示出来。如图4.2.1系统总流程图结构。

图4-1系统总体流程图

4.2系统主要功能模块简介

4.2.1登陆界面

用户凭借用户名及密码登录,老师登录成功后可对学生信息进行操作及修改自己的登录密码,学生登录后可以查询自己的成绩、选课、修改密码。用户界面如图4-2 用户登录界面所示。

图4-2用户登录界面

4.2.2学生操作

1.学生个人成绩查询

学生登陆后,在主界面上学生可以点击查询学生个人成绩,来查看自己的各个科目的成绩,且只能查看不能修改如图4-3。

图4-3学生个人成绩查询界面

2.学生选课

学生登陆后,可以在主界面点击选课,可以选择自己想要学习的课程。在选课界面可以看到课程号、课程名、学分、学时。选课成功后系统将课程号和课程名加入到Grade表中,如图4-4。

图4-4学生选课界面

4.2.3教师操作

1.查询学生信息

教师登录后,可以在主界面点击查询学生信息进入到学生信息查询界面,登录时默认显示全体学生成绩表。在该界面上教师可以按学号查询学生成绩,还可按班级号查询该班级的学生信息,如图4-5。

图4-5学生信息查询

2.录入或修改学生成绩

教师登录后可以点击主界面上的录入或修改学生成绩,可以进行学生集成的录入或着修改操作。如果成绩已经存在在界面上输入信息时则进行修改操作,如果成绩不存在则进行的是录入操作,并将成绩写回数据库中Grade表中,如图4-6。

图4-6学生成绩录入或修改

4.2.4修改密码

用户登录后可以修改自己的登录密码,修改成功后并将新密码写回到数据库的Userinfo表中,修改界面如图4-7。

图4-7密码修改界面

5主要功能模块代码5.1数据库创建代码

创建各种约束条件,来保证数据库的完整性操作。创建数据库Grademanage

create database Grademanage

创建表Student

use Grademanage

create table Student

(

sno smallint primary key not null,

sname char(20)not null,

class char(20)not null,

sex char(10)not null,

birth datetime,

addr char(25)

)

创建表Course

create table Course

(

cno smallint primary key not null,

cname char(10)not null,

ccredit int,

ctime int

)

创建表Teacher

create table Teacher

(

tno smallint primary key not null,

tname char(10),

sex char(10),

birth datetime,

cno char(10)

)

创建表Userinfo

create table Userinfo

(

UserName char(10)not null,

UserPsw char(8)not null,

UserRole char(8)

)

创建表Grade

create table Grade

(cno smallint not null,

sno smallint not null,

grade smallint,

primary key(cno,sno),

foreign key(cno)references Course(cno),

foreign key(sno)references Student(Sno)

)

填充数据

insert into Userinfo values('李明','123456','学生')

insert into Userinfo values('张军','123456','教师')

insert into Userinfo values('黄涛','1','学生')

insert into Userinfo values('赵文','123','学生')

insert into Userinfo values('李庆','123','教师')

insert into Userinfo values('王山','abc','学生')

insert into Userinfo values('孙红','lb','学生')

insert into Course values(02001,'English',3,48)

insert into Course values(02002,'Com',4,36)

insert into Course values(02003,'Japnese',2,24)

insert into Course values(02004,'Database',3,48)

insert into Course values(02005,'Web',5,48)

5.2 C#主要代码

5.2.1登录

private void button1_Click(object sender, EventArgs e)

{

string str;

str = CheckSelect();

SqlConnection conn=new SqlConnection(DbUtil.ConnectString);

conn.Open();

SqlCommand cmd = new SqlCommand();

cmd.Connection = conn;

https://www.360docs.net/doc/888553683.html,mandText= "SELECT UserRole FROM Userinfo where UserName='"+ UserName.Text.ToString().Trim() + "' and UserPsw='"+ UserPsw.Text.ToString().Trim() + "'and UserRole='" + str + "' ";//数据库执行语句

object val = cmd.ExecuteScalar();

if (val != null)

{

Main main = new Main();

https://www.360docs.net/doc/888553683.html,eRole = val.ToString().Trim();

https://www.360docs.net/doc/888553683.html,eName = UserName.Text.ToString().Trim();

main.Show();

this.Hide();

}

else

{

MessageBox.Show("输入的用户名或密码错误!", "登录提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

UserName.Focus();

}

MessageBox.Show(ex.Message);

if (conn.State == ConnectionState.Open)

conn.Close();

}

5.2.2成绩查询

private void button2_Click(object sender, EventArgs e)

{

SqlConnection conn = new SqlConnection(DbUtil.ConnectString);

//this.Conn = ConfigurationManager.ConnectionStrings["con"].ConnectionString;

SqlCommand cmd = new SqlCommand();//创建数据库命令对象

cmd.Connection = conn;//执行命令需要的数据库连接

https://www.360docs.net/doc/888553683.html,mandText = "SELECT * FROM Grade where sno='" + textBox1.Text + "'";//数据库执行语句

SqlDataAdapter da = new SqlDataAdapter(cmd);//创建适配器

DataSet ds = new DataSet();//填充数据集

da.Fill(ds);

dataGridView1.DataSource = ds.Tables[0];//绑定数据

textBox1.Text = "";

textBox1.Focus();

}

5.2.3成绩录入或修改

private void button1_Click(object sender, EventArgs e)

{

SqlConnection conn = new SqlConnection(DbUtil.ConnectString);

conn.Open();

SqlCommand cmd=new SqlCommand("delete from Grade where cno='"+ textBox1.Text.Trim() + "'and sno='" + textBox2.Text.Trim() + "'",conn);

string SQL = "select * from Grade";

DataSet ds = new DataSet();

SqlDataAdapter da = new SqlDataAdapter(SQL, conn);

da.Fill(ds, "Grade");

if (textBox1.Text.Trim() != "" || textBox2.Text.Trim() !="")

{

if(textBox3.Text.Trim() != "" || textBox4.Text.Trim()!="")

{

cmd.ExecuteNonQuery();

conn.Close();

DataTable table = ds.Tables["Grade"];

DataRow row = table.NewRow();//增加新数据行

TextBox[] data= new TextBox[] { textBox1, textBox2, textBox3, textBox4 };

int index = 0;

foreach (DataColumn column in table.Columns)

row[column] = data[index++].Text.Trim();

table.Rows.Add(row);//将新数据行添加到数据表中

dataGridView1.DataSource = table;//显示结果

SqlCommandBuilder builder = new SqlCommandBuilder(da);

da.Update(table);//将更改后的结果更新回数据源

conn.Close();

textBox1.Text = "";

textBox2.Text = "";

textBox3.Text = "";

textBox4.Text = "";

textBox1.Focus();

//DataSet.AcceptChanges();

MessageBox.Show("成绩录入或修改成功,请点击“录入或修改”按钮刷新并继续");

//DataSet.rej;

}}}

5.2.4选课

private void button1_Click_1(object sender, EventArgs e)

{

for (int i = 0; i < dataGridView1.RowCount; i++)

{

if (dataGridView1.Rows[i].Cells[4].Value != null)

{

if (dataGridView1.Rows[i].Cells[4].Value.ToString() == "True")

{

SqlConnection conn = new SqlConnection(DbUtil.ConnectString);

string SQL = "select sno from Student where sname = '" + stuNum + "'";

conn.Open();

DataSet ds = new DataSet();

SqlDataAdapter da = new SqlDataAdapter(SQL,conn);

da.Fill(ds, "Student");

short valu =(short) ds.Tables["Student"].Rows[0]["sno"];

SqlCommand cmd = new SqlCommand();

cmd.Connection = conn;

https://www.360docs.net/doc/888553683.html,mandText= "insert into Grade(cno,sno) values('"+ dataGridView1.Rows[i].Cells[0].Value.ToString() + "','" + valu + "')";

int val = cmd.ExecuteNonQuery();

if (val > 0)

MessageBox.Show("选课成功");

else

if (conn.State == ConnectionState.Open)

conn.Close();

}

}

}

}

5.2.5修改密码

private void button1_Click_1(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == textBox2.Text.Trim())

{

SqlConnection conn = new SqlConnection(DbUtil.ConnectString);

//this.Conn = ConfigurationManager.ConnectionStrings["con"].ConnectionString;

conn.Open();

SqlCommand cmd = new SqlCommand();

cmd.Connection = conn;

https://www.360docs.net/doc/888553683.html,mandText= "update UserInfo SET UserPsw='"+ textBox1.Text.ToString().Trim() + "' where UserName='"+psw+"'";

int val = cmd.ExecuteNonQuery();

if (val > 0)

{

MessageBox.Show("修改密码成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

}

else

MessageBox.Show("修改密码失败", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

if (conn.State == ConnectionState.Open)

conn.Close();

}

else if (textBox1.Text != textBox2.Text)

{

MessageBox.Show("错误!两次输入的密码不一致,请重新输入", "警告", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

textBox1.Text = "";

textBox2.Text = "";

textBox1.Focus();

} }

6设计总结

一个系统开发的过程中编码不是重要的,重要的是分析系统、建立起系统模型。在分析一个系统前,分析人员必须要对将要开发的系统所涉及到的各方面知识有一个认识,然后将系统的模型建立起来。而且一个成功的软件要符合用户的需要,要以用户为中心,开发出用户想要的软件,而不能自以为是、想当然的做。

在程序编写中,我认识到软件要有简便的界面,良好的程序风格。拥有这些条件,程序的可读性才会好,开发的复杂度才能大大减少,修改代码时更加容易下手。

我认为,所谓友好的界面,就是用户需要的界面,力求简便全面。所以设计一个界面时,开发人员必须要了解用户的想法,从用户的角度去设计,当然,开发不能全听用户的意见,在详细分析了系统后,开发人员可以向用户提出一些修改的意见,在双方多次交流后定出程序所需的功能,以决定界面的实现。

在编码中,良好的编程风格与习惯是提高工作效率的一个重要方面,而且良好的编程风格与习惯也是使软件便于维护的基础。那如何是良好的编程风格与习惯呢?我认为主要是程序的模块化、必要的注释。所谓模块化就是使程序的功能实现分成多个单独的功能模块,而不能在一大段代码中实现多个功能,如果这样做,别的人是非常难读懂你的程序。必要的注释,显而易见是要在程序的编写中加入对程序的说明,原因就是为了别人能读懂你的程序,过一段时间后你自己还能读懂自己的程序。

7体会与收获

经过一周的时间,在老师的指导下和同学们的帮助下成功的做出了学生成绩管理数据库。通过在这个数据库中建立的四个表,继而在这四个表的基础上做出的添加记录、用查询语句来查看记录,添加字段,创建自定义数据类型等操作来巩固了我们对数据库基本原理和基础理论的理解,掌握数据库应用系统设计开发的基本方法,进一步,提高了我们运用所学知识的能力

回顾此次学生管理数据库课程设计,至今仍感慨颇多,的确,从理论到实践,在这一周的日子里,可以说是苦多于甜,但是可以学到很多东西,同时不仅可以巩固以前所学过的知识,而且学到了书本上所没有学到的知识。通过这次课程设计使我懂得了理论与实践相结合是很重要的,只有理论知识是远远不够的,只有把所学到的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,这毕竟第一次做的,难免会遇到各种各样的问题,同时在设计的过程中也发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不有够牢固,比如主键约束,添加字段,创建自定义类型的一些只看书觉得没有问题的,但一做具体的操作就发现了问题。

知识的获得是无止境的,只要想学,只要行动,没有什么会难倒我们的。回首这一周的课程设计,尝尽酸甜苦辣同时也谢谢老师对我们的不懈帮助,谢谢学校给了我们这一次实践的机会,也谢谢同学们的关怀,这些美好的回忆将是我一生最在的财富。

参考文献

[1]王珊萨师煊.数据库系统概论.北京:高等教育出版社2006

[2]杨开英.数据库系统概论.武汉:武汉理工大学出版社2003.11

[3]耿国华.数据结构.北京:高等教育出版社2011

[4]孙明丽王斌sql server 2005数据库系统开发北京:人民邮电出版社2007

[5]杨冬青马秀莉唐世渭.数据库系统概念.北京:机械工业出版社2004

[6]苗雪兰.数据库系统原理及应用教程[M].北京: 机械工业出版社2005

[7]陈世洪.SQL SERVER 2005管理,开发及应用实例.北京:人民邮电出版社2005

[8]姜代红.数据库原理及应用实用教程.北京:清华大学出版社2010

[9]周明扬.Visual C++程序设计教程.北京:机械工业出版社2004

[10]苗雪兰.数据库系统原理及应用教程[M].北京:机械工业出版社2007

课程设计报告【模板】

模拟电子技术课程设计报告设计题目:直流稳压电源设计 专业电子信息科学与技术 班级电信092 学号 200916022230 学生姓名夏惜 指导教师王瑞 设计时间2010-2011学年上学期 教师评分 2010年月日

昆明理工大学津桥学院模拟电子技术课程设计 目录 1.概述 (2) 1.1直流稳压电源设计目的 (2) 1.2课程设计的组成部分 (2) 2.直流稳压电源设计的内容 (4) 2.1变压电路设计 (4) 2.2整流电路设计 (4) 2.3滤波电路设计 (8) 2.4稳压电路设计 (9) 2.5总电路设计 (10) 3.总结 (12) 3.1所遇到的问题,你是怎样解决这些问题的12 3.3体会收获及建议 (12) 3.4参考资料(书、论文、网络资料) (13) 4.教师评语 (13) 5.成绩 (13)

昆明理工大学津桥学院模拟电子技术课程设计 1.概述 电源是各种电子、电器设备工作的动力,是自动化不可或缺的组成部分,直流稳压电源是应用极为广泛的一种电源。直流稳压电源是常用的电子设备,它能保证在电网电压波动或负载发生变化时,输出稳定的电压。一个低纹波、高精度的稳压源在仪器仪表、工业控制及测量领域中有着重要的实际应用价值。 直流稳压电源通常由变压器、整流电路、滤波电路、稳压控制电路所组成,具有体积小,重量轻,性能稳定可等优点,电压从零起连续可调,可串联或关联使用,直流输出纹波小,稳定度高,稳压稳流自动转换、限流式过短路保护和自动恢复功能,是大专院校、工业企业、科研单位及电子维修人员理想的直流稳压电源。适用于电子仪器设备、电器维修、实验室、电解电镀、测试、测量设备、工厂电器设备配套使用。几乎所有的电子设备都需要有稳压的电压供给,才能使其处于良好的工作状态。家用电器中的电视机、音响、电脑尤其是这样。电网电压时高时低,电子设备本身耗供电造成不稳定因家。解决这个不稳定因素的办法是在电子设备的前端进行稳压。 直流稳压电源广泛应用于国防、科研、大专院校、实验室、工矿企业、电解、电镀、充电设备等的直流供电。 1.1直流稳压电源设计目的 (1)、学习直流稳压电源的设计方法; (2)、研究直流稳压电源的设计方案; (3)、掌握直流稳压电源的稳压系数和内阻测试方法。 1.2课程设计的组成部分 1.2.1 设计原理

数字钟课程设计实验报告

《电子技术课程设计报告》 教学院:电气与电子信息工程学院 专业班级:xx级电子信息工程(x)班 学号:xxxxxxxxxxxx 学生:坏水 指导教师:xxxxxxxxxxxx 时间:2011.10.10~10.23 地点:电子技术实验室

课程设计成绩评定表

电子技术课程设计任务书 2011~2012学年第一学期 学生:坏水专业班级:xx电信本x班 指导教师:xxxxxxxxx 工作部门:电气与电子信息工程学院 一、课程设计题目:多功能数字钟电路的设计/直流稳压电源的设计 二、课程设计容(含技术指标): ①拟定多功能数字钟和直流稳压电源的组成框图,要现电路的基本功能,使用 的器件少,成本低; ②画出数字钟和直流稳压电源的主体电路逻辑图; ③测试多功能数字钟的逻辑功能,同时满足基本功能与扩展功能的要求; ④设计并安装各单元电路,要求布线整齐、美观,便于级联与调试;

四、基本要求 1.基本功能:要求设计出+5V的直流稳压电源。数字钟要求以数字形式显示时、分、秒的时间。小时计数器的计时要求为“12翻1”,要求具有手动校时功能。 2.扩展功能:定时控制,其时间自定;仿广播电台正点报时,自动报整点时数或触摸报整点时数(主要体现在理论知识上进行电路设计)。 (一)实训题目:直流稳压电源和多功能数字钟。 (二)实训目的: 1、巩固和加深学生对模拟电子技术,数字逻辑电路等课程基本知识的理解,综 合运用课程中所学到的理论知识去独立完成一个实际课题。 2、根据课程需要,通过查阅手册和文献资料,培养学生独立分析和解决实际问 题的能力。 3、通过电路方案的分析、论证和比较,设计计算和选用元气件,通过电路组装, 调试和检测环节,掌握电路的分析方法和设计方法。 4、熟用常用电子元气件的类型和特性,并掌握合理选用原则。 5、掌握电路图、PCB图的设计方法,学会电路的安装与调试。 6、掌握常用仪器、仪表的正确使用方法,学会电路整机指标的测试方法。(三)实训要求

计算机硬件课程设计报告(cpu设计)

计算机硬件课程设计 设计报告 学号: 姓名:成绩: 学号: 姓名:成绩: 东南大学计算机科学与工程系 二0 10 年11 月

一、设计名称: My CPU的设计 二、本设计的主要特色: 1、熟悉挂总线的逻辑器件的特性和总线传送的逻辑实现方法。 2、掌握半导体静态存储器的存取方法。 三、设计方案: 1. 数据格式——8位二进制定点表示 2. 指令系统——CPU的指令格式尽量简单规整,这样在硬件上更加容易实现。 7条基本指令:输入/输出,数据传送,运算,程序控制。 指令格式:Array 7 6 5 4 3 2 1 0 两种寻址方式: 寄存器寻址Array 7 6 5 4 3 2 1 0 直接地址寻址,由于地址要占用一个字节,所以为双字节指令。 7条机器指令:

IN R目:从开关输入数据到指定的寄存器R目。 OUT R源:从指定的寄存器R源中读取数据送入到输出缓冲寄存器,显示灯亮。 ADD R目,R源:将两个寄存器的数据相加,结果送到R目。 JMP address : 无条件转移指令。 HALT : 停机指令。 LD R目,address : 从内存指定单元中取出数据,送到指定寄存器R 目。 ST address , R 源: 从指定的寄存器R源中取出数据,存入内存指定单元。

Address(内存地址) 3. CPU内部结构 4.数据通路设计 根据指令系统,分析出数据通路中应包括寄存器组、存储器、运算器、多路转换器等,采用单总线结构。 通用寄存器组:

运算器: 存储器: 多路转换器:

输出缓冲器: 5.控制器设计 控制通路负责整个CPU的运行控制,主要由控制单元和多路选择器MUX 完成。在每一个时钟周期的上升沿指令寄存器IR 从内存中读取指令字后,控制单元必须能够根据操作码,为每个功能单元产生相应主控制信号,以及对ALU 提供控制信号。对于不同的指令,同一个功能单元的输入不同,需要多路选择器MUX 来对数据通路中功能单元的输入进行选择。

课程设计实验报告

竭诚为您提供优质文档/双击可除 课程设计实验报告 篇一:课程设计(综合实验)报告格式 课程设计报告 (20XX--20XX年度第一学期) 名称:题目:院系:班级:学号:学生姓名:指导教师:设计周数: 成绩:日期:《软件设计与实践》课程设计计算机系软件设计与实践教学组 20XX年1月14 日 《软件设计与实践》课程设计 任务书 一、目的与要求 1.了解网络爬虫的架构和工作原理,实现网络爬虫的基本框架;2.开发平台采用JDK1.60eclipse集成开发环境。 二、主要内容 1.了解网络爬虫的构架,熟悉网页抓取的整个流程。

2.学习宽度优先和深度优先算法,实现宽度crawler应用程序的编写、调试和运行。 3.学习主题爬行及内容分析技术。 4.实现网络爬虫的基本框架。 三、进度计划 四、设计成果要求 1.要求按时按量完成所规定的实验内容; 2.界面设计要求友好、灵活、易操作、通用性强、具有实用性; 3.基本掌握所采用的开发平台。五、考核方式 平时成绩+验收+实验报告。 学生姓名:于兴隆指导教师:王蓝婧20XX年1月2日 一、课程设计的目的与要求1.目的: 1.1掌握crawler的工作原理及实现方法;1.2了解爬虫架构; 1.3熟悉网页抓取的整个流程及操作步骤; 1.4掌握宽度优先,深度优先算法,并实现宽度crawler 应用程序的编写、调试和运行;1.5掌握主题爬行及内容分析技术;1.6实现一个最基础的主题爬虫的过程;1.7理解pageRank算法,并编程验证;二、设计正文 网络爬虫研究与应用 [摘要]:本文通过对网络爬虫研究的逐步展开,讨论了爬虫的相关概念与技术,并通过实验设计了简单的基于宽度

安徽工程大学课程设计报告撰写模板

封面 按学校发的封面模板填写相关信息; 起始时间:2011年6月13日~6月24日 设计报告书页数(一般20~30页之间) 电子版设计报告规定的格式用A4纸打印,正文中的任何部分不得写到纸的边框以外,亦不得随意接长或截短。汉字必须使用国家公布的规字。 页面设置:上3,下2.5,左3,右2;页眉2,页脚1.75。 行距采用单倍行距,标准字符间距。西文、数字等符号均采用Times New Roman字体。

任务书 主要是写明设计容和设计要求 例如,设计一个数字钟的任务书为:(具体根据题目拟定) Ⅰ设计题目 中文:多功能数字钟的设计 英文:Design of Multi-function Digital Clock Ⅱ设计功能要求 1、能正确显示时、分、秒(6位:HH:MM:SS); 2、要有总体复位开关; 3、能可靠校时、校分; 4、能整点报时(①59’56秒、59’57秒、59’58秒、59’59秒响0.5秒低音。②00’00 秒响1秒高音); 5、整个电路的控制开关要求在5个以; 6、秒信号发生器可以用555构成的电路产生; 7、能够设定一组闹钟功能,到了预设的时间,铃声响1分钟,在1分钟之可以用 按键停止闹铃。 Ⅲ设计任务容 1、学习与研究相关的《电子技术》理论知识,查阅资料,拿出可行的设计方案; 2、根据设计方案进行电路设计,完成电路参数计算、元器件选型、绘制电路原理 图; 3、进行电路软件仿真(如:Multisim 2001、EWB、Protel等),或制作实物进行调 试实验,获得实验数据,验证设计有效性。 4、撰写课程设计报告。 签名

设计题目(根据自己的设计题目) 摘要 摘要:独占一页; 摘要正文分三段写: 第一段:本设计的意义和完成的主要工作。——做什么?为啥做? 第二段:为了完成设计功能,你主要进行了哪些设计,怎么设计的。——怎么做? 第三段:设计结果如何,取得了哪些结论。——做的效果怎么样? 关键词:关键词1;关键词2;关键词3;关键词4(根据自己的设计题目)

硬件描述语言课程设计报告

信息与电气工程学院 硬件描述语言课程设计 设计说明书 (数字式竞赛抢答器) ) 学生姓名 学号 班级 成绩 指导教师 通信工程系 年月日

信息与电气工程学院 课程设计评阅人评语 评阅人:(签名) 年月日评阅人评定成绩:

信息与电气工程学院 课程设计任务书 —学年第一学期 专业:通信工程学号:姓名: 课程设计名称:硬件描述性语言 设计题目:数字式竞赛抢答器 完成期限:自年月日至年月日共周 设计依据、要求及主要内容(可另加附页): 一般来说,设计一台智能抢答器,必须能够准确判断出第一位抢答者,并且通过数显、蜂鸣这些途径能让人们很容易得知谁是抢答成功者,并设置一定的回答限制时间,让抢答者在规定时间内答题,主持人根据答题结果实行增减分的操作,并将分数显示在屏幕上,评出最终赢家。所以我们在设计智能抢答器的模块需要满足鉴别、计时、计分、数显等功能。 定时抢答器的工作过程是:接通电源时,主持人将开关置于“清除”位置,抢答器处于禁止工作状态,编号显示器灭灯;抢答开始时,主持人将控制开关拨到“开始”位置,发光二极管灯亮,抢答器处于工作状态,这时,抢答器完成以下工作: (1)优先编码器电路立即分辨出抢答者编号,并由锁存器进行锁存,然后由译码显示电路显示编号; (2)扬声器发出短暂声响,提醒主持人注意; (3)控制电路要对输入编码电路进行封锁,避免其他选手再次进行抢答;(4)当选手将问题回答完毕,主持人操作计分开关,计分电路采用十进制加减计数器、数码管显示。本轮抢答完毕,主持人操作控制开关,使系统回复到禁止工作状态,以便进行下一轮抢答。 指导教师(签字):系主任(签字): 批准日期:年月日

贪吃蛇游戏课程设计实验报告全解

辽宁科技大学课程设计说明书 设计题目:基于C#的贪吃蛇游戏 学院、系:装备制造学院 专业班级:计算机科学与技术 学生姓名:叶佳佳 指导教师:丁宁 成绩: 2015年12月12日

目录 一、概述 (1) 1、用C#实现该设计的方法 (1) 2、贪吃蛇游戏说明 (1) 二、实验目的及设计要求 (1) 1、实验目的 (1) 2、实验要求 (2) 三、课程设计具体实现 (2) 1、概要设计 (2) 1.1、设计思想 (2) 1.2、主模块实现 (2) 1.3、主函数流程图 (4) 2、详细设计 (5) 2.1、设计思想 (5) 2.2、具体模块实现: (5) 四、调试过程及运行结果 (10) 1、调试过程 (10) 2、实验结果 (11) 五、实验心得 (12) 六、参考资料 (13) 七、附录:源代码 (13)

一、概述 1、用C#实现该设计的方法 首先应该了解设计要求,然后按照功能设计出实际模块,每个模块都要完成特定的功能,要实现模块间的高内聚,低耦合。设计模块是一个相当重要的环节,模块的数量不宜太多,也不宜太少,要是每个模块都能比较简单的转换成流程图。模块设计完成后,就该给每个模块绘制流程图。流程图要尽可能的简单且容易理解,多使用中文,补一些过长的代码,增加理解难度。此外,流程图应容易转换成代码。 根据流程图编写好代码后在WindowsXP操作系统,https://www.360docs.net/doc/888553683.html,2008开发环境下进行运行测试,检查错误,最终设计出可行的程序。 2、贪吃蛇游戏说明 游戏操作要尽可能的简单,界面要尽可能的美观。 编写程序实现贪吃蛇游戏,贪吃蛇游戏是一个深受人们喜欢的游戏:一条蛇在密闭的围墙内,在围墙内随机出现一个食物,通过键盘上的四个光标键控制蛇向上下左右四个方向移动,蛇头撞到食物,则表示食物被吃掉,这时蛇的身体长一节,同时计10分;接着又出现食物,等待被蛇吃掉,如果蛇在移动过程中,撞到墙壁、障碍物或身体交叉(蛇头撞到自己的身体),则游戏结束。游戏结束时输出相应得分。 具体要求有以下几点: (1)对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理; (2)系统设计要实用,采用模块化程序设计方法,编程简练、可用,功能全面; (3)说明书、流程图要清楚; 二、实验目的及设计要求 1、实验目的 .NET课程设计是教学实践环节中一项重要内容,进行此课程设计旨在掌握基础知识的基础上,进一步加深对VC#.NET技术的理解和掌握; 提高和加强学生的计算机应用及软件开发能力,使学生具备初级程序员的基本素质; 培养学生独立分析问题、解决问题、查阅资料以及自学能力,以适应信息管理行业日新 1

课程设计报告参考模板

课程设计报告参考模板 河海大学计算机及信息工程学院 课程设计报告 题目专业、学号授课班号学生姓名指导教师完成时间 课程设计任务书 Ⅰ、课程设计题目: Ⅱ、课程设计工作内容 一、课程设计目标1、培养综合运用知识和独立开展实践创新的能力; 2、…… 二、研究方法及手段应用 1、将任务分成若干模块,查阅相关论文资料,分模块调试和完成任务; 2、…… 三、课程设计预期效果 1、完成实验环境搭建; 2、…… 学生姓名:专业年级: 目录空一行。空一个中文字符行。“目录”,分页,居中,加黑宋体二号。前言………………………………………………………………………………………………1 第一章系统设计………………………………………………………………

…………………2 第一节课题目标及总体方案…………………………………………………………………..2 ……………… 目录正文,宋体小四号,倍行距。第二节…………………………….. ………………… 第二章实验结果及讨论 (5) ……………… 第三章结论 (10) ……………… 心得体会 (42) 河海大学本科课程设计报告 1、移动台 MS 二级标题“1、”,左对齐,加黑宋体小三号。移动台是公用GSM移动通信网中用户使用的设备,……………… NMCDPPSPCSSEMC OSSOMCMBTSSBTSBSCHLR/ MSC/VLRAUC BSSEIR NSSPSTNISDNPDN 图 GSM系统

组成 2、基站子系统 BSS 图编号及图名“图”,位于图下,居中。基站子系统BSS是GSM系统实现无线通信的关键组成部分。它通过无线接口直接与移动台通信,进行无线发送、无线接收及无线资源管理。另一方面,它通过与网络子系统NSS的移动业务交换中心,………………。 ⑴、基站收发信台 BTS 三级标题“⑴、”,左对齐,加黑宋体四号。基站收发信台BTS属于基站子系统BSS的无线部分,………………。①收发信台组成四级标题“①”,左对齐,加黑宋体小四号。 BTS包含有若干个收发信息单元TRX,而一个TRX有八个时隙,………………。●收发信息单元 五级标题“●”,左对齐,加黑宋体小四号。收发信息单元是………………。●其它辅助单元 辅助单元包括………………。②收发信台作用 收发信台的主要作用有………………。 ⑵、基站控制器 BSC 基站控制器BSC是基站子系统BSS的控制部分,………………。 3、网络交换子系统 NSS - 4 - 河海大学本科课程设计报告

数字电子钟课程设计实验报告

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计任务书2016/2017 学年第一学期 学生姓名:张涛学号: 李子鹏学号: 课程设计题目:数字电子钟的设计 起迄日期:2017年1月4日~2017年7月10日 课程设计地点:科学楼 指导教师:姚爱琴 2017年月日 课程设计任务书

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计开题报告2016/2017 学年第一学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号:

指导教师:姚爱琴 2017 年 1 月 6 日 中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计说明书2016/2017 学年第二学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号: 指导教师:姚爱琴 2017 年月日

目录 1 引言 (6) 2 数字电子钟设计方案 (6) 2.1 数字计时器的设计思想 (6) 2.2数字电路设计及元器件参数选择 (6) 2.2.2 时、分、秒计数器 (7) 2.2.3 计数显示电路 (8) 2.2.5 整点报时电路 (10) 2.2.6 总体电路 (10) 2.3 安装与调试 (11) 2.3.1 数字电子钟PCB图 (11) 3 设计单元原理说明 (11) 3.1 555定时器原理 (12) 3.2 计数器原理 (12) 3.3 译码和数码显示电路原理 (12) 3.4 校时电路原理 (12) 4 心得与体会 (12) 1 引言 数字钟是一种用数字电子技术实现时,分,秒计时的装置,具有较高的准确性和直观性等各方面的优势,而得到广泛的应用。此次设计数字电子钟是为了了解数字钟的原理,在设计数字电子钟的过程中,用数字电子技术的理论和制作实践相结合,进一步加深数字电子技术课程知识的理解和应用,同时学会使用Multisim电子设计软件。 2数字电子钟设计方案 2.1 数字计时器的设计思想 要想构成数字钟,首先应选择一个脉冲源——能自动地产生稳定的标准时间脉冲信号。而脉冲源产生的脉冲信号地频率较高,因此,需要进行分频,使得高频脉冲信号变成适合于计时的低频脉冲信号,即“秒脉冲信号”(频率为1Hz)。经过分频器输出的秒脉冲信号到计数器中进行计数。由于计时的规律是:60秒=1分,60分=1小时,24小时=1天,就需要分别设计60进制,24进制计数器,并发出驱动信号。各计数器输出信号经译码器、驱动器到数字显示器,是“时”、“分”、“秒”得以数字显示出来。 值得注意的是:任何记时装置都有误差,因此应考虑校准时间电路。校时电路一般

计算机硬件课程设计--简单模型机设计

计算机硬件课程设计--简单模型机设计

计算机硬件综合课程设计报告

简单模型机设计 一、设计要求 硬件:TDN-CM+计算机组成原理实验系统一台,PC机一台,排线若干,串口线一根。 软件:CMP软件 二、设计目的 1.通过对一个简单计算机的设计,对计算机的基 本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。 2.通过这次课程设计,建立整机的概念,对程序 进行编辑,校验,锻炼理论联系实际的能力。 3.通过本次课程设计熟悉和训练设计思路与实 现方法。 4.通过本次课程设计锻炼团队合作的能力和团 队问题的解决。

三、设计电路及连线 设计电路及连线实验图如下图1-1所示。 图1-1 简单模型机连线图 四、设计说明 本次课程设计将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器

来完成,CPU 从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 本次课程设计采用五条机器指令:IN (输入)、ADD (二进制加法)、STA (存数)、OUT (输出)、JMP (无条件转移),其指令格式如下(前4位为操作码): 助记符 机器指令码 说 明 微程序入口地址 IN 0000 0000 “INPUT DEVICE ”中 10 的开关状态→R0 0001 0000 ×××× ×××× R0+[addr]→R0 11 0010 0000 ×××× ×××× R0→[addr] 12 0011 0000 ×××× ×××× [addr]→BUS 13 0100 0000 ×××× ×××× addr →PC 14 ADD addr STA

数电课程设计报告数字钟的设计

数电课程设计报告数字钟的设计

数电课程设计报告 第一章设计背景与要求 设计要求 第二章系统概述 2.1设计思想与方案选择 2.2各功能块的组成 2.3工作原理 第三章单元电路设计与分析 3.1各单元电路的选择 3.2设计及工作原理分析 第四章电路的组构与调试 4.1遇到的主要问题 4.2现象记录及原因分析 4.3解决措施及效果 4.4功能的测试方法,步骤,记录的数据 第五章结束语 5.1对设计题目的结论性意见及进一步改进的意向说明5.2总结设计的收获与体会 附图(电路总图及各个模块详图) 参考文献

第一章设计背景与要求 一.设计背景与要求 在公共场所,例如车站、码头,准确的时间显得特别重要,否则很有可能给外出办事即旅行袋来麻烦。数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确度和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。数字钟是一种典型的数字电路,包括了组合逻辑电路和时序电路。 设计一个简易数字钟,具有整点报时和校时功能。 (1)以四位LED数码管显示时、分,时为二十四进制。 (2)时、分显示数字之间以小数点间隔,小数点以1Hz频率、50%占空比的亮、灭规律表示秒计时。 (3)整点报时采用蜂鸣器实现。每当整点前控制蜂鸣器以低频鸣响4次,响1s、停1s,直到整点前一秒以高频响1s,整点时结束。 (4)才用两个按键分别控制“校时”或“校分”。按下校时键时,是显示值以0~23循环变化;按下“校分”键时,分显示值以0~59循环变化,但时显示值不能变化。 二.设计要求 电子技术是一门实践性很强的课程,加强工程训练,特别是技能的培养,对于培养学生的素质和能力具有十分重要的作用。在电子信息类本科教学中,课程设计是一个重要的实践环节,它包括选

嵌入式课程设计电子词典硬件设计

嵌入式课程设计电子词典硬件设计

————————————————————————————————作者:————————————————————————————————日期:

上海电力学院 嵌入式系统 课程设计报告 题目:电子词典的设计 姓名: 学号: 院系: 专业年级: 同组成员: 年月日

一、实验内容及要求 在LCD屏幕左侧绘制出单词输入框和释义显示框以及一个搜索键,右侧绘制4*4键盘按钮,模拟出简易电子词典的功能,按钮操作用触摸屏或键盘实现均可。 实现功能: (1)LCD屏幕上显示4*4键盘,显示单词及其翻译、例句。 (2)一个键可完成2个英文字母的输入,如左上角第一个键可实现输入a,b两个字母,第一次按下时为输入a,如果需输入b,只需连续快速按键两次即可。 (3)在输入完单词后,点击搜索键,即可在释义显示框中显示该单词的词性、中文解释、示例词组和句子等。 (4)当发现输入的单词在库中不存在时,可实现将该单词添加入库的操作。 二、设计思路 (1)通过LCD显示模块画出电子词典操作界面。 (2)对应界面中各键的位置设置键盘对应键值。 (3)设定功能键,实现以下3个功能:①退格键:删除最后一位字母;②搜索∕保存键:对输入框的单词进行判断,若单词存在于词库中,则显示单词词性、词义、例句;若单词不存在则自动进行保存;③转换键:按下后,字母键输出对应的第二个字母。 (4)按键后赋值并显示。 三、软件构架 开 LCD模块 键盘 结

四、模块分析 (1)键盘模块 流程图: 源代码:/********************************************************************************************* * File : keyboard.c * Author: embest * Desc : keyboard source code * History: *********************************************************************************************/ /*--- include files ---*/ 开键盘初始键盘是Y 读取是否是功Y N 执行赋显结束 N

计算机组成原理课程设计实验报告书

计算机组成原理课程设计报告 班级:姓名:学号: 完成时间: 一、课程设计目的 1.在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程序设计控制器的基本方法并了解指令系统与硬件结构的对应关系; 2.通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念; 3.培养综合实践及独立分析、解决问题的能力。 二、课程设计的任务 针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和除法运算功能为应用目标,在COP2000的集成开发环境下,设计全新的指令系统并编写对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。 三、课程设计使用的设备(环境) 1.硬件 ● COP2000实验仪 ● PC机 2.软件 ● COP2000仿真软件 四、课程设计的具体内容(步骤) 1.详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现该模型机指令系统的特点: 1)指令系统特点与设计 模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数。指令码的最低两位用来选择R0-R3寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机有24位控制位以控制寄存器的输入、输出,选择运算器的运算功能,存储器的读写。 指令系统包括以下七类:

2)模型机寻址方式

3)指令格式 该模型机微指令系统的特点(包括其微指令格式的说明等): 2)微指令设置说明

天津大学机械制造技术基础课程设计报告书

机械制造技术基础课程设计报告书 学院机械工程 专业机械设计制造及其自动化 年级 班级组别 小组成员 指导教师 2014年 10 月 10 日

机械制造技术基础课程设计任务书

目录 第一章零件分析 1.1 零件的作用 (1) 1.2 零件的工艺分析 (1) 1.3 确定零件生产类型 (1) 第二章确定毛坯类型绘制毛坯简图 2.1选择毛坯 (2) 2.2确定毛坯尺寸公差和机加工余量 (2) 2.3绘制拨叉毛坯简图 (3) 第三章工艺规程设计 3.1定位基准的选择 (4) 3.2拟定工艺路线 (4) 3.3工序尺寸及公差确定 (6) 3.3切削用量的确定 (7) 第四章机床夹具设计 4.1定位及加紧机构设计 (8) 4.2切削力及夹紧力计算 (11) 4.3夹紧元件的强度校核 (13) 4.4定位误差分析 (14) 参考文献.................................................... .. (18)

附 录 .................................................... . (19)

第一章零件分析 1.1 零件的作用 题目所给的零件是拨叉。它位 于变速机构中,主要起换档、使主轴 回转运动按照工作者的要求工作,获 得所需的速度和扭矩的作用。零件上 方的φ20H7孔与操纵机构相连,并用 螺钉经M5孔与变速叉轴连接。拨叉脚 则夹在双联变换齿轮的槽中。当需要 变速时,操纵变速杆,变速操纵机构 就通过拨叉头部的操纵槽带动拨叉与 变速叉轴一起在变速箱中滑移,通过 连接装置改换档位,实现变速。 1.2 零件的工艺分析 零件的材料为QT400,球墨铸铁 是通过球化和孕育处理得到球状石 墨,有效地提高了铸铁的机械性能, 特别是提高了塑性和韧性,从而得到 比碳钢还高的强度。 该拨叉零件叉轴孔Φ20H7 mm的 轴线是拨叉脚两端面和螺纹孔M5的设 计基准,拨叉头左端面是拨叉轴向方 向上尺寸设计基准。选用叉轴孔Φ20H7 mm的轴线和拨叉头左端面作为精基准。选用叉轴孔Φ20H7 mm的轴线和拨叉头左端面作为精基准定位加工拨叉脚两端面和螺纹孔M5,实现了设计基准和工艺基准重合,保证了被加工表面的垂直度要求。另外,由于拨叉件刚性较差,受力易发生弯曲变形,选用拨叉头左端面作为精基准,夹紧力作用在插头的右端面上,可以避免在机械加工中产生夹紧变形, mm的尺寸要求,所以选择拨叉脚左端面作为粗基准。夹紧稳定可靠。由于有50 2.0 采用Φ32 mm的外圆面定位加工内孔尅保证孔的壁厚均匀;采用拨叉脚左端面作为粗基准加工左端面,可以为后续工序准备好精基准。 该拨叉的加工质量要求较高,可将加工阶段分为粗加工、半精加工和精加工几个阶段。在粗加工阶段,首先用车床将精基准(拨叉头左端面和叉轴孔)准备好,因为车床可以一次性将两个精基准都加工出来,从而提高了精度,也为使后续工序都采用精基准定位加工,保证其他加工表面的精度要求;由于精度要求不高,故而粗铣,半精铣拨叉脚左右端面、拨叉脚内表面、螺纹孔端面,最后完成M5螺纹孔的加工,这也体现了工序集中的原则。 1.3 确定零件生产类型 由零件图示的生产批量200件可知,该零件为单件小批量生产。

微机原理课程设计报告-数字时钟的实现(附代码)

合肥工业大学 计算机与信息学院 课程设计 课程:微机原理与接口技术设计专业班级:计算机科学与技术x班学号: 姓名:

一、设计题目及要求: 【课题6】数字时钟 1.通过8253 定时器作产生秒脉冲定时中断。在中断服务程序中实现秒、分、小时的进位(24小时制)。 2.在七段数码管上显示当前的时分秒(例如,12 点10 分40 秒显示为121040)。 3.按“C”可设置时钟的时间当前值(对准时间)。 二、设计思想: 总体思想: 1、功能概述: 实验箱连线: 本实验建立在Dais实验箱基础上完成的基本连线及程序如下: 138译码器: A,B,C,D,分别连接A2,A3,A4,GS; y0连接8253的CS片选信号; y1连接8259的CS片选信号; 8253连线: 分频信号T2接8253的CLK0; 8253的OUT0接8259的IR7; 8253的gate信号接+5V; 8259连线: 8259的数据线接入数据总线;

本程序包括显示模块,键盘扫描模块,时间计数模块,设置模块等几个模块, (1)程序运行后,LED显示000000初始值,并且开始计数 (2)按C键进行设置初始时间,考虑到第一个数只能是0,1,2,当第一个数显示2时第二个数只能显示0~4,同理下面各位应满足时钟数值的合理的取值; (3)在手动输入初始值时,按D键进行回退1位修改已设置值,连续按D键可以全部进行删除修改。 2、主程序设计 主程序中完成通过调用子程序完成对8253及8259的初始化,对8259进行中断设置。主要在显示子程序和键盘子处理程序之间不断循环,8253每一秒给8259一个刺激,当8259接受到刺激后会给CPU一个中断请求,CPU会转去执行中断子程序,而中断子程序设置成时间计数加,即完成电子表的整体设计。详细流程图见图三-1。 3、LED显示子程序设计 本程序显示部分用了6个共阳极LED作为显示管,显示程序要做到每送一次段码就送一次位码,每送一次位码后,将位码中的0右移1位作为下次的位码,从而可以实现从左到右使6个LED依次显示出相应的数字。虽然CPU每隔一定时间便执行显示程序,但只要这个时间段不太长,由于人眼的视觉作用,就可以在6个LED上同时见到数字显示。 4、键盘扫描子程序设计 本程序需要用键盘对时间的初始值进行设置,因此对键盘扫描的子程序需要满足的功能如下: 判断是否是C键,若不是就返回至主程序,若是C键就开始对时间初始值进行设置,同时因注意到第一个值不可以超过2,第一个数是2时第二数不能超过4,余下的同理要满足时间数值的取值范围呢,若不是合法输入不予反应继续等待输入。当遇到输入数值错误时可以按下D键进行删除一位重新设置;当6位初始值全部设置成功后,电子表将自动开始走表。 5、时间运算子程序设计 该子程序的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟

推荐-基于多功能数字钟的课程设计报告 精品

EDA技术课程设计 多功能数字钟 学院:城市学院 专业、班级: 姓名: 指导老师: 20XX年12月

目录 1、设计任务与要求 (2) 2、总体框图 (2) 3、选择器件 (2) 4、功能模块 (3) (1)时钟记数模块 (3) (2)整点报时驱动信号产生模块 (6) (3)八段共阴扫描数码管的片选驱动信号输出模块 (7) (4)驱动八段字形译码输出模块 (8) (5)高3位数和低4位数并置输出模块 (9) 5、总体设计电路图 (10) (1)仿真图 (10) (2)电路图 (10) 6、设计心得体会 (11)

一、设计任务与要求 1、具有时、分、秒记数显示功能,以24小时循环计时。 2、要求数字钟具有清零、调节小时、分钟功能。 3、具有整点报时,整点报时的同时输出喇叭有音乐响起。 二、总体框图 多功能数字钟总体框图如下图所示。它由时钟记数模块(包括hour、minute、second 三个小模块)、驱动8位八段共阴扫描数码管的片选驱动信号输出模块(seltime)、驱动八段字形译码输出模块(deled)、整点报时驱动信号产生模块(alart)。 系统总体框图 三、选择器件 网络线若干、共阴八段数码管4个、蜂鸣器、hour(24进制记数器)、minute(60进制记数器)、second(60进制记数器)、alert(整点报时驱动信号产生模块)、 seltime(驱动4位八段共阴扫描数码管的片选 驱动信号输出模块)、deled(驱动八段字形译 码输出模块)。

四、功能模块 多功能数字钟中的时钟记数模块、驱动8位八段共阴扫描数码管的片选驱动信号输出模块、驱动八段字形译码输出模块、整点报时驱动信号产生模块。 (1) 时钟记数模块: <1.1>该模块的功能是:在时钟信号(CLK)的作用下可以生成波形;在清零信号(RESET)作用下,即可清零。 VHDL程序如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity hour24 is port( clk: in std_logic; reset:instd_logic; qh:BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0); ql:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0)); end hour24; architecture behav of hour24 is begin process(reset,clk) begin if reset='1' then qh<="000"; ql<="0000"; elsif(clk'event and clk='1') then if (qh<2) then if (ql=9) then ql<="0000"; qh<=qh + 1; else ql<=ql+1; end if; else if (ql=3) then ql<="0000"; qh<="000"; else ql<=ql+1; end if; end if; end if; end process; end behav; 仿真波形如下:

硬件课程设计报告(电子计算器)

计算机科学与技术学院 硬件课程设计报告 姓名:学号: 专业:计算机科学与技术 班级:计科班 设计题目:电子计算器 成员: 指导教师:职称: 年月

课程设计指导教师评阅书指导教师评语: 成绩:指导教师签字: 年月

摘要 电子计算器的设计主要分为键盘扫描与读取编码、七段LED数码管显示和四则运算的编写。这次设计中我们采用可编程接口芯片8255链接4*4键盘和LED显示屏,从键盘扫描读入数字,在显示屏上面显示出来,并通过cpu运算出结果显示在屏幕上。由于对汇编语言也不甚了解,只是进行一些简单的自然数的四则运算。 由于本次实验中,实验箱是TPC-ZK综合微机开放式实验系统,微机接口实验仪采用模块化、积木式的结构,各实块互不影响。但可通过连线将各实验模块有机组合起来,进行微机外围接口实验。这个实验选择的是4*4键盘连接上8255A然后控制LED显示。 关键词:8255A ;七段LED数码管;键盘;汇编语言;四则运算 目录 1 设计任务与要求 (3) 1.1选题 (3) 1.2需求分析 (3) 1.3设计任务 (3) 2硬件方案 (3) 2.1微处理器8086芯片 (3) 2.2 可编程并行接口8255A芯片 (4) 2.3 4*4矩阵键盘 (6) 2.4 七段LED数码管 (7) 2.5 电路及其功能模块图 (8) 3软件方案 (10) 3.1流程图 (10) 3.2源程序代码 (11) 4 问题与解决方案 (26) 5 成果展示 (26) 6 总结 (27) 7 心得体会与收获 (27) 8参考文献 (27)

1 设计任务与设计要求 1.1选题 我选的题目是电子计算器,电子计算器的设计主要分为键盘编码、七段数码管显示、和四则运算法则这三部分。设计时用可编程接口芯片8255A链接4*4键盘和七段LED数码管,8255扫描键盘并通过数码管显示相应的数字,这其中需要一定的汇编程序作为核心支撑,才能正确的使各种功能运行正常。 1.2需求分析 通过对选题的深入了解,电子计算器基本功能可以概括为: 1.可以进行简单的加、减、乘、除四则运算; 2.为了显示的人性化,按下每个数字都要进行反馈显示; 3.数码管只有四位显示,运算数和结果应尽量小于四位数,不然显示不全; 4.计算器能判断个别简单的错误,如除数为零,显示报错; 5.计算器要有清零功能,可以在按键失误后重新按键。 在显示屏上可以及时反馈按下数字,这需要扫描程序模块一直运行着,并能够及时调用显示程序模块,当有运算符号按下时还要及时给之前按下的数字进行组装成一个数值,组装键值模块也是程序的重要所在。等等这些都是在主程序下合理安排、运用流畅的,才能带来较完美的计算器体验。 1.3设计任务 本次实验我分为电路设计和编码设计这两个任务模块来设计的。 电路设计主要研究键盘按键位置设计和各个芯片器件之间的连线。 编码设计主要分为键盘扫描读取编码、七段数码管显示编码和四则运算编码。 2 硬件方案 2.1微处理器8086芯片

单片机课程设计报告书模板

. .. . .. .. 西南科技大学 2011级微机原理与接口技术 课程设计报告 课题名称微机原理与接口技术 姓名 学号 院、系、部制造科学与工程学院 专业 指导教师 2014年月日

目录 一、绪言 (1) 二、系统设计 (1) 2.1系统整体流程图 (1) 2.2日历时钟的控制方案论证 (1) 2.3单片机的选择方案论证 (2) 2.4键盘选择方案论证 (2) 2.5显示模块的选择方案论证 (2) 2.6模块的选择方案论证 (2) 三、硬件电路设计 (2) 3.1日历时钟的控制电路图 (2) 3.2行列式键盘的设计 (3) 3.3数码管显示电路的设计 (3) 3.4蜂鸣器驱动电路的设计 (4)

3.5主要元器件选择 (4) 四、程序流程图 (5) 五、c语言程序设计 (5) 六、日历时钟的控制器仿真 (19) 6.1K e i l调试 (19) 6.2P r o t e u s调试 (19) 七、结束语 (20) 八、参考文献 (21) 1、绪言 近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月异更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。电子时钟是现代社会中的主要计时工具之一,广泛应用于手机,电脑,汽车等社会生活需要的各个方面,及对时间有要求的场合。本设计采用AT89C51单片机作为主要核心部件,附以上电复位电路,时钟电路及按键调时电路组成。数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。

(完整版)数字电路课程设计--数字时钟

《数字时钟》技术报告 概要 数字钟是一个将“ 时”,“分”,“秒”显示于人的视觉器官的计时装置。它的计时周期为24 小时,显示满刻度为23 时59 分59 秒。一个基本的数字钟电路主要由秒信号发生器、“时、分、秒、”计数器、译码器及显示器组成。由于采用纯数字硬件设计制作,与传统的机械表相比,它具有走时准,显示直观,无机械传动装置等特点。 本设计中的数字时钟采用数字电路实现对“时” 、“分”、“秒” 的显示和调整。通过采用各种集成数字芯片搭建电路来实现相应的功能。具体用到了555 震荡器,74LS90 及与非,异或等门集成芯片等。该电路具有计时和校时的功能。 在对整个模块进行分析和画出总体电路图后,对各模块进行仿真并记录仿真所观察到的结果。 实验证明该设计电路基本上能够符合设计要求! 一、系统结构。 (1)功能。此数字钟能显示“时、分、秒”的功能,它的计时周期是24 小时,最大能显示23 时59 分59 秒,并能对时间进行调整和校对,相对于机械式的手表其更为准确。 2)系统框图

系统方框图 1 (3)系统组成。 1.秒发生器:由555 芯片和RC 组成的多谐振荡器,其555 上3 的输出频率由接入的电阻与电容决定。 2.校时模块:由74LS03 中的4 个与非门和相应的开关和电阻构成。 3.计数器:由74LS90 中的与非门、JK 触发器、或门构成相应芯片串接得到二十四、六十进制的计数器,再由74LS90 与74LS08 相连接而得到秒、分、时的进分别进位。 4.译码器:选用BCD 锁存译码器4511,接受74LS90 来的信号,转换为7 段的二进制数。

5.显示模块:由7 段数码管来起到显示作用,通过接受CD4511 的信号。本次选用的是共阴型的CD4511 。 二、各部分电路原理。 1.秒发生器:555 电路内部(图2-1)由运放和RS 触发器共同组成,其工作原理由8处接VCC ,C1 处当 Uco=2/3Vcc>u11 时运放输出为1,同理C2 也一样。最终如图3 接口就输出矩形波,而形成的秒脉冲。 图 2-2 555 功能表 2.校时模块:校时模块主要由74LS03中的4个与非门构成(图2-3),由其功能图看得出只要有一个输入端由H 到L 或者从L 到H 都会使输出端发生高低变化。因此通过开关的拨动产生高低信号从而对时、分处的计数器起到调数作用。

相关文档
最新文档