?? calculator.lst
字號(hào):
C51 COMPILER V8.05a CALCULATOR 07/30/2007 13:24:31 PAGE 1
C51 COMPILER V8.05a, COMPILATION OF MODULE CALCULATOR
OBJECT MODULE PLACED IN Calculator.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE sources\Calculator.c BROWSE INCDIR(.\include) DEBUG OBJECTEXTEND PRINT(.\Ca
-lculator.lst) OBJECT(Calculator.obj)
line level source
1 //*************************************************************************************************
2 //*************************************************************************************************
3 //**<程序名>:計(jì)算器處理主程序,根據(jù)計(jì)算器的輸入狀態(tài)分派不同的函數(shù)對(duì)按鍵進(jìn)行處理。 **
4 //**<功能>:當(dāng)b_WorkMode=0是,若有鍵按下則調(diào)用此函數(shù)對(duì)鍵碼進(jìn)行處理。 **
5 //*************************************************************************************************
6 //*************************************************************************************************
7
8
9 //*************************************************************************************************
10 //* *
11 //* ******************************頭文件及宏定義************************** *
12 //* *
13 //*************************************************************************************************
14 #include "CalReady.h"
15
16
17 //*************************************************************************************************
18 //* *
19 //* ********************************全局變量****************************** *
20 //* *
21 //*************************************************************************************************
22 extern unsigned long ul_Number; //LCE顯示數(shù)據(jù),LCD實(shí)時(shí)顯示該數(shù)字。
23
24 //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<工作模式(默認(rèn)為計(jì)算器模式)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
25 extern bit b_WorkMode; //0--計(jì)算器模式;
26 //1--計(jì)時(shí)模式。
27 //定義在KeyProcess.c中。
28 unsigned char uc_ModeChange=0;
29
30 extern bit b_LCDClean;
31
32 extern unsigned char uc_ReportSymbol;
33
34
35 unsigned long ul_NumberOne=0; //第一個(gè)數(shù)
36 unsigned long ul_NumberTwo=0; //第二個(gè)數(shù)
37 unsigned char uc_Operator=0; //運(yùn)算符
38 unsigned long ul_Result=0; //運(yùn)算結(jié)果
39 unsigned char uc_NumPointer=1; //計(jì)算狀態(tài)
40
41 //*************************************************************************************************
42 //* *
43 //* *******************************計(jì)算器處理主函數(shù)****************************** *
44 //* *
45 //*************************************************************************************************
46
47
48
49
50 void vCalculator(unsigned char ucKeyCode)
51 {
52 1 if(ucKeyCode==41) //判斷按鍵是不是'NO/C'。
53 1 {
54 2 if(uc_NumPointer==1) //如果是‘NO/C’鍵則判斷手機(jī)否是狀態(tài)一。
C51 COMPILER V8.05a CALCULATOR 07/30/2007 13:24:31 PAGE 2
55 2 {
56 3 if(uc_ModeChange==2) //如果是狀態(tài)一則看uc_ModeChange是不是2。
57 3 {
58 4 uc_ModeChange=0; //如果是2則計(jì)時(shí)器模式。
59 4 b_WorkMode=1;
60 4
61 4 uc_ReportSymbol=3; //閃爍顯示:-CHAG-1。表明正在切換狀態(tài)。
62 4 b_LCDClean=1;
63 4 }
64 3 else
65 3 {
66 4 uc_ModeChange++; //如果uc_ModeChange不是2則加一。
67 4 ul_NumberOne=0; //清除所有數(shù)據(jù),將所有數(shù)據(jù)恢復(fù)到狀態(tài)一。
68 4 ul_NumberTwo=0;
69 4 ul_Number=0;
70 4 uc_NumPointer=1;
71 4 }
72 3 }
73 2 else
74 2 {
75 3 ul_NumberOne=0; //清除所有數(shù)據(jù),將所有數(shù)據(jù)恢復(fù)到狀態(tài)一。
76 3 ul_NumberTwo=0;
77 3 ul_Number=0;
78 3 uc_NumPointer=1;
79 3 }
80 2 }
81 1 else
82 1 { //如果不是“NO/C”鍵,首先將uc_ModeChange清零。
83 2 uc_ModeChange=0;
84 2 //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<根據(jù)不同狀態(tài)分派不同的鍵處理函數(shù)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
85 2 switch(uc_NumPointer)
86 2 {
87 3 case 1:
88 3 vCalReadyOne(ucKeyCode); //進(jìn)入狀態(tài)一。
89 3 break;
90 3 case 2:
91 3 vCalReadyTwo(ucKeyCode); //進(jìn)入狀態(tài)二。
92 3 break;
93 3 case 3:
94 3 vCalReadyThree(ucKeyCode); //進(jìn)入狀態(tài)三。
95 3 break;
96 3
97 3 default:break;
98 3 }
99 2 }
100 1
101 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 94 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 15 1
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -