📄 main.lst
字号:
C51 COMPILER V8.15 MAIN 12/29/2008 16:26:32 PAGE 1
C51 COMPILER V8.15, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN MAIN.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE MAIN.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /************************************************************************************
2 * Copyright (c) 2004,西安铭朗电子科技有限责任公司
3 * All rights reserved.
4 *
5 * 文件名称: MAIN.C
6 * 文件标识: none
7 * 适用器件: C8051F040
8 *
9 * 摘 要:
10 *
11 * 当前版本:1.0
12 * 作 者:张宁强
13 * 完成日期:2006年1月20日
14 *
15 * 历史版本:0.9
16 * 原作者 : 张宁强
17 * 完成日期:2005年x月xx日
18 *************************************************************************************/
19
20 #include "MAIN.H"
21
22
23 #define LED_PORT P5 //P5.4--P5.7
24
25 void DelayMs(unsigned int n)//延时(n)MS,SYSCLK = 22118400
26 {
27 1 unsigned int i;
28 1 for(; n > 0; n--)
29 1 {
30 2 for(i = 2211; i > 0; i--);
31 2 }
32 1 }
33
34 void SysClkInit(void)//配置系统时钟
35 {
36 1 int i = 0;
37 1 char SFRPAGE_SAVE = SFRPAGE; // 保存当前SFRPAGE
38 1 SFRPAGE = CONFIG_PAGE; // 改变页
39 1 OSCXCN = 0x67; // 使用外部时钟
40 1 for (i = 0; i < 3000; i++);
41 1 while ((OSCXCN & 0x80) == 0);
42 1 CLKSEL = 0x01;
43 1 SFRPAGE = SFRPAGE_SAVE; // 恢复SFRPAGE
44 1 }
45
46 void SystemInit(void)//系统配置
47 {
48 1 char SFRPAGE_SAVE = SFRPAGE; // 保存当前SFRPAGE
49 1 SFRPAGE = CONFIG_PAGE; // 改变页
50 1
51 1 WDTCN = 0xDE; // 关闭 WDT
52 1 WDTCN = 0xAD;
53 1
54 1 LED_PORT = 0x0f;
55 1
C51 COMPILER V8.15 MAIN 12/29/2008 16:26:32 PAGE 2
56 1 SFRPAGE = SFRPAGE_SAVE; // 恢复SFRPAGE
57 1 }
58
59 void PortInit(void)//端口配置
60 {
61 1 char SFRPAGE_SAVE = SFRPAGE; // 保存当前SFRPAGE
62 1 SFRPAGE = CONFIG_PAGE; // 改变页
63 1
64 1 //交叉开关配置
65 1 XBR0 = 0x04;
66 1 XBR1 = 0x00;
67 1 XBR2 = 0x40;
68 1 // P0 口分配状况
69 1 // P0.0 = UART0 TX
70 1 // P0.1 = UART0 RX
71 1
72 1 //输出方式
73 1 P5MDOUT = 0xf0;
74 1
75 1 SFRPAGE = SFRPAGE_SAVE; // 恢复SFRPAGE
76 1 }
77
78
79 void main(void)
80 {
81 1 unsigned int i;
82 1 float voltage;
83 1 unsigned int tp;
84 1 char SFRPAGE_SAVE = SFRPAGE; // 保存当前SFRPAGE
85 1 SFRPAGE = CONFIG_PAGE; // 改变页
86 1
87 1 SystemInit();//系统配置
88 1 SysClkInit();//配置系统时钟
89 1 PortInit();//端口配置
90 1 UartInit();//UART初始化
91 1 ADC0_Init();
92 1 while(1)
93 1 {
94 2 DelayMs(2000);
95 2 ADC0_Conver();
96 2
97 2 SFRPAGE = UART0_PAGE; // 改变页
98 2 printf("\n");
99 2
100 2 for (i=0;i<6;i++)
101 2 {
102 3 voltage = result[i] * 2430.0 / 4095;
103 3 tp = voltage;
104 3 switch(i)
105 3 {
106 4 case 3:
107 4 tp = voltage;
108 4 printf ("'VR1'adjustable voltage(or AIN%d) is %dmV\n",i,tp);
109 4 break;
110 4
111 4 case 4:
112 4 tp=(voltage-776)/2.86;
113 4 printf ("Chip TEMP is %d degree\n",tp);
114 4 break;
115 4
116 4 case 5:
117 4 tp = voltage;
C51 COMPILER V8.15 MAIN 12/29/2008 16:26:32 PAGE 3
118 4 printf ("HVDA voltage is %dmV\n\n\n",tp);
119 4 break;
120 4
121 4 default:
122 4 tp = voltage;
123 4 printf ("AIN%d voltage is %dmV\n", i, tp);
124 4 break;
125 4 }
126 3 }
127 2 }
128 1 }
129
130
131
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 362 ----
CONSTANT SIZE = 116 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 9
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 + -