STMicroelectronics ST92F120 ingebedde toepassingen
INVOERING
Microcontrollers voor embedded toepassingen integreren steeds meer randapparatuur en grotere geheugens. Het leveren van de juiste producten met de juiste features zoals Flash, geëmuleerde EEPROM en een breed scala aan randapparatuur tegen de juiste prijs is altijd een uitdaging. Daarom is het verplicht om de matrijsgrootte van de microcontroller regelmatig te verkleinen zodra de technologie dit toelaat. Deze belangrijke stap is van toepassing op de ST92F120.
Het doel van dit document is om de verschillen te presenteren tussen de ST92F120-microcontroller in 0.50-micron-technologie versus de ST92F124/F150/F250 in 0.35-micron-technologie. Het biedt enkele richtlijnen voor het upgraden van applicaties, zowel qua software- als hardwareaspecten.
In het eerste deel van dit document worden de verschillen tussen de ST92F120- en ST92F124/F150/F250-apparaten vermeld. In het tweede deel worden de benodigde aanpassingen aan de applicatiehardware en -software beschreven.
UPGRADEN VAN DE ST92F120 NAAR DE ST92F124/F150/F250
ST92F124/F150/F250-microcontrollers die 0.35 micron-technologie gebruiken zijn vergelijkbaar met ST92F120-microcontrollers die 0.50 micron-technologie gebruiken, maar het verkleinen wordt gebruikt om enkele nieuwe functies toe te voegen en de prestaties van ST92F124/F150/F250-apparaten te verbeteren. Bijna alle randapparaten behouden dezelfde kenmerken. Daarom richt dit document zich alleen op de gewijzigde secties. Als er geen verschil is tussen het randapparaat van 0.50 micron en het randapparaat van 0.35, afgezien van de technologie en ontwerpmethodologie, wordt het randapparaat niet gepresenteerd. De nieuwe analoog naar digitaal converter (ADC) is de grootste verandering. Deze ADC maakt gebruik van een enkele 16-kanaals A/D-omzetter met een resolutie van 10 bits in plaats van twee 8-kanaals A/D-omzetters met een resolutie van 8 bits. De nieuwe geheugenorganisatie, nieuwe reset- en klokcontrole-eenheid, interne voltagDe regelaars en nieuwe I/O-buffers zullen bijna transparante veranderingen voor de toepassing zijn. De nieuwe randapparatuur zijn het Controller Area Network (CAN) en de asynchrone Serial Communication Interface (SCI-A).
PIN-OUT
De ST92F124/F150/F250 is ontworpen om de ST92F120 te kunnen vervangen. De pinouts zijn dus vrijwel hetzelfde. De enkele verschillen worden hieronder beschreven:
- Clock2 is opnieuw toegewezen van poort P9.6 naar P4.1
- Analoge ingangskanalen zijn opnieuw toegewezen volgens de onderstaande tabel.
Tabel 1. Toewijzing van analoge ingangskanalen
PIN | ST92F120 Pin-out | ST92F124/F150/F250 Pin-out |
P8.7 | A1IN0 | AIN7 |
… | … | … |
P8.0 | A1IN7 | AIN0 |
P7.7 | A0IN7 | AIN15 |
… | … | … |
P7.0 | A0IN0 | AIN8 |
- RXCLK1 (P9.3), TXCLK1/CLKOUT1 (P9.2), DCD1 (P9.3), RTS1 (P9.5) zijn verwijderd omdat SCI1 werd vervangen door SCI-A.
- A21(P9.7) tot en met A16 (P9.2) zijn toegevoegd om maximaal 22 bits extern te kunnen adresseren.
- Er zijn 2 nieuwe CAN-randapparaten beschikbaar: TX0 en RX0 (CAN0) op poorten P5.0 en P5.1 en TX1 en RX1 (CAN1) op speciale pinnen.
RW RESET-STAAT
In de resetstatus wordt RW hoog gehouden met een interne zwakke pull-up, terwijl dit niet het geval was op de ST92F120.
SCHMITT TRIGGERS
- I/O-poorten met speciale Schmitt-triggers zijn niet langer aanwezig op de ST92F124/F150/F250, maar zijn vervangen door I/O-poorten met Schmitt-triggers met hoge hysteresis. De bijbehorende I/O-pinnen zijn: P6[5-4].
- Verschillen op de VIL en VIH. Zie Tabel 2.
Tabel 2. Ingangsniveau Schmitt Trigger DC elektrische kenmerken
(VDD = 5 V ± 10%, TA = –40° C tot +125° C, tenzij anders gespecificeerd)
Symbool |
Parameter |
Apparaat |
Waarde |
Eenheid |
||
Mijn | Typ(1) | Maximaal | ||||
VIH |
Ingang hoog niveau standaard Schmitt-trigger
P2[5:4]-P2[1:0]-P3[7:4]-P3[2:0]- P4[4:3]-P4[1:0]-P5[7:4]-P5[2:0]- P6[3:0]-P6[7:6]-P7[7:0]-P8[7:0]- P9[7:0] |
ST92F120 | 0.7 x VDD | V | ||
ST92F124/F150/F250 |
0.6 x VDD |
V |
||||
VIL |
Ingang laag niveau standaard Schmitt-trigger
P2[5:4]-P2[1:0]-P3[7:4] P3[2:0]- P4[4:3]-P4[1:0]-P5[7:4]-P5[2:0]- P6[3:0]-P6[7:6]-P7[7:0]-P8[7:0]- P9[7:0] |
ST92F120 | 0.8 | V | ||
ST92F124/F150/F250 |
0.2 x VDD |
V |
||||
Ingang laag niveau
Hoge Hyst.Schmitt-trigger P4[7:6]-P6[5:4] |
ST92F120 | 0.3 x VDD | V | |||
ST92F124/F150/F250 | 0.25 x VDD | V | ||||
VHYS |
Ingangshysterese Standaard Schmitt-trigger
P2[5:4]-P2[1:0]-P3[7:4]-P3[2:0]- P4[4:3]-P4[1:0]-P5[7:4]-P5[2:0]- P6[3:0]-P6[7:6]-P7[7:0]-P8[7:0]- P9[7:0] |
ST92F120 | 600 | mV | ||
ST92F124/F150/F250 |
250 |
mV |
||||
Ingangshysterese
Hoge Hyst. Schmitt trigger P4[7:6] |
ST92F120 | 800 | mV | |||
ST92F124/F150/F250 | 1000 | mV | ||||
Ingangshysterese
Hoge Hyst. Schmitt trigger P6[5:4] |
ST92F120 | 900 | mV | |||
ST92F124/F150/F250 | 1000 | mV |
Tenzij anders vermeld, zijn typische gegevens gebaseerd op TA= 25°C en VDD= 5V. Ze worden alleen gerapporteerd voor ontwerprichtlijnen die niet in productie zijn getest.
GEHEUGENORGANISATIE
Extern geheugen
Op de ST92F120 waren extern slechts 16 bits beschikbaar. Op het ST92F124/F150/F250-apparaat zijn nu de 22 bits van de MMU extern beschikbaar. Deze organisatie wordt gebruikt om het adresseren van maximaal 4 externe Mbytes eenvoudiger te maken. Maar de segmenten 0h tot 3h en 20h tot 23h zijn niet extern beschikbaar.
Flash-sectororganisatie
De sectoren F0 tot en met F3 hebben een nieuwe organisatie in de 128K- en 60K-Flash-apparaten, zoals weergegeven in Tabel 5 en Tabel 6. Tabel 3 en Tabel 4 tonen de vorige organisatie.
Tabel 3. Geheugenstructuur voor 128K Flash ST92F120 Flash-apparaat
Sector | Adressen | Maximale grootte |
TestFlash (TF) (gereserveerd)
OTP-gebied Beschermingsregisters (gereserveerd) |
230000 uur tot 231F7Fh
231F80h tot 231FFBh 231FFCh tot 231FFFh |
8064 bytes
124 bytes 4 bytes |
Flits 0 (F0)
Flits 1 (F1) Flits 2 (F2) Flits 3 (F3) |
000000h tot 00FFFFh
010000 uur tot 01BFFFh 01C000h tot 01DFFFh 01E000h tot 01FFFFh |
64 Kbyte
48 Kbyte 8 Kbyte 8 Kbyte |
EEPROM 0 (E0)
EEPROM 1 (E1) Geëmuleerde EEPROM |
228000 uur tot 228 FFF uur
22C000h tot 22CFFFh 220000h tot 2203FFh |
4 Kbyte
4 Kbyte 1 Kbyte |
Tabel 4. Geheugenstructuur voor 60K Flash ST92F120 Flash-apparaat
Sector | Adressen | Maximale grootte |
TestFlash (TF) (gereserveerd)
OTP-gebied Beschermingsregisters (gereserveerd) |
230000 uur tot 231F7Fh
231F80h tot 231FFBh 231FFCh tot 231FFFh |
8064 bytes
124 bytes 4 bytes |
Flits 0 (F0) Gereserveerd Flits 1 (F1)
Flits 2 (F2) |
000000 uur tot 000 FFF uur
001000h tot 00FFFFh 010000 uur tot 01BFFFh 01C000h tot 01DFFFh |
4 Kbyte
60 Kbyte 48 Kbyte 8 Kbyte |
EEPROM 0 (E0)
EEPROM 1 (E1) Geëmuleerde EEPROM |
228000 uur tot 228 FFF uur
22C000h tot 22CFFFh 220000h tot 2203FFh |
4 Kbyte
4 Kbytes 1 Kbyte |
Sector | Adressen | Maximale grootte |
TestFlash (TF) (gereserveerd) OTP-gebied
Beschermingsregisters (gereserveerd) |
230000 uur tot 231F7Fh
231F80h tot 231FFBh 231FFCh tot 231FFFh |
8064 bytes
124 bytes 4 bytes |
Flits 0 (F0)
Flits 1 (F1) Flits 2 (F2) Flits 3 (F3) |
000000 uur tot 001 FFF uur
002000 uur tot 003 FFF uur 004000h tot 00FFFFh 010000h tot 01FFFFh |
8 Kbyte
8 Kbyte 48 Kbyte 64 Kbyte |
Sector | Adressen | Maximale grootte |
Hardware-geëmuleerde EEPROM-sec- | ||
tors | 228000 uur tot 22CFFFh | 8 Kbyte |
(gereserveerd) | ||
Geëmuleerde EEPROM | 220000h tot 2203FFh | 1 Kbyte |
Sector | Adressen | Maximale grootte |
TestFlash (TF) (gereserveerd)
OTP-gebied Beschermingsregisters (gereserveerd) |
230000 uur tot 231F7Fh
231F80h tot 231FFBh 231FFCh tot 231FFFh |
8064 bytes
124 bytes 4 bytes |
Flits 0 (F0)
Flits 1 (F1) Flits 2 (F2) Flits 3 (F3) |
000000 uur tot 001 FFF uur
002000 uur tot 003 FFF uur 004000 uur tot 00BFFFh 010000 uur tot 013 FFF uur |
8 Kbyte
8 Kbyte 32 Kbyte 16 Kbyte |
Hardware-geëmuleerde EEPROM-sectoren
(gereserveerd) Geëmuleerde EEPROM |
228000 uur tot 22CFFFh
220000h tot 2203FFh |
8 Kbyte
1 Kbyte |
Omdat de gebruikerresetvectorlocatie is ingesteld op adres 0x000000, kan de toepassing sector F0 gebruiken als een gebruikersbootloadergebied van 8 Kbyte, of de sectoren F0 en F1 als een gebied van 16 Kbyte.
Flash- en E3PROM-controleregisterlocatie
Om een data pointer register (DPR) op te slaan, worden de Flash- en E3PROM (geëmuleerde E2PROM)-besturingsregisters opnieuw toegewezen van pagina 0x89 naar pagina 0x88 waar het E3PROM-gebied zich bevindt. Op deze manier wordt slechts één DPR gebruikt om naar zowel de E3PROM-variabelen als de Flash- en E2PROM-besturingsregisters te verwijzen. Maar de registers zijn nog steeds toegankelijk op het vorige adres. De nieuwe registeradressen zijn:
- FCR 0x221000 en 0x224000
- ECR 0x221001 en 0x224001
- FESR0 0x221002 en 0x224002
- FESR1 0x221003 en 0x224003
In de applicatie worden deze registerlocaties doorgaans gedefinieerd in het linkerscript file.
RESET- EN KLOK-BESTURINGSEENHEID (RCCU)
Oscillator
Er is een nieuwe oscillator met laag vermogen geïmplementeerd met de volgende doelspecificaties:
- Max. 200 µmamp. verbruik in Running-modus,
- 0 amp. in de stopmodus,
PLL
Eén bit (bit7 FREEN) is toegevoegd aan het PLLCONF-register (R246, pagina 55), dit is om de Free Running-modus in te schakelen. De resetwaarde voor dit register is 0x07. Wanneer de FREEN-bit wordt gereset, gedraagt deze zich hetzelfde als in de ST92F120, wat betekent dat de PLL wordt uitgeschakeld wanneer:
- in de stopmodus gaan,
- DX(2:0) = 111 in het PLLCONF-register,
- naar de energiebesparende modi gaan (Wait For Interrupt of Low Power Wait for Interrupt) volgens de WFI-instructie.
Wanneer het FREEN-bit is ingesteld en een van de hierboven genoemde omstandigheden zich voordoet, gaat de PLL naar de Free Running-modus en oscilleert op een lage frequentie die doorgaans ongeveer 50 kHz is.
Als de PLL de interne klok levert en het kloksignaal verdwijnt (bijvoorbeeld als gevolg van een kapotte of losgekoppelde resonator...), wordt bovendien automatisch een veiligheidskloksignaal gegeven, waardoor de ST9 enkele reddingsoperaties kan uitvoeren.
De frequentie van dit kloksignaal is afhankelijk van de DX[0..2] bits van het PLLCONF register (R246, pagina 55).
Raadpleeg het gegevensblad van de ST92F124/F150/F250 voor meer details.
INTERN VOLTAGE-REGELAAR
In de ST92F124/F150/F250 werkt de kern op 3.3 V, terwijl de I/O's nog steeds op 5 V werken. Om de 3.3V-stroom aan de kern te leveren, is een interne regelaar toegevoegd.
Eigenlijk is deze voltagDe regelaar bestaat uit 2 regelaars:
- een hoofdvoltage-regelaar (VR),
- een laag vermogen voltage-regelaar (LPVR).
Het hoofdvolumetagDe regelaar (VR) levert in alle bedrijfsmodi de door het apparaat benodigde stroom. De voltagDe regelaar (VR) wordt gestabiliseerd door een externe condensator (minimaal 300 nF) toe te voegen aan een van de twee Vreg-pinnen. Deze Vreg-pinnen kunnen geen andere externe apparaten aansturen en worden alleen gebruikt voor het regelen van de interne kernvoeding.
Het lage vermogen voltagDe regelaar (LPVR) genereert een niet-gestabiliseerde voltage van ongeveer VDD/2, met minimale interne statische dissipatie. De uitgangsstroom is beperkt en is dus niet voldoende voor de volledige werking van het apparaat. Het zorgt voor een lager energieverbruik wanneer de chip zich in de Low Power-modus bevindt (Wait For Interrupt, Low Power Wait For Interrupt, Stop of Halt-modi).
Wanneer de VR actief is, wordt de LPVR automatisch gedeactiveerd.
UITGEBREIDE FUNCTIETIMER
De hardwarewijzigingen in de Extended Function Timer van de ST92F124/F150/F250 in vergelijking met de ST92F120 hebben alleen betrekking op de functies voor het genereren van interrupts. Maar er is enkele specifieke informatie toegevoegd aan de documentatie over de Forced Compare-modus en de One Pulse-modus. Deze informatie is te vinden in het bijgewerkte ST92F124/F150/F250-gegevensblad.
Invoer vastleggen/uitvoer vergelijken
Op de ST92F124/F150/F250 kunnen de IC1- en IC2-interrupts (OC1 en OC2) afzonderlijk worden ingeschakeld. Dit gebeurt met behulp van 4 nieuwe bits in het CR3-register:
- IC1IE=CR3[7]: Ingang vastleggen 1 onderbreken inschakelen. Bij een reset wordt de interrupt van Ingang Capture 1 geblokkeerd. Indien ingesteld, wordt er een interrupt gegenereerd als de ICF1-vlag wordt ingesteld.
- OC1IE=CR3[6]: Uitgang vergelijken 1 onderbreking inschakelen. Bij een reset wordt de onderbreking van uitgangsvergelijking 1 geblokkeerd. Indien ingesteld, wordt er een interrupt gegenereerd als de OCF2-vlag is ingesteld.
- IC2IE=CR3[5]: Invoeropname 2 onderbreken inschakelen. Bij een reset wordt de interruptie van Input Capture 2 geblokkeerd. Indien ingesteld, wordt er een interrupt gegenereerd als de ICF2-vlag wordt ingesteld.
- OC2IE=CR3[4]: Uitgang vergelijken 2 onderbreking inschakelen. Bij reset wordt Output Compare 2 Interrupt geblokkeerd. Indien ingesteld, wordt er een interrupt gegenereerd als de OCF2-vlag is ingesteld.
Opmerking: De IC1IE en IC2IE (OC1IE en OC2IE) interrupts zijn niet significant als de ICIE (OCIE) is ingesteld. Om hiermee rekening te kunnen houden, moet de ICIE (OCIE) worden gereset.
PWM-modus
De OCF1-bit kan niet hardwarematig worden ingesteld in de PWM-modus, maar de OCF2-bit wordt elke keer ingesteld wanneer de teller overeenkomt met de waarde in het OC2R-register. Dit kan een interrupt genereren als de OCIE is ingesteld of als de OCIE is gereset en OC2IE is ingesteld. Deze interrupt is nuttig voor elke toepassing waarbij pulsbreedtes of -perioden interactief moeten worden gewijzigd.
A/D-OMVORMER (ADC)
Er is een nieuwe A/D-converter met de volgende hoofdfuncties toegevoegd:
- 16 kanalen,
- 10-bits resolutie,
- 4 MHz maximale frequentie (ADC-klok),
- 8 ADC-klokcycli voor samplange tijd,
- 20 ADC-klokcyclus voor conversietijd,
- Nul-invoerwaarde 0x0000,
- Volledige schaalwaarde 0xFFC0,
- De absolute nauwkeurigheid is ± 4 LSB's.
Deze nieuwe A/D-converter heeft dezelfde architectuur als de vorige. Het ondersteunt nog steeds de analoge watchdog-functie, maar gebruikt nu slechts 2 van de 16 kanalen. Deze 2 kanalen zijn aaneengesloten en kanaaladressen kunnen softwarematig worden geselecteerd. Bij de vorige oplossing met twee ADC-cellen waren er vier analoge watchdog-kanalen beschikbaar, maar op vaste kanaaladressen, kanalen 6 en 7.
Raadpleeg het bijgewerkte ST92F124/F150/F250-gegevensblad voor de beschrijving van de nieuwe A/D-converter.
Ik²C
I²C IERRP BIT-RESET
Op de ST92F124/F150/F250 I²C kan de IERRP (I2CISR)-bit softwarematig worden gereset, zelfs als een van de volgende vlaggen is ingesteld:
- SCLF, ADDTX, AF, STOPF, ARLO en BERR in het I2CSR2-register
- SB-bit in het I2CSR1-register
Voor de ST92F120 I²C geldt dit niet: de IERRP-bit kan niet softwarematig worden gereset als een van deze vlaggen is ingesteld. Om deze reden wordt op de ST92F120 de overeenkomstige interruptroutine (ingevoerd na een eerste gebeurtenis) onmiddellijk opnieuw ingevoerd als er tijdens de eerste uitvoering van de routine een andere gebeurtenis heeft plaatsgevonden.
START EVENTVERZOEK
Er bestaat een verschil tussen de ST92F120 en de ST92F124/F150/F250 I²C wat betreft het START-bitgeneratiemechanisme.
Om een START-gebeurtenis te genereren, stelt de applicatiecode de START- en ACK-bits in het I2CCR-register in:
– I2CCCR |= I2Cm_START + I2Cm_ACK;
Zonder dat de compileroptimalisatieoptie is geselecteerd, wordt het op de volgende manier in assembler vertaald:
- – of R240,#12
- – ldr0,R240
- – ld R240,r0
De OR-instructie stelt het Startbit in. Op de ST92F124/F150/F250 resulteert de uitvoering van de tweede laadinstructie in een tweede START-gebeurtenisverzoek. Deze tweede START-gebeurtenis vindt plaats na de volgende byte-overdracht.
Als een van de compileroptimalisatieopties is geselecteerd, vraagt de assemblercode niet om een tweede START-gebeurtenis:
– of R240,#12
NIEUWE RANDAPPARATUUR
- Er zijn maximaal 2 CAN-cellen (Controller Area Network) toegevoegd. Specificaties zijn beschikbaar in het bijgewerkte ST92F124/F150/F250-gegevensblad.
- Er zijn maximaal 2 SCI's beschikbaar: de SCI-M (Multi-protocol SCI) is hetzelfde als op de ST92F120, maar de SCI-A (Asynchronous SCI) is nieuw. De specificaties voor dit nieuwe randapparaat zijn beschikbaar in het bijgewerkte ST92F124/F150/F250-gegevensblad.
2 HARDWARE- EN SOFTWARE-WIJZIGINGEN AAN HET APPLICATIEBORD
PIN-OUT
- Vanwege de nieuwe toewijzing kan CLOCK2 niet in dezelfde toepassing worden gebruikt.
- SCI1 kan alleen worden gebruikt in de asynchrone modus (SCI-A).
- De wijzigingen in de mapping van de analoge ingangskanalen kunnen eenvoudig softwarematig worden afgehandeld.
INTERN VOLTAGE-REGELAAR
Door de aanwezigheid van de interne voltagBij de regelaar zijn op de Vreg-pinnen externe condensatoren nodig om de kern van een gestabiliseerde stroomvoorziening te voorzien. In de ST92F124/F150/F250 werkt de kern op 3.3 V, terwijl de I/O's nog steeds op 5 V werken. De minimaal aanbevolen waarde is 600 nF of 2*300 nF en de afstand tussen de Vreg-pinnen en de condensatoren moet tot een minimum worden beperkt.
Er hoeven geen andere wijzigingen aan het hardwareapplicatiebord te worden aangebracht.
FLASH- & EEPROM-CONTROLEREGISTRERS EN GEHEUGENORGANISATIE
Om 1 DPR te besparen, kunnen de symbooladresdefinities die overeenkomen met de Flash- en EEPROM-besturingsregisters worden gewijzigd. Dit gebeurt doorgaans in het linkerscript file. De 4 registers, FCR, ECR en FESR[0:1], zijn respectievelijk gedefinieerd op 0x221000, 0x221001, 0x221002 en 0x221003.
De reorganisatie van de Flash-sector van 128 Kbyte heeft ook invloed op het linkerscript file. Deze moet aangepast worden aan de nieuwe brancheorganisatie.
Voor de beschrijving van de nieuwe Flash-brancheorganisatie wordt verwezen naar paragraaf 1.4.2.
RESET- EN KLOK-BESTURINGSEENHEID
Oscillator
Kristaloscillator
Zelfs als de compatibiliteit met het ST92F120-bordontwerp behouden blijft, wordt het niet langer aanbevolen om een weerstand van 1 MOhm parallel te plaatsen met de externe kristaloscillator op een ST92F124/F150/F250-applicatiebord.
Lekkages
Terwijl de ST92F120 gevoelig is voor lekkage van GND naar OSCIN, is de ST92F124/F1 50/F250 gevoelig voor lekkage van VDD naar OSCIN. Het wordt aanbevolen om de kristaloscillator te omringen met een aardring op de printplaat en indien nodig een coatingfilm aan te brengen om vochtproblemen te voorkomen.
Externe klok
Zelfs als de compatibiliteit met het ST92F120-kaartontwerp behouden blijft, wordt aanbevolen om de externe klok op de OSCOUT-ingang toe te passen.
De voortaghet zijn:
- een standaard TTL-ingangssignaal kan worden gebruikt, terwijl de ST92F120 Vil op de externe klok tussen 400 mV en 500 mV ligt.
- de externe weerstand tussen OSCOUT en VDD is niet vereist.
PLL
Standaardmodus
De resetwaarde van het PLLCONF-register (p55, R246) start de toepassing op dezelfde manier als in de ST92F120. Om de vrijloopmodus te gebruiken onder de omstandigheden beschreven in paragraaf 1.5, moet de PLLCONF[7]-bit worden ingesteld.
Veiligheidsklokmodus
Als u de ST92F120 gebruikt en het kloksignaal verdwijnt, worden de ST9-kern en de randklok gestopt. Er kan niets worden gedaan om de applicatie in een veilige staat te configureren.
Het ST92F124/F150/F250-ontwerp introduceert het veiligheidskloksignaal, de applicatie kan in een veilige toestand worden geconfigureerd.
Wanneer het kloksignaal verdwijnt (bijvoorbeeld als gevolg van een kapotte of losgekoppelde resonator), vindt de PLL-ontgrendelingsgebeurtenis plaats.
De veiligere manier om deze gebeurtenis te beheren is door de INTD0 externe interrupt in te schakelen en deze toe te wijzen aan de RCCU door de INT_SEL-bit in het CLKCTL-register in te stellen.
De bijbehorende interruptroutine controleert de interruptbron (zie hoofdstuk 7.3.6 Interrupt genereren in de ST92F124/F150/F250-datasheet) en configureert de applicatie in een veilige status.
Opmerking: De perifere klok wordt niet gestopt en elk extern signaal dat door de microcontroller wordt gegenereerd (bijvoorbeeld PWM, seriële communicatie...) moet worden gestopt tijdens de eerste instructies die worden uitgevoerd door de interruptroutine.
UITGEBREIDE FUNCTIETIMER
Invoer vastleggen/uitvoer vergelijken
Om een Timer Interrupt te genereren, moet een programma dat voor de ST92F120 is ontwikkeld in bepaalde gevallen mogelijk worden bijgewerkt:
- Als Timer Interrupts IC1 en IC2 (OC1 en OC2) beide worden gebruikt, moet ICIE (OCIE) van register CR1 worden ingesteld. De waarde van de IC1IE en IC2IE (OC1IE en OC2IE) in het CR3-register is niet significant. Het programma hoeft in dit geval dus niet aangepast te worden.
- Als er slechts één interrupt nodig is, moet ICIE (OCIE) worden gereset en moet IC1IE of IC2IE (OC1IE of OC2IE) worden ingesteld, afhankelijk van de gebruikte interrupt.
- Als geen van de Timer Interrupts wordt gebruikt, moeten ICIE, IC1IE en IC2IE (OCIE, OC1IE en OC2IE) allemaal worden gereset.
PWM-modus
Er kan nu elke keer dat Counter = OC2R een Timer Interrupt gegenereerd worden:
- Om dit in te schakelen, stelt u OCIE of OC2IE in,
- Om dit uit te schakelen, stelt u OCIE EN OC2IE opnieuw in.
10-BIT ADC
Omdat de nieuwe ADC geheel anders is, zal het programma moeten worden bijgewerkt:
- Alle dataregisters zijn 10 bits, inclusief de drempelregisters. Elk register is dus verdeeld in twee registers van 8 bits: een bovenste register en een onderste register, waarin alleen de 2 meest significante bits worden gebruikt:
- Het startconversiekanaal wordt nu gedefinieerd door bits CLR1[7:4] (Pg63, R252).
- De analoge watchdog-kanalen worden geselecteerd door bits CLR1[3:0]. De enige voorwaarde is dat de twee kanalen aaneengesloten moeten zijn.
- De ADC-klok wordt geselecteerd met CLR2[7:5] (Pg63, R253).
- Interrupt-registers zijn niet gewijzigd.
Vanwege de grotere lengte van ADC-registers is de registerkaart anders. De locatie van de nieuwe registers wordt gegeven in de beschrijving van de ADC in de bijgewerkte ST92F124/F150/F250 Datasheet.
Ik²C
IERRP BIT-RESET
In de ST92F124/F150/F250-interruptroutine die speciaal is bedoeld voor de Error Pending-gebeurtenis (IERRP is ingesteld), moet een softwarelus worden geïmplementeerd.
Deze lus controleert elke vlag en voert de bijbehorende benodigde acties uit. De lus eindigt pas als alle vlaggen zijn gereset.
Aan het einde van de uitvoering van deze softwarelus wordt de IERRP-bit door software gereset en verlaat de code de interruptroutine.
START Evenementverzoek
Om ongewenste dubbele START-gebeurtenissen te voorkomen, gebruikt u een van de optimalisatieopties van de compiler in het bestand Makefile.
Bijvoorbeeld:
CFLAGS = -m$(MODEL) -I$(INCDIR) -O3 -c -g -Wa,-alhd=$*.lis
UW ST9 HDS2V2-EMULATOR UPGRADEN EN HERCONFIGUREREN
INVOERING
Dit gedeelte bevat informatie over hoe u de firmware van uw emulator kunt upgraden of opnieuw kunt configureren om een ST92F150-sonde te ondersteunen. Zodra u uw emulator opnieuw hebt geconfigureerd om een ST92F150-sonde te ondersteunen, kunt u deze opnieuw configureren om een andere sonde te ondersteunen (bijvoorbeeldampbijvoorbeeld een ST92F120-sonde) volgens dezelfde procedure en kies de geschikte sonde.
VOORWAARDEN VOOR HET UPGRADEN EN/OF HERCONFIGUREREN VAN UW EMULATOR
De volgende ST9 HDS2V2-emulators en emulatiesondes ondersteunen upgrades en/of herconfiguratie met nieuwe sondehardware:
- ST92F150-EMU2
- ST92F120-EMU2
- ST90158-EMU2 en ST90158-EMU2B
- ST92141-EMU2
- ST92163-EMU2
Voordat u de upgrade/herconfiguratie van uw emulator probeert uit te voeren, moet u ervoor zorgen dat aan ALLE volgende voorwaarden wordt voldaan: - De monitorversie van uw ST9-HDS2V2-emulator is hoger dan of gelijk aan 2.00. [U kunt zien welke monitorversie uw emulator heeft in het veld Doel van het venster Over ST9+ Visual Debug, dat u opent door Help>Over... te selecteren in het hoofdmenu van ST9+ Visual Debug.]
- Als uw pc op het besturingssysteem Windows® NT® draait, moet u over beheerdersrechten beschikken.
- U moet de ST9+ V6.1.1 (of nieuwer) Toolchain hebben geïnstalleerd op de host-pc die is aangesloten op uw ST9 HDS2V2-emulator.
HOE UW ST9 HDS2V2-EMULATOR UPGRADE/HERCONFIGUREERT
De procedure vertelt u hoe u uw ST9 HDS2V2-emulator kunt upgraden/herconfigureren. Zorg ervoor dat u aan alle vereisten voldoet voordat u begint, anders kunt u uw emulator beschadigen door deze procedure uit te voeren.
- Zorg ervoor dat uw ST9 HDS2V2-emulator via de parallelle poort is aangesloten op uw host-pc met Windows® 95, 98, 2000 of NT®. Als u uw emulator opnieuw configureert voor gebruik met een nieuwe sonde, moet de nieuwe sonde fysiek worden aangesloten op het HDS2V2-moederbord met behulp van de drie flexibele kabels.
- Op de host-pc selecteert u vanuit Windows® Start >Uitvoeren….
- Klik op de knop Bladeren om naar de map te bladeren waarin u de ST9+ V6.1.1 Toolchain hebt geïnstalleerd. Het pad naar de installatiemap is standaard C:\ST9PlusV6.1.1\… Blader in de installatiemap naar de submap ..\downloader\.
- Zoek de ..\downloader\ \ map die overeenkomt met de naam van de emulator die u wilt upgraden/configureren.
BijvoorbeeldampAls u uw ST92F120-emulator opnieuw wilt configureren voor gebruik met de ST92F150-EMU2-emulatieprobe, bladert u naar de ..\downloader\ \ map.
5. Selecteer vervolgens de map die overeenkomt met de versie die u wilt installeren (bijvample, de versie V1.01 is te vinden in ..\downloader\ \v92\) en selecteer de file (bijvoorbeeldampbestand, setup_st92f150.bat).
6. Klik op Openen.
7. Klik op OK in het venster Uitvoeren. De update begint. U hoeft alleen maar de instructies te volgen die op het scherm van uw pc worden weergegeven.
WAARSCHUWING: Stop de emulator of het programma niet terwijl de update bezig is! Uw emulator is mogelijk beschadigd!
“DEZE OPMERKING, DIE UITSLUITEND TOT RICHTLIJNEN IS, IS UITSLUITEND BEDOELD OM KLANTEN INFORMATIE TE GEVEN OVER HUN PRODUCTEN, ZODAT HIJ TIJD KAN BESPAREN. DAAROM KAN STMICROELECTRONICS NIET AANSPRAKELIJK WORDEN GESTELD VOOR ENIGE DIRECTE, INDIRECTE OF GEVOLGSCHADE MET BETREKKING TOT ENIGE CLAIMS DIE VOORTVLOEIEN UIT DE INHOUD VAN EEN DERGELIJKE OPMERKING EN/OF HET GEBRUIK DAT DOOR KLANTEN WORDT GEMAAKT VAN DE HIERIN OPGENOMEN INFORMATIE IN VERBAND MET HUN PRODUCTEN. ”
Er wordt aangenomen dat de verstrekte informatie accuraat en betrouwbaar is. STMicroelectronics aanvaardt echter geen verantwoordelijkheid voor de gevolgen van het gebruik van dergelijke informatie, noch voor enige inbreuk op patenten of andere rechten van derden die uit het gebruik ervan kan voortvloeien. Er wordt geen licentie verleend, impliciet of anderszins, onder enig patent of patentrechten van STMicroelectronics. De in deze publicatie genoemde specificaties kunnen zonder voorafgaande kennisgeving worden gewijzigd. Deze publicatie vervangt en vervangt alle eerder verstrekte informatie. STMicroelectronics-producten zijn niet geautoriseerd voor gebruik als kritische componenten in levensondersteunende apparaten of systemen zonder de uitdrukkelijke schriftelijke toestemming van STMicroelectronics.
Het ST-logo is een geregistreerd handelsmerk van STMicroelectronics
2003 STMicroelectronics – Alle rechten voorbehouden.
Aankoop van I2C-componenten door STMicroelectronics impliceert een licentie onder het Philips I2C-patent. Rechten om deze componenten in een I2C-systeem te gebruiken worden verleend op voorwaarde dat het systeem voldoet aan de I2C-standaardspecificatie zoals gedefinieerd door Philips.
STMicroelectronics-bedrijvengroep
Australië – Brazilië – Canada – China – Finland – Frankrijk – Duitsland – Hong Kong – India – Israël – Italië – Japan
Maleisië – Malta – Marokko – Singapore – Spanje – Zweden – Zwitserland – Verenigd Koninkrijk – VS
http://www.st.com
Documenten / Bronnen
![]() |
STMicroelectronics ST92F120 ingebedde toepassingen [pdf] Instructies ST92F120 ingebedde toepassingen, ST92F120, ingebedde toepassingen, toepassingen |