📄 pca_040.lst
字号:
C51 COMPILER V7.50 PCA_040 12/14/2006 08:58:13 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE PCA_040
OBJECT MODULE PLACED IN pca_040.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\c51.exe pca_040.c DB OE
line level source
1 #include "C8051F040.h"
2
3 #define uchar unsigned char
4 #define uint unsigned int
5 void os_init();
6 void port_init();
7 void pca_init();
8 sbit led=P1^6;
9 void UART_Init();
10 void SMBus_Init();
11 void SPI_Init();
12
13 /***********************************************************************
14 *
15 *主函数
16 ***********************************************************************/
17 void main()
18 {
19 1 WDTCN = 0xDE;
20 1 WDTCN = 0xAD;
21 1
22 1 os_init();
23 1 port_init();
24 1 pca_init();
25 1
26 1 EIE1 = 0x08;
27 1 IE = 0x80;
28 1
29 1 while(1)
30 1 {
31 2 }
32 1 }
33 /**********************************************************************
34 *
35 *端口初始化函数
36 ***********************************************************************/
37 void port_init()
38 {
39 1 SFRPAGE = CONFIG_PAGE;
40 1 P1MDIN = 0x00;
41 1 XBR0 = 0x27;
42 1 XBR2 = 0x40;
43 1 P1MDOUT = 0x40;
44 1 }
45
46
47 /**********************************************************************
48 *
49 *系统时钟初始化函数,选择外部22.1184MHZ晶振频率
50 ***********************************************************************/
51 void os_init()
52 {
53 1 uint i;
54 1 SFRPAGE = CONFIG_PAGE;
55 1 OSCXCN = 0x67;
C51 COMPILER V7.50 PCA_040 12/14/2006 08:58:13 PAGE 2
56 1 for (i = 0; i < 3000; i++); // Wait 1ms for initialization
57 1 while ((OSCXCN & 0x80) == 0);
58 1 CLKSEL = 0x01;
59 1
60 1 }
61 /**********************************************************************
62 *
63 *可编程逻辑阵列初始化函数
64 ***********************************************************************/
65 void pca_init()
66 {
67 1 SFRPAGE = PCA0_PAGE;
68 1 // PCA0CN = 0x40; //PCA使能
69 1 PCA0MD = 0x81; //
70 1 PCA0CPM0 = 0x11; //模块0负沿捕捉--P2.0
71 1 PCA0CPM1 = 0x11; //模块1负沿捕捉--P2.1
72 1 PCA0CPM2 = 0x11; //模块2负沿捕捉--P2.2
73 1 PCA0CPM3 = 0x11; //模块3负沿捕捉--P2.3
74 1
75 1 }
76 void pca_isp() interrupt 9
77 {SFRPAGE = PCA0_PAGE;
78 1 if(CCF0==1)
79 1 { led=~led;
80 2 SFRPAGE = PCA0_PAGE;
81 2 CCF0 = 0; //清捕捉中断标志
82 2 }
83 1 if(CCF1==1)
84 1 { led=~led;
85 2 SFRPAGE = PCA0_PAGE;
86 2 CCF1 = 0; //清捕捉中断标志
87 2 }
88 1 if(CCF2==1)
89 1 { led=~led;
90 2 SFRPAGE = PCA0_PAGE;
91 2 CCF2 = 0; //清捕捉中断标志
92 2 }
93 1 if(CCF3==1)
94 1 { led=~led;
95 2 SFRPAGE = PCA0_PAGE;
96 2 CCF3 = 0; //清捕捉中断标志
97 2 }
98 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 131 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -