• 大小: 10KB
    文件类型: .c
    金币: 2
    下载: 1 次
    发布日期: 2021-07-09
  • 语言: 其他
  • 标签: 511602  

资源简介

51单片机例程(1602显示秒表),动态循环显示,可以用,更改后可以用

资源截图

代码片段和文件信息

/**********************HJ-3G实验开发板例程************************
*  平台:HJ-3G V6.0 + Keil U3 + STC89C52
*  名称:
*  公司:慧净电子科技有限公司
*  淘宝:http://shop37031453.taobao.com       
*  网站:www.hlmcu.com
*  编写:
*  日期:2008-8-08
*   QQ : 121350852  398115088
*  晶振:11.0592MHZ
*  说明:免费开源,不提供源代码分析,有问题直接到慧净论坛交流
*  论坛:http://hjdz.5d6d.com
******************************************************************

//注意事项:10天教程中的LCD1602第5脚由于当时设计错误,直接接到GND上了,接了低电平。
//本实验需要把LCD1602第5脚,读/写脚接到GND上,有两种方法,第一种,用杜邦线把P3.6脚接到GND上。
//另一种方法,定义一个 P3.6 IO口,在主函数中 把P3.6 写一个低电平就可以了。
//sbit WR = P3^6; 在后面主函数中加入 WR=0;就可以不用接杜邦线, P3.6到GND的杜邦线不要。
//WR=0;
*                                                                  *
* 描述:                                                           *
*                                                                  *
*   上电后液晶屏先显示网站等信息,接着按下S4,定时开始,再次按下 *
*                                                                  *
*   S4暂停,第3次按下显示累积计时,第4次按下暂停计时,任何时候按下S5*
*                                                                  *
*   计数清零。                                                  *
*                                 *
*                                                                  *
************************************************************************/

#include 
#include 

#define uchar unsigned char
#define uint  unsigned int

uchar KeyCount=0;

sbit  K3 = P3^6;
sbit  K4 = P3^7;

sbit BEEP = P2^3;          //蜂鸣器

uchar code  cdis1[ ] = {“  STOPWATCH  0  “};
uchar code  cdis2[ ] = {“   WWW.HJMCU.COM“};
uchar code  cdis3[ ] = {“TIME            “};

uchar code  cdis4[ ] = {“ BEGIN COUNT  1 “};
uchar code  cdis5[ ] = {“ PAUSE COUNT  2 “};
uchar code  cdis6[ ] = {“ BEGIN COUNT  3 “};
uchar code  cdis7[ ] = {“ PAUSE COUNT  4 “};
uchar code  cdis8[ ] = {“                “};

sbit LCD_RS = P1^0;             
sbit LCD_RW = P1^1;
sbit LCD_EN = P2^5;

#define delayNOP(); {_nop_();_nop_();_nop_();_nop_();};

uchar display[] =  {0x000x000x000x000x000x000x00};
uchar display2[] = {0x000x000x000x000x000x000x000x00};

/*********************************************************
 延时函数
*********************************************************/

void Delay(uint num)//延时函数
{
  while( --num );
}

/*********************************************************
 蜂鸣器响一声                                           
**********************************************************/
void beep()
{
    unsigned char y;
    for (y=0;y<180;y++)
    {
      BEEP=!BEEP;                //BEEP取反
  Delay(70);
    } 
    BEEP=1;                      //关闭蜂鸣器
}

/*********************************************************
 延时函数1
*********************************************************/
void delay1(int ms)
{
   unsigned char n;
   while(ms--)
   {
     for(n = 0; n<250; n++)
    {
      _nop_();
      _nop_();
      _nop_();
      _nop_();
    }
   }
}

/********

评论

共有 条评论

相关资源