📄 kb_lcd.lst
字号:
C51 COMPILER V7.01 KB_LCD 05/15/2006 09:03:25 PAGE 1
C51 COMPILER V7.01, COMPILATION OF MODULE KB_LCD
OBJECT MODULE PLACED IN KB_LCD.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE KB_LCD.c BROWSE
stmt level source
1 /****************************************************************************
2 * *
3 * File: KB_LCD.C (KB_LCD模块源程序) *
4 * *
5 * Author: 王凤秀 *
6 * *
7 * Compiler: KEIL C51 V6.23 *
8 * *
9 * Description: CPU=AT89S52 *
10 * (注意:S52和S53并不一样,S52没有SPI,需要自己造. *
11 * Date: 2006/03/08 *
12 * *
13 *****************************************************************************
14 * *
15 * Version | Date | Description *
16 * --------+----------+----------------------------------------------------- *
17 * V1.0 | 06.11.09 | 原始文本 *
18 * *
19 ****************************************************************************/
20 bit flag_first;
21 #define _KB_LCD_GLOBALS
22 #include "INCLUDES.H>
23 uchar code VER[]="V1.1";
24
25 //键盘/液晶显示模块源程序.
26 /****************************************************************************
27 * *
28 * Function: main *
29 * *
30 ****************************************************************************/
31 void main(void)
32 {
33 1 init(); //主程序初始化
34 1 while (1)
35 1 {
36 2 TOGGLE_WD();
37 2 if (CmdValid) //处理命令
38 2 {
39 3 EA=false;
40 3 cmd_execution();
41 3 CmdValid = FALSE;
42 3 SPI_Reply();
43 3 SPI_Indicator=true; //关掉通信指示灯
44 3 EA=true;
45 3 }
46 2 kb(); //键盘模块处理
47 2 TOGGLE_WD();
48 2 if(Half_Second_Flag) //半秒中断标记
49 2 {
50 3 Half_Second_Flag=false;
51 3 if (New_DateTime[0x06] & 0x04)
52 3 {
53 4 New_DateTime[0x06]=New_DateTime[0x06] & 0xFB;
54 4 }
55 3 else
C51 COMPILER V7.01 KB_LCD 05/15/2006 09:03:25 PAGE 2
56 3 {
57 4 New_DateTime[0x06]=New_DateTime[0x06] | 0x04;
58 4 INC_Second();
59 4 }
60 3 Get_TimeCode();
61 3 LCD_Refresh();
62 3 }
63 2 }
64 1 }
65
66 void kb(void)
67 {
68 1
69 1 c1=0;c2=0;c3=0;
70 1 c=P1;
71 1 c&=0x0F;
72 1 if(c!=0x0F) //有键入更新码值
73 1 {
74 2 flag_kb=1;//有键入
75 2 K_LED=0;
76 2 kbchuli(); //更新码值
77 2 if(Afunction==1&&Bfunction==1)
78 2 {
79 3 Afunction=0;
80 3 Bfunction=0;
81 3 flag_function=1;
82 3 }
83 2 }
84 1 else//无键入或有键入去抖动处理
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -