单片机--界面

来源:互联网 发布:淘宝打印电子面单 编辑:程序博客网 时间:2024/06/16 10:30

单片机的最后一更哟,myhead.h中包括需要用到的头文件的申明以及单片机引脚的申明,all.c在lcd屏幕上显示选项

myhead.h

#ifndef _MYHEAD_H#define _MYHEAD_H#include <reg52.h>#include <intrins.h>#include <stdio.h>#include "./delay/delay.h"#include "./lcd/lcd.h"#include "./led/led.h"#include "./key/key.h"#include "./digital_light/digital.h"#include "./uart/uart.h"#include "./iic/iic.h"#include "./AD_DA/AD_DA.h"#include "./ds1302/ds1302.h"#include "./ds18b20/ds18b20.h"#include "./key8/key8.h"//key#define KEYPORT P0//led#define LEDPORT P3//lcd#define LCDPORT P0#define LCD_WRITE_DATA 1#define LCD_WRITE_COM 0sbit RS = P2^4;sbit RW = P2^5;sbit E = P2^6;//digital#define PORT P1sbit bit_select = P2^0;sbit seg_select = P2^1;extern xdata unsigned char ch[10];extern xdata unsigned char flag;extern xdata unsigned char segdata[10];extern xdata unsigned char bitdata[8];extern xdata unsigned char tempdata[8];extern xdata unsigned char hour;extern xdata unsigned char min;extern xdata unsigned char sec;extern xdata unsigned char alarm_hour;extern xdata unsigned char alarm_min;extern xdata unsigned char alarm_sec;//iic#define SUCC 0#define ERR 1sbit SCL = P2^2;sbit SDA = P2^3;sbit beep = P3^7;extern bit ack;//定义位变量1,0//ds1302sbit RST = P2^0;sbit SCK = P2^1;sbit IO = P2^2;//ds18b20sbit ds = P2^7;//key8sbit start = P3^2;sbit rst = P3^3;#endif

all.c

#include "myhead.h"void main(){      unsigned char keynum;        lcd_init();      lcd_inter1();        while(1)        {              keynum = key_scan();        switch(keynum)              {                      case 0x7e:                        {                            lcd_test();                              led();                              delay_s(2);                              lcd_init();                              lcd_inter1();                              break;                        }                        case 0xbe:                        {                              lcd_test();                              digital();                              delay_s(2);                              lcd_init();                              lcd_inter1();                              break;                        }                        case 0xde:                        {                              lcd_test();                              uart();                              delay_s(2);                              lcd_init();                              lcd_inter1();                              break;                        }                        case 0xee:                        {                              lcd_test();                              delay_ms(100);                              iic();                              delay_s(2);                              lcd_init();                              lcd_inter1();                              break;                        }                        case 0x7d:                        {                              lcd_test();                              key8();                              delay_s(2);                              lcd_init();                              lcd_inter2();                              break;                        }                        case 0xbd:                        {                              lcd_test();                              delay_s(2);                              DA();                              delay_s(2);                              lcd_init();                              lcd_inter2();                              break;                        }                        case 0xdd:                        {                              lcd_test();                              delay_s(3);                              ds1302();                              delay_s(2);                              lcd_init();                              lcd_inter2();                              break;                        }                        case 0xed:                        {                            lcd_test();                              delay_s(2);                              ds18b20();                              delay_s(2);                              lcd_init();                              lcd_inter2();                              break;                        }                        case 0xb7:                        {                              lcd_init();                              lcd_inter1();                              break;                        }                        case 0xd7:                        {                              lcd_init();                lcd_inter2();                              break;                        }                }        }}
0 0
原创粉丝点击