光电计数器设计论文 基于单片机的工业产品自动计数器.docx

上传人:b****5 文档编号:6363135 上传时间:2023-01-05 格式:DOCX 页数:11 大小:122.68KB
下载 相关 举报
光电计数器设计论文 基于单片机的工业产品自动计数器.docx_第1页
第1页 / 共11页
光电计数器设计论文 基于单片机的工业产品自动计数器.docx_第2页
第2页 / 共11页
光电计数器设计论文 基于单片机的工业产品自动计数器.docx_第3页
第3页 / 共11页
光电计数器设计论文 基于单片机的工业产品自动计数器.docx_第4页
第4页 / 共11页
光电计数器设计论文 基于单片机的工业产品自动计数器.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

光电计数器设计论文 基于单片机的工业产品自动计数器.docx

《光电计数器设计论文 基于单片机的工业产品自动计数器.docx》由会员分享,可在线阅读,更多相关《光电计数器设计论文 基于单片机的工业产品自动计数器.docx(11页珍藏版)》请在冰豆网上搜索。

光电计数器设计论文 基于单片机的工业产品自动计数器.docx

光电计数器设计论文基于单片机的工业产品自动计数器

光电计数器设计论文基于单片机的工业产品自动计数器

系统调试

光电计数器设计论文

一,设计题目:

基于单片机的工业产品自动计数器

二,设计要求:

1,数码管可以显示产品个数(0-99),自由设定产品报警个数(比如8),

当产品数目是8的个数时,发出报警(蜂鸣器响)。

2,独立设计电路,应包括单片机小系统、红外光电开关、数码管显示部分。

三,题目分析:

一电路光控电路,放置在流水线旁。

当有产品通本电路的指导思想是设计

过光电门时,都会先触发光控电路,根据光控电路产生触发脉冲令计数器进行加计数,要求计数器的最大计数容量是99个,并用数码管显示数字。

并在计数每次达到10时报警。

四,整体构思:

系统的组成与结构:

图2-1光电计数器系统结构图

整个光电计数器系统是由光电传感电路、AT89S51单片机系统电路、显示计数电路、报警电路五个部分组成的,如图2-1所示。

光电传感电路把被计数的物体的变化转换成电信号,由显示计数电路计数,再由数码显示管显示,当达到设定的报警值时,报警电路发出报警。

五,具体实现:

1,光电开关:

采用光电传感器采集外部信号。

引起单片机内部中断发生。

2,中断方式计数:

由于光电技术电路需要在数码管上显示通过光电门的产品数量,因

系统调试

此可以在内部存储器空间定义它的显示缓存区,用来暂存数码管显示的当前值。

系统在初始化程序之中,设置外部中断0产生中断标志T0,并初始化值为0。

当有外部中产生时,相应的中断置1。

当外部中断0产生中断时,在主程序中扫描T0是否为1。

当T0为1时,调用光电计数子程序,将显示暂存变量加1,。

每当通过光电门的产品数量达到12时,蜂鸣器响一声,并清零缓存,继续计数。

3,显示部分:

该系统要求显示计数功能。

基于上述原因,我们考虑了三种方案:

方案一:

完全采用LCD显示。

完全采用LCD显示可显示有限的符号和数

码字苻,能满足设计的需要。

方案二:

完全采用点阵式LCD显示。

这种方案实现复杂,且须完成大量的

软件工作;但功能强大,可方便的显示各种英文字符,汉字,图形

等,也可满足设计的需要。

方案三:

采用LED显示,LED只显示数字输出。

这种方案既满足系统功能

要求,又简单,成本有低。

权衡利弊,第三种方案的优缺点,我们决定采用方案三来实现数字显示。

系统中采用的数码管为共阴极数码管,显示电路图的电路如图3-3所示。

图3-3显示电路图

4报警部分:

当计数器计数到"00"时应使计数器复位并置数"99"。

但这时将不会显示"00",

而计数器从"01"直接复位。

由于"00"是一个过渡时期,不会显示出来,所以本电

路采用"12"作为计数器复位脉冲。

当计数器由"00"跳变到"12''时,从输出低电平使

系统调试

计数器置数,并保持继续计数,蜂鸣器发出一声报警声。

当产品经过光电门时,Rs触发器翻转输出高电平,计数器开始计数。

若按下S1,计数器立即复位。

报警电路的电路图如图3-4所示。

图3-4报警电路图

5,软件程序的设计

系统上电初始化之后,主程序不断地扫描键盘和显示程序;同时判断外部中断标志是否有效。

如果外部中断标志有效,则调用光电计数处理子程序,刷新数码管的显示值

6,系统控制主程序设计

定义蜂鸣器接口P3.6,初始状态为0,蜂鸣器不报警,当有高电平触发P3.6是,蜂鸣器开始报警。

当下一个脉冲是1时外部中断T0则产生中断,计数器停止加计数。

7,系统初始化子程序设计:

设定外部中断T0的标志位置0即中断处于关闭状态,蜂鸣器控制标志位也置0,处于关闭状态,系统初始化流程图如图3-5所示。

图3-5系统初始化流程图

8,显示子程序设计

定义数码管的段码表、位选码,定义计数器的显示缓存区,在统计过程中,当一个信号传到单片机中,系统调用延时子程序进行延时,计数器对十位和个位进行计数判断,将数据通过数码管显示出来,显示子程序的电路图如图3-6所示。

系统调试

图3-6动态显示电路流程图

9,光电计数处理子字程序设计

外部中断T0初始化后处于关闭状态,当其中断标志有效时进行加计数,外部中断T0进行加计数且判断计数器是否达到10,若等于10则KEYBOARD=1蜂鸣器报警。

最后将计数值通过数码管显示,其流程图如图3-7所示。

系统调试

3-7光电计数处理子程序流程图六,单片机小系统及外部电路焊接:

硬件电路和软件编程后开始焊接单片机小系统和外设电路。

根据焊接说明书单片机小系统焊接如下图:

系统调试

设计电路焊接如下图:

七~系统调试

将整个电路连接好后,下载软件程序并进行试验,调试。

系统调试

八,电路调试过程中出现的问题及解决办法

1.蜂鸣器:

开始蜂鸣器的连接电路如下图一时,但声音比较小。

当改成图二时声音顿时增大。

主要还是因为通过蜂鸣器的电流后者比前者大导致。

图一图二

2.没有加驱动直接连接时,数码管不会动态显示,当用两个三极管作为驱动后数码管正常显示

3,有时数码管有的段不亮,经排查发现是焊锡时不小心导致短路造成的,经过重新焊接问题解决。

八,设计心得体会

本次课程设计是利用光电传感器对通过光电门的产品数量计数。

在设计电路初期,由于没有设计经验,觉得无从下手,空有很多设计思想,经过自己查找资料,我的设计渐渐有了头绪,通过查阅资料,逐渐确立系统方案。

发现自己对单片机AT89S51的功能的认识和应用掌握力度不够,在软件设计程序时常常遇到问题,又找不到错误问题根源所在。

究其原因是我对芯片应用和C语言编写程序的经验太少,速度过慢。

我知道问题的根本原因之后,我认真研究并掌握单片机的应用并提高编写程序的准确度,变成速度。

在设计期间有什么不懂的可以问指导老师,也可以和同学们互相探讨,也可以通过网络查询。

在课程设计期间我学到了很多知识和技巧。

并把以往老师教的理论知识用于实践。

总之,知识必须通过应用才能实现其价值~有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。

参考文献

1,康华光《电子技术基础》数字部分.高等教育出版社,20062,康华光《电子技术基础》模拟部分.高等教育出版社,20063,倪晓军,章韵《单片机原理与接口技术》清华大学出版社,20094,郭天祥《51单片机C语言教程》电子工业出版社,2009

系统调试

附录总电路图与程序清单

总电路图如下所示:

程序清单如下所示:

#include

#defineucharunsignedchar#defineuintunsignedintsbitbuzzer=P3^0;

ucharcodetab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,

0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

ucharnum,num1,num2,flag;

voiddelay(unsignedinti)

{

unsignedintj;

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

for(j=110;j>0;j--);}

voiddisplay()

{

系统调试

uchara,b;

a=num%10;

b=num/10;

if((a==0)&&(b!

=0)&&flag==1)

{

buzzer=1;

delay(1000);

flag=0;

buzzer=0;

num1++;

if(num1==100)

{

num1=0;

}

}

P0=tab[a];

P2=0xfe;

delay(5);

P0=tab[b];

P2=0xfd;

delay(5);

}

main()

{

EA=1;

EX1=1;

IT1=1;

buzzer=0;

while

(1)

display();}

voidint1()interrupt2{

系统调试

num++;

if(num==100)

{

num=0;

num1++;

}

flag=1;

}

系统调试

专业:

机械设计制造及自动化

班级:

机自083

姓名:

钮冬科

学号:

200880724329

日期:

10年12月22日

系统调试

一设计题目………………………………………………..............................1

二设计要求………………………………………………………........1

三题目分析……………………………………………………………………...…1

五具体实现…………………………………………………………1

1.光电开关………………………………………………………………….1

2中断方式计数…………………………………2

3显示部分…………………………...2

4报警部分……………………………………………………2

5软件程序设计………………………………………………3

6系统控制住程序设计…………………………………………………3

7系统初始化子程序设计........................................3

8显示子程序设计..............................................3

9光电计数处理子程序设计......................................4

六单片机小系统焊接..............................................5七系统调试...........................................6八问题及解决方案.............................................7九心得体会......................................................7

参考文献..............................................7

附录..................................................8

程序清单…………………………………………………………………………….9

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1