⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 我做的畢業設計,用AT89S51 控制LCD1602作為顯示. DS1302時鐘芯片顯示時間,DS18B20測量溫度,還有4X4的鍵盤驅動.實現了一個計算功能.可以用PROTUES 仿真軟件仿真,當時
💻 C
字号:
/*********************************************************
   
   File Name:       主程序
   Author:          liao xu ming
   Created:         2007/3/23
   Modified:		2007/4/8
   Revision: 		1.0
  
*********************************************************/
#include"main.h"
#include"reg51.h"
#include"DS1302.h"
#include"calculator.h"
#include"keyborad.h"
#include"LCD1602.h"
#include"clock.h"
#include"ds18b20.h"

void Initialization(void);       //初始化函数声明
 


void main(void)                  //主程序开始
{ static unsigned char State_FUNCTION;   //功能状态
  unsigned char Key_temp;                //按键值    
 Initialization();                       //调用初始化程序
 while(1)
  {
    Key_temp=Keyboard();                 //键盘扫描 
    if(Key_temp==KEY_FUNCTION )          //功能切换
      {
        if(State_FUNCTION<2)State_FUNCTION++;   //如果状态值小于对大状态,则状态值加1
        else State_FUNCTION=0;         
      }   
    switch(State_FUNCTION)               //功能选择
      {
       case 0: Clock(Key_temp);       break;  //时钟显示
       case 1: Calculator(Key_temp);  break;  //计算器
       case 2: DS18B20();             break;  //温度计
       default :                      break;
      }
 
  }
}

/**************************************
初始化程序 
1 定时器 0 初始化
2 LCD1602初始化
3 时钟芯片 DS1302 初始化

 
**************************************/
void Initialization(void)
{
 
Bell=1;       
EA=1;
ET0=1;
TR0=1;
TMOD=0X01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
LCD_init();
Initial_DS1302();
GotoXY(0,0);
Print("Date: ");
GotoXY(0,1);
Print("Time: ");
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -