===============================
Automaticon 2005
===============================
... do największej oszczędności
z procesorami Texas Instruments
Mariusz Kaczor, Contrans TI
Niski pobór energii
0.1uA – podtrzymanie RAM-u
0.8uA – zegar czasu rzeczywistego
250uA @ 1MIPS w trybie aktywności
zasilanie 1.8 - 3.6V
start zegara w mniej niż 6us (2us)
Prąd upływności portów <50nA
-40 - +85C - przemysłowy zakres
temperatur pracy
Nowoczesny rdzeń RISC CPU
wysoka wydajność – 16 bitów
mały rozmiar kodu
Prędkość do 8 MIPS (16MIPS)
•
Wysokiej jakości bloki analogowe
Typowe aplikacje
multimetry
Instrumenty pomiarowwe
Inteligentne sensory
MSP430 – w skrócie
MSP430 – w skrócie
16-bitowa
magistrala
łączy CPU i
peryferia
Interfejs
JTAG pozwala
na emulację w
urządzeniu
Modułowa architektura von-Neumann
Architektua
pozwala na
redukcję liczby
odwołań do
pamięci
(redukcja
poboru energii,
redukcja
poziomu
szumów)
16-bit
magistrala
pozwala na
szybką wymianę
danych
FLASH
Clock
Generation
Digital
Peripherial
RISC CPU
16-bit
MAB 16
MDB 16
RAM
Analog
Peripherial
. . .
. . .
ACLK
SMCLK
MCLK
ACLK
SMCLK
JT
A
G
/D
eB
U
G
MSP430 – 16-bitowy CPU, niski pobór energii
Stand-By
aktywny
aktywny
1
µ
A
Time
250
µ
A
Wewnętrzny oscylator (DCO)
rozpoczyna pracę w 6us (2us) –
skraca to czas aktywnej pracy, co
sprzyja redukcji poboru energii
16-bit RISC CPU – zegar do8(16) MIPS
27 instrukcji / 7 trybów adresowania
100% kompatybilności kodu wszystkich układów
0
15
0
R0/PC - Program Counter
16-bit ALU
DST
SRC
MDB - memory data bus
memory address bus - MAB
16
0
R1/SP - Stack Pointer
R2/SR - Status
V SCG1 SCG0 OscOff CPUOff
R3/CG - Constant Generator
R4
- General Purpose
R5
- General Purpose
R15
- General Purpose
16
………. R6 - R14 ………
Podtrzymanie
RAM-u - LPM4
wszystkie zegary
wyłączone
0.1uA
CPU wył.
LPM0
DCO wł., ACLK wł.
35uA
Stand-by
LPM3
DCO off, ACLK on
1uA dla '4xx
1.6uA dla '1xx
Tryb aktywny
CPU wł.
DCO wł. ACLK wł.
250uA @ 1MHz
Niski pobór energii >>>
Aktywność tylko w następstwie zdarzeń
Podstawowy tryb
pracy - LPM3
przerwanie
przerwanie
przerwanie
F22x0
38PIN
‘2xx – nowa linia
F21x1
20PIN
komparator
analogowy
x201x
mała obudowa
‘4xx – ze sterownikiem
LCD
1.8- 3.6v / 60kB / Flash/ROM
8MIPS / FLL+ / SVS
x41x
Timer_A
LCD96
‘5xx
1.8- 3.6v / 128kB / Flash/ROM
20MIPS+ /CAN /LIN /USB
F5xx
FG43x
ADC12/DAC12/OPA
DMA/USART
Timer_A/B
LCD128
FE/W42x
ESP/SIF
(USART)
Timer_A
LCD132
F43x/F44x
ADC12
(2) USART, MPY
Timer_A/B
LCD160/128
x11x1
Timer_A
F12x(2)
ADC10,USART
Timer_A
F14x1
(2) USART, MPY
Timer_A/B
‘1xx - bez LCD
1.8- 3.6v / 60kB / Flash/ROM
8MIPS / Basic Clock
x13x/F14x
ADC12
(2) USART, MPY
Timer_A/B
F15x/F16x
ADC12/DAC12
DMA,(2) USART,I2C, MPY
Timer_A/B
MSP430
F27x
80 PIN,
120kB Flash
F24x
64PIN
MSP430F11x1/12x -- 20/28 Pin
tylko - ’12x
FLASH
1-8kB
RAM
256B
Power-On
Reset
8Mhz
Basic
Clock
Watchdog
15-bit
RISC CPU
16-bit
ACLK
SMCLK
MAB
MDB
Timer_A3
16-bit
Comp_A
Port 3
USART0
UART/SPI
Port 1
with IRQ
Port 2
with IRQ
MCLK
XIN
XOUT
TEST
JT
A
G
/D
eB
U
G
4x4mm QFN
- 11x1
5x5mm QFN
- 12x
MSP430F1xx2
tylko ’12x2
FLASH
4/8kB
RAM
256B
Power-On
Reset
Brown-Out
Protection
8Mhz
Basic
Clock
Watchdog
15-bit
RISC CPU
16-bit
JT
A
G
/D
eB
U
G
ACLK
SMCLK
MAB
MDB
Timer_A3
16-bit
Port 3
USART0
UART/SPI
Port 1
with IRQ
Port 2
with IRQ
MCLK
XIN
XOUT
TEST
ADC10
DTC
5x5mm QFN
MSP430F14x -- 64-pin
FLASH
8kB -
60kB
RAM
256B -
2kB
Power-On
Reset
Port 3/4
8Mhz
Basic
Clock
Watchdog
15-bit
Comp_A
USART0
UART/SPI
USART1
UART/SPI
RISC CPU
16-bit
JT
A
G
/D
eB
U
G
Port 5/6
SMCLK
MAB
MDB
Timer_A3
16-bit
Timer_B7
16-bit
ADC12
200ksps
Autoscan
Vref
Temp
Port 1/2
with IRQ
MPY/MPYS
MAC/MACS
8/16-bit
MCLK
JTAG
ACLK
LFXT1
XT2
MSP430F15x/16x
FLASH
16kB-60kB
RAM
512B-2kB
Power-On
Reset
SVS+
Brownout
Protection
8Mhz
Basic
Clock
Watchdog
15-bit
RISC CPU
16-bit
JT
A
G
/E
E
M
Port5/6
ACLK
SMCLK
MAB
MDB
Timer_B7
16-bit
Timer_A3
16-bit
Port3/4
Port1/2
with IRQ
MPY/MPYS
MAC/MACS
8/16-bit
ADC12
200ksps
autoscan
Vref/Temp
MCLK
USART0
UART/SPI/
I2C
USART1
UART/SPI
JTAG
LFXT1
XT2
DAC12
Dual
3us
D
M
A
C
o
n
tr
o
lle
r
64 TQFP
MSP430x41x – układy ze sterownikiem pola LCD
FLASH
or ROM
4/8kB
RAM
256B
Power-On
Reset
SVS+
Brown-Out
Protection
8Mhz
FLL+
Oscillator
Watchdog
15-bit
Basic
Timer 1
(2) 8-bit
LCD
Driver
96 Seg.
RISC CPU
16-bit
JT
A
G
/D
eb
u
g
Port5/6
ACLK
SMCLK
MAB
MDB
Timer_A3
16-bit
Port3/4
Port1/2
with IRQ
Comp_A
MCLK
XIN
XOUT
JTAG
100 TQFP
MSP430F43x/44x
FLASH
16kB-60kB
RAM
512B-2kB
Power-On
Reset
SVS+
Brown-Out
Protection
8Mhz
FLL+
Oscillator
Watchdog
15-bit
Basic
Timer 1
(2) 8-bit
LCD
Driver
160 Seg.
RISC CPU
16-bit
JT
A
G
/E
E
M
Port5/6
ACLK
SMCLK
MAB
MDB
Timer_B7
16-bit
Timer_A3
16-bit
Port3/4
Port1/2
with IRQ
MPY/MPYS
MAC/MACS
8/16-bit
Comp_A
ADC12
200ksps
autoscan
Vref
Temp
MCLK
USART0
UART/SPI
USART1
UART/SPI
JTAG
4
LFXT1 XT2
MSP430F413 - termostat z wyświetlaczem LCD
Roczne zużycie
energii dla funkcji
termometru 30mAh
Single slope ADC
Realizacja RTC –
0.8uA
Termometr z
wyświetlaniem –
ok. 3.2uA
M
SP
43
0F
41
3I
PM
P1.5
Sx,COMx
Heat
Cool
Set
Hold
LoBatt
0.1uF
P1.6
P1.7/CA0
10k
TA0/P1.1
TA0/P1.2
UART
Px.x
JTAG
VCC
RST/NMI
VSS
+
-
CR2032
32768
XIN
XOUT
MSP430F44x – przykład urządzenia dla medycyny
Strip Currents
Voltage Inputs
M
SP
43
0F
44
9I
PZ
A1
Test
Strip
0 - 100uA
V2
I2
I1
P2.0
-
+
V1
SD
A2
12-bit ADC
Temp_Sense
VRef
-
+
Px.x
TXD0
UART/
SPI
RXD0
TXD1
UART/
SPI
RXD1
VREF+
Sx,COMx
JTAG
Txx
32768
XIN
XOUT
1 2
3
4 5 6 7 8
mg/dL
AM/PM
TLV2763
VCC
RST/NMI
VSS
+
-
CR2032
MSP430F2xx – co nowego w nowej serii?
✔
szybszy rdzeń
✔
mniejszy pobór energii
✔
nowe modele będą odpowiednikami serii 1xx i 4xx
✔
w planach modele o małej ilości wyprowadzeń (<20)
✔
w planach modele o dużej pojemności Flash (120kB)
✔
poprawione własności peryferiów
MSP430F2xx – co nowego w nowej serii?
Stand-By
aktywny
aktywny
1.6
µ
A
Time
250
µ
A
0.8
µ
A
✔
16MHz wobec 8MHz
✔
0.8uA w LPM3 wobec 1.6uA
(F21xx wobec F11xx)
✔
Stabilność DCO +/- 2.5% wobec
+/- 20% w 1xx
✔
Możliwość programowania
Flash od 2.2V (wobec 2.7V)
✔
Czas budzenia 2us wobec 6us
✔
Wbudowane rezystory
podciągające
✔
BSL całkowicie odporny na
próby włamania
✔
Producent umieszcza
parametry kalibracji DCO w
pamięci Flash
✔
Poprawiony watch-dog
timer (WDT+)
✔
Na stałe włączony „zero-
power” BOR
✔
komparator A wyposażony
w 8 wejść wobec 2 (F21xx
wobec F11xx)
MSP430 – układy
specjalizowane
Dotychczas:
Kilka układów analogowych i
cyfrowych
Umiarkowany koszt wykonania
zasilanie 3V
I In
V In
Sensor
MSP430FE42x
Load
3V
Sensor
ESP
LCD Display
Live
Neutral
AMR
Clock
Memory
5V
Analog
Front-End
LCD
Driver
Digital
MCU
Obecnie:
Jednoukładowy licznik energii elektrycznej
17
A
V
C
C
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49
P1.5/TACLK/ACLK/S28
D
V
S
S
A
V
S
S
P
2.
3/
S
V
S
IN
P
2.
4/
U
TX
D
P
2.
5/
U
R
X
D
R
S
T/
N
M
I
T
C
K
T
M
S
T
D
I
T
D
O
/T
D
I
P
1.
0/
T
A
0
P
1.
1/
T
A
0(
i)/
M
C
LK
P
1.
2/
T
A
1/
S
31
P
1.
3/
S
V
S
O
ut
/S
30
P
1.
4/
S
29
S
5
S
6
S
7
S
8
S
9
S
10
S
11
S
12
S
13
S
14
S
15
S
16
S
17
S
18
S
19
S
20
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
P1.6/SIMO/S27
P1.7/SOMI/S26
P2.0/TA2/S25
P2.1/UCLK/S24
R33
R23
R13
R03
COM3
COM2
COM1
COM0
S23
S21
S22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
DVCC
I1+
I1-
I2+
I2-
V1+
V1-
XIN
XOUT/TCLK
VREF
P2.2/STE
S0
S1
S2
S4
S3
MSP430FE427
zasilanie 2.7 V ... 3.6 V
Niski pobór mocy (z wyłączonym
ESP430)
Tryb aktywny: 400µA
(1MHz,3.0V)
Standby: 1.1 µA
Podtrzymanie RAM-u: 0.1 µA
Czas wyjscia z uśpienia - 6us
zegar z pętlą FLL+
BOR, SVS
16-bit Timer_A3
Basic Timer do zastosowań RTC
Watchdog WDT+
sterownik LCD – 128 segmentów
USART
ESP430CE1 Embedded Signal
Processor
32kB Flash, 1kB RAM
MSP430FE42x - właściwości
MSP430FE42x – Schemat blokowy
Return
Registers 32x
Mailbox
Registers 4x
PGA
PGA
+
-
+
-
1
V
REF
Reference
1.25V
T
PGA
+
-
SMCLK
ACLK
MCLK
TACLK
1/2/4/8
Parameter
Registers 32x
DSP430
Multiplier
16-bit
2nd Order
Σ∆
ADC
16-bit
2nd Order
Σ∆
ADC
16-bit
2nd Order
Σ∆
ADC
1
MSP430FE42x’s ESP430CE1
zasilanie 2.7V –
3.6V
Wzmocnienie
PGA:1 - 32
Oversampling:
32 - 256
Próbkowanie:
4096 @1MHz,
256 Oversample
Wbudowany
czujnik
temperatury
Wbudowana
referencja
UTXD0
UART (or SPI)
9600 - 115,200
Sx,COMx
V1-/
Vref(O)
Px.x
Vref(I)
URXD0
32,768 Hz
XIN
XOUT
R33
R03
ESP430CE1
I In
V In
LOAD
From Utility
V1+
I1+
I1-
I2+
I2-
N
L
RST
VSS
VCC
MSP430FE427
User Interface
MAX
CUM
A
B
C
D
E
kWh
REAC
TEST
kW
MSP430FE42x – jednofazowy licznik energii –
przykładowa aplikacja
Elektroniczny wodomierz,
ciepłomierz, itp. - MSP430FW42x
Scan IF
LCD
MSP430FW42x
3V
Wodomierz
elektroniczy licznik
wody o niskich
kosztach wykonania
Bateria 3V
wystarcza na kilka
lat
Brak mechanicznego
liczydła
Brak sprzęgu
magnetycznego
Odporny na
MAGNES
NEODYMOWY?
Czyjniki ruchu tarczy (wirnika)
LC-Sensor
GMR Sensor
❑
Cewki rozmieszone są ponad tarczą
wykonaną częściowo z materiału
tłumiącego pole elektromagnetyczne
❑
Czujniki magnetorezystywne
wykrywają zmiany pola
magnetycznego
470nF
SIFCOM
SIFCH0
SIFCH1
SIFCH2
AV
CC
DV
CC
DV
SS
AV
SS
SIFVSS
470nF
SIFCH3
N
S
N
S
470nF
SIFCOM
SIFCH0
SIFCH1
SIFCH2
AV
CC
DV
CC
DV
SS
AV
SS
SIFVSS
470nF
SIFCH3
MSP430FW42x
FLASH
16/24/32KB
RAM
512/1KB
Power-On
Reset
SVS+
Brown-Out
Protection
8MHz
FLL+
Oscillator
Watchdog
15-bit
Basic
Timer 1
(2) 8-bit
LCD
Driver
96 Seg.
RISC CPU
16-bit
J
T
A
G
/D
e
B
u
g
Port5/6
ACLK
SMCLK
MAB
MDB
Timer_A5
16-bit
Timer_A3
16-bit
Port3/4
Port1/2
with IRQ
Comp_A
MCLK
JTAG
XIN
XOUT
Scan I/F
State
Machine
10-bit DAC
MSP430FW42x’s – moduł
Scan Interface
Scan I/F może
wpółpracować z
czujnikami LC i
magnetorezystywnymi
a także z układem
całkującym
4 wejscia pomiarowe
Programowalna
maszyna stanów
steruje procesem
Programowalna
maszyna stanów
analizuje sygnał i
interpretuje ruch
tarczy
Timing State
Machine (TSM)
w/ oscillator
Processing
State Machine
(PSM)
A
na
lo
g
In
pu
t M
ul
tip
le
xe
r
Interrupt
Request
Rotation
Data
ACLK
SMCLK
Analog Front-End
(AFE)
SIFCH1
SIFCH0
SIFCH2
SIFCH3
SIFCI0
SIFCOM
SIFVSS
SIFCI
SIFCI1
SIFCI2
SIFCI3
Scan I/F
To
Timer_A
+
-
1/2
VCC
Exc
it
S/H
DAC 10 Bit
w/ RAM
Metody programowania
Metody programowania
Bootstrap-loader (BSL):
4 przewody sygnałowe + zasilanie
Procedura obsługi zamisana w
ROM-ie
Automatyczna funkcja doboru
prędkości bodowej (9600b/s)
pozwala programowąć układ bez
rezonatora kwarcowego
Hasło 256-bitów
Tylko programowanie i odczyt
JTAG:
Dedykowane wyprowadzenia w
'1xx, '2xx i 4'xx
Współdzielone wyprowadzenia w
'1xxx
Programowanie, odczyt i emulacja
w układzie
Zapezpiecznie programu przez
bezpowrotne uszkodzenie
ciągłości połączenia
Narzędzia:
Starter KIT MSP430-FET
Możliwość emulacji w układzie
z użyciem JTAG
Dwa urządzenia – interfejs i
płytka z procesorem
Oproramowanie: kompilator
asemblera i linker
Kompilator C z ograniczeniem
do 4kB kodu wynikowego, IAR
CD-ROM z dokumentacją
TI IDE
Rodzina
MSP-FET430X110
MSP430x11x
MSP-FET430P120
MSP430x11x/12x(2)
MSP-FET430P140
MSP430x13x/14x/15x/16x
MSP-FET430P410
MSP430x41x/42x
MSP-FET430P440
MSP430x43x/44x
❑
JTAG i BSL
❑
Działa jako programator,
Flash Emulation Tool oraz
bootstrap-loader (BSL)
❑
Połączenie z komputerem
poprzez USB
❑
BSL – 350kb/s >> 9600b/s
❑
JTAG – 60kB kodu w kilka
sekund
❑
Dołączone oprogramowanie
pozwala na serializację i
kalibrację urządzeń w czasie
produkcji
Uniwersalny programator Elprotronic
Uniwersalny programator Elprotronic
- USB-MSP430-FPA
- USB-MSP430-FPA
Podstawowe zasady tworzenia aplikacji o
niskim poborze energii
Mikrokontroler powinien pozostawać przez większość czasu w
trybie o obniżonym poborze energii (LPM3 lub wyższym).
Użycie kwarcu 32K i szybkiego DCO pozwala wykonać zadania w
krótkim czasie
Używa się peryferiów zamiast programowej kontroli zadań
Używa się przerwań do kontroli działania oprogramu
Stosuje się tablice w miejsce obliczeń numerycznych
Skomplikowane obliczenia wykonuje się na rejestrach
Ogranicza się wywoływanie podfunkcji
Preferuje się bezpośrednie zasilanie z baterii, bez
przetwarzania energii
Kontroluje się zasilanie układów zewnętrznych
MSP430 – 16-bitowy CPU, niski pobór energii,
analogowe peryferia
Stand-By
aktywny
aktywny
1
µ
A
Time
250
µ
A
Wewnętrzny oscylator (DCO)
rozpoczyna pracę w 6us (2us) –
skraca to czas aktywnej pracy, co
sprzyja redukcji poboru energii
16-bit RISC CPU with up to 8 MIPS
27 instrukcji / 7 trybów adresowania
100% kompatybilności kodu wszystkich układów
0
15
0
R0/PC - Program Counter
16-bit ALU
DST
SRC
MDB - memory data bus
memory address bus - MAB
16
0
R1/SP - Stack Pointer
R2/SR - Status
V SCG1 SCG0 OscOff CPUOff
R3/CG - Constant Generator
R4
- General Purpose
R5
- General Purpose
R15
- General Purpose
16
………. R6 - R14 ………
Podtrzymanie
RAM-u - LPM4
wszystkie zegary
wyłączone
0.1uA
CPU wył.
LPM0
DCO wł., ACLK wł.
35uA
Stand-by
LPM3
DCO off, ACLK on
1A dla '4xx
1.6uA dla '1xx
Tryb aktywny
CPU wł.
DCO wł. ACLK wł.
250uA @ 1MHz
Niski pobór energii >>>
Aktywność tylko w następstwie zdarzeń
Podstawowy tryb
pracy - LPM3
przerwanie
przerwanie
przerwanie
Przykład – termometr
elektroniczny
✔
Zegar CPU - DCO ~
1.5MHz
✔
Częstość pomiaru1/4
(1/8) sek.
✔
Pomiar rezystancji
termistora w układzie
integracyjnym z
komparatorem A
✔
Wyznaczenie
temperatury z użyciem
tablic współczynników
✔
Model testowy:
MSP430F413, TimerA,
BasicTimer,WDT,
comparatorA, BOR
✔
zużycie prądu ??
Pobór prądu
zmierzony podczas
prezentacji - 3.2uA
Przykład – transmisja UART
✔
Zegar CPU -
tylko DCO
– bez stabilizacji
kwarcem
✔
Szybkość transmisji –
19200 b/sek
✔
Model testowy
:MSP430F2131, TimerA,
WDT+, comparatorA, BOR
✔
DCO – stabilność
+/- 2.5% w całym
zakresie temperatur
użytecznych
✔
Obsługa UART programowa
z wykorzystaniem Timera A
i rejestrów
Capture/Compare
Przykład – odliczanie czasu
✔
Odliczanie czasu w pętli
oczekiwania
✔
Zegar CPU - DCO ~
800kHz (wartość
domyślna)
✔
Puls ~1 Hz, czas błysku
~1/64 sek
✔
Zużycie prądu ?
main( void )
{
WDTCTL = WDTPW + WDTHOLD;
P1DIR = BIT0;
while (1)
{
delay(65000);
P1OUT |= BIT0;
delay(1000);
P1OUT &=~ BIT0;
}
}
void delay (unsigned short counter)
{
while (counter)
{
counter --;
_NOP(); _NOP(); _NOP();
_NOP();
}
}
//end
✔
Model testowy
:MSP430F2131, TimerA,
WDT+, comparatorA, BOR
Wynik pomiaru - 360uA
Przykład – odliczanie czasu
✔
Odliczanie czasu w pętli
oczekiwania
✔
Zegar CPU - DCO –
częstotliwość minimalna
(20-40kHz)
✔
Puls ~1 Hz, czas błysku
~1/64 sek
✔
Zużycie prądu ?
main( void )
{
WDTCTL = WDTPW + WDTHOLD;
DCOCTL = 0;
BCSCTL1 = XT2OFF;
P1DIR = BIT0;
while (1)
{
delay(6500);
P1OUT |= BIT0;
delay(100);
P1OUT &=~ BIT0;
}
}
void delay (unsigned short counter)
{
while (counter)
{
counter --;
_NOP(); _NOP(); _NOP();
_NOP();
}
}
//end
Wynik pomiaru - 35uA
Przykład – odliczanie czasu
✔
Odliczanie czasu przy
pomocy licznika
✔
Zegar CPU - DCO -
800kHz
✔
Zegar licznika – ACLK –
32kHz
✔
Licznik – watchdog timer,
TimerA pozostaje do
innych celów
✔
Puls ~2 Hz, czas błysku
~1/64 sek
✔
Zużycie prądu ?
main( void )
{
WDTCTL = WDTPW + WDTHOLD;
DCOCTL = 0; BCSCTL1 = XT2OFF;
P1DIR = BIT0;
IE1 |= WDTIE;
_EINT();
while (1)
{
WDTCTL = WDT_ADLY_1000;
LPM3;//1 sek
WDTCTL = WDT_ADLY_1000;
LPM3;//1 sek.
P1OUT |= BIT0;
WDTCTL = WDT_ADLY_1_9;
LPM3;
P1OUT &=~ BIT0;
}
}
#pragma vector=WDT_VECTOR
__interrupt void WDT_Timer(void)
{
LPM3_EXIT;
// exit LPM0
}
//end
Wynik pomiaru - 0.8uA
Przykład – kompresja audio
A/C
16bit
C/A
12 bit
CPU
MSP430F15x
MCLK
SPI
SPI Master
SPI Slave
•
niski pobór prądu
•
ograniczenie przepływności
danych
•
znośna jakość dźwięku
•
MCLK – 5MHz, wytwarzany
przez C/A
•
Dane audio – 80kB/s,
przesyłane przez SPI
Potrzeby:
Cechy:
Przykład – kompresja audio
•
Synchroniczne kodowanie i dekodowanie ADPCM
•
resampling z 40kS/s na 10kS/s zmiejsza ilośc danych czterokrotnie
•
Koder ADPCM zmiejsza ilośc danych czterokrotnie – finalna
przepływnośc danych – 5kB/s
•
Rozmiar kodu 1,5kB, zużycie prądu 1,5mA, użycie CPU ok. 90% ( w
tym ok. 40% instrukcji NOP, użyte LPM)
A/C
16bit,40kS/s
120kB/s
40kB/s
80kB/s
resampling
20kB/s
5kB/s
koder
ADPCM
C/A
12bit,
10kS/s
dekoder
ADPCM
20kB/s
5kB/s
Rozwiązanie:
5kB/s pozwala:
✔
zapisać w RAM
do 400ms dźwięku
✔
Zapisać we Flash
do 12 s dźwięku o
jakości wyższej
niż telefoniczna
Contrans TI – serwis WWW
www.contrans.com.pl
E-mail: contrans@contrans.com.pl
texas@contrans.com.pl
support@contrans.com.pl