📄 main.lst
字号:
C51 COMPILER V8.05a MAIN 06/01/2007 15:22:01 PAGE 1
C51 COMPILER V8.05a, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Program Files\Keil\C51\BIN\C51.EXE main.c ROM(COMPACT) DEBUG OBJECTEXTEND
line level source
1 /* ****************************************************************************************************/
2 /* Demonstration Program for SP35 D1 */
3 /* ----------------------------------------------------------------------------------------------- */
4 /* */
-
5 /* Purpose: Customer evaluation */
6 /* */
7 /* Filename: main.c */
8 /* */
9 /* Target: SP35 */
10 /* */
11 /* Dev. Envir: Keil Software C51 V7.10 */
12 /* 礦ision2 V2.40 */
13 /* Author: SH */
14 /* */
15 /* History: 16.March 2006: First Release */
16 /* 22.Dec 2006: Update for D1 */
17 /* */
18 /* Status: Release V1.1 */
19 /* ************************************************************************************************** */
20 /* (C)opyright Infineon Technologies AG. All rights reserved. */
21 /* ****************************************************************************************************/
22 /**********************************************************************************
23 Includes
24 ***********************************************************************************/
25 #include <stdio.h>
26 #include <ctype.h>
27 #include "Reg_SP35.h"
28 #include "SP35_ROMLibrary.h"
29 #include "SP35_DevLib.h"
30
31
32 /**********************************************************************************
33 Defines
34 ***********************************************************************************/
35 typedef idata struct ID_Struct
36 {
37 unsigned long ID;
38 unsigned char ProdCode;
39 } ID_Struct;
40
41 /**********************************************************************************
42 Function Prototypes
43 ***********************************************************************************/
44 void Eval_Statusbyte(status);
45
46 /**********************************************************************************
47 Global Variables
48 ***********************************************************************************/
49 unsigned char ID[4];
50
51 /**********************************************************************************
52 functions
53 ***********************************************************************************/
54
C51 COMPILER V8.05a MAIN 06/01/2007 15:22:01 PAGE 2
55 /**********************************************************************************
56 Main Routine, executed @ every Wakeup or System- Reset
57 **********************************************************************************/
58 void main (void)
59 {
60 1 signed int idata measure[3];
61 1 idata ID_Struct SensorID;
62 1 unsigned char status;
63 1
64 1 RS232_Init(PP2,PP1); // Initialize Software UART
65 1
66 1 // Read Sensor ID
67 1 Read_ID(&SensorID);
68 1 printf("\r\nSensor ID: %lu",SensorID.ID);
69 1
70 1 // Read Pressure
71 1 status = Meas_Pressure(3,0,measure); // Perform 8 measurements
72 1 printf("\r\nPressure: %4d [kPa]",(measure[0]/16));
73 1 Eval_Statusbyte(status);
74 1
75 1 // Read Acceleration
76 1 status = Meas_Acceleration(3,0,measure); // Perform 8 measurements
77 1 printf("\r\nAcceleration: %4d [g ]",(measure[0])/16);
78 1 Eval_Statusbyte(status);
79 1
80 1 // Read Temperature
81 1 status = Meas_Temperature(measure);
82 1 printf("\r\nTemperature: %4d [癈 ]",(measure[0]/128));
83 1 Eval_Statusbyte(status);
84 1
85 1 // Read Supply Voltage
86 1 status = Meas_Supply_Voltage(measure);
87 1 printf("\r\nSupply Voltage: %4d [mV ]",(measure[0]/8));
88 1 Eval_Statusbyte(status);
89 1 printf("\r\n");
90 1
91 1 // Configure Interval Timer
92 1 IntervalTimerCalibration(2); // Configure for 500ms Interval Precounter
93 1 ITPR = 0x01; // Confiure for Postcounter to 1
94 1
95 1 RS232_UnInit(PP2,PP1); // UnInitialize Software UART
96 1
97 1 Powerdown(); // Enter Power Down
98 1
99 1 }
100
101 /**********************************************************************************
102 Evaluate Measurement Statusbyte
103 **********************************************************************************/
104 void Eval_Statusbyte(status)
105 {
106 1 switch(status)
107 1 {
108 2 case 0: printf(" OK!");
109 2 break;
110 2 case 1: printf(" ADC Underflow!");
111 2 break;
112 2 case 2: printf(" ADC Overflow!");
113 2 break;
114 2 case 4: printf(" Bond Wire Check failed!");
115 2 break;
116 2 case 8: printf(" Beam Integrity Check failed!");
C51 COMPILER V8.05a MAIN 06/01/2007 15:22:01 PAGE 3
117 2 break;
118 2 case 16: printf(" VMIN Check failed!");
119 2 break;
120 2 default: printf(" Unknown or multiple Checks failed!");
121 2 break;
122 2 }
123 1 }
124
125
126
127
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 309 ----
CONSTANT SIZE = 285 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 4 1
IDATA SIZE = ---- 11
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 + -