📄 isd1420.lst
字号:
C51 COMPILER V8.02 ISD1420 08/18/2008 18:35:14 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE ISD1420
OBJECT MODULE PLACED IN ISD1420.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ISD1420.c BROWSE DEBUG OBJECTEXTEND TABS(2)
line level source
1 #include "ISD1420.h"
2 /*****************************************************************
3 **说明:能录,放6段2秒短时间和2段4秒长时间的语音(时间可以改)
4 **连接图:使用兰兴电路,只是P2_4代替WR,故芯片地址为0xcfff,直接用XBYTE[0xCFFF]会有错误,
5 ** 故采用分离方式赋值,即P2=0XCF;P0= ;P2=0XFF;
6 **时间:2008.8.17
7 **作者:馒头
8 *****************************************************************/
9 //#define ISD1420_SEL XBYTE[0xCFFF] /*语音芯片地址*/
10 //sbit Record = P1^2; //录音控制端,低电平有效
11 //sbit Play = P1^3; //放音控制端,低电平有效
12
13
14 //*******前4段时间是1秒,后4段为2秒时间 *******************************
15 //***************************语音信号说明************************************
16 //*******各用1秒时间*******************************************
17 //ISD1420_Section =0 :“停”;
18 //ISD1420_Section =1 :“前进”;
19 //ISD1420_Section =2 :“后退”;
20 //ISD1420_Section =3 :“左转”;
21 //ISD1420_Section =4 :“右转”;
22 //*******************************************************************
23 //*******各用2秒时间***************************************
24 //ISD1420_Section =5 :“有障碍物”;
25 //ISD1420_Section =6 :“发现光源”;
26 //ISD1420_Section =7 :“找到目标”;
27 //ISD1420_Section =8 :“结束任务”;
28 //ISD1420_Section =9 : 录歌曲
29
30 unsigned char ISD1420address[10] ={0x00,0x08,0x10,0x18,0x20, 0x28,0x38,0x48,0x58,0x68} ;
31 char ISD1420_Counter = 0;
32
33 bit Record_En = 0; //录音使能
34 bit Play_En = 0; //放音使能
35 char Second_1s = 0; //控制录,放音时间
36 int Counter_1s = 0;
37
38 //===================================================================
39 //*****************录音函数******************************************
40 //**作者:馒头
41 //**时间:2008.8.16
42 //===================================================================
43 void ISD1420_Record(void)
44 {
45 1 Counter_1s = 0; //重新计时
46 1 Second_1s = 0;
47 1 Record = 0; //录音控制
48 1 Record_En = 1;
49 1 DisplayBuffer[4] = HexChar[1]; //用于指示
50 1 Play = 1;
51 1 Play_En = 0;
52 1 }
53
54 //===================================================================
55 //*****************录音函数******************************************
C51 COMPILER V8.02 ISD1420 08/18/2008 18:35:14 PAGE 2
56 //**作者:馒头
57 //**时间:2008.8.16
58 //===================================================================
59 void ISD1420_Play(void)
60 {
61 1 Counter_1s = 0; //重新计时
62 1 Second_1s = 0;
63 1 Play = 0; //放音使能键
64 1 Play_En = 1;
65 1 DisplayBuffer[5] = HexChar[1]; //用于指示
66 1 Record = 1;
67 1 Record_En = 0;
68 1
69 1 }
70 void ISD1420_Task(void)
71 {
72 1 if(KeyValue)
73 1 {
74 2 switch(KeyValue)
75 2 {
76 3 case 1 :ISD1420_Counter = 0;
77 3 P2 = 0xCF; //初始化
78 3 P0 = ISD1420address[ISD1420_Counter];
79 3 P2 = 0xFF;
80 3 break;
81 3 case 2: ISD1420_Record(); //录音
82 3 break;
83 3
84 3 case 3: ISD1420_Play(); //放音
85 3 break;
86 3
87 3 case 4: ISD1420_Counter++; //语音段选择
88 3 if(ISD1420_Counter >= 10)
89 3 {ISD1420_Counter = 0;}
90 3 P2 = 0xCF;
91 3 P0 = ISD1420address[ISD1420_Counter];
92 3 P2 = 0xFF;
93 3 break;
94 3 default:break;
95 3 }
96 2 DisplayBuffer[2] = HexChar[ISD1420_Counter];
97 2 DisplayBuffer[7] = HexChar[KeyValue];
98 2 KeyValue = 0;
99 2 }
100 1
101 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 138 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 14 ----
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 + -