【最新版】基于单片机的光电计数器毕业论文 联系客服

发布时间 : 星期一 文章【最新版】基于单片机的光电计数器毕业论文更新完毕开始阅读872ad945876fb84ae45c3b3567ec102de2bddfe3

4.3 显示子程序设计

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

图4-2 动态显示电路流程图

4.4 光电计数处理子字程序设计

外部中断T0和T1初始化后都处于关闭状态,当其中断标志有效时进行加计

数,当外部中断T0处于关闭时,外部中断T1进行加计数且判断计数器是否达到计满值99,若大于等于99则KEYBOARD=1蜂鸣器报警。外部中断T1关闭,开外部中断T0,则减计数,再开外部中断T0。最后将计数值通过数码管显示,其流程图如图4-3所示。

图4-3 光电计数处理子程序流程图

4.5 C语言介绍

C语言是一种面向过程的计算机程序设计语言,它是目前举世公认的优秀的结构程序设计语言之一。它由美国贝尔研究所的D.M.Ritchie于1972年推出。1978后,C语言已先后被移植到大、中、小及微型机上。

C语言发展如此迅速,而且成为最受欢迎的语言之一,主要因为它具有强大的功能。许多著名的系统软件,如DBASE Ⅳ都是由C 语言编写的。用C 语言加上一些汇编语言子程序,就更能显示C 语言的优势了,像PC- DOS 、WORDSTAR等就是用这种方法编写的。

C语言是一种成功的系统描述语言,用C语言开发的UNIX操作系统就是一个成功的范例;同时C语言又是一种通用的程序设计语言,在国际上广泛流行。世界上很多著名的计算公司都成功的开发了不同版本的C语言,很多优秀的应用程序也都使用C语言开发的,它是一种很有发展前途的高级程序设计语言。

1.C是中级语言。它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。

2.C是结构式语言。结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

3.C语言功能齐全。具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。

4.C语言适用范围大。适合于多种操作系统,如Windows、DOS、UNIX等等;

也适用于多种机型。

C语言对编写需要硬件进行操作的场合,明显优于其它解释型高级语言,有一些大型应用软件也是用C语言编写的。

C语言具有较好的可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。

4.6软件的程序设计

#include

******************************************* 函数名称:Delay_Nms 功 能:延时约Nms的时间 参 数:uint n 返回值 :无

******************************************** void delay(uint n) { uint i; while(n--)

{for(i=0;i<125;i++); } }

**********显示********* void Display(void) {

Shiwei=0; P0=table[TK10]; delay(1); Shiwei=1;

输入

P0=0x00; Gewei=0; P0=table[TK]; delay(1); Gewei=1; P0=0x00; }

void delay1(uint n) { uint i; while(n--) {

for(i=0;i<125;i++); Display(); } }

*********************** void main(void) { while(1) {

if(In==1) delay1(100); if(In==1) { flag=1; }

if(In==0&&flag==1) { TK++;