aP23KIS_user_manual_ver1.2
aP23KIS_user_manual_ver1.2
1/9 ver1.2
4. Set up message address [ DIP SW. x 8 ] :
ex: address-6
5. Insert aP23xxx IC [ 8 pin ] or [ 16 pin ] to TEXTOOL :
6. Power sw. = [ ON ]
7. Key x 8 : PU-PLAY-PD , VOL+ , VOL- , PAUSE , RESUME , PLAY , PU , PD
7a. PU-PLAY-PD key :
7a1. PWM : send command [ PU1 = 101001xxxxxxxxxx ] to aP23xxx IC
& wake up ic without RampUp
DAC : send command [ PU2 = 101010xxxxxxxxxx ] to aP23xxx IC
& wake up ic with RampUp about 160ms
7a2. Send command [ PLAY = 100110-0000000110] to aP23xxx IC
& start playing [sound-06] & busy-H [ or busy-L] …………………
7a3. Detect out1 pin = busy-H to busy-L [or busy-L to busy-H] ………….. Loop [7a3]
23xxx 8 pin : out1 pin-5[ SBT ]
23xxx 16 pin : out1 pin-8 [ out1]
7a4. PWM : send command [PD1= 101101xxxxxxxxxx ] to aP23xxx IC
& IC shut down without RampDown
DAC : send command [PD2= 101110xxxxxxxxxx ] to aP23xxx IC
& IC shut down with RampDown about 160ms
2/9 ver1.2
7f. PU key : only wake up IC & no play
PWM : send command [ PU1 = 101001xxxxxxxxxx ] to aP23xxx IC
& wake up ic without RampUp
DAC : send command [ PU2 = 101010xxxxxxxxxx ] to aP23xxx IC
& wake up ic with RampUp about 160ms
3/9 ver1.2
I2C mode interface control :
I2C mode : S2 = SCLK // S3 = SDATA // SBT= busy-H
D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0
PLAY 1 0 0 1 1 0 098h + address [ A9~A0 ]
PU1 1 0 1 0 0 1 0A4h + address don’t care --- without Ramp-up
PD1 1 0 1 1 0 1 0B4h + address don’t care --- without Ramp-down
PU2 1 0 1 0 1 0 0A8h + address don’t care --- with Ramp-up
PD2 1 0 1 1 1 0 0B8h + address don’t care --- with Ramp-down
VOL 0 1 0 0 0 1 0 0 0 0 0 0 VOL [ 3:0 ]
VOL++ 0 1 0 0 1 0 048h + address don’t care
VOL-- 0 1 0 1 0 1 054h + address don’t care
2a. START condition : S3[sdata] high to low + delay + S2[sclk] high to low
2b. D15~D10 : command bit
2c. D9~D0 : address bit
2d. SCK low to high [ LATCH ] the [ DI ]
2e. STOP condition : S2[sclk] low to high + delay + S3[sdata] low to high
2f. S3[sadat] change the data,must be S2[sclk]=low
4/9 ver1.2
3b. PU2 = 0A8h + address don’t care --- with Ramp-up about 160ms --- for DAC
4. PLAY command :
4a. PLAY command :
--- SBT[ 8 pin ] / OUT1 [ 16 pin ] : set up [ busy-H ]
5/9 ver1.2
6. Flow chart :
6/9 ver1.2
SPI mode interface control :
SPI mode : S1 = CS // S2 = SCLK // S3 = SDATA//out1 = busy-H
D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0
PLAY 1 0 0 1 1 0 098h + address [ A9~A0 ]
PU1 1 0 1 0 0 1 0A4h + address don’t care --- without Ramp-up
PD1 1 0 1 1 0 1 0B4h + address don’t care --- without Ramp-down
PU2 1 0 1 0 1 0 0A8h + address don’t care --- with Ramp-up
PD2 1 0 1 1 1 0 0B8h + address don’t care --- with Ramp-down
VOL 0 1 0 0 0 1 0 0 0 0 0 0 VOL [ 3:0 ]
VOL++ 0 1 0 0 1 0 048h + address don’t care
VOL-- 0 1 0 1 0 1 054h + address don’t care
2b. PU2 = 0A8h + address don’t care --- with Ramp-up about 160ms --- for DAC
7/9 ver1.2
3. PLAY command :
3a. PLAY command :
--- SBT [ 8 pin ] / OUT1 [ 16 pin ] : set up [ busy-H ]
8/9 ver1.2
Play command v.s. Load command :
1. play one times :
play command = Load command
2. repeat playing …. :
2a. play command repeat playing :
2a1. playing sound[ N ] ……. & busy pin low to high
2a2. check play ended ? …… busy high to low
2a3. send play command address[ N+1 ] & play sound[ N+1 ]
2a4. loop play with [ gap ] , gap time = clk x 16 or [ cs ] time
9/9 ver1.2