📄 main.lst
字号:
C51 COMPILER V7.10 MAIN 06/18/2007 11:05:54 PAGE 1
C51 COMPILER V7.10, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE source\main.c BROWSE DEBUG OBJECTEXTEND PRINT(.\main.lst) OBJECT(main.obj)
line level source
1 #include <REG935.H>
2 #include"..\SOURCE\general.h"
3 #include"..\SOURCE\lcd.h"
4 #include <STRING.H>
5 #include <stdio.h>
6 BYTE pow;
7 bit xf3011over=0,xf3011err=0;
8 void speak(BYTE *p);
9
10 void main(void)
11 {
12 1 cpuint();
13 1 CCU_init(1);
14 1 delay(50);
15 1
16 1
17 1 if(pow!=0xaa)
18 1 {
19 2 POWCTRL=1;
20 2 pow=0x55;
21 2 }
22 1 else
23 1 {
24 2 POWCTRL=0;
25 2
26 2 }
27 1 EEPROM_W(CONTRAST_ADD,CONTRAST); //EEPROM_W(0x01,0x08)
28 1 // DISTANCE=EEPROM_R(0x01);
29 1 // x9c104(50);
30 1 // EN=1;
31 1 LcdInit();
32 1 // LcdDraw(104, 8, 56, 60, 0, DodemLOGO);
33 1 welcome();
34 1
35 1 while(1)
36 1 {
37 2 SD = 0;
38 2 DCLK = 0;
39 2 autotest();
40 2 }
41 1 }
42 /*********************************************************************************************************
43 * 函数名称: xf3011text
44 *
45 * 功能描述: XF3011文本语音播送
46 *
47 * 入口参数: p文本语音的起始地址
-
48 *
49 * 出口参数:
50 *
51 * 全局变量: 无
52 *
53 * 调用模块: 无
54 *
C51 COMPILER V7.10 MAIN 06/18/2007 11:05:54 PAGE 2
55 * 作 者: 刘贤曙
56 * 创建时间: 2006年1月11日
57 ********************************************************************************************************/
58 void xf3011text(BYTE *p)
59 {
60 1 unsigned int length = 0;
61 1 int i = 0;
62 1 length = strlen(p); //需要发送文本的长度
63 1 SBUF = 0xFE; //向串口发送帧头标志
64 1 while(TI==0); //等待发送中断标志位置位
65 1 TI=0; //发送中断标志位清零
66 1 SBUF=0x01; //发送文本合成命令字
67 1 while(TI==0);
68 1 TI=0;
69 1 SBUF=0x00; //发送待合成文本长度的高字节
70 1 while(TI==0);
71 1 TI=0;
72 1 SBUF=length; //发送待合成文本长度的低字节
73 1 while(TI==0);
74 1 TI=0;
75 1 for(i=0;i<length;i++)//依次发送待合成的文本数据
76 1 {
77 2 SBUF=*p;
78 2 while(TI==0);
79 2 TI=0;
80 2 p++;
81 2 }
82 1
83 1 }
84 /*********************************************************************************************************
85 * 函数名称: numtostr
86 *
87 * 功能描述: 数值到文本
88 *
89 * 入口参数: str1需要加入数值的文本内容;k需要加入原文本的数值
90 *
91 * 出口参数: DISTANCE 一次测试后的记数值 ;RANGE 完成测试时的范围
92 * 当DISTANCE=0x0fff,RANGE=7时说明测试距离过长,超出测试范围。
93 *
94 * 全局变量: 无
95 *
96 * 调用模块: 无
97 *
98 * 作 者: 刘贤曙
99 * 创建时间: 2007年1月12日
100 ********************************************************************************************************/
101 void numtostr(char*str1,DWORD k)
102 {
103 1 DWORD k1,k2,klen;
104 1 char *str4;
105 1 klen=strlen(str1);
106 1 str4=str1+klen;
107 1 k2=10000;
108 1 while(1)
109 1 {
110 2 k1=k/k2;
111 2 if ((k1>0)||(k2==1)) break;
112 2 k2/=10;
113 2 }
114 1 while (1)
115 1 {
116 2 k1=k/k2+48;
C51 COMPILER V7.10 MAIN 06/18/2007 11:05:54 PAGE 3
117 2 str4[0]=k1;
118 2 k%=k2;
119 2 str4++;
120 2 k2/=10;
121 2 if (k2==0) break;
122 2 }
123 1 str4[0]=0;
124 1
125 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 454 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 27
IDATA SIZE = ---- ----
BIT SIZE = 2 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -