计算器的论文1
计算器的作文范文

计算器是人们日常生活中常用到的一种工具,它可以快速地进行数学计算,解决各种数字难题。
计算器的出现,极大程度地便利了我们的生活与学习,成为数字世界中不可或缺的一员。
计算器起源于17世纪欧洲的计算木块系统,主要是通过不同木块的组合得到结果。
1860年,计算器几乎同时被两位数学家发明出来,他们分别是德国的蔡司(Johann H. Müller)和美国的偕尔(T. de Colmar)。
他们的发明改变了人们进行数学计算的方式,并且也成为当时十分前沿的科技。
而如今,随着科学技术的发展,计算器也在不断升级,成为了更加智能化和便携化的产品。
目前市面上的计算器,由小型到大型、由普通到高级,品种繁多。
大部分的计算器都能处理基础的数学运算,如加减乘除、平方、开方等等。
而更加专业和复杂的计算器,如图形计算器、统计学计算器、系统工程计算器、金融计算器等则能够满足专业人员的需求。
随着科技的发展,计算器经历了数次更新换代,最新的计算器更加便携智能,还可以连接互联网进行计算。
例如,手持计算器和计算机虽然在计算速度和精度方面有些差异,但是人们却更愿意放弃使用计算机,选择使用更加便携的手持计算器,因为可以随时随地使用,更加灵活便捷。
新款计算器也可以连接无线互联网,进行在线计算,同时也能够同步保存计算记录,方便日后查询。
除此之外,计算器的外形也变得更加多样化。
例如,各个品牌的计算器都已深化自己的定位和风格,使得消费者在挑选适合自己的计算器时兼顾外观和使用场景。
比如,白色氧吧手持计算器,以其小巧、轻便、高质感为卖点,成为了商务人士的最爱;而卡西欧的图形计算器则是数学爱好者的首选,其复杂的图形计算功能在学习和科研方面带来的帮助不容小视。
计算器的出现,极大地方便了人们的生活与学习,使得计算数学运算变得更加便捷快速。
随着科技的快速发展,计算器也在不断升级,变得越来越多样化、智能化和便携化,让我们更快地进入数字时代。
计算器对运算能力的影响结题论文

计算器对运算能力的影响——结题论文经过我们调查和研究发现,计算器犹如一把双刃剑,既有利也有弊。
使用计算器能把学生从繁琐的运算中解放出来,扩充学生的数学能力,提高数学学习质量。
但是,不恰当的使用,也会造成不利的影响。
长期使用,会造成运算能力下降,使学生的计算能力得不到提高。
为了更好的反映其弊端,我们随机抽取部分初中生进行问卷调查。
经过分析,有40%的学生经常使用计算器,缺少数学思维的训练,造成自身的运算能力下降。
而有部分学生认为自己运算能六还不错的学生,他们都说运算能里好,那是因为自主勤练很少依赖计算器,或者是在小学时,老师严格限制使用计算器,使自己不能太多使用计算器而苦练基功。
有90%的学生一致认为使用计算器影响了运算能力的提高,随着科技的发展,计算器的发展十分迅速,功能越来越多,计算器的使用在经济上已不成问题,但有70%的学生还是认为笔算和口算的作用大,不能都用计算器代替,计算器只能作为学习和生活中的一种补助工具。
大部分学生都说长期使用计算器会降低笔算能力,一致认为不呢个依赖计算器,但是从问卷调查中我们发现,有60%的学生每次计算都使用计算器。
都说过多使用计算器会影响笔算能力,为什么还有那么多学生依赖计算器呢?对此,我们所有的组园进行了临时的会议,经过讨论提出猜想:1.因为长期使用计算器而习惯性的依赖计算器。
2.因为脱离了计算器后运算速度慢,运算的准确性下降。
为了验证这几个猜想,我们又对部分初中生进行问卷调查,从调查可知这两个猜想,我们从他们用来计算器的草稿纸上发现,散乱的数字,排列不整齐不规范,没有运算步骤,有时得到的结果不准确。
这是因为对基本的概念理解不深,对基本公式、法则掌握不够透彻。
我们还发现:部分学生对于两位数的乘除也用计算器代替,从而可知他们对计算器非常依赖。
使用计算器时,一般都会省去运算过程。
但是不论是平时的要求,还是考试,都要求解题过程规范。
由于学生使用计算器缺少这方面的训练,造成了学生的解题不规范、不完整,这是一种严重的缺陷。
关于计算器的论文

关于计算器的论文
摘要
本文论述了计算器及其发展历史,以及其在当前影响力以及数学各个领域中的重要意义。
随着计算机系统的发展,计算器已经成为当今计算的重要工具,尤其是在科学、工程和其他数学应用领域中。
计算器可以完成许多复杂的数学计算任务,它们的应用广泛而可靠。
除了计算能力之外,计算器还具有更多的功能,例如存储数据、记录和学习。
本文总结了计算器的性能及其在当前社会中的重要性,并分析了计算器未来的发展趋势。
关键词:计算器,历史,新功能,未来发展
1引言
计算器是一种电子计算机,用以做高级的数学计算。
它是一款更小型的计算机系统,一般拥有较少的功能,但可以完成复杂的计算任务。
计算器的发展可以追溯到19世纪,当时对计算能力的任何需求都没有计算器系统可以满足。
如今,尽管功能更加复杂,但在许多领域,计算器仍然是必不可少的工具。
计算器的重要性是如此突出,以至于它可以被用在多个领域,其中包括科学、工程、财务和商业等。
本文将介绍计算器的发展历史,并介绍其在现代社会中的影响力。
此外,本文还将分析计算器的新功能和未来发展趋势。
51单片机简易计算器论文

51单片机简易计算器论文摘要:本篇论文基于51单片机设计并实现了一款简易计算器。
该计算器具有基本的加、减、乘、除四则运算功能,并支持小数点运算和括号运算。
通过设计合理的菜单界面和使用者友好的操作方式,使得计算器更加易用。
本文介绍了计算器的硬件设计和软件设计,并对其进行了功能测试和性能评估。
实验结果表明,该计算器具有较好的计算精度和运算速度,能够满足一般计算需求。
关键词:51单片机,简易计算器,四则运算,菜单界面1.引言随着计算机技术的发展和普及,计算器作为一种便携式计算工具得到了广泛应用。
无论是学生、工程师还是商务人士,都离不开计算器的帮助。
本文旨在设计一款基于51单片机的简易计算器,以满足用户日常计算需求。
2.硬件设计本文采用51单片机作为计算器的主控芯片,搭配LCD显示屏、按键和外部存储器等外围电路。
通过合理的电路连接和引脚设置,实现计算器的功能。
3.软件设计3.1主程序设计计算器的主程序采用C语言编写。
主程序主要包括菜单界面设计、按键响应和运算处理等功能。
通过LCD显示屏输出菜单选项,并通过按键输入执行相应的功能。
3.2加法运算加法运算是计算器最基本的功能之一、在软件设计中,通过读取按键输入的数值,并使用加法运算符将数值累加,最后显示结果。
3.3减法运算减法运算与加法运算类似,通过读取按键输入的数值,并使用减法运算符将数值相减,最后显示结果。
3.4乘法运算乘法运算是计算器的扩展功能之一、在软件设计中,定义乘法运算函数,通过读取按键输入的数值,并使用乘法运算符将数值相乘,最后显示结果。
3.5除法运算除法运算也是计算器的扩展功能之一、在软件设计中,定义除法运算函数,通过读取按键输入的数值,并使用除法运算符将数值相除,最后显示结果。
3.6小数点运算和括号运算为了提高计算器的实用性,本文还添加了小数点运算和括号运算功能。
在软件设计中,通过读取按键输入的数值,并进行相应的运算处理和显示结果。
4.功能测试和性能评估为了验证计算器的功能和性能,本文进行了一系列的功能测试和性能评估。
计算器的毕业论文

计算器的毕业论文计算器的毕业论文随着科技的不断发展,计算器已经成为我们日常生活中不可或缺的工具之一。
从简单的四则运算到复杂的科学计算,计算器在各个领域都发挥着重要的作用。
然而,虽然计算器已经普及,但是它背后的原理和设计却并不为人所熟知。
本文将探讨计算器的工作原理、设计理念以及未来的发展方向。
一、计算器的工作原理计算器的工作原理可以简单地概括为输入、处理和输出三个步骤。
用户通过按下计算器上的按键来输入需要计算的数值和运算符号,计算器将输入的信息传递给内部的电路进行处理,最后将计算结果显示在屏幕上。
在计算器内部,有一个微处理器负责处理输入的信息。
微处理器是由许多微小的晶体管组成的集成电路,它能够执行各种算术和逻辑运算。
当用户按下按键时,计算器将按键的信号转化为数字信号,并将其发送给微处理器。
微处理器根据接收到的信号进行相应的计算,并将结果存储在内存中。
计算器的显示屏通过液晶技术来显示计算结果。
液晶是一种特殊的材料,能够根据电场的变化来改变光的透过程度。
当计算器将计算结果发送给液晶屏时,液晶屏根据接收到的信号来显示相应的数字和符号。
二、计算器的设计理念计算器的设计理念主要是为了提供简单、方便和高效的计算功能。
在设计计算器时,需要考虑以下几个方面:1. 用户友好性:计算器的设计应该尽量简单易懂,让用户能够轻松地使用。
按键的布局和标识应该清晰明了,操作流程应该简洁明确。
2. 功能丰富性:计算器应该具备多种常用的计算功能,如基本的加减乘除运算、百分比计算、平方根和倒数等。
同时,还应该提供科学计算功能,如三角函数、指数和对数运算等。
3. 精确性和可靠性:计算器的计算结果应该尽可能准确,并且在不同的计算场景下都能保持稳定和可靠。
设计时需要考虑到各种可能的误差和异常情况,并进行相应的处理。
4. 外观设计:计算器的外观设计应该符合人体工程学原理,手感舒适,便于携带和使用。
同时,还应该考虑到耐用性和环保性,选择合适的材料和制造工艺。
关于计算器的论文

第1页目录第一部分【摘要】 (2)第二部分【绪论】 (2)第三部分【方案论证与设计】 (2)3.1 设计目标和实现方法 (3)3.2方案论证与设计 (4)第四部分【硬件模块介绍】 (5)4.1 运算模块 (5)4.2 单片机(AT89C51) (6)4.2.1 单片机(AT89S51)的引脚功能 (6)4.2.2 引脚介绍...................................... 错误!未定义书签。
4.3 输入模块 ......................................... 错误!未定义书签。
4.3.1 键盘介绍 (14)4.4 显示模块 (15)4.4.1 数码.......................................... 错误!未定义书签。
4.4.2 数码管的分类.................................. 错误!未定义书签。
第五部分【软件设计】.. (16)5.1 LED显示程序流程图设计............................ 错误!未定义书签。
5.2 读键输入程序流程图设计 (16)5.3 主程序流程图设计 (18)第六部分【仿真及调试】 (19)第七部分【总结及附录】 (20)参考文献 (21)附录1 【简易计算器源程序】.......................... 错误!未定义书签。
附录2 【仿真电路设计图】........................... 错误!未定义书签。
一·【摘要】计算器在人们的日常中是比较的常见的电子产品之一。
可是它还在发展之中,以后必将出现功能更加强大的计算器,基于这样的理念,本次设计是用单片机来设计的八位计算器。
该设计系统是以AT89C51为单片机,用7SEG为显示位控制, P1口作为输入端,外接4X4的键盘,通过键盘扫描来对输入数的控制,并外接驱动电路,系统采用LCD数码管作为显示器,软件程序采用均采用C语言编写,便于移植与升级。
高中生研究性小论文:计算器对运算能力的影响

计算器的使用对运算能力的影响【情景导入】随着科学技术的发展,各种电子产品的出现为人们的生活和学习带来了不少的便利。
对于学生来说,计算器是一个再也熟悉不过的工具。
计算器为学生提高了计算题目的速度,也提高了一些运算的准确率。
在初中的学习生活中可谓一举两得。
由于科技的进步,计算器的功能也逐渐多样化,运算的内容也增多了许多。
不再局限于以前的“+”,“-”“×”,“÷”。
而现在大多数计算器甚至还能运算方程,为一些不熟于方程求解的同学带来了福音。
初中是一个幸福的时代。
因为在那时,不用再因为一本本写满成千上万个的口算题的口算本而发愁。
初中时,学校统一提供了计算器,也因为中考和各考试时可以使用计算器,大约90%的同学不愿意自己口算或笔算,而有些不熟的运算公式也只是用计算器来求出它的答案。
口算和笔算能力遭到了打击,开始退化。
经常有老师担心学生过于依赖计算器,不利于高中时的各考试。
因为高中的各项考试都不允许使用计算器,那些依赖于计算器的同学可能就会在考场上,因为一道道数字大的计算题而慌了手脚,而有的更是因为口算和笔算能力缺乏锻炼,连最基本的2位数的加减法也会出现差错,从而失分。
计算器给我们学生带来了利也带来了弊。
而它的坏处到底在我们身上体现了的多严重,是一个需要大家去探讨的问题,这样才能在日常生活中,合理的运用和看待计算器。
【调查目的】1.探究计算器对学生的影响,对今后同学的运用计算器应采取什么建议。
2.调查同学们对自己使用计算器是否对运算能力产生了影响,对其他同学起到提示作用。
【调查对象】乍浦中学,部分高一新生原因:因为学习中,是从初一开始接触计算器,对运算的影响还不大。
而高一,大部分同学已经过于依赖计算器,所以对运算能力的影响比较大。
因此运算能力的影响程度,作为高一的新生是最好的体现和见证者。
【调查报告展示】计算器的使用对运算能力的影响(谢谢配合) 高一( )班这是一份关于计算器对运算能力影响的调查问卷,为了确保调查的准确性,请各位同学按要求做题。
神奇的计算器范文

神奇的计算器范文计算器是一种用来进行数学计算或简单科学实验计算的小型电子设备。
无论是简单的加减乘除,还是复杂的三角函数、指数计算,计算器都能迅速而准确地完成。
然而,在我们日常生活当中,计算器不再只是一个用来计算的工具,它已经演变成了一个神奇的存在。
首先,计算器可以成为人们学习的好帮手。
对于学生而言,数学是一个让人头疼的科目。
但是随着计算器的出现,学生们可以方便地进行计算,并减少了犯错的概率。
计算器的计算速度快,可以大大提高学生的解题效率,让学生更加专注于问题的解决,而不是被繁琐而重复的计算所困扰。
此外,计算器还可以用来进行科学实验,帮助学生们在实验中快速地完成数值计算,提高学生的实验操作能力。
其次,计算器在商业领域也扮演着重要角色。
从小型商铺到大型企业,无论是销售统计还是财务分析,计算器都可以帮助企业进行数据的处理和分析。
计算器可以轻松地处理大量的数据,并进行复杂的算术运算,帮助企业做出准确的决策。
例如,计算器可以用来计算销售额、利润率、投资回报率等重要的指标,为企业的经营策略提供数据支持。
此外,计算器还可以在科学研究中发挥重要作用。
科学家们经常需要进行大量的数据处理和数值计算。
计算器的高速和精确度可以帮助科学家们对实验结果进行快速分析和评估,提高科学研究的效率。
计算器也可以用来进行复杂的数学建模,帮助科学家们解决各种难题。
例如,天文学家可以使用计算器计算星际距离和行星轨道,物理学家可以用计算器计算粒子速度和能量等。
除了以上应用,计算器还可以帮助人们解决日常生活中的各种问题。
无论是计算购物清单的总价,还是计算时间差距,计算器都可以方便地帮助我们做出准确的计算。
计算器还可以用来进行单位换算、利率计算、房贷计算等,让我们的生活更加便捷。
尽管计算器可以帮助我们解决许多问题,但在一些场合下,仍然需要我们自己动手进行计算。
毕竟,计算器不是万能的,它只是一个工具,我们依然需要具备一定的数学和逻辑思维能力才能更好地使用它。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机综合实训(论文)说明书题目:计算器院(系):信息与通信学院专业:电子信息工程学生姓名:学号:指导教师:日期:2012年6月22日摘要当今社会,随着人们物质生活水平的不断提高,电子产品已经走进了家家户户。
无桂林电子科技大学实训(论文)报告用纸论是生活还是学习,还是娱乐和消遣几乎离不开电子产品,大型复杂的计算能力是人脑不能胜任的。
计算器作为一种快速通用的计算工具方便了用户的使用。
基于这点,本设计着重于分析和了解计算器的基本原理,并从实践中对计算器进行了简单的设计。
单片机由于其微小的体积和低廉的成本,广泛运用于家用电器、工业领域中。
根据功能和指标要求,本设计选用MCS-51系列单片机,即AT89C51为主控机,通过扩展必要的外围接口电路,实现对计算器的设计。
关键字:单片机;AT89C51;计算器;目录引言 (1)1 设计方案 (1)1.1设计要求 (1)1.2系统模块图: (1)1.3算术运算程序流程图: (2)1.4系统总流程图: (3)2模块分析 (4)2.1单片机接口 (4)2.1.1电复位电路 (4)2.1.2 内部时钟模式电路 (4)2.1.3单片机与复位、时钟电路连接电路图: (5)2.2键盘接口电路: (5)2.3LCD显示模块: (6)2.4运算模块(单片机控制): (7)2.5错误提示模块 (7)2.6总体的电路图 (8)3 AT89C51单片机引脚介绍: (8)4 程序模块 (9)实训总结 (16)谢辞 (17)参考文献 (18)附录1 (19)引言本设计选用AT89C51单片机为主控单元.按照系统设计的功能的要求,初步确定设计系统由单片机、显示模块、输入模块、运算模块共四个模块组成。
主控芯片使用AY89C51单片机,市场应用最多。
键盘电路采用4*4矩阵键盘电路。
显示模块采用LCD 液晶显示器来显示输出数据。
整个计算器系统工作过程为:首先存储单元初始化,键盘扫描,判断按键的位置,得出按键值,单片机则对数据进行数据进行储存与相应处理转换送人LCD1602显示输入表达式,然后通过单片机对数据进行运算把结果送入LCD1602显示出来。
1 设计方案1.1 设计要求利用单片机设计一个计算器。
要求: 基本要求:(1)八位数码管显示(2)能实现整数的加、减、乘、除 (3)4*4矩阵键盘输入(4)数据位数超过8有报警提醒功能 发挥部分:(1)具备连续运算功能 (2)能实现若干小数的运算 (3)能实现乘方和阶乘等其他特殊功能针对上述功能,计算器软件程序要完成以下模块的设计:(1)键盘输入检测模块;(2)鉴于显示简单,我使用的是LCD 显示模块;(3)算术运算模块;(4)错误处理及提示模块。
1.2 系统模块图:图(1)系统模块图1.3 算术运算程序流程图:图(2)算术运算程序流程图1.4 系统总流程图:图(3)系统流程图2模块分析2.1 单片机接口本设计选用AT89C51单片机为主控单元;显示部分:采用LCD静态显示;按键部分:采用4*4键盘;直接用P1口接4*4矩阵按键,读取输入的键值。
2.1.1电复位电路:51单片机高电平复位。
以当前使用较多的AT89系列单片机来说,在复位脚加高电平2个机器周期(即24个振荡周期)可使单片机复位。
复位后,主要特征是各IO口呈现高电平,程序计数器从零开始执行程序。
复位方式有两种。
(1) 手动复位:按钮按下,复位脚得到VCC的高电平,单片机复位,按钮松开后,单片机开始工作。
(2)上电复位:上电后,电容电压不能突变,VCC通过复位电容(10μF电解)给单片机复位脚施加高电平5V,同时,通过10KΩ电阻向电容器反向充电,使复位脚电压逐渐降低。
经一定时间后(约10毫秒)复位脚变为0V,单片机开始工作。
设计时觉得电路比较简单,为了方便,我采用的是手动复位。
2.1.2 内部时钟模式电路:图(4)内部时钟电路当单片机工作于内部时钟模式的时候,只需在XTAL1和XTAL2引脚连接一个晶体振荡器或者陶瓷振荡器,并接两个电容后接地即可,在使用时对于电容的选择有一定的要求:当外接晶体振荡器的时候,电容值一般选择C1=C2=30+10pF或30-10pF;当外接陶瓷振荡器的时候,电容值一般选择C1=C2=40+10pF或40-10pF;2.1.3单片机与复位、时钟电路连接电路图:图(5)单片机连接电路2.2键盘接口电路:计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O 口资源,因此在很多情况下都不采用这种方式,而是采用矩阵键盘的方案。
矩阵键盘采用四条I/O 线作为行线,四条I/O 线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。
这样键盘上按键的个数就为4×4个。
这种行列式键盘结构能有效地提高单片机系统中I/O 口的利用率。
矩阵键盘的工作原理:计算器的键盘布局如图所示:一般有16个键组成,在单片机中正好可以用一个P口实现16个按键功能,在这里我使用是P1口。
矩阵键盘内部电路图如图3所示:图(6)矩阵按键2.3 LCD显示模块:本设计采用LCD液晶显示器来显示输出数据。
通过D0-D7引脚向LCD写指令字或写数据以使LCD实现不同的功能或显示相应数据。
图(7) LCD 模块1.简介工业字符型液晶,能够同时显示16x02即32个字符。
(16列2行)注:为了表示的方便,后文皆以1表示高电平,0表示低电平。
2.管脚功能1602采用标准的16脚接口,其中:第1脚:VSS为电源地第2脚:VDD接5V电源正极第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。
第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。
第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。
第6脚:E(或EN)端为使能(enable)端。
第7~14脚:D0~D7为8位双向数据端。
第15~16脚:空脚或背灯电源。
15脚背光正极,16脚背光负极。
使用液晶显示屏的有点在于,工作时不需要进行多次扫描,而且显示比较稳定。
2.4 运算模块(单片机控制):MCS-51 单片机是在一块芯片中集成了CPU、RAM、ROM、定时器/计数器和多功能I/O 等一台计算机所需要的基本功能部件。
如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、并行I/O 口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)。
单片机是靠程序运行的,并且可以修改。
通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,通过使用单片机编写的程序可以实现高智能,高效率,以及高可靠性!因此我们采用单片机作为计算器的主要功能部件,可以很快地实现运算功能。
2.5 错误提示模块这个模块主要用于数据位数超过8的报警提醒,电路主要由蜂鸣器以及三极管组成,接到单片机的P2.7脚。
具体的控制由单片机的程序控制。
图(8)错误提示模块2.6总体的电路图图(9)总的电路图3 AT89C51单片机引脚介绍:VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P0口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口:P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时, ALE只有在执行MOVX,MOVC指令是ALE 才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
4 程序模块#include<reg52.H>#include<stdio.h>#include<stdlib.h>//数学运算函数#define uchar unsigned char#define uint unsigned int//*********定义变量和数组********sbit lcden=P2^2; //液晶使能端,1为读取信息sbit rw=P2^1;//液晶数据命令选择短端,0-向LCD写入指令;1-读取信息sbit rs=P2^0;//0输入指令;1-输入数据sbit fengmingqi=P2^7; //蜂鸣器的引脚char n; //按键的变量float a,b;//*********声明函数*********void key_scan(void); //按键扫描void init(); //液晶初始化void LCD_dsp_string(uchar hang,uchar lie,uchar *s); //液晶数据写入字符串void LCD_dsp_char(uchar hang,uchar lie,uchar dat); //液晶数据写入字符void write_com(uchar com);void delay(uchar m);void write_data(uchar date);void LCD_set_xy( uchar x, uchar y );void LCD_dsp_string(uchar X,uchar Y,uchar *s);void delay_ms();void main(){ char temp[16];char i=0,j=0,fuhao;bit flag=0,dh=0,fh=0,xsd=0;init();do{key_scan();}while(n==17);write_com(0x01);while(1){ key_scan();if((dh==1)&(flag==1)&(n!=17)){ write_com(0x01);LCD_dsp_string(0,0,temp);j=0;i=0;flag=0;fh=0;while(temp[i++]!='\0') j++;fengmingqi=0;delay_ms();fengmingqi=1;}if((i==0)&(n=='-')&(fh==0)){ fh=1;temp[0]='-';i++;LCD_dsp_char(j++,0,n);if(flag==0) continue;fengmingqi=0;delay_ms();fengmingqi=1;}if(((n>='0')&(n<='9')|((n=='c')&(xsd==0)))&(dh==0)) {if(n=='c'){ n='.';xsd=1;}temp[i++]=n;LCD_dsp_char(j++,0,n);fengmingqi=0;delay_ms();fengmingqi=1;}if(((n=='+')|(n=='-')|(n=='*')|(n=='/'))&((flag==0)|(dh==1))) { flag=1;fuhao=n;temp[i]='\0';a=atof(temp);i=0;dh=0;fengmingqi=0;delay_ms();fengmingqi=1;switch(n){case '+': LCD_dsp_char(j++,0,n); break;case '-': LCD_dsp_char(j++,0,n);fh=0;break;case '*': LCD_dsp_char(j++,0,n); break;case '/':LCD_dsp_char(j++,0,n); break;}}if((n=='=')&(flag==1)){ dh=1;temp[i]='\0';b=atof(temp);i=0;xsd=0;LCD_dsp_char(j,0,'=');switch(fuhao){ case '+': a=a+b; break;case '-': a=a-b; break;case '*': a=a*b; break;case '/': a=a/b; break;}sprintf(temp,"%g",a);LCD_dsp_string(0,1,temp);fengmingqi=0;delay_ms();fengmingqi=1;}if(n=='c'){ write_com(0x01);a=b=0;fuhao=0;flag=0;i=0;j=0;dh=0;xsd=0;fh=0;fengmingqi=0;delay_ms();fengmingqi=1; }}}void delay_ms()//延时程序1{ uchar x,y;for(x=10;x>0;x--)for(y=100;y>0;y--);}void delay(uchar m) //延时程序2{ uchar n;for(n=0;n<=m;n++);}//***对1602写入com命令*void write_com(uchar com){ P0=com;rs=0;lcden=0;delay(200);lcden=1;}//*****对1602写入date数据**void write_data(uchar date){ P0=date;rs=1;lcden=0;delay(200);lcden=1;}void init() //初始化LCD{ rw=0;write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x80);write_com(0x01);}//*********设置1602的坐标*****void LCD_set_xy( uchar lie, uchar hang ){ unsigned char address;if (hang== 0) //第一行address = 0x80 + lie; //0为一行的第一个else //第二行address =0xc0+ lie;write_com(address);}//********写入字符***********void LCD_dsp_char( uchar x,uchar y,uchar dat){ LCD_set_xy( x, y );write_data(dat);}//*******写入字符串*******************void LCD_dsp_string(uchar lie,uchar hang,uchar *s) { LCD_set_xy( lie, hang );while (*s){write_data(*s);s ++;}}void key_scan(void){ uchar temp;P1=0xfe;if(P1!=0xfe){ delay(200);if(P1!=0xfe){ temp=P1&0xf0;switch(temp){ case 0xe0:n='c';break;case 0xd0:n='0';break;case 0xb0:n='=';break;case 0x70:n='+';break;}} while(P1!=0xfe);}else{ P1=0xfd;if(P1!=0xfd){ delay(200);if(P1!=0xfd){ temp=P1&0xf0;switch(temp){ case 0xe0:n='1';break;case 0xd0:n='2';break;case 0xb0:n='3';break;case 0x70:n='-';break;}}while(P1!=0xfd);}else{ P1=0xfb;if(P1!=0xfb){ delay(200);if(P1!=0xfb){ temp=P1&0xf0;switch(temp){ case 0xe0:n='4';break;case 0xd0:n='5';break;case 0xb0:n='6';break;case 0x70:n='*';break;}} while(P1!=0xfb);}else{ P1=0xf7;if(P1!=0xf7){ delay(200);if(P1!=0xf7){ temp=P1&0xf0;switch(temp){ case 0xe0:n='7';break;case 0xd0:n='8';break;case 0xb0:n='9';break;case 0x70:n='/';break;}}while(P1!=0xf7);}else n=17; }}}}说明:该程序实现了小数、整数的加减乘除运算。