📄 init.lst
字号:
C51 COMPILER V7.01 INIT 03/28/2003 14:38:29 PAGE 1
C51 COMPILER V7.01, COMPILATION OF MODULE INIT
OBJECT MODULE PLACED IN init.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE init.c OPTIMIZE(2,SPEED) BROWSE DEBUG OBJECTEXTEND
stmt level source
1 //***********************************************************************
2 // *
3 // P H I L I P S P R O P R I E T A R Y *
4 // *
5 // COPYRIGHT (c) 1999 BY PHILIPS SINGAPORE (APIC). *
6 // -- ALL RIGHTS RESERVED -- *
7 // *
8 // File Name : Init.c *
9 // Author : Albert Goh *
10 // Created : 3 March 2000 *
11 // *
12 //***********************************************************************
13 //***********************************************************************
14 // *
15 // Init.c is the initialization of the device attached and also the D14 *
16 // It will initialize the various variables and component. *
17 // *
18 //***********************************************************************
19 //***********************************************************************
20 // *
21 // Module History *
22 // ************** *
23 // *
24 // Date Version Author Changes *
25 // ==== ======= ====== ======= *
26 // 030300 0.1 Albert Created *
27 // *
28 // *
29 //***********************************************************************
30
31 //***********************************************************************
32 //* *
33 //* Include Files Definition *
34 //* *
35 //***********************************************************************
36
37 #include "standard.h"
38 #include "Kernel.h"
39 #include "D14.h"
40
41 //***********************************************************************
42 //* *
43 //* External Variable Definition *
44 //* *
45 //***********************************************************************
46
47 extern void Start_mSEC_Timer(Data);
48 extern void Start_SEC_Timer(Data);
49 extern KERNEL Kernel_Flag;
50 extern USB_INT_FLAG USB_Int_Flag;
51 extern USB_DEVICE USB_Device;
52 extern UI Temp,PIO_Count;
53 extern UC Device_Config_Value;
54 extern UC idata Endpt_FIFO[MAX_BUF];
55 extern void DMA_Init(void);
C51 COMPILER V7.01 INIT 03/28/2003 14:38:29 PAGE 2
56 extern ULI bytecount;
57 extern UC Address_Count;
58 extern UC xdata Address[20];
59
60 //***********************************************************************
61 //* *
62 //* Prototype Routine Definition *
63 //* *
64 //***********************************************************************
65
66 void Init_D14_SFR(void);
67 void Init_Endpoint(void);
68
69 void Init_Main(void);
70 void Init_8051(void);
71 void Init_D14(void);
72
73 //***********************************************************************
74 //* *
75 //* Variable Definition *
76 //* *
77 //***********************************************************************
78
79 TIMER Timer;
80 DATA_SWAP idata Data_Swap;
81 DMA_INT_FLAG DMA_Int_Flag;
82
83 UI count;
84 UC Device_Config_Value;
85 UC Type;
86
87 UI idata Init_Count;
88
89 volatile D14_CNTRL_REG xdata D14_Cntrl_Reg _at_ 0x0000;
90
91 D14_CNTRL_REG xdata *D14_Cntrl_Ptr = &D14_Cntrl_Reg;
92
93
94 //***********************************************************************
95 //* *
96 //* Routine : Init_Main *
97 //* Input : None *
98 //* Output : None *
99 //* Function : To initialize the D14 and the 8051 *
100 //* *
101 //***********************************************************************
102
103 void Init_Main(void)
104 {
105 1
106 1 AUXR = 0x02;
107 1 CKCON = 0x01;
108 1
109 1
110 1 //disable ISP1581 chip select
111 1 ISP1581_CS = 1; //关1581片选
112 1 bytecount = 0;
113 1 PIO_Count = 64;
114 1
115 1 Type = 0;
116 1 USB_Device.BITS.DMA_Test_Mode = PIO_Test;
117 1
C51 COMPILER V7.01 INIT 03/28/2003 14:38:29 PAGE 3
118 1 //初始化8051
119 1 Init_8051();
120 1
121 1 ISP1581_CS = 0; //片选ISP1581
122 1
123 1 D14_Cntrl_Reg.D14_MODE.BITS.SOFTCT = 0;
124 1
125 1 //检查是否连接了ISP1581
126 1 do
127 1 {
128 2 //reset ISP1581
129 2 ISP1581_RESET = 0;
130 2 Start_mSEC_Timer(100);
131 2 ISP1581_RESET = 1;
132 2 Start_mSEC_Timer(100);
133 2
134 2 //读取接口器件是否ISP1581
135 2 if(D14_Cntrl_Ptr->D14_CHIP_ID_MBYTE == 0x81 && D14_Cntrl_Ptr->D14_CHIP_ID_MSB == 0x15)
136 2 break;
137 2 }while(1);
138 1
139 1 //初始化标志寄存器
140 1 USB_Int_Flag.VALUE = 0;//USB中断标志寄存器
141 1 DMA_Int_Flag.VALUE = 0;//DMA中断标志寄存器
142 1 Kernel_Flag.VALUE = 0;//ISP1581状态标志寄存器
143 1
144 1 //设置为设备默认状态
145 1 Kernel_Flag.BITS.HS_FS_State = FULL_SPEED;//设置为全速状态
146 1 HS_FS_LED = FULL_SPEED_LED;
147 1
148 1 //初始化ISP1581
149 1 Init_D14();
150 1 }
151
152
153
154
155 //***********************************************************************
156 //* *
157 //* Routine : Init 8051 *
158 //* Input : 8051 Special Function Register *
159 //* Output : None *
160 //* Function : To initialize 8051 *
161 //* *
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -