📄 tiaoshu.lst
字号:
C51 COMPILER V7.06 TIAOSHU 03/04/2009 14:04:30 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE TIAOSHU
OBJECT MODULE PLACED IN tiaoshu.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE tiaoshu.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /***********************************************************/
2 /*********调速器***1~6档** 1档为最高档 6档为最低档 *********/
3 /***********************************************************/
4 #include<reg52.h>
5 #include<mylib.h>
6 #include<delay.h>
7 #include<display.h>
8 #include<yaokong.h>
9 #include<keychuli.h>
10 /*************************************************************************************/
11 /**************************初始化子程序*********************************************/
12 /**************************************************************************************/
13 void intin(void)
14 {
15 1 TMOD=0x11;
16 1 IT0=1;//INT0为下降沿触发
17 1 IE=0x8b;//允许INT0,T0,T1,T2中断
18 1 IT0=1; //外部中断0触发方式控制位,下降沿触发
19 1 EX0=1; //外部中断0(INT0)中断允许位
20 1 IP=0x01; //定义外部中断0优先于定时器中断的优先级
21 1 dm=0;
22 1 PWM_data=0x01;
23 1 TH0=tableH[PWM_data];
24 1 TL0=tableL[PWM_data];
25 1 TH1=(65536-10000)/256;//PWM输出周期为10ms
26 1 TL1=(65536-10000)%256;
27 1 dianyuan=0; //置电源位为开启状态
28 1 PWM_OUT=0;
29 1 }
30 /************************************************************************************/
31 /***********************************电源***开/关***********************************1*/
32 /************************************************************************************/
33 void dianyuanchuli(void)
34 {
35 1 dianyuan=~dianyuan;
36 1 if(dianyuan==1){PWM_data=0x01;numb=0x0f;TR1=1;KEY_OK=1; }
37 1 else {PWM_OUT=0;numb=0x0d;TR0=0;TR1=1;KEY_OK=1;}
38 1 }
39 /************************************************************************************/
40 /********************************主程序**********************************************/
41 /************************************************************************************/
42 void main()
43 {
44 1 intin();
45 1 while(1)
46 1 {
47 2 if(dianyuan==1)
48 2 {
49 3 if(KEY_OK==0)numb=PWM_data;
50 3 display();
51 3 }
52 2 keyscan(); //按键扫描
53 2 if(KTF==1){key_chuli();}//按键处理
54 2 if(KEY_OK==1)display();
55 2 }
C51 COMPILER V7.06 TIAOSHU 03/04/2009 14:04:30 PAGE 2
56 1 }
57
58
59 /************************************************************************************/
60 /****************************T0中断服务程序*********T=10ms***************************/
61 /************************************************************************************/
62 void time1() interrupt 3
63 { TR0=0;
64 1 if(KEY_OK==0)TR1=0;
65 1 if(KEY_OK==1){jishuqi++;}
66 1 if(jishuqi==200){jishuqi=0;KEY_OK=0;TR1=0;}
67 1 TH1=(65536-10000)/256; //PWM输出周期为10ms
68 1 TL1=(65536-10000)%256;
69 1 TH0=tableH[PWM_data]; //装入高电平保持时间初值
70 1 TL0=tableL[PWM_data];
71 1 if(dianyuan==1)
72 1 {
73 2 PWM_OUT=1;
74 2 TR0=1;
75 2 TR1=1;
76 2 }
77 1 }
78 /************************************************************************************/
79 /****************************T0中断服务程序******************************************/
80 /************************************************************************************/
81 void time0() interrupt 1 //50ms定时器
82 {
83 1 PWM_OUT=0;TR0=0;
84 1 }
85 /*************************************************************************************/
86 /**************************over***over***over***************************************/
87 /**************************************************************************************/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 867 ----
CONSTANT SIZE = 46 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 8 1
IDATA SIZE = ---- ----
BIT SIZE = 3 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -