MX93521 [Macronix]

ALL DIGITAL VOICE RECORDER MACHINE BASED ON THE MX93521 VOCODER CHIP; 根据该MX93521声码器芯片全部数字语音记录仪机
MX93521
型号: MX93521
厂家: MACRONIX INTERNATIONAL    MACRONIX INTERNATIONAL
描述:

ALL DIGITAL VOICE RECORDER MACHINE BASED ON THE MX93521 VOCODER CHIP
根据该MX93521声码器芯片全部数字语音记录仪机

文件: 总57页 (文件大小:289K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
MX93521  
ALL DIGITAL VOICE RECORDER MACHINE  
BASED ON THE MX93521 VOCODER CHIP  
1. FEATURES  
• Host writable message header (4 bytes) for identifica  
-tion or index purpose  
• Powerful Editing Function  
• Varieties of operating function including Rewind, Fast  
Forward, Repeat and message editing etc.  
• Voice activated recording  
• Use Flash memory to store user data (data bank)  
• Upload/Download speech message data from/to  
HOST  
• VOCODER mode (VOice COmpressor/  
DEcompressoR)  
• Direct CODEC Play Mode (Play PCM/u-Law data re  
ceived from HOST)  
• Play Voice Prompt from ROM/FLASH memory  
• DTMF tone genarator  
• Excellent sound quality by adopting 4800bps CELP  
speech compression alogorithm.  
• Silent Compression algorithm to further compress si  
lence between speech.  
• Flash Memory Management alogorithm to manage  
down-graded Flash Memory to store compressed  
speech data. With silent compression, one 4Mbit flash  
memory could store up to 18 minutes speech.  
• Support 4/8/16/32 Mbit Samsung Flash Memory or its  
compatible parts  
• Support both parallel and serial microprocessor inter  
face.  
• Codec Interface circuit (support both TP3054 and  
MX93000)  
• Host controllable LCD Module Interface  
2.GENERAL DESCRIPTION  
This document describes how to implement an all-digital voice recorder using the MX93521 chip.The MX93521 is a  
Digital Recorder Data Pump which is controlled by an external microprocessor to perform various recorder function.  
The MX93521 is fully controlled by a HOST controller through a simple HOST interface protocol. The HOST could  
initiate many digital recording functions such as record, play, repeat, search, skip, insertion, message managing  
and self-diagnosis. Also, HOST could set MX93521 in VOCODER mode and use MX93521 as a speech compres-  
sion/decompression data pump.The functions supported by MX93521 are listed as followed.  
MODE  
FUNCTION PATH  
RECORD  
PLAY  
CODEC-->(COMPRESS)-->FLASH  
CODEC-->(DECOMPRESS)<--FLASH  
CODEC-->(COMPRESS)-->HOST  
CODEC-->(DECOMPRESS)<--HOST  
CODEC-->(PCM/u-Law)<--HOST  
FLASH(MSG)-->HOST  
RECORD (VOCODER)  
PLAY (VOCODER)  
DIRECT CODEC PLAY MODE  
DOWNLOAD MESSAGE  
UPLOAD MESSAGE  
FLASH(MSG)<--HOST  
DATABANK ACCESS  
FLASH(DATA)<-- -->HOST  
P/N:PM0426  
REV. 2.2, JAN 20, 1998  
1
MX93521  
3.PIN CONFIGURATIONS  
3.1 Pinout Assignments for MX93521 100-Pin PQFP (Parallel Mode)  
100-LQFP PIN ASSIGNMENT¡G  
50  
49  
48  
47  
46  
45  
44  
43  
42  
41  
40  
39  
38  
37  
36  
35  
34  
33  
32  
31  
30  
29  
28  
27  
26  
ED9  
ED10  
ED11  
ED12  
ED13  
VDSP  
GND  
ED14  
ED15  
XTLI  
XTLO  
NC  
NC  
NC  
NC  
MIC-E\  
SPK-E\  
RST\  
EROM  
SDEN\  
SDATA  
WP\  
EAD7  
NC  
76  
77  
78  
79  
80  
81  
82  
83  
84  
85  
86  
87  
88  
89  
90  
91  
92  
93  
94  
95  
96  
97  
98  
99  
100  
EAD8  
EAD9  
EAD10  
EAD11  
EAD12  
EAD13  
EAD14  
GND  
VDSP  
EAD15  
VDSP  
SCLK  
VDSP  
DSPDR  
DA\  
MX93521  
CMCLK  
CFS  
DSPDX  
SOUT  
PHDB0  
PHDB1  
PHDB2  
PHDB3  
RxCmd  
NC  
NC  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
2
MX93521  
100-PQFP PIN ASSIGNMENT¡G  
50  
49  
48  
47  
46  
45  
44  
43  
42  
41  
40  
39  
38  
37  
36  
35  
34  
33  
32  
31  
ED11  
ED12  
ED13  
VDSP  
GND  
ED14  
ED15  
XTLI  
XTLO  
NC  
NC  
NC  
NC  
MIC-E\  
SPK-E\  
RST\  
EROM  
SDEN\  
SDATA  
WP\  
EAD9  
81  
82  
83  
84  
85  
86  
87  
88  
89  
90  
91  
92  
93  
94  
95  
96  
97  
98  
99  
100  
EAD10  
EAD11  
EAD12  
EAD13  
EAD14  
GND  
VDSP  
EAD15  
VDSP  
SCLK  
VDSP  
MX93521  
DSPDR  
PHRDB\  
CMCLK  
CFS  
DSPDX  
PHWRB\  
PHDB0  
PHDB1  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
3
MX93521  
3.2 Pinout Assignments for MX93521 100-PinTQFP (Serial Mode)  
100-LQFP PIN ASSIGNMENT¡G  
50  
49  
48  
47  
46  
45  
44  
43  
42  
41  
40  
39  
38  
37  
36  
35  
34  
33  
32  
31  
30  
29  
28  
27  
26  
ED9  
ED10  
ED11  
ED12  
ED13  
VDSP  
GND  
ED14  
ED15  
XTLI  
XTLO  
NC  
NC  
NC  
NC  
MIC-E\  
SPK-E\  
RST\  
EROM  
SDEN\  
SDATA  
WP\  
EAD7  
NC  
76  
77  
78  
79  
80  
81  
82  
83  
84  
85  
86  
87  
88  
89  
90  
91  
92  
93  
94  
95  
96  
97  
98  
99  
100  
EAD8  
EAD9  
EAD10  
EAD11  
EAD12  
EAD13  
EAD14  
GND  
VDSP  
EAD15  
VDSP  
SCLK  
VDSP  
DSPDR  
DA\  
CMCLK  
CFS  
DSPDX  
SOUT  
BIO0  
BIO1  
BIO2  
BIO3  
MX93521  
RxCmd  
NC  
NC  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
4
MX93521  
100-PQFP PIN ASSIGNMENT¡G  
50  
49  
48  
47  
46  
45  
44  
43  
42  
41  
40  
39  
38  
37  
36  
35  
34  
33  
32  
31  
ED11  
ED12  
ED13  
VDSP  
GND  
ED14  
ED15  
XTLI  
XTLO  
NC  
NC  
NC  
NC  
MIC-E\  
SPK-E\  
RST\  
EROM  
SDEN\  
SDATA  
WP\  
EAD9  
81  
82  
83  
84  
85  
86  
87  
88  
89  
90  
91  
92  
93  
94  
95  
96  
97  
98  
99  
100  
EAD10  
EAD11  
EAD12  
EAD13  
EAD14  
GND  
VDSP  
EAD15  
VDSP  
SCLK  
VDSP  
DSPDR  
PHRDB\  
CMCLK  
CFS  
DSPDX  
PHWRB\  
BIO0  
MX93521  
BIO1  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
5
MX93521  
4.PIN DESCRIPTION  
4.1 DSP BASIC (22 PINS )  
SYMBOL TYPE  
VDSP  
PIN # (PQFP)  
PIN # (LQFP)  
DESCRIPTION  
5V power source  
Ground  
23,43,69,84,41,39 20,40,66,81,38,36  
GND  
24,44,53,70,85  
54  
21,41,67,82  
51  
FLL\  
I
FLL\ low to set MX93521 running from single  
low crystal  
XTLI  
88  
89  
96  
14  
85  
86  
93  
11  
32.256Mhz Crystal input  
XTLO  
RST\  
32.256Mhz Crystal output  
I
Power on Reset, Schmite triggered  
In serial mode, PACKB\ is N.C.  
In parallel mode, PACKB\ becomes low when  
MX93521 write data to BIO and high when  
HOST read from BIO.  
PACKB\  
OA  
HOLD\  
HOLDA\  
EROM  
SCLK  
X32O  
I
67  
66  
97  
40  
13  
12  
64  
63  
94  
37  
10  
9
Hold DSP clock down and release bus  
Ack to HOLD\ signal  
OA  
I
Disable internal ROM, use external ROM only  
Transmit/receive data clock  
I
OA  
32.768Khz Crystal output  
X32I  
32.768Khz Crystal input  
4.2 DSP EXTERNAL MEMORY(40 pins)  
SYMBOL  
EAD0-EAD15  
ED0~ED15  
EDCE\  
TYPE  
OB  
PIN # (PQFP)  
PIN # (LQFP)  
DESCRIPTION  
61~55,52~45,42  
58~52,50,48~42,39  
Address Bus  
I/OB  
OB  
68,71~83,86~87  
65,68~80,83~84  
Data Bus  
65  
62  
External data chip enable  
Resered for future use  
Flash external read  
Flash external write  
No connection  
EPCE\  
OB  
64  
61  
ERD\  
OB  
63  
60  
EWR\  
OB  
62  
59  
NC  
90~93  
87~90  
4.3 uP INTERFACE(10 pins)  
4.3.1 Serial Interface:(UPMODX=1)  
SYMBOL  
DA\  
TYPE PIN # (PQFP)  
PIN # (LQFP)  
DESCRIPTION  
OC  
OC  
OB  
37  
34  
Data Available (Output port OPT17)  
Serial Data Out (Output port OPT16)  
Drive LCD Display  
SOUT  
33  
30  
BIO(7..0)  
25~32  
22~29  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
6
MX93521  
4.3.2 Parallel Interface:(UPMODX=0)  
SYMBOL TYPE  
PIN # (PQFP)  
PIN # (LQFP)  
DESCRIPTION  
Host read  
PHRDB\  
PHWRB\  
I
I
37  
34  
33  
30  
Host write  
PHDB(7:0) B  
25~32  
22~29  
Host data bus  
4.4 CODEC (4 pins)  
SYMBOL TYPE  
PIN # (PQFP)  
PIN # (LQFP)  
DESCRIPTION  
CFS  
OB  
OB  
OA  
I
35  
36  
34  
38  
32  
33  
31  
35  
Codec frame sync, 8Khz  
Codec master clock, 1.536Mhz  
Codec data transmit  
CMCLK  
DSPDX  
DSPDR  
Codec data receive  
4.5 OPT:OUT PORT(16 pins)  
SYMBOL TYPE PIN # (PQFP)  
PIN # (LQFP)  
DESCRIPTION  
CLE  
OC  
OC  
11  
10  
6,9  
8
8
Flash memory command latch enable  
Flash memory address latch enable  
ALE  
7
N.C.  
3,6  
5
CE2\  
OC  
OC  
OC  
OC  
Chip enable 2  
Chip enable 1  
LED1 enable  
LED2 enable  
CE1\  
7
4
LED1\  
LED2\  
N.C. DR-V5  
5
2
4
1
2,3  
1
RxCmdDR-V5 OC  
98  
Received Command (toggle when re  
ceived command from HOST)  
Flash memory write protection  
Serial data transfer (for MX93000)  
Serial data enable (for MX93000)  
Speaker enable,Hi-active  
WP\  
OC  
OC  
OC  
OC  
OC  
100  
99  
97  
96  
95  
92  
91  
SDATA  
SDEN\  
SPK-E  
MIC-E\  
98  
95  
94  
Microphone enable  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
7
MX93521  
4.6 IPT:INPUT PORT(8 pins)  
SYMBOL  
MTYPE1  
MTYPE2  
SHOLD\  
MTYPE0  
R/B  
TYPE  
PIN # (PQFP)  
PIN # (LQFP)  
DESCRIPTION  
I
I
I
I
I
I
I
I
22  
21  
20  
19  
18  
17  
16  
15  
19  
18  
17  
16  
15  
14  
13  
12  
Memory type select 1  
Memory type select 2  
Power down detect  
Memory type select 0  
Flash memory Ready/Busy  
Codec select (TP3054B or MX93000)  
Serial data input  
CODECTYPE  
SIN  
S/P\  
Serial/paralled interface  
NOTE:OA:2mA,OB:4mA,OC:16mA output current  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
8
MX93521  
5. HOST CONTROLLER INTERFACE  
5.1 HOST CONTROLLER INTERFACE  
5.1.1 Configuration  
40  
16  
OUT1  
OUT2  
SCLK  
SIN  
MX93521  
HOST  
37  
IN1  
DA\  
15  
VCC  
S/P\  
33  
96  
1
IN2  
OUT3  
IN3  
SOUT  
RST\  
RxCmd  
SERIAL MODE  
40  
33  
37  
OUT1  
OUT2  
SCLK  
39  
15  
VCC  
Gnd  
PHILO\  
PHWRB\  
PHRDB\  
PACKB\  
SIN  
14  
16  
MX93521  
HOST  
IN1  
S/P\  
96  
OUT3  
D0-7  
IN2  
RST\  
32-25  
1
PHDB0-7  
RxCmd  
PARALLEL MODE  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
9
MX93521  
5.1.2Timing Diagrams  
HOST WriteTiming (Parallel Mode)  
PHDB0-7  
ts  
th  
PHWRB\  
SCLK  
(INT1\)  
tp  
tp  
RxCmd  
HOST Write Timing (Parallel Mode)  
HOST should cycle PHWRB\ after writing data to PHDB0-7.  
MX93521 will read data from PHDB0-7 on the falling edge of SCLK (rising edge of PHWRB\).  
Rxcmd will be toggled if command byte has been processed by MX93521  
The PHWRB\ signal will cause MX93521 to latch data from bus PHDB0-7 to MX93521 internal register.The invertted  
signal of PHWRB\ will trigger MX93521 INT1\ to read and process the received data byte from internal register.Due  
to the interrupt contention, there might be an up to 50 us delay between the rising edge of PHWRB\ and INT1\  
actually being served.To keep from command overrun, HOST should check if RxCmd toggled or wait 50 usec before  
sending next command byte to MX93521.  
HOST ReadTiming (Parallel Mode)  
PHDB0-7  
ts  
PACKB\  
ta  
PHRDB\  
HOST Read Timing (Parallel Mode)  
When MX93521 write data to PHDB0-7, PACKB\ will become low.HOST needs to poll the status of PACKB\ continu-  
ously. When HOST detect low state on PACKB\, HOST should read out data from PHDB0-7. After HOST read the  
data from PHDB0-7, PACKB\ will be reset to high.  
The maxima delay between MX93521 write data to PHDB0-7 and PACKB\ become low is 10 ns.  
The maxima delay between rising edge of PHRDB\ and PACKB\ become high is also 10 ns.  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
10  
MX93521  
HOST Write Timing (Serial Mode)  
ts  
HOST output data SIN  
HOST output clock SCLK  
tp  
tp  
tp  
RxCmd  
DSP Sampling from SIN  
HOST send data 61H tp DSP  
start  
d0 d1  
d2  
0
d3  
0
d4  
0
d5  
1
d6  
1
d7  
0
stop  
1
0
61H  
HOST Write Timing (Serial Mode)  
RxCmd become low when start bit is received from HOST and toggle state when MX93521 received each following  
data bit or stop bit from HOST.Thus, instead of waiting for a fixed period of time (50us) to send a command bit, HOST  
could send the following command bit as soon as RxCmd toggled from previous state.The delay between the falling  
edge of SCLK and the RxCmd togglling time is range from 1 us to 50 us  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
11  
MX93521  
HOST Read Timing (Serial Mode)  
DSP inform HOST  
Data Available  
>50us, clock rate  
DA\  
HOST output clock  
SCLK  
5-40us, SOUT response time  
DSP output data  
SOUT  
HOST Sampling from  
SOUT  
d0  
1
d1  
0
d2  
0
d3  
1
d4  
0
d5  
0
d6  
1
d7  
0
stop  
x
start  
DSP send data 49H  
to HOST  
49H  
HOST Read Timing (Serial Mode)  
SOUT response time is 5-40us from the falling edge of SCLK  
It is recommended that HOST sample SOUT right before the falling edge of SCLK  
uP InterfaceTiming:  
Min  
Max  
Data setup time (ts)  
10ns  
2ns  
Data hold time (th)  
Data process time (tp)  
PACKB\ acknowledge time (ta)  
1us  
50us  
5ns  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
12  
MX93521  
5.2 MX93521 IO INTERFACE  
5.2.1 Output Port  
PIN  
5
Power down state  
LED1\  
LED2\  
UO0*  
UO1*  
UO2*  
O
O
O
O
O
LED1 CONTROL  
High  
High  
High  
High  
High  
4
LED2 CONTROL  
3
User Programmable Output Port  
User Programmable Output Port  
User Programmable Output Port  
2
1
* User Programmable Output Port are only available in DR-V3 and DR-V4 version  
5.2.2 Flash Memory Interface  
MX93521  
MTYPE1  
MTYPE2  
MTYPE0  
CLE  
PIN  
22  
21  
19  
11  
10  
63  
8
Flash  
GND  
GND  
Vcc  
CLE  
ALE  
RD\  
Power down state  
I
0: SAMSUNG  
I
0: SAMSUNG  
I
(1:KM29N16000, 0:KM29N040)  
O
O
O
O
O
O
I
Low  
Low  
ALE  
ERD\  
CE2\  
CE1\  
EWR\  
R\B  
CE2\  
CE1\  
WR\  
R/B\  
WP\  
IO0  
High  
High  
7
62  
18  
100  
68  
71  
72  
73  
74  
75  
76  
77  
WP\  
O
IO  
IO  
IO  
IO  
IO  
IO  
IO  
IO  
Low  
ED0  
ED1  
IO1  
ED2  
IO2  
ED3  
IO3  
ED4  
IO4  
ED5  
IO5  
ED6  
IO6  
ED7  
IO7  
5.2.3 CODEC Interface  
MX93521  
CODECTYPE  
DSPDR  
DSPDX  
CFS  
PIN  
17  
38  
34  
35  
36  
99  
98  
95  
94  
Power down state  
I
(1: MX93000, 0:TP3054)  
O
O
O
O
O
O
O
O
CMCLK  
SDATA  
High  
High  
Low  
High  
SDEN\  
SPK_E  
MIC_E\  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
13  
MX93521  
5.2.4 uP Serial Mode Interface  
MX93521  
uP  
LCD  
RxCmd  
S/P\  
O
I
IN3  
(optional) MX93521 Rxd Command Indicator  
High, Serial Mode  
Serial Clock  
Vcc  
SCLK  
DA\  
I
OUT1  
IN1  
O
O
I
Data Available  
SOUT  
SHOLD\  
SIN  
IN2  
Serial Data Output  
DSP HOLD  
OUT3  
OUT2  
OUT4  
I
Serial Data Input  
RST\  
BIO2  
BIO3  
BIO4  
BIO5  
BIO6  
BIO7  
I
DSP RESET  
O
O
O
O
O
O
E
RS  
D4  
D5  
D6  
D7  
5.2.5 uP Parallel Mode Interface  
MX93521  
uP  
LCD  
S/P\  
I
GND  
OUT1\  
OUT2  
OUT1  
OUT3  
OUT4  
Vcc  
IN1  
Low, Parallel Mode  
SCLK  
I
PHRDB\  
PHWRB\  
SHOLD\  
RST\  
I
Read  
I
Write  
I
DSP HOLD  
I
DSP RESET  
PHILO\  
SIN  
I
High, Byte Mode  
I
SIN should be connected to PACKB\ externally  
Acknowledge  
PACKB\  
RxCmd  
PHDB0  
PHDB1  
PHDB2  
PHDB3  
PHDB4  
PHDB5  
PHDB6  
PHDB7  
O
O
I/O  
I/O  
I/O  
I/O  
I/O  
I/O  
I/O  
I/O  
IN1  
IN2  
(optional) MX93521 Rxd Command Indicator  
D0  
D1  
D2  
D3  
D4  
D5  
D6  
D7  
When SHOLD\ is low, MX93521 will go to power down mode.  
When SHOLD\ change from low to high, DSP will power up and send ACK0 to HOST  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
14  
MX93521  
6. HOST INTERFACE SOFTWARE COMMAND SET SUMMARY  
6.1 HOSTTO MX93521 COMMANDS  
When MX9521 received a command from HOST, it will always respond the command with a acknowledge. The  
valid commands and corresponded acknowledge are described as below.  
D7 D6  
D5  
0
0
0
1
1
1
1
0
0
0
1
1
1
1
0
0
0
0
1
1
1
0
0
1
D4  
0
1
1
0
0
1
1
0
0
1
0
0
1
1
0
0
1
1
0
0
1
0
1
1
D3  
1
0
1
0
1
0
1
0
1
1
0
1
0
1
0
1
0
1
0
1
x
D2  
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
D1  
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
D0  
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
B
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
1
1
1
1
1
1
1
0
0
0
0
0
0
0
1
1
1
008H  
010H  
018H  
020H  
028H  
030H  
038H  
040H  
048H  
058H  
060H  
068H  
070H  
078H  
080H  
088H  
090H  
098H  
0A0H  
0A8H  
0BxH  
0CxH  
0D0H  
0F8H  
POINT TO SPECIFIC MESSAGE  
GET CURRENT MESSAGE INFOMATION  
DELETE MESSAGE(S)  
REC/PLAY MISC.FUNCTION  
RECORD MESSAGE  
PLAY MESSAGE  
SKIP FORWARD/BACKWARD PLAY  
MISC. FUNCTION  
TONE GENERATOR  
MX93000 CODEC MISC. FUNCTION  
LED DISPLAY  
WRITE COMPRESSEDVOICE DATATO MX93521  
LCD COMMAND  
LCD DATA  
OUTPUT COUNTER  
DR-V5  
Download/Upload Message  
DR-V4  
Set Silence level  
DR-V5  
Set ROM/RAM wait state  
DR-V4  
Read/Write RAM  
Read ROM  
DR-V5  
DR-V4  
Data Bank Functions  
Data Bank Functions  
DR-V4  
x
0
1
DR-V4  
Data Bank Functions  
DR-V4  
Play Voice Prompt  
BBB:BYTES SEND FOLLOWINGTHIS COMMAND  
MX93521TO HOST ACKNOWLEDGES (OK Messages)  
ACK0:0A0H, NO DATA ACCOMPNIEDTHIS ACKNOWLEDGE  
ACK1:0A1H, 1 DATA ACCOMPNIEDTHIS ACKNOWLEDGE  
ACK2:0A2H, 2 DATA ACCOMPNIEDTHIS ACKNOWLEDGE  
ACK6:0A6H, 6 DATA ACCOMPNIEDTHIS ACKNOWLEDGE  
MX93521TO HOST ACKNOWLEDGES (ERROR Messgaes)  
ERR0(0E0H): Command ERROR  
ERR1(0E1H): Out of memory, MX93521 cannot perform RECORD function  
ERR2(0E2H): No message found, MX93521 cannot perform PLAY function  
ERR3(0E3H): No Flash Memory Detected when power on  
ERR4(0E4H): MX93521 Busy  
ERR5(0E5H): Vocoder Mode, Play buffer full, data rejected  
ERR6(0E6H): No previous or next message found  
ERR7(0E7H): MX93000 Command Busy  
ERR8(0E8H): No empty block could be allocated for data bank usage DR-V4  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
15  
MX93521  
6.2 MX93521 Power On Initialization Flow Chart  
START  
Clear MX93521 internal RAM read  
systemsetup serial or parallel?  
TP3054 or MX93000?  
4M or 16M Flash memory init LCD  
NO  
Flash memory  
ID correct?  
Is data link in  
YES  
Flash memory correct?  
NO  
YES  
Is check data link  
2nd time?  
NO  
Format Flash memory &  
create data link  
Flash memory error  
send CMD E3H  
Flash memory OK send CMD  
A1H+xxH  
MX93521 Normal operation  
0A1H+000H  
0A1H+001H  
0A1H+002H  
0A1H+003H  
0A1H+004H  
0A1H+005H  
0A1H+006H  
0A1H+007H  
ERR3(0E3H)  
DETECT SAMSUNG KM29N040 FLASH MEMORY  
DETECT SAMSUNG KM29N16000 FLASH MEMORY  
RESERVED  
RESERVED  
RESERVED  
RESERVED  
RESERVED  
RESERVED  
NO MEMORY DETECTED  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
16  
MX93521  
6.3 HOSTTO MX93521 COMMAND DESCRIPTIONS  
COMMAND 09H  
FUNCTION:  
RETURN:  
RETURN:  
Move Message Pointer  
ACK0  
ERR6, IF REACH THE FIRST OR THE LAST MESSAGE IN THE MEMORY  
DB7 DB6  
DB5  
0
DB4  
0
DB3  
1
DB2  
0
DB1  
0
DB0  
1
0
0
D
M
M
M
M
M
M
M
IF CURRENT MESSAGE NUMBER IS N,  
D=0, JUMP FORWARD  
D=1, JUMP BACKWARD  
M=001H, POINTTOTHE MESSAGE (N+1)  
M=002H, POINTTOTHE MESSAGE (N+2)  
M=07FH, POINT TO THE LAST MESSAGE  
M=001H, POINTTOTHE MESSAGE (N-1)  
M=002H, POINTTOTHE MESSAGE (N-2)  
M=07FH, POINT TO THE FIRST MESSAGE  
COMMAND 0AHDR-V5  
FUNCTION:  
RETURN:  
RETURN:  
Point to specefic message  
ACK0  
ERR2, If no such message found in the FLASH memory  
DB7 DB6  
DB5  
0
DB4  
0
DB3  
1
DB2  
0
DB1  
1
DB0  
0
0
0
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
M
Message Number (High Byte)  
Message Number (Low Byte)  
*The message pointer is point to the last message in the flash memory upon power on.  
SAMPLES:  
Forward to the next message  
09H  
09H  
09H  
09H  
0AH  
01H  
81H  
7FH  
FFH  
01H  
Rewind to the previous message  
Forward to the last message  
Rewind to the the first message  
Move Message Pointer to message #258 (102H)  
02H  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
17  
MX93521  
COMMAND 10H  
FUNCTION:  
RETURN:  
GET CURRENT MESSAGE INFOMATION  
ACK6, DATA1, DATA2, DATA3, DATA4, DATA5, DATA6 or ACK0  
DB7 DB6  
DB5  
0
DB4  
1
DB3  
0
DB2  
0
DB1  
0
DB0  
0
0
0
DATA1: HIGH BYTE OF CURRENT MESSAGE NUMBER  
DATA2: LOW BYTE OF CURRENT MESSAGE NUMBER  
DATA3: USER DATA #1  
DATA4: USER DATA #2  
DATA5: USER DATA #3  
DATA6: USER DATA #4  
*RETURN ACK0 WHEN NO MESSAGE INTHE MEMORY  
SAMPLES:  
GET CURRENT MESSAGE INFOMATION  
10H  
COMMAND 11H  
COMMAND 12H  
COMMAND 13H  
COMMAND 14H  
FUNCTION:  
RETURN:  
ATTACH USER DATA TO CURRENT MESSAGE  
ACK0 or ERR0  
DB7 DB6  
DB5  
0
DB4  
1
DB3  
0
DB2  
B
DB1  
B
DB0  
B
0
0
USER DATA #1  
USER DATA #2  
USER DATA #3  
USER DATA #4  
* The USER DATA is default to 0FFH  
* Any data writen with this command will be AND with previous data  
* When USER DATA #1 is 055H. If write data 0AAH to it again, USER DATA #1 will become 0H  
* If no message in the FLASH memory, MX93521 will return ERR0  
SAMPLES:  
ATTACH DATA 12HTO CURRENT MESSAGE  
11H  
12H  
13H  
14H  
12H  
12H  
12H  
12H  
ATTACH DATA 12H/34HTO CURRENT MESSAGE  
ATTACH DATA 12H/34H/56HTO CURRENT MESSAGE  
ATTACH DATA 12H/34H/56H/78HTO CURRENT MESSAGE  
34H  
34H  
34H  
56H  
56H  
78H  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
18  
MX93521  
COMMAND 19H  
FUNCTION:  
RETURN:  
DELETE MESSAGE(S)  
ACK0 after deletion completed  
DB7 DB6  
DB5  
0
DB4  
1
DB3  
1
DB2  
0
DB1  
0
DB0  
1
0
0
D
M
M
M
M
M
M
M
IF CURRENT MESSAGE NUMBER IS N  
D=0, DELETE FORWARD  
M=001H, DELETE ONE MESSAGE AFTER MESSAGE #N (MSG #N WILL BE DELETED)  
M=002H, DELETE TWO MESSAGES AFTER MESSAGE #N (MSG #N, #N+1 WILL BE DELETED)  
M=07FH, DELETE ALL MESSAGES AFTER MESSAGE #N (MSG #N, #N+1,.., #LAST WILL BE DELETED)  
D=1, DELETE BACKWARD  
M=001H, DELETE ONE MESSAGE BEFORE MESSAGE #N (MSG #N WILL BE DELETED)  
M=002H, DELETE TWO MESSAGES BEFORE MESSAGE #N (MSG #N, #N-1 WILL BE DELETED)  
M=07FH, DELETE ALL MESSAGES BEFORE MESSAGE #N (MSG #N, #N-1,.., #1 WILL BE DELETED)  
SAMPLES:  
DELETE CURRENT MESSAGE  
19H  
19H  
19H  
19H  
19H  
01H  
02H  
82H  
7FH  
FFH  
DELETE CURRENT & NEXT MESSAGE  
DELETE CURRENT & PREVIOUS MESSAGE  
DELETE ALL MESSAGES AFTER & INCLUDE CURRENT MESSAGE  
DELETE ALL MESSAGES BEFORE & INCLUDE CURRENT MESSAGE  
COMMAND 21H  
FUNCTION:  
RETURN:  
REC/PLAY MISC FUNCTION  
DB7 DB6  
DB5  
1
DB4  
0
DB3  
0
DB2  
0
DB1  
0
DB0  
1
0
0
M
M
M
M
M
M
M
M
*THIS COMMAND ONLYVALIDWHEN IN RECORD/PLAY MODE  
M
Function  
Acknowledge  
Mode  
REC  
01H  
01H  
02H  
04H  
08H  
10H  
20H  
40H  
80H  
Stop Recording  
ACK2,CHKSUM_H,CHKSUM_L  
Stop Playing  
ACK0  
ACK0  
ACK0  
ACK0  
ACK0  
ACK0  
ACK0  
ACK0  
PLAY  
REC/PLAY PAUSE ON/OFF  
Turn on counter display on LCD  
Delete playing message  
Set REPEAT start point  
Set REPEAT end point  
Disable REPEAT mode  
Set Mark  
REC/PLAY  
REC/PLAY  
PLAY  
PLAY  
PLAY  
PLAY  
REC/PLAY  
If HOST send command 21H/04H after REC or PLAY start, MX93521 will automatically display a 5-digit REC or  
PLAY counter MM:SS at current LCD cursor. MM is minute. SS is second.  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
19  
MX93521  
COMMAND 28H  
COMMAND 29H  
COMMAND 2AH  
COMMAND 2BH  
COMMAND 2CH  
FUNCTION : RECORD MSG  
BBB = 000, 001, 010, 011, 100  
RETURN : ACK2, MSGNUM_H, MSGNUM_L  
RETURN :ACK1, FORMAT (VOCODER mode, FORMAT=81H when recording with new format)  
(VOCODER mode, FORMAT=80H when recording with old format)  
RETURN:ERR1, WHEN OUT OF FLASH MEMORY, CANNOT PERFORM RECORD  
DB7  
0
DB6  
0
DB5  
1
DB4  
0
DB3  
1
DB2  
B
DB1  
B
DB0  
B
USER DATA #1  
USER DATA #2  
USER DATA #3  
USER DATA #4  
* USER DATA will be stored in the flash memory  
*When RECORD, MX93521 will not switch MIC on automatically, HOST must turn on MIC before RECORD and turn  
off MIC after RECORD STOP  
SAMPLES:  
RECORD MESSAGEWITHOUT USER DATA  
28H  
29H  
2AH  
2BH  
2CH  
RECORD MESSAGEWITH 1 USER DATA 12H  
12H  
12H  
12H  
12H  
RECORD MESSAGE WITH 2 USER DATA 12H, 34H  
RECORD MESSAGE WITH 3 USER DATA 12H, 34H, 56H  
RECORD MESSAGEWITH 4 USER DATA 12H, 34H, 56H, 78H  
34H  
34H  
34H  
56H  
56H  
78H  
COMMAND 30H  
COMMAND 31H  
FUNCTION:  
RETURN:  
RETURN:  
PLAY MESSAGE  
ACK2, MSGNUM_H, MSGNUM_L, ACK0(Vocoder mode)  
ERR2, No Message to play  
DB7  
0
DB6  
0
DB5  
1
DB4  
1
DB3  
0
DB2  
0
DB1  
0
DB0  
1
M
M
M
M
M
M
M
M
LENGTH (sec / unit)  
M=000H, PLAY TILL THE END OF MESSAGE  
M=001H, PLAY CURRENT MESSAGE FOR 1 SEC  
M=080H, PLAY CURRENT MESSAGE FOR 128 SEC OR REACH THE END OF MESSAGE  
M=0FFH, PLAY CURRENT MESSAGE FOR 255 SEC OR REACH THE END OF MESSAGE  
* When PLAY, MX93521 will not switch SPKR on automatically, HOST must turn on SPKR before PLAY and turn off  
SPKR after PLAY STOP  
SAMPLES:  
PLAY MESSAGE TILL THE END OF MESSAGE  
PLAY MESSAGE TILL THE END OF MESSAGE  
PLAY FIRST 3 SEC OF CURRENT MESSAGE  
30H  
31H  
31H  
00H  
03H  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
20  
MX93521  
COMMAND 32H  
FUNCTION:  
RETURN:  
Skip first M frames in the message with playback  
ACK2,MSGNUM_H,MSGNUM_L  
DB7  
0
DB6  
0
DB5  
0
DB4  
1
DB3  
1
DB2  
0
DB1  
1
DB0  
0
H
H
H
H
H
H
H
H
Frame number (Hi-byte)  
Frame number (Lo-byte) , 20ms/unit  
L
L
L
L
L
L
L
L
SAMPLES:  
PLAY THIS MESSAGE WITH SKIP FIRST 200 ms  
32H  
00H  
0AH  
* This setting will be clear after play end of this message.  
COMMAND 39H  
FUNCTION:  
RETURN:  
JUMP TO MARK  
ACK0  
DB7  
0
DB6  
DB5  
1
DB4  
DB3  
1
DB2  
0
DB1  
0
DB0  
0
1
1
D
M
M
M
M
M
M
M
D=0, FORWARD  
M=00H, Normal Playing  
D=1, BACKWARD  
M=01H, Forward/Rewind to the 1st found mark from current position  
M=02H, Forward/Rewind to the 2nd found mark from current position  
..  
M=7FH, Forward/Backward to the 127th found mark from current position  
mark#1  
-
mark#2  
-
mark#3  
-
mark#4  
-
-
-
Pos#A  
Pos#B  
If current playing position is at Pos#A, command 39H/01H will forward to mark#1  
command 39H/02H will forward to mark#2  
command 39H/03H will forward to mark#3  
command 39H/04H will forward to mark#4  
command 39H/05H will forward to the end of message  
command 39H/81H will rewind to the head of message  
If current playing position is at Pos#B, command 39H/01H will forward to mark#3  
command 39H/02H will forward to mark#4  
command 39H/03H will forward to the end of message  
command 39H/81H will rewind to mark#2  
command 39H/82H will rewind to mark#1  
command 39H/83H will rewind to the head of message  
* If two marks are set too close to each other(<2 second), the second mark will be ignored.  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
21  
MX93521  
COMMAND 3AH  
FUNCTION:  
RETURN:  
FAST FORWARD/BACKWARD PLAYING  
ACK0  
DB7  
0
DB6  
0
DB5  
1
DB4  
1
DB3  
1
DB2  
0
DB1  
1
DB0  
0
D
M
M
M
M
M
M
M
U
U
U
U
U
U
U
U
Unit Length (20ms/unit)  
D=0, FORWARD  
M=00H, PLAY 1 UNIT, SKIP 0 UNIT (NORMAL PLAY SPEED)  
M=01H, PLAY 1 UNIT, SKIP 1 UNIT (2x SPEED)  
M=02H, PLAY 1 UNIT, SKIP 2 UNIT (3x SPEED)  
M=03H, PLAY 1 UNIT, SKIP 3 UNIT (4x SPEED)  
M=07H, PLAY 1 UNIT, SKIP 7 UNIT (8x SPEED)  
..  
M=7FH, PLAY 1 UNIT, SKIP 127 UNIT (128x SPEED)  
D=1, BACKWARD  
M=01H, PLAY 1 UNIT, REWIND 1 UNIT (REPEAT SAME UNIT)  
M=02H, PLAY 1 UNIT, REWIND 2 UNIT (1x SPEED REWIND)  
M=03H, PLAY 1 UNIT, REWIND 3 UNIT (2x SPEED REWIND)  
M=05H, PLAY 1 UNIT, REWIND 5 UNIT (4x SPEED REWIND)  
..  
M=7FH, PLAY 1 UNIT, REWIND 127 UNIT (126x SPEED)  
SAMPLES:  
NORMAL PLAYING  
39H  
39H  
39H  
3AH  
3AH  
3AH  
3AH  
3AH  
3AH  
00H  
01H  
82H  
00H  
01H  
83H  
01H  
02H  
82H  
FORWARDTOTHE 1ST FOUND MARK  
REWINDTOTHE 2ND FOUND MARK  
NORMAL PLAYING  
01H  
01H  
01H  
02H  
05H  
05H  
PLAY 20ms and SKIP 20ms (2x speed)  
PLAY 20ms and REWIND 60ms (2x speed)  
PLAY 40ms and SKIP 40ms  
PLAY 100ms and SKIP 200ms  
PLAY 100ms and REWIND 200ms  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
22  
MX93521  
COMMAND 41H  
FUNCTION:  
RETURN:  
MISC FUNCTION  
DB7  
0
DB6  
1
DB5  
0
DB4  
0
DB3  
0
DB2  
0
DB1  
0
DB0  
1
M
M
M
M
M
M
M
M
M
Function  
ACKOWLEDGE  
ACK0  
REMARK  
01H  
02H  
03H  
04H  
05H  
06H  
07H  
08H  
09H  
0AH  
ToggleVOCODER mode  
Append Recording  
ACK0  
Overwrite Recording  
ACK0  
Toggle SPKR on/off  
Voice Activated Recording DR-V4  
ACK0  
valid only when usingTP3054  
valid only when usingTP3054  
ACK0  
Linear mode codec interface DR-V4  
u-law mode codec interface DR-V4  
Toggle MIC on/off  
Play accross message boundary DR-V4 ACK0  
Play within message boundary DR-V4 ACK0  
ACK0  
ACK0  
ACK0  
0BH4 Direct CODEC Access DR-V5  
0CH5 Old data format DR-V5  
ACK0  
ACK0  
0DH5 New data format DR-V5  
10H1 Erase all message  
11H2 Hard erase flash memory DR-V4  
ACK0  
ACK0  
ack after erase complete  
ack after erase complete  
ack after erase complete  
ACK0  
12H  
20H  
40H  
41H  
42H  
43H  
44H  
Reinitial flash memory  
Check busy/Idle status  
Check available block  
Check total block DR-V4  
Check available time DR-V4  
Check total time DR-V4  
ACK0  
ACK0 / ERR4  
ACK2,BLKCNT_H, BLKCNT_L  
ACK2,BLKCNT_H, BLKCNT_L  
ACK2,MIN,SEC  
ACK2,MIN,SEC  
Check message length DR-V4  
ACK2,MIN,SEC  
80H3 Overrun counter  
81H3 Get Message Checksum DR-V4  
ACK2,CNT_H,CNT_L  
ACK2,CS_H,CS_L  
VOCODER mode  
VOCODER mode  
1
The command 41H/10H erase all data in good blocks.After block erase, the flash management data will be written  
back to the flash memory.If HOST use flash memory as speech data memory and data bank memory.The command  
41H/10H will erase both of the memory. To erase only speech memory, use command 19H. To erase data bank  
memory, use command 0CAH.The commands to control data bank memory are described from command 0B0H to  
command 0D6H  
2 Prior Samsung ship their flash memory to customer, they will test the parts and randomly write data 00H to those  
bad blocks.During the first power on, MX93521 will scan flash memory and create a good/bad table accordingly.After  
that, MX93521 will search the good/bad table during power on initialization. Unless good/bad table is missing, MX93521  
will not do flash memory initialization again.  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
23  
MX93521  
We call command 41H/11H is hard erase flash memory. Because this command will erase all data in both good and  
bad blocks. It is possible to erase the data in those bad blocks and turn the bad blocks into good block. In this case,  
the original bad blocks could be unstable during normal operation. So, we are not recommend to use this command  
unless it is necessary.  
After send command 41H/11H, HOST should issue a hardware reset by toggling RST\.  
3 Command 41H/80H & 41H/81H are only valid after recording inVOCODER mode.  
4 HOST could send PCM or u-law format data to CODEC directly. In this mode, MX93521 send PCM/u-Law data  
received from HOST to CODEC (MX93000 or TP3054). MX93521 could store up to 512 samples data internally. If  
inetrnal buffer is empty, MX93521 will disable this mode automatically and send CMD 10H to HOST.At the beginning  
of Direct CODEC Access mode, MX93512 will not send data to CODEC until MX93521 received 384 samples from  
HOST.  
5 Old data format is the data format used in MX93510 and MX93521V3.New data format is used in MX93521V4 and  
V5. New format supports silence compression. It is always set to use new data format in MX93521 V4. MX93521 V5  
will reset to use new data format after power on, RECORD or PLAY.So, if HOST want to RECORD or PLAY message  
using old data format, HOST needs to send command 41H/0CH every time before sending RECORD or PLAY  
command to MX93521.  
COMMAND 42H  
FUNCTION:  
RETURN:  
DETECT M FRAMES SILENCE ON THE PLAY/RECORD MODE  
ACK0  
DB7  
0
DB6  
DB5  
1
DB4  
0
DB3  
0
DB2  
0
DB1  
1
DB0  
0
0
H
L
H
H
H
H
H
H
H
Silence Frame number (Hi-byte)  
L
L
L
L
L
L
L
Frame number (Lo-byte) , 20ms/unit  
SAMPLES:  
DETECT 500 ms SILENCE ON THE PLAY/RECORD MODE  
42H  
00H  
19H  
* This setting will be clear after play end of this message.  
* When detect the silence condition , mx93521 will response the data of 28H  
COMMAND 48HDR-V5  
FUNCTION:  
RETURN:  
Tone Off  
ACK0  
DB7  
0
DB6  
DB5  
DB4  
0
DB3  
1
DB2  
0
DB1  
0
DB0  
0
1
0
Tone Off  
COMMAND 49H  
FUNCTION:  
RETURN:  
BEEP GENERATOR  
ACK0  
DB7  
0
DB6  
1
DB5  
0
DB4  
0
DB3  
DB2  
0
DB1  
0
DB0  
1
1
1000HzTONE (100ms on / 100ms off)  
GAIN  
C
C
C
C
C
G
G
G
CCCCC:  
BEEP COUNT, MAXIMUM 31 BEEPS  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
24  
MX93521  
COMMAND 4BH  
FUNCTION:  
RETURN:  
TONE GENERATOR  
ACK0  
DB7  
0
DB6  
1
DB5  
0
DB4  
0
DB3  
1
DB2  
0
DB1  
1
DB0  
1
TONE  
L
L
L
L
L
G
G
G
LENGTH (100ms/unit) & GAIN  
TONE FREQ (HIGH BYTE)  
TONE FREQ (LOW BYTE)  
F15  
F14  
F6  
F13  
F5  
GAIN= -18  
GAIN= -24  
GAIN= -30  
GAIN= -36  
F12  
F11  
F3  
F10  
F2  
100  
101  
110  
111  
F9  
F8  
F0  
F7  
GGG: 000  
001  
F4  
F1  
dB,  
dB,  
dB,  
dB,  
GAIN= -42  
GAIN= -48  
GAIN= -56  
GAIN= -62  
dB  
dB  
dB  
dB  
010  
011  
COMMAND 4EHDR-V5  
COMMAND 4FHDR-V5  
FUNCTION:  
RETURN:  
DUALTONE GENERATOR  
ACK0  
DB7  
0
DB6  
1
DB5  
0
DB4  
0
DB3  
1
DB2  
DB1  
1
DB0  
1
0
F15  
F7  
F14  
F6  
F13  
F5  
F12  
F4  
F11  
F3  
F10  
F2  
F10  
F2  
G1  
G2  
F9  
F1  
F9  
F1  
G1  
G2  
F8  
F0  
F8  
F0  
G1  
G2  
TONE#1 FREQ (HIGH BYTE)  
TONE#1 FREQ (LOW BYTE)  
TONE#2 FREQ (HIGH BYTE)  
TONE#2 FREQ (LOW BYTE)  
Scale forTONE#1  
F15  
F7  
F14  
F6  
F13  
F5  
F12  
F4  
F11  
F3  
G1  
G2  
G1  
G2  
G1  
G2  
G1  
G2  
G1  
G2  
Scale forTONE#2  
DB7  
0
DB6  
1
DB5  
0
DB4  
0
DB3  
1
DB2  
1
DB1  
1
DB0  
1
F15  
F7  
F15  
F7  
G1  
G2  
L
F14  
F6  
F14  
F6  
G1  
G2  
L
F13  
F5  
F13  
F5  
G1  
G2  
L
F12  
F4  
F12  
F4  
G1  
G2  
L
F11  
F3  
F11  
F3  
G1  
G2  
L
F10  
F2  
F10  
F2  
G1  
G2  
L
F9  
F1  
F9  
F1  
G1  
G2  
L
F8  
F0  
F8  
F0  
G1  
G2  
L
TONE#1 FREQ (HIGH BYTE)  
TONE#1 FREQ (LOW BYTE)  
TONE#2 FREQ (HIGH BYTE)  
TONE#2 FREQ (LOW BYTE)  
Scale forTONE#1  
Scale forTONE#2  
Length (10ms/unit)  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
25  
MX93521  
F = (FREQ/8000)*65536  
TONE (#)  
C5  
FREQ (HZ)  
F (DECIMAL)  
4286.464  
4811.407  
5400.658  
5721.784  
6422.446  
7208.960  
8091.812  
8572.928  
9622.815  
10883.154  
11443.487  
12844.892  
14417.920  
16183.542  
17145.856  
F (HEX)  
10BEH  
12CBH  
1519H  
165AH  
1916H  
1C29H  
1F9CH  
217DH  
2597H  
2A83H  
2CB3H  
322DH  
3852H  
3F38H  
42FAH  
F (HIGH)  
10H  
F (LOW)  
BEH  
CBH  
19H  
523.25  
587.33  
659.26  
698.46  
D5  
12H  
E5  
15H  
F5  
16H  
5AH  
16H  
G5  
A5  
783.99  
880.00  
987.77  
1046.50  
1174.66  
1328.51  
1396.91  
1567.98  
1760.00  
1975.53  
2093.00  
19H  
1CH  
1FH  
21H  
29H  
B5  
9CH  
7DH  
97H  
C6  
D6  
25H  
E6  
2AH  
2CH  
32H  
83H  
F6  
B3H  
2DH  
52H  
G6  
A6  
38H  
B6  
3FH  
42H  
38H  
C7  
FAH  
DTMF  
F1 (Hz)  
F1 (Dec)  
9904.1  
F1 (Hex)  
F2 (Hz)  
F2 (Dec)  
5709.8  
5709.8  
5709.8  
5709.8  
6307.8  
6307.8  
6307.8  
6307.8  
6979.6  
6979.6  
6979.6  
6979.6  
7708.7  
7708.7  
7708.7  
7708.7  
F2 (Hex)  
164EH  
164EH  
164EH  
164EH  
18A4H  
18A4H  
18A4H  
18A4H  
1B44H  
1B44H  
1B44H  
1B44H  
1E1DH  
1E1DH  
1E1DH  
1E1DH  
1
2
3
A
4
5
6
B
7
8
9
C
*
1209  
1336  
1477  
1633  
1209  
1336  
1477  
1633  
1209  
1336  
1477  
1633  
1209  
1336  
1477  
1633  
26B0H  
2AC1H  
2F44H  
3442H  
26B0H  
2AC1H  
2F44H  
3442H  
26B0H  
2AC1H  
2F44H  
3442H  
26B0H  
2AC1H  
2F44H  
3442H  
697  
697  
697  
697  
770  
770  
770  
770  
852  
852  
852  
852  
941  
941  
941  
941  
10944.5  
12099.6  
13377.5  
9904.1  
10944.5  
12099.6  
13377.5  
9904.1  
10944.5  
12099.6  
13377.5  
9904.1  
0
#
D
10944.5  
12099.6  
13377.5  
*For command 49H, 4BH, 4EH and 4FH. HOST have to make sure SPKR is on when using this commands.  
*User could use scale factor in command 4EH&4FH combined with CODEC gain setting to set the desirable DTMF  
tone level  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
26  
MX93521  
SAMPLES:  
PLAY 2 BEEPS W/ -42DB GAIN  
49H 14H  
PLAYTONE #C5 (523HZ) W/ -36DB GAIN FOR 2 SECOND  
PLAYTONE #E5 (659HZ)W/ -48DB GAIN FOR 1 SECOND  
Play DTMF-1 (High tone is 6 dB higher than low tone)  
Play DTMF-0 (High tone is 6 dB lower than low tone) 100ms  
STOP PLAYING DTMFTONE  
4BH A3H 10H BEH  
4BH 55H 15H 19H  
4EH 26H B0H 16H 4EH FFH 7FH  
4FH 2AH C1H 1EH 1DH 3FH 7FH 0AH  
48H  
COMMAND 51H  
FUNCTION:  
RETURN:  
WRITE OUTPUT PORT UO0-2  
ACK0  
DB7  
0
DB6  
1
DB5  
0
DB4  
1
DB3  
0
DB2  
0
DB1  
0
DB0  
1
X
X
X
X
X
UO2  
UO1  
UO0  
*CMD 51H is only available in version DR-V3 and DR-V4  
COMMAND 5AH  
FUNCTION:  
RETURN:  
MX93000 CODEC MISC. FUNCTION  
ACK0 or ERR7  
DB7  
0
DB6  
1
DB5  
0
DB4  
1
DB3  
1
DB2  
0
DB1  
1
DB0  
0
X
X
X
X
X
A2  
D2  
A1  
D1  
A0  
D0  
D7  
D6  
D5  
D4  
D3  
*Please reference to MX93000 data sheet for the definition of the MX93000 registers  
SAMPLES:  
Turn on MX93000 MIC path  
Turn off MX93000 MIC path  
Set MIC to maxima gain  
Set MIC to minima gain  
5AH  
5AH  
5AH  
5AH  
5AH  
5AH  
5AH  
5AH  
00H  
00H  
02H  
02H  
00H  
00H  
03H  
03H  
48H  
01H  
0FH  
00H  
03H  
01H  
00H  
0FH  
Turn on MX93000 SPKR path  
Turn off MX93000 SPKR path  
Set SPKR to maxima gain  
Set SPKR to minima gain  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
27  
MX93521  
COMMAND 61H  
FUNCTION:  
RETURN:  
LED DISPLAY FUNCTION  
ACK0  
DB7  
0
DB6  
1
DB5  
1
DB4  
0
DB3  
0
DB2  
0
DB1  
0
DB0  
1
LED2  
LED1  
T
T
T
T
T
T
LED1=1,  
LED2=1,  
TTTTTT=0,  
TTTTTT¹0,  
LED1 ON (MX93521 PIN5 LOW)  
LED2 ON (MX93521 PIN4 LOW)  
NO FLASH  
FLASH TIMER (64ms/unit)  
SAMPLES:  
LED1 STAY ON  
61H  
61H  
61H  
61H  
61H  
61H  
40H  
80H  
48H  
90H  
C2H  
00H  
LED2 STAY ON  
LED1 FLASH (512ms ON / 512ms OFF)  
LED2 FLASH (1024ms ON / 1024ms OFF)  
LED1 & LED2 FLASH (128ms ON / 128ms OFF)  
LED1 & LED2 OFF  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
28  
MX93521  
COMMAND 6AH  
COMMAND 6CH  
COMMAND 6EH  
FUNCTION:  
RETURN:  
WRITE COMPRESSED VOICE DATA TO MX93521 FOR PLAYING (VOCODER mode)  
ACK0 / ERR5  
BBB = 010, 100, 110  
DB7  
0
DB6  
1
DB5  
1
DB4  
0
DB3  
1
DB2  
B
DB1  
B
DB0  
B
WRITE DATATO MX93521  
BYTE#1  
BYTE#2  
BYTE#3  
BYTE#4  
BYTE#5  
BYTE#6  
MX93521 equipped a 64 words PLAY BUFFER, HOST should keep feeding compressed voice data to MX93521  
when doing PLAY function. Once PLAY BUFFER have no enough data to play, MX93521 will stop playing and send  
command 10H to HOST. When the PLAY BUFFER is full, MX93521 will response ERR5. If this is the case, HOST  
should re-send this command later. HOST must feed MX93521 at least 12 bytes data per 20 mini-second. When  
HOST send command 30H, MX93521 will not start to play until received first 60 bytes data.  
The procedure to do PLAY function in VOCODER mode:  
STEP1: Turn on VOCODER mode (send command 41H/01H)  
STEP2: Turn on SPKR  
STEP3: Set PLAY mode (Send command 30H)  
STEP4: Send Compressed Voice data to MX93521 (Send command 6?H+BYTE+BYTE+..)  
STEP5: If received ACK0, goto STEP4 to send next 6AH/6CH/6EH command  
If received ERR5, wait 20-180 ms, then go back to STEP4 to re-send previous command  
If HOST want to stop PLAY function or HOST reach the end of message, then goto STEP6  
If received 10H, goto STEP7 (HOST did not send data to MX93521 fast enough)  
STEP6: Wait until MX93521 play out data in PLAY BUFFER (receiveing command 10H from MX93521)  
STEP7: Turn off SPKR  
STEP8: Turn off VOCODER mode (send command 41H/01H).  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
29  
MX93521  
COMMAND 70H  
COMMAND 71H  
COMMAND 72H  
COMMAND 73H  
COMMAND 74H  
COMMAND 75H  
COMMAND 76H  
COMMAND 77H  
FUNCTION:  
WRITE LCD DATA  
BBB = 000, 001, 010, 011, 100, 101, 110, 111  
RETURN:  
ACK0  
DB7  
0
DB6  
DB5  
1
DB4  
1
DB3  
0
DB2  
B
DB1  
B
DB0  
B
1
LCDDATA  
BYTE#1  
BYTE#2  
BYTE#3  
BYTE#4  
BYTE#5  
BYTE#6  
BYTE#7  
*THIS COMMAND ONLYVALID WHEN MX93521 SETTO SERIAL INTERFACE MODE  
SAMPLES:  
DISPLAY [ABCD] ON LCD LINE 1  
74H  
41H  
42H  
43H  
44H  
COMMAND 79H  
FUNCTION:  
RETURN:  
WRITE LCD COMMAND  
ACK0  
DB7  
0
DB6  
1
DB5  
1
DB4  
1
DB3  
1
DB2  
0
DB1  
0
DB0  
1
C7  
C6  
C5  
C4  
C3  
C2  
C1  
C0  
*THIS COMMAND ONLYVALID WHEN MX93521 SETTO SERIAL INTERFACE MODE  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
30  
MX93521  
LCD COMMAND SET:  
C7  
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
C6  
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
X
0
1
C5  
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
X
0
0
C4  
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
X
0
0
C3  
0
0
0
0
0
0
1
1
1
1
1
0
0
1
1
X
0
0
C2  
0
0
1
1
1
1
0
1
1
1
1
0
1
0
1
X
0
0
C1  
0
C0  
1
01H  
02H  
04H  
05H  
06H  
07H  
08H  
0CH  
0DH  
0EH  
0FH  
10H  
14H  
18H  
1CH  
80H-FFH  
80H  
C0H  
Clear Display  
1
X
0
Cursor return Home  
Cursor-1, no shift  
Cursor-1, shift  
Cursor+1, no shift  
Cursor+1, shift  
Display off  
0
0
1
1
0
1
1
0
0
0
0
Display on, Cursor off, Blink off  
Display on, Cursor off, Blink on  
Display on, Cursor on, Blink off  
Display on, Cursor on, Blink on  
Move Cursor left  
0
1
1
0
1
1
X
X
X
X
X
0
X
X
X
X
X
0
Move Cursor right  
Display shift left  
Display shift right  
Set DD RAM address  
Set cursor to the start of 1st line  
Set cursor to the start of 2nd line  
0
0
SAMPLES:  
CLEAR LCD DISPLAY  
79H  
79H  
79H  
79H  
79H  
79H  
01H  
SET CURSOR TO THE START OF LINE 1  
SET CURSOR TO THE START OF LINE 2  
80H  
C0H  
C2H  
10H  
14H  
SET CURSORTOTHE LINE 2, 3RD COLUMN  
MOVE CURSOR LEFT  
MOVE CURSOR RIGHT  
EXAMPLE:  
To Display [RECORD ] at line #1 & [MM:SS] at line #2  
CLEAR LCD DISPLAY & RETURN CURSORTO HOME  
DISPLAY [RECORD ] AT LCD LINE 1  
79H 01H  
76H 52H 45H 43H  
79H C3H  
4FH 52H 44H  
SET CURSORTOTHE LINE 2, 4TH COLUMN  
TURN ON COUNTER DISPLAY ON LCD  
21H 04H  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
31  
MX93521  
COMMAND 80H  
FUNCTION:  
RETURN:  
Request for RECORD/PLAY counter  
ACK2, MINUTE, SECOND  
DB7  
1
DB6  
0
DB5  
0
DB4  
0
DB3  
0
DB2  
0
DB1  
0
DB0  
0
COMMAND 81H  
FUNCTION:  
RETURN:  
Request for continuously RECORD/PLAY counter  
ACK0  
DB7  
1
DB6  
0
DB5  
0
DB4  
0
DB3  
0
DB2  
0
DB1  
0
DB0  
1
T
T
T
T
T
T
T
T
128 ms/unit  
When MX93521 received command 81H, MX93521 will periodically send command 42H (Section 6.4) to HOST.  
HOST could display the RECORD/PLAY counter on LCD accordingly. This function will be disabled by MX93521  
when RECORD/PLAY stop.  
COMMAND 88HDR-V4  
FUNCTION: Download Message  
RETURN: ACK1, FORMAT  
(VOCODER mode, FORMAT=81H if message is recorded with new format)  
(VOCODER mode, FORMAT=80H if message is recorded with old format)  
DB7  
1
DB6  
0
DB5  
0
DB4  
0
DB3  
1
DB2  
0
DB1  
0
DB0  
0
Once MX93521 received this command, MX93521 will start to send compressed voice data to HOST by using  
command 32H or 36H. When reach the end of message, MX93521 will send out command 30H. We recommend  
HOST do checksum calculation during downloading. After download completed, use command 41H/81H to get the  
checksum from MX93521 and compare if the checksum is match.The Checksum is calculated by EXCLUSIVE OR  
all speech data in word format.  
COMMAND 89HDR-V5  
FUNCTION:  
Upload Message (Vocoder mode)  
RETURN:  
ACK2, MSGNUM_H, MSGNUM_L(Upload start) / ACK2, Checksum_H, checksum_L(Upload End)  
DB7  
1
DB6  
0
DB5  
0
DB4  
0
DB3  
1
DB2  
0
DB1  
0
DB0  
1
m
m
m
m
m
m
m
m
m=00H, Upload Start  
m=01H, Upload End  
COMMAND 8AHDR-V5  
FUNCTION:  
RETURN:  
Upload Data  
ACK0  
DB6  
DB7  
1
DB5  
DB4  
0
DB3  
1
DB2  
0
DB1  
1
DB0  
0
0
0
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
High Byte  
Low Byte  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
32  
MX93521  
COMMAND 8CHDR-V5  
FUNCTION:  
RETURN:  
Upload Data  
ACK0  
DB6  
DB7  
1
DB5  
0
DB4  
0
DB3  
1
DB2  
1
DB1  
0
DB0  
0
0
D
D
D
D
D
D
D
D
D
D
D
High Byte  
D
D
D
D
D
D
D
Low Byte  
High Byte  
Low Byte  
D
D
D
D
D
D
D
D
D
D
D
D
D
D
COMMAND 8EHDR-V5  
FUNCTION:  
RETURN:  
Upload Data  
ACK0  
DB7  
1
DB6  
DB5  
0
DB4  
0
DB3  
1
DB2  
1
DB1  
1
DB0  
0
0
D
D
D
D
D
D
D
D
D
D
D
D
D
High Byte  
Low Byte  
High Byte  
Low Byte  
High Byte  
Low Byte  
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
COMMAND 91HDR-V4  
FUNCTION:  
RETURN:  
Set Silence Level  
ACK0  
DB7  
1
DB6  
DB5  
DB4  
DB3  
0
DB2  
0
DB1  
0
DB0  
1
0
x
0
x
1
x
x
L
L
L
L
Level  
LLLL=0000 (Level 0) Set Highest silence threshold (Some of the speech will be treated as silence)  
LLLL=0011 (Level 3) Default value  
LLLL=1111 (Level 15) Set Lowest silence threshold (All signal are treated as speech, No silence compression at  
all)  
COMMAND 98HDR-V5  
FUNCTION:  
RETURN:  
Read ROM/RAM wait state setting  
ACK2, WSTH,WSTL  
DB7  
1
DB6  
0
DB5  
0
DB4  
1
DB3  
0
DB2  
0
DB1  
0
DB0  
0
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
33  
MX93521  
COMMAND 99HDR-V5  
FUNCTION:  
RETURN:  
Set ROM/RAM wait state  
ACK0  
DB6  
DB7  
1
DB5  
0
DB4  
1
DB3  
0
DB2  
0
DB1  
0
DB0  
1
0
O
O
O
O
A
A
A
A
Wait State  
OOOO: RAM Wait State  
AAAA: ROM Wait State  
COMMAND A2HDR-V4  
FUNCTION:  
RETURN:  
Read MX93521 RAM  
ACK2, DATA_H, DATA_L  
DB7  
1
DB6  
1
DB5  
0
DB4  
1
DB3  
0
DB2  
0
DB1  
1
DB0  
0
Address (High)  
Address (Low)  
COMMAND A4HDR-V4  
FUNCTION:  
RETURN:  
Write MX93521 RAM  
ACK0  
DB7  
1
DB6  
1
DB5  
0
DB4  
1
DB3  
0
DB2  
1
DB1  
0
DB0  
0
Address (High)  
Address (Low)  
Data (High)  
Data (Low)  
* Only for testing purpose, user should not change any data in the RAM area  
COMMAND AAHDR-V5  
FUNCTION:  
RETURN:  
Read MX93521 internal ROM  
ACK2, DATA_H, DATA_L  
DB7  
1
DB6  
1
DB5  
0
DB4  
1
DB3  
0
DB2  
0
DB1  
1
DB0  
0
Address (High)  
Address (Low)  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
34  
MX93521  
COMMAND B0HDR-V4  
FUNCTION:  
RETURN:  
Output all blocks which are used as data bank block  
ACK0  
DB6  
DB7  
DB5  
1
DB4  
1
DB3  
0
DB2  
0
DB1  
0
DB0  
0
1
0
MX93521 return block number by sending command 32H/34H/36H and ended with command 30H  
32H, BLK_H, BLK_L  
34H, BLK_H, BLK_L, BLK_H, BLK_L  
36H, BLK_H, BLK_L, BLK_H, BLK_L, BLK_H, BLK_L  
30H  
COMMAND B1HDR-V4  
FUNCTION:  
RETURN:  
Read Flash Memory  
ACK0  
DB7  
1
DB6  
DB5  
1
DB4  
1
DB3  
0
DB2  
0
DB1  
0
DB0  
1
0
Counter (read 1-255 byte from flash memory)  
COMMAND B2HDR-V4  
FUNCTION:  
RETURN:  
Read Flash Memory  
ACK0  
DB7 DB6  
DB5  
1
DB4 DB3  
DB2  
DB1  
DB0  
1
0
1
0
0
1
0
CNT_H  
CNT_L (read 1-65535 bytes from flash memory)  
When continuously read flash memory, MX93521 will send data with command 3XH to HOST & ended with command  
30H.The address pointer will point to the next byte of the last byte read. HOST could send another continuous read  
command 0B1H or 0B2H to read out following data from flash memory.  
COMMAND B8HDR-V4  
FUNCTION:  
RETURN:  
Request for data bank block  
ACK2, BLK_H, BLK_L  
DB7  
1
DB6  
0
DB5  
1
DB4  
1
DB3  
1
DB2  
0
DB1  
0
DB0  
0
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
35  
MX93521  
COMMAND BAHDR-V4  
FUNCTION:  
RETURN:  
Set read/write starting address  
ACK0  
DB5  
DB7  
1
DB6  
DB4  
1
DB3  
1
DB2  
0
DB1  
1
DB0  
0
0
1
Address Pointer (High)  
Address Pointer (Low)  
COMMAND BCHDR-V4  
FUNCTION:  
RETURN:  
Set read/write starting address  
ACK0  
DB7  
1
DB6  
DB5  
1
DB4  
1
DB3  
1
DB2  
1
DB1  
0
DB0  
0
0
Block Number (High)  
Block Number (Low)  
Address Pointer (High)  
Address Pointer (Low)  
COMMAND C1HDR-V4  
COMMAND C2HDR-V4  
COMMAND C3HDR-V4  
COMMAND C4HDR-V4  
COMMAND C5HDR-V4  
COMMAND C6HDR-V4  
COMMAND C7HDR-V4  
FUNCTION:  
RETURN:  
Write data to flash memory(Data Bank)  
ACK0 or ERR0 (Block number or address pointer is not accepted)  
DB7  
1
DB6  
DB5  
0
DB4  
0
DB3  
0
DB2  
B
DB1  
B
DB0  
B
1
data to write to flash memory  
data to write to flash memory  
data to write to flash memory  
data to write to flash memory  
data to write to flash memory  
data to write to flash memory  
data to write to flash memory  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
36  
MX93521  
COMMAND CAHDR-V4  
FUNCTION:  
RETURN:  
Erase Block (Release data block)  
ACK0 or ERR0  
DB7  
1
DB6  
DB5  
0
DB4  
DB3  
1
DB2  
0
DB1  
1
DB0  
0
1
0
Block (High)  
Block (Low)  
COMMAND D4HDR-V4  
FUNCTION:  
RETURN:  
Read 1 word data from flash memory  
ACK2, DATA_H, DATA_L  
DB7  
1
DB6  
DB5  
0
DB4  
1
DB3  
0
DB2  
1
DB1  
0
DB0  
0
1
Block (High)  
Block (Low)  
Address (High)  
Address (Low)  
COMMAND D5HDR-V4  
FUNCTION:  
RETURN:  
Write 1 byte data to flash memory  
ACK0  
DB7  
1
DB6  
DB5  
0
DB4  
1
DB3  
0
DB2  
1
DB1  
0
DB0  
1
1
Block (High)  
Block (Low)  
Address (High)  
Address (Low)  
Data  
COMMAND D6HDR-V4  
FUNCTION:  
RETURN:  
Write 1 word (2 bytes) data to flash memory  
ACK0  
DB7  
1
DB6  
DB5  
0
DB4  
1
DB3  
0
DB2  
1
DB1  
0
DB0  
1
1
Block (High)  
Block (Low)  
Address (High)  
Address (Low)  
Data (High)  
Data (Low)  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
37  
MX93521  
COMMAND FAHDR-V5  
FUNCTION:  
RETURN:  
Play Voice Prompt From ROM  
ACK0  
DB5  
DB7  
1
DB6  
DB4  
1
DB3  
1
DB2  
0
DB1  
0
DB0  
1
1
1
Voice Prompt ROM Starting address High Byte  
Voice Prompt ROM Starting address Low Byte  
COMMAND FCHDR-V5  
FUNCTION:  
RETURN:  
Play Voice Prompt from FLASH memory  
ACK0  
DB7  
1
DB6  
DB5  
1
DB4  
1
DB3  
1
DB2  
0
DB1  
0
DB0  
1
1
Flash Memory Block # (High Byte)  
Flash Memory Block # (Low Byte)  
Flash Memory Pointer (High Byte)  
Flash Memory Pointer (Low Byte)  
Flash Memory Pointer range from 10H to 0FFEH  
* When MX93521 received command 0FAH or 0FCH from HOST, MX93521 start to play voice prompt from ROM/  
FLASH. After playing out all data, MX93521 will send command 10H to HOST. The voice prompt data are com-  
pressed speech data which is ended with one 0000H or six 0FFFFH in the data stream.  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
38  
MX93521  
6.4 MX93521TO HOST COMMANDS  
MX93521 will always respond a ACK if received a command from HOST.Besides that, MX93521 will send command  
to notify HOST that a specific event has happened. HOST could do action according to the command received.  
COMMAND 10H  
FUNCTION:  
Play mode, Reach the end of the playing message  
DB7  
0
DB6  
DB5  
0
DB4  
1
DB3  
0
DB2  
0
DB1  
0
DB0  
0
0
COMMAND 18H  
FUNCTION:  
Play mode, Reach the start of the playing message  
DB7  
0
DB6  
0
DB5  
0
DB4  
1
DB3  
1
DB2  
0
DB1  
0
DB0  
0
COMMAND 20H  
FUNCTION:  
Record mode, out of flash memory  
DB7  
0
DB6  
0
DB5  
1
DB4  
0
DB3  
0
DB2  
0
DB1  
0
DB0  
0
COMMAND 42H  
FUNCTION:  
MX93521 outputs record / play counter  
DB7  
0
DB6  
1
DB5  
0
DB4  
0
DB3  
0
DB2  
0
DB1  
1
DB0  
0
M
M
M
M
M
M
M
M
Minute  
S
S
S
S
S
S
S
S
Second  
COMMAND 52HDR-V4  
FUNCTION: MX93521 outputs Message Number  
DB7  
0
DB6  
DB5  
0
DB4  
1
DB3  
0
DB2  
0
DB1  
1
DB0  
0
1
Message number (high byte)  
Message number (low byte)  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
39  
MX93521  
COMMAND 30HDR-V4  
COMMAND 31HDR-V4  
COMMAND 32H  
COMMAND 33HDR-V4  
COMMAND 34HDR-V4  
COMMAND 35HDR-V4  
COMMAND 36H  
COMMAND 37HDR-V4  
FUNCTION:  
MX93521 outputs data with command 3XH and ending the function with command 30H  
COMMAND 32H  
FUNCTION:  
Vocoder record mode, MX93521 outputs compressed voice data (silence frame)  
DB7  
0
DB6  
0
DB5  
1
DB4  
1
DB3  
0
DB2  
0
DB1  
1
DB0  
0
BYTE #1  
BYTE #2  
COMMAND 36H  
FUNCTION:  
Vocoder record mode, MX93521 outputs compressed voice data (speech frame)  
DB7  
0
DB6  
0
DB5  
1
DB4  
1
DB3  
0
DB2  
1
DB1  
1
DB0  
0
BYTE #1  
BYTE #2  
BYTE #3  
BYTE #4  
BYTE #5  
BYTE #6  
When in VOCODER mode, MX93521 use this command to send compressed voice data to HOST.  
MX93521 equipped with 64 byte buffer internally. If buffer is full, data will be discarded.  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
40  
MX93521  
7. DC Characteristics¡GTA=0 to 70°C , VCC=5V±10¢H  
Storage temperature range¡G-55°C - 150°C  
SYMBOL  
VCC  
PARAMETER  
supply voltage  
ground  
CONDITION  
MIN  
TYP  
5.0  
0
MAX  
UNIT  
Volt  
4.5  
5.5  
GND  
Volt  
TTL LEVEL INPUT(IT)  
VIH  
VIL  
Input high voltage  
Input low voltage  
2.0  
0.7*VCC  
2.4  
V
V
0.8  
0.3*VCC  
0.4  
SCHMITTTRIGGER INPUT (IS)  
VIH  
Input high voltage  
V
V
VIL  
Input low voltage  
8mA OUTPUT (OA)  
VOH  
Onput high voltage  
Onput low voltage  
IOH=-8mA  
IOL=8mA  
VOL  
V
16mA OUTPUT (OB)  
VOH  
Onput high voltage  
Onput low voltage  
IOH=-16mA  
IOL=16mA  
2.4  
V
V
VOL  
0.4  
70  
6
SUPPLY CERRENT  
ICC  
ICC  
ICC  
NORMAL  
45  
10  
3
mA  
mA  
mA  
HOLD MODE  
POWER DOWN  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
41  
MX93521  
8.AC TIMING AND CHARACTERISTICS:  
RESETTIMING  
Tw(rst)  
RST\  
EAD15~EAD0  
ED15~ED0  
PC=0000  
0001  
valid  
valid  
CONTROL  
SIGNALS  
(inactive)  
OPT18~OPT0  
BIO7~BIO0  
0000  
Note: Control Signals  
HOLDA\EDCE\EPCE\ERD\EWR\  
CAS\RAS\DRD\DWR\  
SYMBOL PARAMETER  
MIN  
NOM  
MAX  
UNIT  
Tw(rst)  
Reset low pulse width  
2*46.5ns  
OUTPUT PORTTIMING  
AD15-AD0  
EAD15-EAD0  
PC=N, SXF/RXF  
or OUT XX  
PC=N+1  
PC=N+2  
Td(a-o)  
OPT18~OPT0  
BIO7~BIO0  
XF\  
OUTPUT PORTS AND EXTERNAL FLAG(XF\)TIMING  
SYMBOL PARAMETER  
MIN  
NOM  
MAX  
UNIT  
Td(a-o)  
Address to output ports delay time  
0
10  
ns  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
42  
MX93521  
CODECTRANSMIT AND RECEIVETIMING  
Tc  
Thpd  
CMCK  
Td(ch-fs)  
Td(ch-fs)  
Tlpd  
Th(dr)  
CFS  
Ts(dr)  
N=1  
Td(ch-dx)  
N=1  
N=2  
N=2  
N=3  
N=4  
N=4  
SAMPLING 16 BITS  
TRANSMIT 16 BITS  
CDR0  
CDX0  
N=3  
SYMBOL PARAMETER  
MIN  
NOM  
MAX  
UNIT  
ns  
Tc  
CMCK cycle time  
650  
Tlpd  
CMCK low pulse duration  
CMCK high pulse duration  
CMCK to CFS delay time  
CMCK rising edge to Dx valid  
315  
315  
335  
335  
20  
ns  
Thpd  
ns  
Td(ch-fs)  
Td(ch-dx)  
Ts(dr)  
Th(dr)  
ns  
10  
ns  
DR set-up time before CMCK falling edge  
DR hold time before CMCK falling edge  
10  
10  
ns  
ns  
INTERRUPTTIMING  
Tw  
INT0\  
INT1\  
INT2\  
AD15-AD0  
fetch N+0  
fetch N+1  
fetch N+1  
fetch N+1  
fetch I  
SYMBOL PARAMETER  
MIN  
3Q*  
NOM  
MAX  
UNIT  
Tw  
INT\ low pulse duration  
ns  
NOTE:Q=15.5 ns  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
43  
MX93521  
SRAM/ROM READTIMING  
TCS  
TAA  
EDCE\,EPCE\  
EAD15-EAD0  
ERD\  
TOH  
TDR  
DATA IN  
ED15-ED0  
SRAMWRITETIMING  
EDCE\  
EAD15-EAD0  
EWR\  
TAS  
TWR  
TDH  
TDW  
DATA OUT  
ED15-ED0  
SYMBOL PARAMETER  
MIN  
NOM  
MAX  
UNIT  
TCS  
TAA  
TDR  
TOH  
TAS  
TDW  
TDH  
TWR  
Chip select access time  
26.5+WxT ns  
Address access time  
Data read setup time  
Data hold from end of read  
Address setup time  
26.5+WxT ns  
12  
0
ns  
ns  
0
5
ns  
ns  
ns  
ns  
Data to EWR\ low overlap  
Data hold from end of write  
Write recovery time  
12  
0
0
*NOTE: T=31ns  
W:Wait state number  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
44  
MX93521  
HOLD TIMING  
EAD15-EAD0  
N
N+1  
N+2  
N+3  
N+4  
Ten(ah-a)  
ED15-ED0  
EPCE\  
EDCE\  
EWR\  
ERD\  
Ts(a-h)  
Td(hh-ha)  
HOLD\  
HOLDA\  
SYMBOL PARAMETER  
MIN  
5
NOM  
MAX  
3Q-10  
1Q+10  
2Q  
UNIT  
Ts(a-h)  
Address set-up time before HOLD\ low  
HOLD\ high to HOLDA\ high  
ns  
ns  
ns  
Td(hh-ha)  
Ten(ah-a)  
0
1Q  
Address driven after HOLDA\ high  
1Q-10 1Q  
*NOTE: Q=15.5n  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
45  
MX93521  
9.PACKAGE INFORMATION  
100-PIN LQFP  
A
B
ITEM  
A
MILLIMETERS INCHES  
16.00 ± .05  
14.00 ± .05  
14.00 ± .05  
16.00 ± .05  
12.00 [REF]  
.60 [REF]  
.60 [REF]  
.16 [Typ.]  
.50 [Typ.]  
1.00 [Typ.]  
0.60 [Typ.]  
.25 [Typ.]  
.10 max.  
.630 ± .002  
.551 ± .002  
.551 ± .002  
.630 ± .002  
.472 [REF]  
.024 [REF]  
.024 [REF]  
.006 [Typ.]  
.020 [Typ.]  
.039 [Typ.]  
.024 [Typ.]  
.010 [Typ.]  
.004 max.  
.055  
B
75  
76  
C
D
E
51  
50  
F
G
H
I
C
D
E
J
26  
25  
K
100  
1
P
F
L
O
M
N
O
P
G
H
I
1.4 ± .05  
J
.10 min.  
.004 min.  
N
1.50 max.  
.059 max.  
L
M
NOTE: Each lead centerline is located within  
.25mm[.01 inch] of its true position [TP] at a  
maximum material condition.  
K
100-PIN PQFP  
A
B
ITEM  
MILLIMETERS INCHES  
A
B
C
D
E
F
G
H
I
24.80 ± .40  
20.00 ± .13  
14.00 ± .13  
18.80 ± .40  
12.35 [REF]  
.83 [REF]  
.58 [REF]  
.30 [Typ.]  
.65 [Typ.]  
2.40 [Typ.]  
1.20 [Typ.]  
.15 [Typ.]  
.10 max.  
.976 ± .016  
.787 ± .005  
.551 ± .005  
.740 ± .016  
.486 [REF]  
.033 [REF]  
.023 [REF]  
.012 [Typ.]  
.026 [Typ.]  
.094 [Typ.]  
.047 [Typ.]  
.006 [Typ.]  
.004 max.  
.018 ± .006  
.004 min.  
80  
81  
51  
50  
E
C
D
J
31  
30  
100  
1
P
F
K
L
O
G
H
I
M
N
O
P
J
2.75 ± .15  
.10 min.  
N
L
3.30 max.  
.103 max.  
M
K
NOTE: Each lead centerline is located within  
.25mm[.01 inch] of its true position [TP] at a  
maximum material condition.  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
46  
MX93521  
10. Ordering Information  
PART NO.  
PACKAGE  
MX93521FC  
MX93521UC  
PQFP  
LQFP  
MX  
93  
521  
?
C
MXIC  
COMPANY  
PREFIX  
COMMERCIAL  
0-70oC  
PACKAGE TYPE  
F: PQFP, U: LQFP  
FAMILY  
PREFIX  
PRODUCT NUMBER  
Appendix 1. New added Features Compared with DR-V4  
New features in dr-v5  
1.Support both format used in v3 (without silence compression) and v4 (with silence compression)  
2.Add version number and date information at rom address 10h-13h  
3.Add direct codec accessing function  
4.Add command 0AH (point to specific message)  
5.Add DTMF tone generator  
6.Add upload message from host to mx93521 function  
7.Add command 99H (change rom/ram wait state)  
8.Add play voice prompt from flash memory function  
9.Change silence threshold setting  
New features in dr-v6  
1.Add silence detection function  
2.New codec.asm that improve tone response  
3.Add safe_chip_erase function (erase only good blocks)  
4.Improve find_empty_blk subroutine  
5.Add skip frames function in play mode  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
47  
MX93521  
Appendix 2. Sample Flow Chart for HOST to Implement uP Serial Interface  
call SND_RCVD_CMD ( ) every 50 usec  
BYTE:  
txdata, cmdout[0..7]  
txdata, cmdin[0..7]  
tbcnt, txcnt  
NIBBLE;  
BIT:  
SEND_RCVD_CMD(  
SCLK low?  
)
tbcnt, rxcnt  
data2snd, clk, obit  
NO  
YES  
DA\ low?  
set SCLK high  
RETURN  
YES  
clk=1  
clk=0  
obit=SOUT  
NO  
YES  
tbcnt==0?  
rbcnt==9?  
NO  
stop bit  
error  
NO  
YES  
YES  
data2snd==0?  
rbcnt==0?  
YES  
obit==0?  
NO  
txdata=cmdout[0]  
tbcnt=10  
NO  
obit==0?  
YES  
data bit  
rxdata>>=1  
rxdata=(obit<<7)  
cmdin[rxcnt]=rxdata  
rbcent=0  
obit=0  
rxdata=0  
YES  
tbcnt==10?  
rxcnt==  
YES  
rbcnt ++  
(cmdin[0] & 7)  
NO  
YES  
tbcnt==1?  
NO  
rxcnt==0?  
obit=1  
YES  
rxcnt=0  
rxdata=0  
rbcnt=0  
txdata.0==0?  
YES  
(cmdin[0] & 0xf0)  
==0xe0?  
YES  
txdata.0==0?  
data2snd=0  
NO  
obit=1  
txdata>>=1  
tbcnt--  
txcnt++  
decode_cmd(  
rxcent=0  
)
txdata=cmdout [txcnt]  
tbcnt  
rxcnt ++  
txcnt=0  
Received a complete Command from MX93521.  
Precess command which is stored in cmdin[0:7]  
NO  
CLK==1?  
YES  
obit==1?  
YES  
NO  
set SCLK low  
SIN high  
SIN low  
To send command to MX93521:  
Load command to cmdout[0:7]  
then set data2snd=1  
RETURN  
clk=1  
After sending out all commands,  
dats2snd will be cleared to 0.  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
48  
MX93521  
Appendix 3. Recommend commands sequence to implement a digital recorder  
(star* means function is optional)  
A3.1 Record Message (TP3054):  
Functions  
HOST send  
41H/04H  
49H/0AH  
41H/04H  
41H/08H  
61H/48H  
41H/02H  
41H/03H  
41H/05H  
28H  
MX93521 Acknowledge  
*
*
*
Turn on SPKR  
ACK0  
Beep  
ACK0  
Turn off SPKR  
ACK0  
Turn on MIC  
ACK0  
*
*
*
*
LED #1 flash  
ACK0  
Append Recording  
Overwrite Recording  
Turn on Voice Activated Mode  
Start to Record  
Clear LCD  
ACK0  
ACK0  
ACK0  
ACK2,MSG#_H,MSG#_L  
ACK0  
*
*
*
*
79H/01H  
Display [RECORD] on LCD  
Move cursor to line #2, col #3  
76H/52H/45H/43H/4FH/52H/44H ACK0  
79H/C3H  
ACK0  
ACK0  
Turn on message counter display on LCD 21H/04H  
A3.2 Stop Recording (TP3054):  
Functions  
HOST send  
21H/01H  
41H/08H  
61H/00H  
41H/04H  
49H/0AH  
41H/04H  
MX93521 Acknowledge  
Stop Recording  
ACK2,CHKSUM_H, CHKSUM_L  
Turn off MIC  
ACK0  
ACK0  
ACK0  
ACK0  
ACK0  
*
*
*
*
LED #1 off  
Turn on SPKR  
Beep  
Turn off SPKR  
A3.3 Out of Memory, Received command 20H from MX93521 during Recording (TP3054):  
Functions  
HOST send  
41H/08H  
61H/00H  
41H/04H  
49H/0AH  
41H/04H  
MX93521 Acknowledge  
Turn off MIC  
LED #1 off  
Turn on SPKR  
Beep  
ACK0  
ACK0  
ACK0  
ACK0  
ACK0  
*
*
*
*
Turn off SPKR  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
49  
MX93521  
A3.4 Play Message (TP3054):  
Functions  
HOST send  
09H/xxH  
MX93521 Acknowledge  
Move message pointer to specific message  
Turn on SPKR  
ACK0/ERR6  
41H/04H  
ACK0  
*
*
Beep  
49H/0AH  
ACK0  
LED #2 flash  
61H/88H  
ACK0  
Start to Play  
30H  
ACK2,MSG#_H,MSG#_L  
*
*
*
*
*
Send msg counter to HOST every 512 ms  
Clear LCD  
81H/04H  
ACK0  
ACK0  
ACK0  
ACK0  
ACK0  
79H/01H  
Display [PLAY] on LCD  
Move cursor to line #2, col #3  
Turn on message counter display on LCD  
74H/50H/4CH/41H/59H  
79H/C3H  
21H/04H  
A3.5 Function During Playing Message  
Functions  
HOST send  
MX93521 Acknowledge  
*
*
*
*
*
Fast Forward Playing (2x)  
Rewind Playing (2x)  
3AH/01H/01H  
3AH/81H/01H  
21H/10H  
ACK0  
ACK0  
ACK0  
ACK0  
ACK0  
Set REPEAT start point  
Set REPEAT end point  
Disable REPEAT mode  
21H/20H  
21H/40H  
A3.6 Stop Playing Message (TP3054):  
Functions  
HOST send  
21H/01H  
61H/00H  
49H/0AH  
41H/04H  
MX93521 Acknowledge  
Stop Playing  
ACK0  
ACK0  
ACK0  
ACK0  
*
*
LED #2 off  
Beep  
Turn off SPKR  
A3.7 End of Message, Received command 10H from MX93521 during Playing (TP3054):  
Functions  
LED #2 off  
Beep  
HOST send  
61H/00H  
MX93521 Acknowledge  
*
*
ACK0  
ACK0  
ACK0  
49H/0AH  
41H/04H  
Turn off SPKR  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
50  
MX93521  
A3.8 Message Search  
Functions  
HOST send  
41H/04H  
MX93521 Acknowledge  
1
2
3
4
5
6
Turn on SPKR  
ACK0  
Move message pointer to the 1st msg  
Play current message for 3 second  
09H/FFH  
31H/03H  
ACK0/ERR6  
ACK0  
10H  
Move message pointer to the next message  
if received ACK0, goto Step #3  
if received ERR6, goto Step #7  
Turn off SPKR  
09H/01H  
41H/04H  
ACK0/ERR6  
7
ACK0  
A3.9 Message Found  
Functions  
HOST send  
21H/01H  
30H  
MX93521 Acknowledge  
1
2
3
Stop playing  
ACK0  
ACK0  
ACK0  
Play current message  
Turn off SPKR  
41H/04H  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
51  
MX93521  
A3.10The procedure for using flash memory as data bank memory  
HOST SEND  
MX93521 RESPONSE  
1
Request a empty block to be used 0B8H  
as data block  
0A2H, BLK_H, BLK_L  
2
3
Set continuous read start address  
Continuous Read 20 bytes  
0BCH, BLK_H, BLK_L, ADR_H, ADR_L  
0A0H  
0B1H, 14H  
0A0H  
037H,D1,D2,D3,D4,D5,D6,D7  
037H,D1,D2,D3,D4,D5,D6,D7  
036H,D1,D2,D3,D4,D5,D6  
030H  
Continuous Read 298 bytes  
0B2H, 01H,2AH  
0A0H  
037H,D1,D2,D3,D4,D5,D6,D7  
037H,D1,D2,D3,D4,D5,D6,D7  
......  
034H,D1,D2,D3,D4  
030H  
0A0H  
4
Continuous Write 7 bytes  
Continuous Write 6 bytes  
Continuous Write 5 bytes  
Continuous Write 4 bytes  
Continuous Write 3 bytes  
Continuous Write 2 bytes  
Continuous Write 1 bytes  
Erase Block  
0C7H,D1,D2,D3,D4,D5,D6,D7  
0C6H,D1,D2,D3,D4,D5,D6  
0C5H,D1,D2,D3,D4,D5  
0C4H,D1,D2,D3,D4  
0A0H  
0A0H  
0A0H  
0C3H,D1,D2,D3  
0A0H  
0C2H,D1,D2  
0A0H  
0C1H,D1  
0A0H  
5
6
7
8
CAH, BLK_H, BLK_L  
0D4H, BLK_H, BLK_L, ADR_H, ADR_L  
0A0H  
Read 1 word from flash memory  
Write 1 byte to flash memory  
Write 2 bytes to flash memory  
0A2H, DATA1, DATA2  
0D5H, BLK_H, BLK_L, ADR_H, ADR_L, D1 0A0H  
0D6H, BLK_H, BLK_L, ADR_H, ADR_L, D1, 0A0H  
D2  
Each block in flash memory is 4K byte. The first 16 bytes are reserved for MX93521 as data link data, HOST could  
read but could not write data to it. So, the host usable data are from address 10H-0FFFH.  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
52  
MX93521  
Appendix 4. Flow Chart of using MX93521 inVOCODER mode (Parallel Interface)  
A4.1 Record mode (Background)  
RECORD  
RESET MX93521  
[BIT]  
WAIT4ACK=1  
RCVD=DATA2SND=0  
STOP1=STOP2=0  
PAUSE1=PAUSE2=0  
END_OF_REC=0  
[BYTE]  
NO  
WAIT4ACK==0?  
YES  
TXCNT=RXCNT=0  
YES  
TOGGLE PAUSE?  
NO  
NO  
WAIT4ACK==0?  
YES  
PAUSE1=WATI4ACK=1  
[VOCODER MODE ON]  
CMDOUT[0]=0x41  
CMOUT[1]=0x01  
YES  
STOP RECORDING?  
NO  
DATA2SND=WAIT4ACK=1  
PAUSE1=WATI4ACK=1  
NO  
WAIT4ACK==0?  
YES  
NO  
END_OF_REC==1?  
YES  
[MIC ON]  
CMDOUT[0]=0x5A  
CMDOUT[1]=0x00  
CMDOUT[2]=0x48  
DATA2SND=WAIT4ACK=1  
[VOCODER MODE OFF]  
CMDOUT[0]=0x41  
CMDOUT[1]=0x01  
DATA2SND=WAIT4ACK=1  
Wait 10 msec for MX93000 to settle  
NO  
WAIT4ACK==0?  
NO  
WAIT4ACK==0?  
YES  
YES  
RETURN  
[SET MIC GAIN]  
CMDOUT[0]=0x5A  
CMDOUT[1]=0x02  
CMDOUT[2]=0x04  
DATA2SND=WAIT4ACK=1  
NO  
WAIT4ACK==0?  
YES  
[START TO RECORD]  
CMDOUT[0]=0x28  
DATA2SND=WAIT4ACK=1  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
53  
MX93521  
A4.2 Play mode (Background)  
PLAY  
RESET MX93521  
[BIT]  
WAIT4ACK=1  
RCVD=DATA2SND=0  
[BYTE]  
YES  
RCVD==1?  
NO  
TXCNT=RXCNT=0  
YES  
CMDIN[0]==0x10?  
YES  
NO  
WAIT4ACK==0?  
YES  
[VOCODER MODE ON]  
CMDOUT[0]=0x41  
CMOUT[1]=0x01  
NO  
WAT4ACK==0?  
YES  
DATA2SND=WAIT4ACK=1  
NO  
NO  
CMDIN[0]==0xA0?  
YES  
WAIT4ACK==0?  
NO  
YES  
CMDIN[0]==0xE5?  
[SPEAKER ON]  
CMDOUT[0]=0x5A  
CMDOUT[1]=0x00  
CMDOUT[2]=0x03  
DATA2SND=WAIT4ACK=1  
YES  
[MX93521 BUSY]  
[RESEND PREVIOUS DATA]  
DELAY 2 msec  
DATA2SND=WAIT4ACK=1  
Wait 10 msec for MX93000 to settle  
CMDIN[0]==0xA0?  
NO  
WAIT4ACK==0?  
(LOAD DATA FROM MEMORY TO BYTE[0..5])  
(LOAD NO MORE THAN 6 BYTES AT A TIME)  
(BYTECNT=BYTES LOADED)  
YES  
[SET SPKR GAIN]  
CMDOUT[0]=0x5A  
CMDOUT[1]=0x03  
CMDOUT[2]=0x05  
DATA2SND=WAIT4ACK=1  
CMDOUT[0]=0x68+BYTECNT  
FOR (i=0; i<BYTECNT;i++)  
Wait 10 msec for MX93000 to settle  
[VOCODER MODE OFF]  
CMDOUT[0]=0x41  
CMDOUT[1]=0x01  
DATA2SND=WAIT4ACK=1  
NO  
WAIT4ACK==0?  
YES  
NO  
WAIT4ACK==0?  
[START TO RECORD]  
CMDOUT[0]=0x30  
DATA2SND=WAIT4ACK=1  
YES  
RETURN  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
54  
MX93521  
A4.3 Command/Data Send/Receive Handling Routine (Interrupt)  
INTERRUPT  
NO  
PACK\ = LOW?  
YES  
[READ DATA FROM MX93521]  
RXDATA[7..0]=BIO[7..0]  
YES  
STOP2==1?  
NO  
YES  
STOP1==1?  
[WRITE CMD TO MX93521]  
BIO=0x21  
[WRITE CMD TO MX93521]  
BIO=0x01  
NO  
STOP2=1  
STOP1=STOP2=1  
CMDIN[RXCNT]=RXDATA  
NO  
DATA2SND==1?  
YES  
NO  
RXCNT==  
CMDIN[0]& 0x7 ?  
YES  
[WRITE DATA TO MX93521  
BIO=CMDOUT[TXCNT]  
(RXCNT==0) &&  
(CMDIN[0] &0xF0  
==0xE0?  
NO  
NO  
TXCNT==  
CMDOUT[0] & 0x7 ?  
DECODE_CMD ( )  
RXCNT=0  
RXCNT++  
YES  
TXCNT=0  
TXCNT++  
DATA2SND=0  
RETURN  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
55  
MX93521  
A4.4 Received Command Interpretation Routine (Interrupt)  
DECODE_CMD ( )  
YES  
CMDIN[0]==0x36?  
NO  
YES  
CMDIN[0]==0x32?  
NO  
[WRITE DATA TO MEMORY}  
BYTECNT=CMDIN{0} & 0x7  
FOR (i=0; i<BYTECNT; i++)  
BYTE[i] =CMDIN[i+1]  
YES  
CMDIN[0]==0x30?  
END_OF_REC=1  
NO  
YES  
CMDIN[0]==0x10?  
RCVD=1  
YES  
CMDIN[0] & 0xF0  
==0xA0?  
NO  
YES  
CMDIN[0] & 0xF0  
==0xE0?  
END_OF_REC=1  
NO  
RETURN  
REV. 2.2, JAN 20, 1998  
P/N:PM0426  
56  
MX93521  
MACRONIX INTERNATIONAL CO., LTD.  
HEADQUARTERS:  
TEL:+886-3-578-8888  
FAX:+886-3-578-8887  
EUROPE OFFICE:  
TEL:+32-2-456-8020  
FAX:+32-2-456-8021  
JAPAN OFFICE:  
TEL:+81-44-246-9100  
FAX:+81-44-246-9105  
SINGAPORE OFFICE:  
TEL:+65-747-2309  
FAX:+65-748-4090  
TAIPEI OFFICE:  
TEL:+886-3-509-3300  
FAX:+886-3-509-2200  
MACRONIX AMERICA, INC.  
TEL:+1-408-453-8088  
FAX:+1-408-453-8488  
CHICAGO OFFICE:  
TEL:+1-847-963-1900  
FAX:+1-847-963-1909  
http : //www.macronix.com  
MACRONIX INTERNATIONAL CO., LTD. reserves the rignt to change product and specifications without notice.  
57  

相关型号:

MX93521-V6

ALL DIGITAL VOICE RECORDER
ETC

MX93521FC

ALL DIGITAL VOICE RECORDER MACHINE BASED ON THE MX93521 VOCODER CHIP
Macronix

MX93521UC

ALL DIGITAL VOICE RECORDER MACHINE BASED ON THE MX93521 VOCODER CHIP
Macronix

MX939P

MODEM
ETC

MX939TG

MODEM
ETC

MX93L130-N1

Telecom IC
Macronix

MX93L550A

Digital Signal Processor
Macronix

MX949LH

Modem-Support Circuit, 19.2kbps Data, PQCC44, PLASTIC, LCC-44
CMLMICRO

MX949TG

Modem-Support Circuit, 19.2kbps Data, PQFP48, TQFP-48
CMLMICRO

MX96037FC

16-Bit Digital Signal Processor
ETC

MX9691

Flash Memory Drive, 1MBps, CMOS, PQFP128, TQFP-128
Macronix

MX9691A

SINGLE CHIP SOLID STATE DISK CONTROLLER
Macronix