当前位置:文档之家› 《软件设计基础(VB)》简单科学计算器课程设计报告书

《软件设计基础(VB)》简单科学计算器课程设计报告书

《软件设计基础(VB)》简单科学计算器课程设计报告书
《软件设计基础(VB)》简单科学计算器课程设计报告书

河北联合大学 《软件设计基础(VB)》
课程设计报告
设计名称: 姓 名: 专业班级: 学 院: 设计时间: 设计地点:
简易科学计算器
学 号:
指导教师评语:
成绩:
指导教师签字: 年月日

目录
1.课程设计目的 ··············································································3
2.课程设计任务与要求 ·····································································3
3.课程设计说明书 ···········································································4
4.课程设计成果 ············································································20
5.程序调试过程 ············································································23
6.设计问题的不足和改进方案 ··························································23
7.课程设计心得 ············································································24
8.附录 ························································································24
9.参考文献
24

《软件设计基础(VB)》课程设计报告
第 3 页,共 26 页
1.课程设计目的 《软件设计基础(VB)》课程设计是这门课程的实践性教学环节之一,本次
设计结合实际应用的要求,使课程设计既覆盖 VB 的知识点,又接近工程实际需 要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力, 以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握 VB 这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。
2.课程设计任务与要求:
要求: 本次课程设计利用《软件设计基础(VB)》课程中所学到的编程知识和编程
技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的 基本技能,独立完成所布置的任务。 要求:
1、对系统进行功能需求分析 2、设计合理的数据结构和系统框架 3、界面设计美观、清楚、合理 4、编程简练,程序功能齐全,能正确运行 5、具有一定的创新性 6、说明书、流程图要清楚 7、课题完成后必须按要求提交课程设计报告

《软件设计基础(VB)》课程设计报告
任务:
第 4 页,共 26 页
能够完成数字的连续运算和函数的求值
基本要求:
(1)能够完成数值常数的四则运算,不要求支持运算符的优先级。
(2)能够进行如下函数的求值运算,包括 sin, cos, tan, exp, log, ln, sqr, 1/x,
以及常数 e 和园周率π 。
(3)设置 5 个存贮键,以便将中间运算结果存入,在需要的时候取出参与运
算。
(4)支持键盘快捷运算(仅要求数字及运算符)。
(5)ON 进行初始化,清除内存中的数,OFF 退出,CE 清除显示。
(6)因为控件数目较多,要求采用控件数组,以减少事件处理的复杂程度,
使程序简洁高效。
(7)出错处理:操作数如果不符合数学上的定义,应该给出错误信息。例:0
做除数,负数或 0 做真数等情况。
创新要求:
如支持运算符的优先级,或者增加新的函数等。
3.课程设计说明书 ⑴功能描述 窗体通过窗体命令按钮或键盘输入数字实现基本的数学运算,使用窗体的功能按 钮计算某些特殊函数

《软件设计基础(VB)》课程设计报告
⑵概要设计
第 5 页,共 26 页
模块结构图:
根据功能分析,建立系统的体系结构,即将整个系统分解成若干子模块,
用框图表示各功能模块之间的接口关系(如下图)。
输入数字
赋值给变量












num2,

求值
简易科学计算器功能框图
⑶详细设计 总体流程图:

《软件设计基础(VB)》课程设计报告
开始 输入 num1 输入运算符 opttype 输入 num2
第 6 页,共 26 页
判断是否有足够的数运算,有则运算并 赋值给 num1,无则取出 num2
输出结果 结束
各功能模块流程图: 1.数字按钮:
开始 输入数字
结束
2 功能函数:
开始 计算函数 结束
3.运算符
开始
输入并存储运算符
结束

《软件设计基础(VB)》课程设计报告
4.存储键
开始
取出数值
第 7 页,共 26 页
结束
⑷代码实现
详细说明各功能模块的实现过程,所用到的算法、技巧等(附上代码)。如:
本系统总共 1 个窗体:form1 详细如下:
form1
作用:“进入应用程序”。
所用控件:1 个文本框,2 个框架,数个命令按钮,2 个单选按钮和 1 个菜单

设计思路:用文本框显示输入的数字并将结果显示在文本框中,用命令按钮
来计算和输入数字。
详细内容: command1(0-9)为数字的控件数组,command2(0-7)为功能函数
的控件数组,command5(0-4)为记忆按钮,command6(0-3)为运算符的控件数组。
代码如下:
Dim lastinput As String ‘定义输入标志
'
Dim num1 As Double '第一个数
Dim num2 As Double '第二个数
Dim opttype As Integer '运算符
Dim optnum As Integer '点击运算符次数
Dim i(5) As Double’
Dim eqvnum As Integer’ 点击等号次数
Function calc(num1, opttype, num2) As Double’自定义运算过程

《软件设计基础(VB)》课程设计报告
Select Case opttype Case 0‘选择/运算
If num2 = 0 Then‘除数为 0 提示出错 Text1.Text = "Error"
第 8 页,共 26 页
程序设计界面

《软件设计基础(VB)》课程设计报告
MsgBox "0 不能做除数", 48, "提示"
第 9 页,共 26 页
Else
calc = num1 / num2
End If
Case 1 ‘选择*运算
calc = num1 * num2
Case 2 ‘选择-运算
calc = num1 - num2
Case 3 ‘选择+运算
calc = num1 + num2
End Select
If Text1.Text <> "Error" Then Text1.Text = Trim(Str(calc))‘除数为 0 重新输入
num1 = 0
num2 = 0
lastinput = "eqv"
opttype = -1
End Function
Private Sub Command1_Click(Index As Integer)’0-9 运算数的输入
If Len(Text1.Text) > 16 Then Exit Sub ‘num1 的输入
If Text1.Text = "0" Or lastinput = "eqv" Then Text1.Text = ""
Text1.Text = Text1.Text & Index
lastinput = "num"
If lastinput = "opt" Then
‘num2 的输入

《软件设计基础(VB)》课程设计报告
Text1.Text = ""
第 10 页,共 26 页
Text1.Text = Text1.Text & Index
lastinput = "num"
End If
Command1(0).SetFocus‘0 获得焦点
End Sub
Private Sub Command10_Click()‘OFF 按钮,关闭程序
End
End Sub
Private Sub Command11_Click()‘CE 按钮,清除
If Len(Text1.Text) >= 1 Then
Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1)
Else
MsgBox "已经是最后一位", 48, "提示" End If End Sub Private Sub Command12_Click()‘-/+按钮 Text1.Text = Trim(-Val(Text1.Text)) End Sub Private Sub Command13_Click()‘x^2 按钮

《软件设计基础(VB)》课程设计报告
Text1.Text = Text1.Text ^ 2
第 11 页,共 26 页
End Sub
Private Sub Command14_Click()‘八进制按钮
Text1.Text = Oct(Text1.Text)
End Sub
Private Sub Command2_Click(Index As Integer)‘功能函数按钮
Const pi As Single = 3.14159265358979 ‘ 将 x 转化为角度制
Dim x As Double
x = Val(Text1.Text)
If Option2.Value = ture Then x = x * pi / 180 ‘计算三角函数时判断条件
Select Case Index
Case 0 ‘计算 sin ,以特定格式输出
Text1.Text = Format(Sin(x), "0.######")
lastinput = "num"
Case 1
‘计算 exp
Text1.Text = 10 ^ Text1.Text
lastinput = "num"
Case 2
‘计算 sqr
If Text1.Text > 0 Then
Text1.Text = Format(Sqr(Val(Text1.Text)), "##.######")
lastinput = "num"
Else
MsgBox "被开方数不能为负数", 48, "提示"

《软件设计基础(VB)》课程设计报告
Text1.Text = ""
Text1.SetFocus
End If
Case 3
‘计算 cos
Text1.Text = Format(Cos(x), "0.######")
lastinput = "num"
Case 4
‘计算 log
Text1.Text = Log(text1.text) / Log(10)
lastinput = "num"
Case 5
‘计算 1/x
If x = 0 Then
MsgBox "数据输入不正确", 48, "提示"
Else
Text1.Text = "0" & 1 / Val(x)
lastinput = "num"
End If
Case 6
‘计算 tan
Text1.Text = Format(Tan(x), "0.######")
lastinput = "num"
Case 7
‘计算 ln
Text1.Text = Log(Text1.Text)
lastinput = "num"
End Select
第 12 页,共 26 页

《软件设计基础(VB)》课程设计报告
End Sub
第 13 页,共 26 页
Private Sub Command3_Click() ‘π 按钮
Text1.Text = 3.1415926
直接输出
lastinput = "num"
End Sub
Private Sub Command4_Click()‘e 按钮
Dim e As Double, i As Integer, j As Integer ' j 作为内循环的循环变量
Dim dblFact As Double '存放阶乘结果的变量
e=2
i=1
Do
i=i+1
dblFact = 1 '初始化阶乘结果变量
For j = 1 To i '内嵌套循环,求阶乘
dblFact = dblFact * j
Next
e = e + 1 / dblFact
Loop Until 1 / dblFact < 1 / 10 ^ 16 '直至第 i 项的值<10-16,就结束循环
Text1.Text = e
lastinput = "num"
End Sub
Private Sub Command5_Click(Index As Integer)M1-M5 记忆按钮
Select Case Index
通过“=”事件选择输出对象

《软件设计基础(VB)》课程设计报告
Case 0
第 14 页,共 26 页
Text1.Text = i(0)
Case 1
Text1.Text = i(1)
Case 2
Text1.Text = i(2)
Case 3
Text1.Text = i(3)
Case 4
Text1.Text = i(4)
End Select
End Sub
Private Sub Command6_Click(Index As Integer)‘运算符按钮
num2 = Val(Text1.Text)
If optnum = 0 Then‘如果第一次点击运算符将数值赋给 num1
num1 = num2
Text1.Text = ""
lastinput = "opt"
opttype = Index
‘保存运算类型
optnum = 1
Else
num1 = calc(num1, opttype, num2)’如果不是第一次点击运算符计算前面表达式的
值,赋给 num1

《软件设计基础(VB)》课程设计报告
Text1.Text = "" lastinput = "opt" opttype = Index optnum = 1 End If End Sub Private Sub Command7_Click()‘=按钮 num2 = Val(Text1.Text)‘将文本框的值赋给 num2 Text1.Text = calc(num1, opttype, num2) lastinput = "eqv" optnum = 0 Select Case eqvnum‘为存储按钮的设置准备条件 Case 0 i(0) = Val(Text1.Text) Case 1 i(1) = Val(Text1.Text) Case 2 i(2) = Val(Text1.Text) Case 3 i(3) = Val(Text1.Text) Case 4 i(4) = Val(Text1.Text) End Select
第 15 页,共 26 页

《软件设计基础(VB)》课程设计报告
eqvnum = eqvnum + 1
第 16 页,共 26 页
End Sub
Private Sub Command8_Click()‘ “.”的代码
If Len(Text1.Text) > 16 Or InStr(1, Text1.Text, ".") > 0 And lastinput <> "eqv" Then
Exit Sub
If lastinput = "opt" Or lastinput = "eqv" Or lastinput = "neg" Then
Text1.Text = Text1.Text + "0."
Else
Text1.Text = Text1.Text + "."
End If
lastinput = "num"
End Sub
Private Sub Command9_Click()‘初始化
Call Form_Load
optnum = 0
End Sub
Private Sub copy_Click()‘菜单项的代码
Clipboard.Clear ‘清空剪贴板
Clipboard.SetText Text1.Text
‘将文本框内容放入剪贴板
End Sub
Private Sub form_KeyPress(KeyAscii As Integer)‘0-9 和“.”键盘输入
Text1.SetFocus
Text1.Text = ""

《软件设计基础(VB)》课程设计报告
Dim i As Integer If KeyAscii = Asc("0") Then i=0 Call Command1_Click(i) ElseIf KeyAscii = Asc("1") Then i=1 Call Command1_Click(i) ElseIf KeyAscii = Asc("2") Then i=2 Command1_Click (i) ElseIf KeyAscii = Asc("3") Then i=3 Command1_Click (i) ElseIf KeyAscii = Asc("4") Then i=4 Command1_Click (i) ElseIf KeyAscii = Asc("5") Then i=5 Command1_Click (i) ElseIf KeyAscii = Asc("6") Then i=6 Command1_Click (i) ElseIf KeyAscii = Asc("7") Then
第 17 页,共 26 页

《软件设计基础(VB)》课程设计报告
i=7 Command1_Click (i) ElseIf KeyAscii = Asc("8") Then i=8 Command1_Click (i) ElseIf KeyAscii = Asc("9") Then i=9 Command1_Click (i) ElseIf KeyAscii = Asc(".") Then Command8_Click End If End Sub Private Sub Form_Load()‘窗体加载事件 Form1.Picture = LoadPicture(App.Path + "\1.jpg") num1 = 0 num2 = 0 opttype = -1 Text1.Text = "0" lastinput = "eqv" optnum = 0 eqvnum = 0 End Sub Private Sub paste_Click()菜单项 粘贴 按钮
第 18 页,共 26 页
‘为窗体设置背景图片

《软件设计基础(VB)》课程设计报告
Text1.Text = Clipboard.GetText 将剪贴板内容取出
第 19 页,共 26 页
End Sub
Private Sub Text1_Click()
Text1.Text = ""
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)‘运算符键盘输入
Select Case KeyAscii
Case Asc("+") '按下加号键
Command6_Click (3) '调用运算符单击事件过程
Text1.Text = ""
Case Asc("-") '按下减号键
If Text1.Text <> "" Then '若文本框不空,看作减号,否则看作负号
Command6_Click (2) '调用减号按钮单击事件过程
KeyAscii = 0 '按键不再影响文本框
End If
Text1.Text = ""
Case Asc("*") '按下乘号键
Command6_Click (1)
Case Asc("/") '按下除号键
Command6_Click (0)
Case Asc("=")‘按下=键
num2 = Val(Right(Text1.Text, Len(Text1.Text) - 1))
Text1.Text = calc(num1, opttype, num2)

《软件设计基础(VB)》课程设计报告
lastinput = "eqv"
optnum = 0
Select Case eqvnum‘M1-M5 在键盘输入的代码
Case 0
i(0) = Val(Right(Text1.Text, Len(Text1.Text) - 1))
Case 1
i(1) = Val(Right(Text1.Text, Len(Text1.Text) - 1))
Case 2
i(2) = Val(Right(Text1.Text, Len(Text1.Text) - 1))
Case 3
i(3) = Val(Right(Text1.Text, Len(Text1.Text) - 1))
Case 4
i(4) = Val(Right(Text1.Text, Len(Text1.Text) - 1))
End Select
eqvnum = eqvnum + 1
End Select
End Sub
Private sub command15_click ‘清空按钮
Text1.text=”0”
‘文本框内容显示为 0
Lastinput=”eqv”
‘标志显示为“=”标志
4.课程设计成果
第 20 页,共 26 页

60进制计数器课程设计报告

电子技术基础实验 课程设计 60进制计数器

一、实验目的 (一)掌握中规模集成计数器74LS161的引脚图和逻辑功能。 (二)熟悉555集成定数器芯片的引脚图。 (三)利用74LS161和555定时器构成60进制计数器。 (四)在Multisim软件中仿真60进制计数器。 二、实验容 (一)集成计数器74LS161逻辑功能验证。 (二)用555定时器构成多谐振荡器。 (三)用两片74LS161和555定时器构成60进制计数器。 三、集成计数器介绍 (一)集成计数器74LS161管脚介绍 74LS161是4位二进制同步加法计时器。图1为它的管脚排列图,集成芯片74LS161的CLR是异步清零端(低电平有效),LOAD是异步预置数控制端(低电平有效)。CLK是时钟脉冲输入端,RCO是进位输出端,ENP、ENT是计数器使能端,高电平有效。A、B、C、D是数据输入端; QA、QB、QC、QD是数据输出端。

图1 74LS161管脚排列图 (二)集成计数器74LS161功能介绍 由表1可知,74LS161具有以下功能: 1.异步清零。当CLR=0时,无论其他各输入端的状态如何,计数器均被直接置“0”。 2.同步预置数。当CLR=1、LOAD=0且在CP上升沿作用时,计数器将ABCD同时置入QA、QB、QC、QD,使QA、QB、QC、QD=ABCD。 3.保持(禁止)。CLR=LOAD=1且ENP、ENT=0时,无论有无CP脉冲作用,计数器都将保持原有的状态不变(停止计数)。 4.计数。CLR=LOAD=ENP=ENT=1时,74LS161处于计数状态。 表1 74LS161功能表

计算器课程设计报告

课设报告 福建工程学院软件学院 题目:汇编计算器 班级: 1301 姓名 学号: 指导老师: 日期:

目录 1、设计目的 (3) 2、概要设计 (3) 2.1 系统总体分析 (3) 2.2 主模块框图及说明 (3) 3、详细设计 (4) 3.1 主模块及子模块概述 (4) 3.2各模块详运算 (4) 4、程序调试 (7) 4.1 运行界面分析 (7) 算法分析 (7) 4.2 调试过程与分析 (9) 5、心得体会 (11) 5.1 设计体会 (11) 5.2 系统改进 (11) 附录: (11)

1、设计目的 本课程设计是一次程序设计方法及技能的基本训练,通过实际程序的开发及调试,巩固课堂上学到的关于程序设计的基本知识和基本方法,进一步熟悉汇编语言的结构特点和使用,达到能独立阅读、设计编写和调试具有一定规模的汇编程序的水平。 2、概要设计 用8086汇编语言编写一个能实现四则混合运算、带括号功能的整数计算器程序。程序能实现键盘十进制运算表达式的输入和显示(例如输入:“1+2*(3-4)”),按“=”后输出十进制表示的运算结果。 2.1 系统总体分析 在8086的操作环境下,该计算器分成输入,数据存储,运算功能,输出几个大模块,实现了使用者使用该计算器时输入一个算式,能让系统进行计算。此计算器的实现功能是基本的数学的四则运算,结果范围在0~65535。 2.2 主模块框图及说明 此流程图简要的表现出了所要实现的功能以及一些功能的大概算法,同时也是我编写的一个总体的框架。 程序流程图说明:通过流程图,可以看出程序运行时,首先输出提示语气,当用户输入后,程序根据所输入内容进行判断,通过判断的结果来决定调用哪个功能模块,首要先要要判断的是否为0-9,“+”“-”“*”“/”这些字符,若不是就会报错,实则根据运算符号调用其功能模块完成运算。最后将运算的结果显示在主频幕上,返回主程序,使用户可以重新输入。

简单计算器c++课程设计

简单计算器 1 基本功能描述 简单计算器包括双目运算符和单目运算符。双目运算符包含基本的四则运算及乘幂功能,单目运算符包含正余弦、阶乘、对数、开方、倒数等运算。可对输入任意操作数包含小数和整数及正数和负数进行以上的所有运算并能连续运算。出现错误会给出提示,同时包含清除、退格、退出功能以及有与所有按钮相对应的菜单项。 2 设计思路 如图1,是输入数据子函数的流程图。打开计算器程序,输入数据,判断此次输入之前是否有数字输入,如果有,则在之前输入的数字字符后加上现有的数字字符;如果没有,则直接使编辑框显示所输入的数字字符。判断是否继续键入数字,如果是,则继续进行前面的判断,如果否,则用UpdateData(FALSE)刷新显示。 如图2,是整个计算器的流程图。对于输入的算式,判断运算符是双目运算符还是单目运算符。如果是双目运算符,则把操作数存入数组a[z+2]中,把运算符存入b[z+1]中;如果是单目运算符,则把字符串转化为可计算的数字,再进行计算。下面判断运算符是否合法,如果合法,则将结果存入a[0],不合法,则弹出对话框,提示错误。结束程序。

输入一个数字 在之前输入的数字字符后面加上现在的数字字符。 Eg :m_str+=”9”。 直接使编辑框显示所输入的数字字符。 Eg :m_str=”9”。 pass3=1表示已有数字输入 开始 之前是否有数字输入? pass3==1? 继续键入数字? 用UpdateData(FALSE)刷新显示 图1 输入数据子函数流程图 Y N Y N

输入开始 双目运算符 是否每一个操作数都存入a[]数组? 把操作数存入a[z+2],把运算符存入b[z+1]。 单目运算符 将字符串转换 为可计算的数进行运算 运算是否合法? 将结果存入a[0] 弹出对话框提示错误 结束Y Y N N 图2 简单计算器总流程图

Java带计算过程的计算器课程设计报告

保存计算过程的计算器 Java程序设计课程设计报告保存计算过程的计算器 目录 1 概述.............................................. 错误!未定义书签。 1.1 课程设计目的............................... 错误!未定义书签。 1.2 课程设计内容............................... 错误!未定义书签。 2 系统需求分析.......................................... 错误!未定义书签。 2.1 系统目标................................... 错误!未定义书签。 2.2 主体功能................................... 错误!未定义书签。 2.3 开发环境................................... 错误!未定义书签。 3 系统概要设计.......................................... 错误!未定义书签。 3.1 系统的功能模块划分......................... 错误!未定义书签。 3.2 系统流程图................................. 错误!未定义书签。4系统详细设计........................................... 错误!未定义书签。 5 测试.................................................. 错误!未定义书签。 5.1 测试方案................................... 错误!未定义书签。 5.2 测试结果................................... 错误!未定义书签。 6 小结.................................................. 错误!未定义书签。参考文献................................................ 错误!未定义书签。附录................................................ 错误!未定义书签。 附录1 源程序清单...................................... 错误!未定义书签。

C语言课程设计 简单计算器程序

课程设计名称:C语言课程设计课程设计题目:简单计算器程序

目录 第1章需求分析 (1) 1.1设计要求 (1) 1.2任务 (1) 第2章总体设计 (2) 2.1设计简介及设计方案论述 (2) 2.2功能模块层次图 (2) 第3章详细设计 (3) 3.3由(后缀)逆波兰表达式计算中缀表达式原理 (8) 3.3.1算法描述 (8) 第4章调试分析 (10) 4.1程序设计中所遇到的错误及犯错的原因 (10) 4.2错误的解决方法 (10) 第5章用户手册 (11) 总结 (15) 参考文献 (16) 附录(程序清单) (17)

第1章需求分析 1.1 设计要求 (1)用 C 语言数据结构实现程序设计; (2)利用结构体、栈、进行相关信息处理; (2)系统的各个功能模块要求用函数的形式实现; (4)界面简单,可操作性高。 1.2任务 (1)定义一个结构体类型数组,输入0~9 及+、--、*等符号的信息,将其信息存储起来; (2)输入简单的加减乘除算术计算式,并在屏幕上显示逆波兰(后缀式)表达式和计算结果; (3)编写代码; (4)程序分析与调试。 说明: 本课程设计将实现一个简单计算器。在功能上尽量模仿windows 的计算器。系统界面不做牵制要求。该程序能实现标准型中+、-、*、/、(、)、.、的混合运算表达式(一般意义上的中缀表达式),将其转换成逆序波兰表达式(后缀表达式)并计算输出结果。在进行运算后可以选择继续运算或者结束当前运算。即时准确地获得需要的计算的结果,充分降低了数字计算的难度和节约了时间,对人们的生活有一定的帮助。

第2章 总体设计 2.1设计简介及设计方案论述 逆波兰表达式又叫做后缀表达式。在通常的表达式中,二元运算符总是置于与之相 关的两个运算对象之间,所以,这种表示法也称为中缀表达式。波兰逻辑学家 J.Lukasiewicz 于 1929 年提出了另一种表示表达式的方法。按此方法,每一运算符都置 于其运算对象之后,故称为后缀表达式。 后缀表达式的优点是显而易见的, 编译器在处理时候按照从左至右的顺序读取逆波 兰表达式,遇到运算对象直接压入堆栈,遇到运算符就从堆栈提取后进的两个对象进行计算,这个过程正好符合了计算机计算的原理。后缀表达式比前缀表达式更加易于转换,并且它的最左面一定为数字,这一点在实 际编程的时候就会体会到它的好处了。 逆波兰表达式有一个更大的优点,就是拆括号,根据运算符的级别将中缀表达式转 换成逆波兰表达式后,运算顺序就已经替代了运算符的级别,这样也避免了括号提高运 算级别的特殊处理。 2.2功能模块层次图 将算术表达式转化为逆波兰表达式 计算逆波兰表达式的值 简单计算器 表 达 式 格 式 转 换 系统 求 值 计 算 系 统

数电脉搏计数器电路课程设计

烟台南山学院 数字电子技术课程设计题目脉搏计数电路设计 姓名:___ XXXXXX ___ 所在学院:_工学院电气与电子工程系 所学专业:_ 自动化 班级:___电气工程XXXX 学号:___XXXXXXXXXXXXXX 指导教师:_____ XXXXXXXX ___ 完成时间:____ XXXXXXXXXXXXX

数电课程设计任务书 一、基本情况 学时:40学时学分:1学分适应班级:12电气工程 二、进度安排 本设计共安排1周,合计40学时,具体分配如下: 实习动员及准备工作:2学时 总体方案设计:4学时 查阅资料,讨论设计:24学时 撰写设计报告:8学时 总结:2学时 教师辅导:随时 三、基本要求 1、课程设计的基本要求 数字电子技术课程设计是在学习完数字电子课程之后,按照课程教学要求,对学生进行综合性训练的一个实践教学环节。主要是培养学生综合运用理论知识的能力,分析问题和解决问题的能力,以及根据实际要求进行独立设计的能力。初步掌握数字电子线路的安装、布线、焊接、调试等基本技能;熟练掌握电子电路基本元器件的使用方法,训练、提高读图能力;掌握组装调试方法。其中理论设计包括总体方案选择,具体电路设计,选择元器件及计算参数等,课程设计的最后要求是写出设计总结报告,把设计内容进行全面的总结,若有实践条件,把实践内容上升到理论高度。 2、课程设计的教学要求 数字电子技术课程设计的教学采用相对集中的方式进行,以班为单位全班学生集中到设计室进行。做到实训教学课堂化,严格考勤制度,在实训期间累计旷课达到6节以上,或者迟到、早退累计达到8次以上的学生,该课程考核按不及格处理。在实训期间需要外出查找资料,必须在指定的时间内方可外出。 课程设计的任务相对分散,每3名学生组成一个小组,完成一个课题的设计。小组成员既有分工、又要协作,同一小组的成员之间可以相互探讨、协商,可以互相借鉴或参考别人

单片机计算器的课程设计报告

目录 一、设计任务和性能指标 (1) 1.1设计任务 (2) 1.2性能指标 (2) 二、设计方案 (2) 3 3 4 5 5 6 6 7 7 20 20 20 20 21 参考文献 (21) 附录1、系统硬件电路图 (22) 附录2、硬件实物图 (23) 附录3、器件清单 (24)

一、设计任务和性能指标 1.1设计任务 自制一个单片机最小系统,包括复位电路,采用外部小键盘输入数据,能够实现加法、乘法及一个科学计算,计算结果显示在四位一体的数码管上。 要求用Protel 画出系统的电路原理图(要求以最少组件,实现系统设计所要 显 位 监测模块采用二极管和扬声器(实验室用二极管代替)组成电路。 键盘电路采用4*4矩阵键盘电路。 显示模块采用4枚共阳极数码管和74ls273锁存芯片构成等器件构成。 整个单片机的接口电路: P0用于显示输出; P1用于键扫描输入; P2用于数码管位选控制; P3用于键盘扩展(部分运算符输入);

三.系统硬件设计 3.1单片机最小系统 单片机最小系统就是支持主芯片正常工作的最小电路部分,包括主控芯片、复位电路和晶振电路。 主控芯片选取STC89C52RC芯片,因其具有良好的性能及稳定性,价格便宜应用方便。 扩展键:“log”,“ln”,“x^2”“小数点”,“开方” 共计25个按键,采用4*4矩阵键盘,键盘的行和列之间都有公共端相连,四行和四列的8个公共端分别接P1.0~P1.7,这样扫描P1口就可以完成对矩阵键盘的扫描,通过对16个按键进行编码,从而得到键盘的口地址,对比P1口德扫描结果和各按键的地址,我们就可以得到是哪个键按下,从而完成键盘的功能。 以下为键盘接口电路的硬件电路图

24进制计数器设计报告.doc

24进制计数器设计报告 单时钟同步24进制计数器课程设计报告1.设计任务1.1设计目的1.了解计数器的组成及工作原理。 2.进一步掌握计数器的设计方法和计数器相互级联的方法。 3.进一步掌握各芯片的逻辑功能及使用方法。 4.进一步掌握数字系统的制作和布线方法。 5.熟悉集成电路的引脚安排。 1.2设计指标1.以24为一个周期,且具有自动清零功能。 2.能显示当前计数状态。 1.3设计要求1.画出总体设计框图,以说明计数器由哪些相对独立的功能模块组成,标出各个模块之间互相联系,时钟信号传输路径、方向。 并以文字对原理作辅助说明。 2.设计各个功能模块的电路图,加上原理说明。 3.选择合适的元器件,利用multisim仿真软件验证、调试各个功能模块的电路,在接线验证时设计、选择合适的输入信号和输出方式,在确定电路充分正确性同时,输入信号和输出方式要便于电路的测试和故障排除。 4.在验证各个功能模块基础上,对整个电路的元器件和布线进行合理布局。 5.打印PCB板,腐蚀,钻孔,插元器件,焊接再就对整个计数器电路进行调试。

2.设计思路与总体框图.计数器由计数器、译码器、显示器三部分电路组成,再由555定时器组成的多谐振荡器来产生方波,充当计数脉冲来作为计数器的时钟信号,计数结果通过译码器显示。 图1所示为计数器的一般结构框图。 十位数码显示管译码驱动异步清零计数器计数脉冲(由555电路产生)个位位数码示像管译码驱动异步清零计数器强制清零▲图1计数器结构框图3.系统硬件电路的设计3.1555多谐荡电路555多谐振荡电路由NE555P芯片、电阻和电容组成。 由NE555P的3脚输出方波。 ▲图2555电路3.2计数器电路集成计数芯片一般都设置有清零输入端和置数输入端,而且无论是清零还是置数都有同步和异步之分。 有的集成计数器采用同步方式,即当CP触发沿到来时才能完成清零或置数任务;有的集成计数器则采用异步方式,即通过触发器的异步输入端来直接实现清零或置数,与CP信号无关。 本设计采用异步清零。 由2片十进制同步加法计数器74LS160(图2-1-1)、一片与非门74LS00(图2-1-2)和相应的电阻、开关。 由外加送来的计数脉冲(由555电路产生)送入两个计数器的CLK端,电路在计数脉冲的作用下按二进制自然序依次递增1,当个位计数到9时,输出进位信号给十位充当使能信号进位。

科学计算器课程设计报告C课程设计修订稿

科学计算器课程设计报告C课程设计 集团标准化工作小组 [Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]

计算机科学与技术学部 C++课程设计 题目科学计算器 学部计算机科学与技术 班级计科1103 指导教师李军 姓名刘明 学号 2012年6月27日

摘要 计算器的产生和发展是建立在电子计算机基础之上的。硬件方面,自1946年第一台电子计算机诞生以来,计算机技术的发展可谓日新月异,从庞大的只能在实验室里供研究使用的计算机到如今能适应不同环境满足不同需求的各种各样的计算机;运算速度从每秒几千次到每秒几百亿次;处理器从焊有上百万个电子管的大的惊人的电子板到只有指甲大小的集成电路;现在计算机在硬件方面的发展已达到了每三个月更新换代一次的惊人速度。软件方面,也已从机器语言、汇编语言、高级语言发展到现如今的第四代语言——非结构化、面向对象、可视化的语言。 在这个计算器里面,我们实现了简单的四则运算以及更高功能的科学计算,它的外观简洁美观,使人们能快捷简单的操作。能准确的得到计算结果,大大减少了数字计算所需要的时间,为人们的生活带来便利。此系统在Windows 7环境下,使用VC++ 进行编写。 简单计算器包括双目运算和单目运算功能,双目运算符包含基本的四则运算及乘幂功能,单目运算符包含正余弦,对数,开方,阶乘,倒数,进制转换等运算。可对其输入任意操作数,包括小数和整数及正数和负数进行以上的所有运算并能连续运算。并且包含清除,退格功能等。我们所做的计算器其功能较Windows 7下的计算器还是很不够多,没有其菜单的实现功能项,没有其小巧的标准计算器。 关键词:计算器;运算;VC++等

java课程设计报告_简单图形界面计算器的设计

Java 课程设计 简单图形界面计算器的设计 课程名称 Java程序设计 选题名称简单图形界面计算器的设计 专业 班级 姓名 学号 指导教师 简单图形界面计算器的设计

一、设计任务与目标 本次java程序设计我的设计任务是设计一个图形界面(GUI)的计算器应用程序并且能够完成简单的算术运算。本次任务的基本要求是这个计算器应用程序可以完成十进制的加、减、乘、除、求倒、取余、开方运算,且有小数点、正负号、退格和清零功能。而我要在此基础上添加一项千位符分隔符的功能,即以三位为一级,在输入的一串数字中每三位加入一个逗号,这项功能国际通用,并已经成为惯例,会计记账都用这种方法便于账目核算与管理。 GUI计算器设计的具体目标: 1.完成十进制的加、减、乘、除、求倒、取余和开方运算; 2.有小数点和正负号加入运算; 3.有退格、复位和清零的功能; 4.有千位符分隔符的功能,即在输入的一串数字中每三位加入一个逗号。 二、方案设计与论证 1.设计目标的总体分析 (1)设计目标的需求分析:计算器是现在一个普遍应用的工具,能够解决许多人工所无法计算的数据,节省大量宝贵的时间。 (2)设计目标的功能分析:实现计算器系统的功能,主要有两个功能模块:输入和输出。 (3)设计原则:基于计算器系统要具有适用性广、操作简便等特点,本系统预计要达到以下几个目标:①满足以上的基本功能要求;②能够在常见的计算机及其操作系统上运行。 2.设计的基本思路 利用GUI的界面设计,将整个大设计分为三块,分别是数据的输入,运算符

功能符的控制和数据的输入输出显示。利用Swing控件,数据的输入由0~9这10个按钮来表示,用“+”、“-”、“*”、“/”、“1/x”、“%”、“sqrt”这7个按钮来表示加、减、乘、除、求倒、取余、开方运算,用“.”和“±”这2个按钮来表示小数点和正负号,用“Back”、“CE”和“C”这3个按钮来表示退格、复位和清零的功能,数据的输入输出显示由文本字段来表示。将计算器的总体界面设计好后,再将代码分别写入不同的按钮的源程序中。 我要完成的一项改进,即添加一个拥有千位符分隔符功能的按钮,按下这个按钮能够在输入的一串数字中每三位加入一个逗号并且显示出来。我要在之前的界面设计的基础上多添加一个按钮“$”来表示千位符分隔符,并且将功能代码写入这个按钮的源程序中。 三、程序流程图,程序清单与调用关系 1. 程序流程图:

简易计算器课程设计

评阅教师评语:课程设计成绩 考勤成绩 实做成绩 报告成绩 总评成绩指导教师签名: 课程设计报告 论文题目基于ARM的简易计算器设计 学院(系):电子信息与自动化学院 班级:测控技术与仪器 学生姓名:同组同学: 学号:学号: 指导教师:杨泽林王先全杨继森鲁进时间:从2013年 6 月10 日到2013年 6 月28 日 1

目录 1、封面—————————————————————P1 2、目录—————————————————————P2 3、前言—————————————————————P3 4、关键字————————————————————P3 5、原理与总体方案————————————————P3 6、硬件设计———————————————————P6 7、调试—————————————————————P10 8、测试与分析——————————————————P11 9、总结—————————————————————P13

10、附件—————————————————————P14 前言 近几年,随着大规模集成电路的发展,各种便携式嵌入式设备,具有十分广阔的市场前景。嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是是由单个程序实现整个控制逻辑。在嵌入式系统中,数据和命令通过网络接口或串行口经过ARM程序处理后,或显示在LCD上,或传输到远端PC上。 本文通过周立功的LPC2106芯片完成的简易计算器,正是对嵌入式应用的学习和探索。 一、摘要: 计算器一般是指“电子计算器”,是能进行数学运算的手持机器,拥有集成电路芯片。对于嵌入式系统,以其占用资源少、专用性强,在汽车电子、航空和工控领域得到了广泛地应用。本设计就是先通过C语言进行相应程序的编写然后在ADS中进行运行最后导入PROTUES进行仿真。最后利用ARM中的LPC2106芯片来控制液晶显示器和4X4矩阵式键盘,从而实现简单的加、减、乘、除等四则运算功能。 关键字:中断,扫描,仿真,计算 二、原理与总体方案: 主程序在初始化后调用键盘程序,再判断返回的值。若为数字0—9,则根据按键的次数进行保存和显示处理。若为功能键,则先判断上次的功能键,根据代号执行不同功能,并将按键次数清零。程序中键盘部分使用行列式扫描原理,若无键按下则调用动态显示程序,并继续检测键盘;若有键按下则得其键值,并通过查表转换为数字0—9和功能键与清零键的代号。最后将计算结果拆分成个、十、百位,再返回主程序继续检测键盘并显示;若为清零键,则返回主程序的最开始。 电路设计与原理:通过LPC2106芯片进行相应的设置来控制LCD显示器。 而通过对键盘上的值进行扫描,把相应的键值通过MM74C922芯片进行运算从而

基于单片机的光电计数器课程设计

计控学院 College of computer and control engineering Qiqihar university 电气工程课程设计报告题目:基于单片机的光电计数器 系别电气工程系 专业班级电气123班 学生姓名宋恺 学号2012024073 指导教师李艳东 提交日期 2015年6月 24日 成绩

电气工程课程设计报告 摘要 光电计数器是利用光电元件制成的自动计数装置。其工作原理是从光源发出的一束平行光照射在光电元件(如光电管、光敏电阻等)上,每当这束光被遮挡一次时,光电元件的工作状态就改变一次,通过放大器可使计数器记下被遮挡的次数。光电计数器的应用范围非常广泛,常用于记录成品数量,例如绕线机线圈匝数的检测、点钞机纸币张数的检测、复印机纸张数量的检测,或展览会参观者人数。 光电计数器与机械计数器相比,具有可靠性高、体积小、技术频率高、能和计算机链接实现自动控制等优点。本文即介绍基于MCS-51单片机的光电技术器。 关键词:单片机;光电计数器;数码显示;自动报警

齐齐哈尔大学计控学院电气工程系课程设计报告 目录 1 设计目的及意义 (1) 2 设计内容 (1) 2.1 系统整体设计 (1) 2.1.1 实验方案 (1) 2.1.2 光电计数器结构框图 (2) 图1 光电计数器结构框图 (2) 2.2系统硬件设计 (2) 2.2.1稳压直流电源电路 (2) 2.2.2发射接收电路 (3) 2.2.3显示电路 (3) 2.2.4报警电路 (4) 2.2.5硬件系统 (4) 2.3系统软件设计 (6) 3 结论7 4 参考文献 (8)

计算器课程设计报告

高级语言程序(JAVA)课程设计报告 系部名称:商学系专业班级:营销*** 学生姓名:墨璇 墨兰学号: ********** ********** 指导教师:王芬教师职称:讲师 2014年06月26日

目录 一、课程设计目的及意义 .................................... 错误!未定义书签。 二、课程设计任务 .......................................... 错误!未定义书签。 2.1程序设计要求....................................... 错误!未定义书签。 三、课程设计时间 .......................................... 错误!未定义书签。 四、课程设计地点 .......................................... 错误!未定义书签。 五、课程设计内容 .......................................... 错误!未定义书签。 5.1开发工具与平台..................................... 错误!未定义书签。 (1).开发工具 ...................................... 错误!未定义书签。 (2).开发平台 ...................................... 错误!未定义书签。 5.2设计思路........................................... 错误!未定义书签。 5.3 程序测试 .......................................... 错误!未定义书签。 5.4实验总结........................................... 错误!未定义书签。 六、课程设计感想 .......................................... 错误!未定义书签。 七、附录(程序代码) ...................................... 错误!未定义书签。

计算器设计的java课程设计报告

】 · ( 华东交通大学课程设计 课 程: Java 程序设计 题 目: 计算器设计 年 级: 2010级 专 业: 信息一班 * 学 号: 姓 名: 组 员: 指导教师: 课程设计题目:计算器设计

课程设计(论文)任务书 基础学院信息与计算科学专业2010—1 班 一、课程设计(论文)题目计算器的设计 二、课程设计(论文)工作自2013 年 6 月23日起至2013 年6月27日止。 三、课程设计(论文) 地点: 计算机中心 · 四、课程设计(论文)内容要求: 1.本课程设计的目的 (1)使学生掌握系统各功能模块的基本工作原理; (2)掌握Java的基本编程原理和基本的编程方法; (3)使学生学会系统调试; (4)培养学生分析、解决问题的能力; (5)提高学生的软件文档写作能力和团队合作精神。 2.课程设计的任务及要求 ' 1)基本要求: (1)分析系统各功能模块的工作原理; (2)提出系统的设计方案; (3)对所进行编程、调试、修改。 2)创新要求: 在基本要求达到后,可进行创新设计,如:用虚函数,文件流,重载流插入运算符等。3)课程设计论文编写要求 (1)要按照书稿的规格打印誊写设计论文; > (2)论文包括目录、摘要、正文、总结等; (3)毕业论文装订按学校的统一要求完成。 4)答辩与评分标准: (1)达到课程设计的目的与要求,程序的可读性较好,并调试正确,60分; (2)能正确回答老师所提问题,可增加10分; (3)课程设计报告书写规范整齐,可增加10分; (4)心得体会认真总结,可增加10分; (5)程序有创新性,可增加10分; [ 成绩评定实行优秀、良好、中等、及格和不及格五个等级。不及格者需重做。 5)参考文献:

简易计算器课程设计

基于单片机的计算器的设计 摘要:本设计是一个实现加减乘除的计算器,它的硬件主要由四部分构成,一个8051单片机芯片,两个八段共阴极数码管,一个4*4键盘,它可以实现一位数的加减乘除运算。 显示部分:采用LED动态显示。 按键部分:采用4*4键盘。采用软件识别键值,并执行相应的操作。 关键词:LED接口;键盘接口;8255A;汇编语言 一、概述 1.1设计要求及任务: (1)设计4*4的键盘,其中10个数字键0~9,其余六个键“+”、“—”、“*”、“/”、“=”、和“C”键; (2)设计两位LED接口电路; (3)实现1位数的简单运算 1.2设计原理 (1)LED显示器接口技术 LED动态显示接口技术 (2)键盘显示技术 逐行(逐列扫描法) 二、系统总体方案和硬件设计 2.1计算器总体思想 显示部分:采用LED动态显示。 按键部分:采用4*4键盘。采用软件识别键值,并执行相应的操作。 执行过程:开机显示零,等待键入数值,当键入数字,经通过数码管显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在数码管上输出运算结果。 图1 系统设计框图

2.2硬件的选择与连接 图二硬件连接总图 2.2.1硬件选择 (1)由于本设计比较简单,因此选用内部含有4KBE2PROM的89C51单片机作为系统的核心。 (2)扩展输入/输出端口 在扩展输入/输出端口时,要求输入口能够缓冲,,输出口能够锁存。常用小规模集成电路芯片74LS244或74LS245等扩展输入端口,用74LS273、74LS373、 74LS377扩展输出端口。这种扩展方法的特点是电路简单,但功能单一、灵活性差。因而常采用中规模的可编程并行接口芯片8255A扩展输入/输出端口。 (3)锁存电路采用74LS373 2.2.2接口设计 (1)单片机与8255A的接口设计 8255A中的数据总线缓冲器为三态双向数据缓冲存储器,用于将8255A的数据线 D0~D7和单片机的数据总线(P0口)连接,实现单片机和接口间的数据传送。 读写控制部件的接口设计 1、/CS为片选信号,接成低电平表示8255A 被选中。/CS与P2.7相连,用P2口的最高位控制8255A是否工作。即将P2.7控制为低电平。 2、RESET-复位信号,高电平有效,接在单片机的RST端。 3、/RD和/WR为读写控制信号,低电平有效。分别将两个端口接单片机的/RD和/WR 4、A1和A0-端口选择信号,分别与单片机的低两位地址线P1.1和P1.0相连。用于选择不同端口。采用74LS373三态锁存器,用于分离P0口第八位地址线,将它的Q0和Q1口接至8255A的地址输入端A0和A1。

自动计数器课程设计..

西安电子科技大学 长安学院课程设计实验报告 姓名: 学号: 指导老师:

自动计数器课程设计 摘要:自动计数器在日常生活中屡见不鲜,它是根据不同的情况设定的,能够通过技术功能实现一些相应的程序,如通过自动计数器来实现自动打开和关闭各种电器设备的电源。广泛用于路灯,广告灯,电饭煲等领域。 自动计数器给人们生产生活带来了极大的方便,而且大大地扩展了自动计数器的功能。诸如自动定时报警器、按时自动打铃、时间程序自动控制、定时广播、自动启闭电路,定时开关烤箱、甚至各种定时电器的自动启用等,所有这些,都是以自动计数器为基础的。由于它的功能强劲,用途广泛,方便利用,所以在这个电子科技发展的时代,它是一个很好的电子产品。如在洗衣机的定时控制以及路灯等一些人们不能再现场控制的操控。都可以利用自动计数器来完成这样的功用。可见此系统所能带来的方便和经济效益是相当远大的。因此,研究自动计数器及扩大其应用,有着非常现实的意义。 本次课设设计是检验理论学习水平、实践动手能力及理论结合实际的能力,要求具有一定的分析处理问题能力和自学能力的一个比较重要得实践课程。通过这样的过程,使我们的论文及实践水平有一次较为全面的检查,同时也使我们硬件方面的能力有所提高,对以后的学习有这非常重要的意义。 关键词:电器设备;自动计数器;电源 指导老师签名:

1. 设计任务及方案 1.1设计任务 设计并制作一个自动计数器,NE555构成时钟信号发生器,CD4518为二,十进制加计数器,CD4543为译码驱动器,调节R17课调节555的震荡频率,C1为充放电电容,电容越大,充点时间越长,振荡频率越低。 介绍了一种新型的自动计数器设计方法,以NE555构成计数脉冲信号发生器,CD4518为二/十进制加法计数器,CD4543为译码驱动器,与按键、数码管等较少的辅助硬件电路相结合,实现对LED数码管进行控制。本系统具有体积小、硬件少、电路结构简单及容易操作等优点。 本计数器可将机械或人工计数方式变为电子计数,并且采用LED数码显示,简单直观,可适用于诸多行业,以满足现代生产、生活等方面的需求。随着生产技术的不断改善和提高,在现代化生产的许多场合都可以看到计数器的使用。本计数器具有低廉的造价以及控制简单等特点。通过对计数脉冲的转换可使本计数器应用更为广泛。 2.电路原理 2.1 元器件的设计与参数 本小组设计的电路原理图所涉及的元器件有:电压为+5V的直流稳压电源;最大电阻为100K的滑动变阻器R17一个;有极性电容C1一个;无极性电容C2和C3; 开关SW一个;电阻R1~~R16总共16个;芯片有:NE555,CD4518,CD4543;以及共阴极7段数码显示器两个。

计算机技术综合课程设计报告

计算机技术综合课程设计 设计题目锅炉液位控制系统学生姓名史婷艳 专业班级自动化1302班学号20134460203 指导老师洪镇南 2017年1 月3日

目录 前言 (2) 1 锅炉汽包水位控制对象与控制指标 (4) 1.1锅炉汽包水位的特征 (4) 1.2汽包水位动态特性 (4) 1.2.1汽包水位在给水流量W作用下的动态特性 (4) 1.2.2汽包水位在蒸汽流量D扰动下的动态特性 (5) 1.2.3燃料量B扰动下汽包水位的动态特性 (6) 2. 汽包水位控制方案 (7) 2.1单冲量控制方式 (7) 2.2 双冲量控制方式 (8) 2.3 三冲量控制方式 (9) 3. 三冲量串级PID控制 (11) 3.1 串级PID控制 (11) 3.2 智能整定PID控制 (12) 4 汽包水位模糊控制器设计及仿真 (12) 4.1 输入输出变量 (12) 4.2 隶属度函数 (15) 4.3基于MATLAB/Simulink 环境建立的系统仿真分析 (16) 4.3.1 基于MATLAB/Simulink 的系统模型 (16)

4.3.2 仿真结果分析 (18) 总结与体会 (18) 参考文献 (20) 前言 锅炉是典型的复杂热工系统,目前,中国各种类型的锅炉有几十万台,由于设备分散、管理不善或技术原因,使大多数锅炉难以处于良好工况,增加了锅炉的燃料消耗,降低了效率。同时,锅炉工作过程中各项指标的调节难以建立数学模型,具有非线性、不稳定性、时滞等特点,所以如何改善对锅炉的控制,保证其正常工作,提高效率一直是人们关注的焦点。而汽包液位是锅炉安全、稳定运行的重要指标,保证液位在给定范围内,对于高蒸汽品质、减少设备损耗和运行损耗、确保整个网络安全运行具有要意义。 现代锅炉的特点之一就是蒸发量显著提高,汽包容积相对变小,水位变化速度很快,稍不注意就容易造成汽包满水或者烧成干锅,这都对汽包液位控制系统提出了更高的要求。汽包液位过高,会影响汽包内汽液分离效果,使汽包出口的饱和蒸汽带水增多,蒸汽带水会使汽轮机产生水冲击,引起轴封破损、叶片断裂等事故。同时会使饱和蒸汽中含盐量增高,降低过热蒸汽品质,增加在过热器管壁和汽轮机叶片上的结垢。水位过低,则可能破坏自然循环锅炉汽水循环系统中某些薄弱环节,以致局部水冷管壁被烧坏,严重时会造成爆炸事故。 目前,对汽包液位位控制大多采用常规PID控制方式,从控制方式来看,它们要么系统结构简单成本低,不能有效的控制锅炉汽包“虚假水位”现象,要么能够在一定程度上控制“虚假现象”,系统却过于复杂,成本投入过大。常用的蒸汽锅炉液位调节系统有三种基本结构:单冲量调节系统结构、双冲量调节系统结构、串级三冲量调节系统结

硬件课程设计简易计算器设计

中国矿业大学徐海学院 单片机课程设计 姓名:XXX学号: 22090XXX 专业:计算机09-4班 题目:硬件课程设计 专题:简易计算器设计 指导教师: XXX 设计地点:嘉园时间: 2011-12-23 20011年12月

单片机课程设计任务书 专业年级计算机09-4 学号22090XXX 学生姓名XXX 任务下达日期:2011年12 月15日 设计日期:2011 年12 月15 日至2011 年12 月23日 设计题目:硬件课程设计 设计专题题目:简易计算器设计 设计主要内容和要求: 摘要: 利用单片机及外围接口电路(键盘接口和显示接口电路)设计制作一个计算器。 主要能实现 1.加法:能够计算四位以内的数的加法。 2减法:能计算四位数以内的减法。 3乘法:能够计算两位数以内的乘法。 4除法:能够计算四位数的乘法 5有清零功能,能随时对运算结果和数字输入进行清零。 关键词:单片机; 计算器 ; 加减乘除 指导教师签字:

目录 1 系统概述 (1) 1.1硬件知识概述 (1) 1.1.1 单片机 (1) 1.1.2 C语言 (1) 1.1.3 ISP (1) 1.2设计基本思想 (1) 2硬件电路设计 (2) 2.1 单片机最小系统 (2) 2.2键盘接口电路 (2) 2.3数码管显示电路 (3) 3 软件设计 (4) 3.1 复位电路 (4) 4.系统调试 (5) 4.1 软件流程图 (5) 4.1.1系统软件系统流程图 (5) 5.结束语 (6) 参考文献 (7) 附录 (8)

1 系统概述 1.1硬件知识概述 1.1.1 单片机 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。 1.1.2 C语言 C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出。1978后,C语言已先后被移植到大、中、小及微型机上。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画。具体应用比如单片机以及嵌入式系统开发。 1.1.3 ISP ISP(In-System Programming)在系统可编程,指电路板上的空白器件可以编程写入最终用户代码,而不需要从电路板上取下器件,已经编程的器件也可以用ISP 方式擦除或再编程。本次课程设计便使用ISP 方式,直接将编写好的程序下载到连接好的单片机中进行调试 1.2设计基本思想 利用单片机及外围接口电路(键盘接口和显示接口电路)设计制作一个计算器,用四位一体数码管显示计算数值及结果。要求用Protel 画出系统的电路原理图,绘出程序流程图,并给出程序清单。 主要能实现 1.加法:能够计算四位以内的数的加法。 2减法:能计算四位数以内的减法。 3乘法:能够计算两位数以内的乘法。 4除法:能够计算四位数的乘法 5有清零功能,能随时对运算结果和数字输入进行清零。

数电课程设计报告

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

在公共场所,例如车站、码头,准确的时间显得特别重要,否则很有可能给外出办事即旅行袋来麻烦。数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确度和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。数字钟是一种典型的数字电路,包括了组合逻辑电路和时序电路。 设计一个简易数字钟,具有整点报时和校时功能。 (1)以四位LED数码管显示时、分,时为二十四进制。 (2)时、分显示数字之间以小数点间隔,小数点以1Hz频率、50%占空比的亮、灭规律表示秒计时。 (3)整点报时采用蜂鸣器实现。每当整点前控制蜂鸣器以低频鸣响4次,响1s、停1s,直到整点前一秒以高频响1s,整点时结束。 (4)才用两个按键分别控制“校时”或“校分”。按下校时键时,是显示值以0~23循环变化;按下“校分”键时,分显示值以0~59循环变化,但时显示值不能变化。 二.设计要求 电子技术是一门实践性很强的课程,加强工程训练,特别是技能的培养,对于培养学生的素质和能力具有十分重要的作用。在电子信息类本科教学中,课程设计是一个重要的实践环节,它包括选择课题、电子电路设计、组装、调试和编写总结报告等实践内容。通过本次简易数字钟的设计,初步掌握电子线路的设计、组装及调试方法。即根据设计要求,查阅文献资料,收集、分析类似电路的性能,并通过组装调试等实践活动,使电路达到性能要求。 第二章系统概述 设计思想与方案选择 方案一,利用数字电路中学习的六十进制和二十四进制计数器和三八译码器来实现数字中的时间显示。 方案二,利用AT89S51单片机和74HC573八位锁存器以及利用C语言对AT89S51进行编程来实现数字钟的时间显示。 由于方案一通过数电的学习我们都比较熟悉,而方案二比较复杂,涉及到比较多我们没学过的内容,所以选择方案一来实施。 简易数字钟电路主体部分是三个计数器,秒、分计数器采用六十进制计 数器,而时计数器采用二十四进制计数器,其中分、时计数器的计数脉 冲由

相关主题
文本预览
相关文档 最新文档