基于单片机的光电计数器
- 格式:docx
- 大小:241.15 KB
- 文档页数:12
目录一.设计题目: (2)二.设计要求: (2)三.题目分析: (2)四.整体构思: (2)五.具体实现: (2)5.1工作原理图 (2)5.2工作原理简述 (3)六.各部分定性说明以及定量计算: (3)6.1光电传感器 (3)6.1.1 红外线光电传感器原理 (3)6.1.2 直接反射式光电开关 (4)6.2 单片机最小系统 (5)6.3AT89C51单片机 (7)6.3.1主要特性: (7)6.3.2管脚说明: (8)6.3.3 振荡器特性: (9)6.4 数码显示管 (9)6.5 蜂鸣器电路 (11)6.6 系统程序设计 (13)6.6.1主程序流程图 (13)6.6.2中断计数程序流程图 (14)七.在实验室实现过程中遇到的问题及排除措施: (14)八.设计心得体会: (14)九.参考文献 (15)附录: (15)总电路图 (15)程序 (16)传感器原理课程设计一.设计题目:基于单片机的工业产品自动计数器二.设计要求:2.1数码管可以显示产品个数(0-99),自由设定产品报警个数(比如 8),当产品数目是8的个数时,发出报警(蜂鸣器响)。
2.2独立设计电路,应包括单片机小系统、红外光电开关、数码管显示部分。
三.题目分析:该产产品自动计数器是利用单片机实现生产线上产品计数以及当产品数目是一个规定数时,发出报警(蜂鸣器响)。
即当生产线传送带上不断有产品单向传送时,使用光电传感器统计一定时间内的产品个数,同时不断将当前统计结果送显示器显示并达到规定数时蜂鸣器响。
该系统可以大大提高生产效率,而且成本很低,控制灵活、可靠性强。
四.整体构思:通过利用红外光电传感器产生计数脉冲,驱动单片机计数器开始计数,再通过数码管显示计数,并在通过单片机控制通过规定数产品时蜂鸣器响。
五.具体实现:5.1 工作原理图光电传感器计数脉冲51单片机最小产生电路系统电路蜂鸣器电路5.2 工作原理简述当生产线传送带上不断有产品单向传送时,通过光电传感器产生计数脉冲,由该脉冲控制单片机的计数,并将计数在数码管上予以显示,当达到规定数时蜂鸣器响六、各部分定性说明以及定量计算:6.1光电传感器6.1.1 红外线光电传感器原理光电传感器是通过把光强度的变化转换成电信号的变化来实现控制的。
基于单片机的光电计数器的设计摘要:近年来,随着工业发展和科学技术的创新,光电计数器技术越来越多的被应用到工业生产和生活中。
光电计数器采用光敏元件作为传感器,利用不同光强产生不同电平信号流进一步实现计数的原理,使得光电计数器现在广泛应用于工业生产线的计数。
本论文主要介绍了基于单片机AT89S51的软硬件设计过程,以及实现光电计数的工作原理和理论基础,实现了光电计数器基本的工作要求和性能指标,采用LCD显示技术显示计数结果。
本次光电计数器设计使用PCB板和LCD模块显示,因此电路结构简单清晰、焊接过程简单、电路稳定性好、操作难度小。
关键词:传感器;光电计数器;AT89S51Design based on single chip microcomputer photoelectric counterAbstract: in recent years, along with industrial development and the innovation of science and technology, photoelectric counter technology more and more applied to industrial production and life. Photoelectric counter using photosensitive element as the sensor, the use of different light intensity have different level signal flow to further realize the counting principle, makes the photoelectric counter now counts are widely used in industrial production line. This thesis mainly introduces the hardware and software design process, based on single chip microcomputer AT89S51 and photoelectric counting principle and theoretical basis of implementing the basic job requirements and performance indicators, photoelectric counter use LCD display technology to display the count result. The photoelectric counter design using the PCB and the LCD display module, so the circuit structure is simple and clear, the welding process simple, circuit stability is good, operation difficulty is small.Key words: sensor;Photoelectric counter; AT89S51目录1引言 (1)2任务要求 (2)3方案论证 (2)3.1两种方案的选择 (2)3.2方案的选择 (2)4 系统组成概述 (3)5 硬件系统各部分介绍 (3)5.1光电传感器 (3)5.2 AT89S51单片机 (4)5.2.1 AT89S51系列单片机的主要性能特点 (4)5.2.3 51系列单片机的基本组成 (5)5.2.4外接晶体引脚 (6)5.2.5 控制信号或与其它电源复用引脚 (6)5.3显示器件 (7)6 硬件电路设计 (8)6.1 最小系统 (8)6.1.1 电源电路 (8)6.1.2 复位电路 (8)6.1.3 晶振电路 (9)6.2 单片机控制电路 (10)6.3 显示电路 (10)7 系统软件设计 (11)8 结论 (13)参考文献 (13)致谢............................................................................................................................ 错误!未定义书签。
商学院《单片机课程设计》报告题目光电计数器姓名:学号:专业: 电子信息工程班级: 电信0804班指导教师:职称:计算机与电子工程学院2011年9月目录1 概述 (2)1.1设计前言 (2)1.2设计要求 (2)2 设计方案 (2)3 硬件电路设计 (2)3.1晶振电路 (2)3.2电源电路 (3)3.3复位电路 (3)3.4上拉电阻 (4)3.5键盘电路设计 (4)3.6显示电路设计 (5)3.7单片机电路 (5)3.8主要元器件 (6)3.9焊接元器件 (6)4.0测试 (7)4 程序设计 (8)5 收获与总结 (8)参考文献: (9)附录一电路原理图 (9)附录二PCB电路原理图 (10)《专业实习》报告评审表姓名学院计算机与电子工程学院学号专业班级题目光电计数器评审意见评审成绩指导教师签名职称评审时间年月日光电计数器1 概述 1.1 设计前言光电开关,光电隔离这一技术在电子产品中用的越来多。
本文从经济实用的角度出发,设计制作了一个简单的光电计数器,本文介绍了如何采用AT89C51单片机,设计一款简单光电计数器。
1.2 设计要求设计一个单片机控制的光电计数器:上电显示初始值0000,计数上限为10000,可以复位,当光电开关检测到障碍物即挡住光电对管时计数一次,计数满10次时指示灯闪烁2下。
2 设计方案设计思路及流程:根据上述功能介绍,光电计数系统可以分光电对管信号输入、显示和控制指示3大功能,因此可以光电对管模块、显示模块、指示灯模块、晶振和单片机模块。
系统模块图如图1所示。
图13 硬件电路设计 3.1 晶振电路晶振电路由2个电容,一个晶振组成,如图2所示。
单片机电源晶振复位上拉电阻数码管显示光电对管图2单片机晶振的作用是为系统提供基本的时钟信号。
通常一个系统共用一个晶振,便于各部分保持同步。
有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。
单片机晶振有2个电容的作用:这2个电容叫晶振的负载电容,分别接在晶振的2个脚上和对地的电容,一般在几十皮法。
毕业设计(论文)题目:基于单片机的光电计数器设计毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
基于单片机的光电计数器基于单片机的光电计数器一、设计题目:基于单片机的光电计数器二、设计要求:1,数码管可以显示产品个数(0-99),自由设定产品报警个数(比如,10),当产品数目是10的个数时,发出报警(蜂鸣器响)。
2,独立设计电路,应包括单片机小系统、红外光电开关、数码管显示部分。
摘要本文所设计的计数器抗干扰性好,可靠性高。
可用于测量商场、电影院、博物馆、展览观、车站、码头、银行等公共场所的人员数量及人员流通数量,同时丝毫不会侵犯到被测人员的个人隐私。
该产品应用广泛,常用于测量流水线上的产品的数量,以及可检查产品有无缺损。
本电路的指导思想是设计两电路光控电路,一路放置在门外,另一门放置在门内。
当有人通过门口时(无论是进入或走出房间),都会先触发一个光控电路,再触发另一个光控电路,根据光控电路产生触发脉冲的先后顺序,判断来人是进入还是离开,当有人进入时令计数器进行加计数,当有人离开时令计数器进行减计数;要求计数器的最大计数容量是99人,并用数码管显示数字。
该系统具有结构简单、成本低廉、计数准确的特点,适用于本次设计的系统。
该光电计数器只有两位数,如果二位数不满足需要也可通过级联可以扩展为四位,甚至多位。
关键词:单片机、外部中断、报警器正文一、题目分析本电路的指导思想是设计一电路光控电路,放置在流水线旁。
当有产品通过光电门时,都会先触发光控电路,根据光控电路产生触发脉冲令计数器进行加计数,要求计数器的最大计数容量是99个,并用数码管显示数字。
并在计数每次达到10时报警。
二、整体构思系统的组成与结构:图2-1 光电计数器系统结构图整个光电计数器系统是由光电传感电路、AT89C52单片机系统电路、显示计数电路、报警电路五个部分组成的,如图2-1所示。
光电传感电路把被计数的物体的变化转换成电信号,由显示计数电路计数,再由数码显示管显示,当达到设定的报警值时,报警电路发出报警。
三、具体实现:1,光电开关用开关模拟光电传感器采集外部信号。
安徽科技学院光电检测课程设计报告课题名称:反射式光电检测电路姓名:汤智专业:电子科学与技术指导教师:无2014-4-19反射式光电检测电路课程设计摘要:在当今的电子电路设计中,光电传感器被越来越广泛的应用于各种检测电路;人们在日常生活,生产过程中,主要依靠检测技术对信息经获取、筛选和传输,来实现制动控制,自动调节;由于微电子技术,光电半导体技术,光导纤维技术以及光栅技术的发展,使得光电传感器的应用与日俱增。
这种传感器具有结构简单、非接触、高可靠性、高精度、可测参数多、反应快以及结构简单,形式灵活多样等优点,在自动检测技术中得到了广泛应用,它一种是以光电效应为理论基础,由光电材料构成的器件。
所以光电传感器的研究是非常有必要的,本文的研究对象就是反射式光电检测电路设计,本设计利用光电二极管与光敏二极管构成光信号的接收装置,将光信号转化为电信号,再将所得微弱电信号处理为可用电信号,通过双传感器电路实现自动化检测以及计数,从而完成工厂生产中对产品质量的检测以及对合格产品计数。
一、设计思路:随着电子技术自动化的发展,自动检测及控制在生活中运用得越来越广泛,特别是工业上的自动控制系统;本次实验基于对工厂流水线上产品质量检测及产品数量计数而设计的反射式光电检测电路,该电路系统运行稳定,装配简单,价格低廉,精确度高而有很大的应用前景。
二、设计流程及目的1、明确设计题目,确定方案。
对于考虑的方案,经过比较后,确定选择哪个方案。
2、单元电路的设计和元器件的选择,列出元器件清单。
3、画出完整的电路原理图和必要的仿真图,并说明主要工作原理及流程。
4、运用ISIS 7 Professional和Keil uVision4仿真软件测试,并能实现基本的功能,以及思考与探讨一些可扩展的空间。
目的:通过本次光电检测电路的设计,可以使参与成员了解各种光电二极管,光敏二极管的属性及使用方法,以及计算机辅助设计,单片机使用的方法,熟悉电路设计的全过程,提高参与成员的综合设计能力,甚至通过本课程设计的改进可以演化出一系列的电路检测电路,并将其应用到日常的生产与创造中,在这里我们设计检测产品合格的光电检测电路。
光电计数器设计专业:机械设计制造及其自动化班级:机自092班姓名:```学号:*************指导老师:¥¥¥¥¥¥¥目录一.设计题目 (2)二.设计要求 (2)三.题目分析 (2)四.整体构思 (3)五.具体实现 (5)六.单片机系统程序设计 (11)七.问题及解决方案 (13)八.设计心得体会 (13)九.参考文献 (14)十.附录 (15)一.设计题目:基于单片机的光电计数器的设计在大量产品的生产中, 为及时掌握产品的装箱率、日产量等指标,需要在产品生产线的多个环节上安装计数器, 每当产品通过计数器时,就会被计数器的传感器检测到,产品个数自动加1,并在显示器上显示出来。
本次设计基于单片机的工业产品自动计数器基于单片机构成的产品自动计数器研究的主要内容包括:如果构成检测电路,MCS-51单片机用何种方式对外部计数脉冲进行计数显示控制、LED显示驱动模块的选择、MCS-51单片机的扩展。
在这个设计中主要需要解决的问题便是如何提高MCS-51单片机的抗干扰能力以及稳定性。
二.设计要求:(1)数码管可以显示产品个数(0-99),自由设定产品报警个数(比如 8),当产品数目是8的个数时,发出报警(蜂鸣器响)。
(2)独立设计电路,应包括单片机最小系统、红外光电开关、数码管显示部分。
将计数值准确的显示出来(3)三人一组,每组选一个组长。
三.题目分析:基于单片机构成的产品自动计数器研究的主要内容包括:如果构成检测电路、MCS-51单片机用何种方式对外部计数脉冲进行计数显示控制、LED显示驱动模块的选择、MCS-51单片机的扩展。
在这个设计中主要需要解决的问题便是如何提高MCS-51单片机的抗干扰能力以及稳定性。
采用光电式传感器是非常必须的,它是一种非接触式电子传感器。
这种计数器在工厂的生产流水线上作产品统计,有着其他计数器不可取代的优点。
本科毕业论文(设计)题目基于单片机的计数系统设计学院:机电与信息工程学院专业:电子信息工程年级: 2011 级学号: 2011114083 姓名:指导教师:成绩:年月日目录摘要 (1)关键字 (1)Abstract (1)Key Words (1)1 绪论 (2)1.1 前言 (2)1.2 背景与意义 (2)2 系统的方案设计与论证 (3)2.1 单片机芯片设计与论证 (3)2.2 按键控制模块设计与论证 (4)2.3 时钟模块设计与论证 (4)2.4 脉冲采集模块设计与论证 (4)2.5 显示模块模块设计与论证 (5)3 系统硬件的设计 (6)3.1 MCS-51系列单片机的内部功能的介绍 (6)3.1.1 中断系统 (6)3.1.2 单片机的定时/计数器 (8)3.2 单片机的最小系统 (12)晶振电路 (13)3.2.2 复位电路 (14)3.3 数据采集电路 (15)3.4 液晶显示器电路 (16)3.5 键盘电路 (17)电路总原理图 (17)4 程序模块化设计 (19)程序编程的思想 (19)4.1.1 面向过程的编程思想 (20)4.1.2 面向对象的编程思想 (20)程序设计方法 (20)4.2.1 “自上而下”设计 (20)4.2.2 模块化设计 (21)4.2.3 结构化设计 (22)5.系统的软件设计 (24)5.1 软件的整体设计 (24)主程序流程图的设计 (25)5.3 时间读写子程序设计 (27)5.4 脉冲计数程序设计 (27)5.5 LCD1602的子显示程序 (28)5.6 软件仿真 (28)6.焊接与功能调试 (29)系统性能测试与功能说明 (29)软件调试问题及解决 (29)6.3 调试效果 (30)结论 (30)参考文献 (32)致谢 (33)附录A (34)附录B (35)附录C (44)附录D (45)基于单片机的计数系统设计摘要:随着当今社会的飞速发展,越来越多的流水线上的产品和各种公共场所需要进行自动计数。
基于单片机的光电计数器基于单片机的光电计数器一、设计题目:基于单片机的光电计数器二、设计要求:1,数码管可以显示产品个数(0-99),自由设定产品报警个数(比如 ,10),当产品数目是10的个数时,发出报警(蜂鸣器响)。
2,独立设计电路,应包括单片机小系统、红外光电开关、数码管显示部分。
摘要本文所设计的计数器抗干扰性好,可靠性高。
可用于测量商场、电影院、博物馆、展览观、车站、码头、银行等公共场所的人员数量及人员流通数量,同时丝毫不会侵犯到被测人员的个人隐私。
该产品应用广泛,常用于测量流水线上的产品的数量,以及可检查产品有无缺损。
本电路的指导思想是设计两电路光控电路,一路放置在门外,另一门放置在门内。
当有人通过门口时(无论是进入或走出房间),都会先触发一个光控电路,再触发另一个光控电路,根据光控电路产生触发脉冲的先后顺序,判断来人是进入还是离开,当有人进入时令计数器进行加计数,当有人离开时令计数器进行减计数;要求计数器的最大计数容量是9 9人,并用数码管显示数字。
该系统具有结构简单、成本低廉、计数准确的特点,适用于本次设计的系统。
该光电计数器只有两位数,如果二位数不满足需要也可通过级联可以扩展为四位,甚至多位。
关键词:单片机、外部中断、报警器正文一、题目分析本电路的指导思想是设计一电路光控电路,放置在流水线旁。
当有产品通过光电门时,都会先触发光控电路,根据光控电路产生触发脉冲令计数器进行加计数,要求计数器的最大计数容量是99个,并用数码管显示数字。
并在计数每次达到10时报警。
二、整体构思系统的组成与结构:图2-1 光电计数器系统结构图整个光电计数器系统是由光电传感电路、AT89C52单片机系统电路、显示计数电路、报警电路五个部分组成的,如图2-1所示。
光电传感电路把被计数的物体的变化转换成电信号,由显示计数电路计数,再由数码显示管显示,当达到设定的报警值时,报警电路发出报警。
三、具体实现:1,光电开关用开关模拟光电传感器采集外部信号。
2,复位电路单片机小系统采用上电自动复位和手动按键复位两种方式实现系统的复位操作。
上电复位要求接通电源后,自动实现复位操作。
手动复位要求在电源接通的条件下,在单片机运行期间,用按钮开关操作使单片机复位。
其结构如图中R1、C3和K1。
上电自动复位通过电容C1充电来实现。
手动按键复位是通过按键将R3与VCC接通来实现。
如图示两种复位方式:图上电复位电路图手动复位电路3,中断方式计数:由于光电技术电路需要在数码管上显示通过光电门的产品数量,因此可以在内部存储器空间定义它的显示缓存区,用来暂存数码管显示的当前值。
系统在初始化程序之中,设置外部中断0产生中断标志T0,并初始化值为0。
当有外部中产生时,相应的中断置1。
当外部中断0产生中断时,在主程序中扫描T0是否为1。
当T0为1时,调用光电计数子程序,将显示暂存变量加1,。
每当通过光电门的产品数量达到10时,蜂鸣器响一声,并清零缓存,继续计数。
4,显示部分:该系统要求显示计数功能。
基于上述原因,我们考虑了三种方案:方案一:完全采用 LCD显示。
完全采用 LCD显示可显示有限的符号和数码字苻,能满足设计的需要。
方案二:完全采用点阵式 LCD显示。
这种方案实现复杂,且须完成大量的软件工作;但功能强大,可方便的显示各种英文字符,汉字,图形等,也可满足设计的需要。
方案三:采用 LED显示,LED只显示数字输出。
这种方案既满足系统功能要求,又简单,成本有低。
权衡利弊,第三种方案的优缺点,我们决定采用方案三来实现数字显示。
系统中采用的数码管为共阴极数码管,显示电路图的电路如图3-3所示。
图3-3显示电路图5,报警部分:当计数器计数到"00"时应使计数器复位并置数"99"。
但这时将不会显示"00",而计数器从" 01"直接复位。
由于"00"是一个过渡时期,不会显示出来,所以本电路采用"10"作为计数器复位脉冲。
当计数器由"00"跳变到"10''时,从输出低电平使计数器置数,并保持继续计数,蜂鸣器发出一声报警声。
当产品经过光电门时,Rs触发器翻转输出高电平,计数器开始计数。
若按下S2,计数器立即复位。
报警电路的电路图如图3-4所示。
图3-4 报警电路图6,软件程序的设计系统上电初始化之后,主程序不断地扫描键盘和显示程序;同时判断外部中断标志是否有效。
如果外部中断标志有效,则调用光电计数处理子程序,刷新数码管的显示值7,系统控制主程序设计定义蜂鸣器接口P3.7,初始状态为0,蜂鸣器不报警,当有高电平触发P3.7时,蜂鸣器开始报警。
当下一个脉冲是1时外部中断T0则产生中断,计数器停止加计数。
8,系统初始化子程序设计:设定外部中断T0的标志位置0即中断处于关闭状态,蜂鸣器控制标志位也置0,处于关闭状态,系统初始化流程图如图3-5所示。
图3-5 系统初始化流程图9,显示子程序设计定义数码管的段码表、位选码,定义计数器的显示缓存区,在统计过程中,当一个信号传到单片机中,系统调用延时子程序进行延时,计数器对十位和个位进行计数判断,将数据通过数码管显示出来,显示子程序的电路图如图3-6所示。
图3-6 动态显示电路流程图10,光电计数处理子字程序设计外部中断T0初始化后处于关闭状态,当其中断标志有效时进行加计数,外部中断T0进行加计数且判断计数器是否达到10,若等于10则KEYBOARD=1蜂鸣器报警。
最后将计数值通过数码管显示,其流程图如图3-7所示。
SHAPE \* MERGEFORMAT3-7 光电计数处理子程序流程图四、系统调试4.1电路的优缺点1.用单片机作为设计的核心系统有点易于实现自动化控制、计数精确。
而电路采用数码管动态显示电路直观性比较好、具有一定的抗干扰能力且比较容易实现级联,以达到扩大计数范围的作用,同时电路具有很强的实用性。
2.电路的不足由高亮光电管和硅光电池组成的信号产生电路灵敏度稍差,在实际环境中光线的接受还是收到影响,导致电路反应有点迟钝。
3.电路刚开始有些地方考虑的欠佳,线路排布个人觉得并不十分完美。
4.2电路的改进方法1、断电检查:硬件电路及对照原理图检查硬件电路。
2、整个调试过程分层次进行,先调试单元电路,再调试模块电路,最后系统联调。
3、通电检查:入正常电压,观察各模块工作波形及工作电压有无异常。
4、单元电路调试:利用信号源或其他实验仪器判断各单元电路的工作状态。
5、整机联调:从最前端到末级进行统调,检查各级动态信号工作情况,分析是否满足设计要求。
6、参数计算和器件选择:五、系统程序设计用C语言进行编程:#include<reg52.h>#define uchar unsigned char#define uint unsigned intuchar code tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};sbit SPK=P3^7;sbit key1=P1^0;sbit key2=P1^1;uchar n,a,b;void delay(uchar z){uchar x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void scan(){if(key1==0){delay(5);if(key1==0){while(!key1);n++;if(n==100)n=0;}}if(key2==0){delay(5);if(key2==0){while(!key2);n=0;}}}void display(){a=n%10;b=n/10;P2=0xfe;P0=tab[b];delay(5);P2=0xfd;P0=tab[a];delay(5);}void alarm(uchar t){uchar i,j;for(i=0;i<200;i++){SPK=~SPK;for(j=0;j<t;j++);}}void main(){while(1){scan();display();if((a==0)&&(b!=0)){alarm(30);alarm(50);}}}六、仿真用proteus画好电路图,仿真结果如下:1,计数显示如下图:2,当计数到‘10’时,报警器报警,仿真结果如下图:3,按下清零键,数码管恢复到‘00’,仿真结果如下图:七、设计心得体会本次课程设计是利用光电传感器对通过光电门的产品数量计数。
在设计电路初期,由于没有设计经验,觉得无从下手,空有很多设计思想,经过自己查找资料,我的设计渐渐有了头绪,通过查阅资料,逐渐确立系统方案。
发现自己对单片机AT89C52的功能的认识和应用掌握力度不够,在软件设计程序时常常遇到问题,又找不到错误问题根源所在。
究其原因是我对芯片应用和C语言编写程序的经验太少,速度过慢。
我知道问题的根本原因之后,我认真研究并掌握单片机的应用并提高编写程序的准确度,变成速度。
在设计期间有什么不懂的可以问指导老师,也可以和同学们互相探讨,也可以通过网络查询。
在课程设计期间我学到了很多知识和技巧。
并把以往老师教的理论知识用于实践。
总之,知识必须通过应用才能实现其价值!有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。
八、参考文献1,康华光《电子技术基础》数字部分.高等教育出版社,20062,康华光《电子技术基础》模拟部分.高等教育出版社,20063,倪晓军,章韵《单片机原理与接口技术》清华大学出版社,20094,郭天祥《51单片机C语言教程》电子工业出版社,2009。