Teknologian jakaminen

STM32 harjoitus tyhjästä 08: STM32:n pääohjauskaavio

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Koska opettaja käyttää jokaista nastaaLuokitteluEn löytänyt mikro-ohjaimen kaaviota, jota käytinjärjestyksessäAsettelu ei sovellu kunkin moduulin kuvakaappausten näyttämiseen yksitellen, joten tässä osassa käytetään opettajan kaaviota.

1. Virtalähde

1.1 Johdatus virtalähteeseen

1.1.1 Digitaalinen teho ja maadoitus (VDD ja VSS)

digitaalinen teho Nastat antavat jännitteen kaikkiin digitaalipiirin osiin. Näitä digitaalisia piirejä ovat:

  • Prosessorin ydin: Suorita ohjeita ja käsittele tietoja.
  • Muisti: Sisältää Flashin ja SRAMin, joita käytetään ohjelmien ja tietojen tallentamiseen.
  • Digitaaliset oheislaitteet: Sisältää GPIO, UART, SPI, I2C, AJASTIN jne., joita käytetään erilaisiin digitaalisiin tietoliikenteeseen ja ohjaukseen.
  • Sisäinen oskillaattori: Luo kellosignaaleja prosessorin ja muiden oheislaitteiden ohjaamiseksi.

digitaalisestiNastat tarjoavat maadoituspisteen kaikille digitaalipiirin osille, mukaan lukien:

  • Kaikki VDD:n kautta syötetty virta palaa lopulta VSS:ään muodostaen täydellisen virtasilmukan.
  • Piirilevysuunnittelussa kaikki VSS-nastat on yleensä kytketty yhteiseen maatasoon sähköisen melun ja häiriöiden vähentämiseksi.

1.1.2 Analoginen teho ja maa (VDDA ja VSSA)

Analoginen virtalähde Nastat antavat jännitteen kaikille analogisen piirin osille. sisältää pääasiassa:

  • ADC (analogi-digitaalimuunnin): Muunna analogiset signaalit digitaalisiksi signaaleiksi.
  • DAC (digitaalista analogiamuunnin): Muunna digitaaliset signaalit analogisiksi signaaleiksi.
  • Sisäinen referenssijännitelähde: Tarjoa vakaa referenssijännite ADC:lle ja DAC:lle muunnostarkkuuden varmistamiseksi.

AnalogisestiNastat tarjoavat maadoituspisteet kaikille analogisen piirin osille, mukaan lukien:

  • Kuten VSS, kaikki VDDA:n kautta syötetty virta palaa lopulta VSSA:han muodostamaan täydellisen virtasilmukan.

1.1.3 Kahden virtalähteen väliset erot ja liitännät

Digitaaliset piirit tuottavat yleensä suurtaajuista kytkentäkohinaa. Jos nämä kohinat häiritsevät suoraan analogisia piirejä, ne aiheuttavat epävakautta ja heikentävät analogisten signaalien tarkkuutta. Siksi erillisten analogisten virtalähteiden ja maadoitusten käyttö voi vähentää näitä häiriöitä.

Analogiset piirit vaativat erittäin puhtaan, vakaan virtalähteen varmistaakseen tarkan signaalinkäsittelyn, joten VDDA on usein irrotettu ylimääräisillä suodatuspiireillä.

Digitaalisten piirien aiheuttaman suurtaajuisen kohinan häiriön vähentämiseksi analogisissa piireissä VSSA ja VSS käsitellään yleensä erikseen piirilevysuunnittelussa, ja ne on kytketty vain yhteen pisteeseen, yleensä lähellä virransyöttöä.

1.2 Johdatus suodatukseen

Esittele 3,3 V:n virtalähde mikro-ohjaimen käyttöön.

(1) 120R magneettihelmiä

  • vaikutus: Magneettiset helmet ovat suurtaajuinen impedanssikomponentti, joka on kytketty sarjaan voimalinjaan.Estää korkeataajuisen melun leviämisen voimalinjoja pitkin.
  • periaate: Magneettisilla helmillä on alhainen impedanssi DC- ja matalataajuisten AC-signaalien alla, mutta niillä on korkea impedanssi korkeilla taajuuksilla, mikä suodattaa pois korkeataajuisen kohinan.
  • valita: 120 Ω ferriittihelmiä käytetään tyypillisesti kohinan vaimentamiseen keskitaajuusalueella. Se tarjoaa riittävän impedanssin korkealla taajuusalueella vaimentamaan kohinan.

(2) 10 µF kondensaattori

  • vaikutus: 10 µF kondensaattori matalataajuiseen suodatukseen,Tasainen tasajännite, mikä eliminoi matalataajuiset virtalähteen vaihtelut.
  • periaate: Suuremmilla kapasitanssiarvoilla on pienempi impedanssi matalilla taajuuksilla, mikä voi tehokkaasti tasoittaa tasajännitettä ja suodattaa matalataajuista kohinaa.
  • Sijainti: 10 µF:n kondensaattorit sijoitetaan tyypillisesti virransyöttöön tasaamaan jännitettä sähköverkossa.

(3) 0,1 µF kondensaattori

  • vaikutus: 0,1 µF kondensaattori suurtaajuussuodatukseen,Vaimentaa korkeataajuista kohinaa ja piikkihäiriöitä.
  • periaate: Pienemmillä kapasitanssiarvoilla on pienempi impedanssi korkeilla taajuuksilla, ja ne voivat tehokkaasti suodattaa korkeataajuisen kohinan ja piikkihäiriöt.
  • Sijainti: 0,1 µF:n kondensaattorit sijoitetaan tyypillisesti lähelle kutakin VDD/VDDA-nastaa mahdollisimman lähelle IC:tä tehokkaimman korkeataajuisen kohinan suodatuksen aikaansaamiseksi.

(4) 10nF kondensaattori

  • Täydentävät suodatuskaistat: Yhdessä muiden suodatinkondensaattorien (10 µF, 0,1 µF) kanssa käytettynä se voi kattaa laajemman taajuusalueen ja tarjota täyden kaistan teholähteen kohinanvaimennusta analogiselle virtalähteelle (kuten edellä mainittiin, analogisen virtalähteen on oltava erittäin puhdasta) .

1.3 Piirikaavio

1.4 Chen ymmärtää (ehkä vain minä ymmärrän sen)

Digitaaliset signaalit (digitaalinen teholähde), kuten differentiaaliset signaalit signaalilinjoilla, 1 on 1, 0 on 0, ero on melko suuri, ei ole helppo sekoittaa, mutta muuttuu nopeasti, häiriöitä muihin signaaleihin (tässä viitataan analogiseen signaaliin), joten digitaaliset signaalit ja analogiset signaalit erotetaan toisistaan.

Toiseksi analogiset signaalit eivät ole kuin digitaaliset signaalit, joissa 1 on 1 ja 0 on 0. Sen arvo muunnetaan vastaavaksi binääriluvuksi, joten sen on oltava tarkempi ja suodatuksen tiukempi.

2. Nollaa

2.1 Työprosessi

  1. Normaali työtila: Kun nollauspainiketta ei paineta, vetovastus pitää RST-nastan korkealla. Tällä hetkellä mikro-ohjain on normaalissa toimintakunnossa.
  2. Paina nollauspainiketta: Kun nollauspainiketta painetaan, RST-nasta vedetään suoraan maahan. Tämä käynnistää mikro-ohjaimen nollausprosessin.
  3. Vapauta nollauspainike: Kun nollauspainike vapautetaan, RST-nasta palaa korkealle tasolle vetovastuksen kautta. Irrotuskondensaattoreita tarvitaan suodattamaan kaikki ohimenevät melut palautusprosessin aikana (irrotetaan myös puristusprosessin aikana) ja varmistamaan, että RST-nasta palaa korkealle tasolle vakaasti, jotta mikro-ohjain voi käynnistyä kunnolla nollaustilasta.

2.2 Erityisolosuhteet

  • Ulkoiset häiriöt: Ympäristössä, jossa on voimakkaita sähkömagneettisia häiriöitä, nollausnasta voi häiriintyä, mikä voi johtaa väärään nollaukseen. Asianmukaiset suodatuspiirit (kuten suuremmat kondensaattorit tai pienemmät vetovastukset) voivat edelleen parantaa häiriönkestävyyttä.
  • Nollausaika: Erotuskondensaattorin arvo määrittää palautussignaalin aikavakion. Suurempi kapasitanssi johtaa pidemmän palautusajan, mutta tarjoaa paremman matalataajuisen kohinan suodatuksen. Se on valittava todellisen sovelluksen mukaan.

2.3 Minulla on tyhmä kysymys

Kysymys: Miksi virtalähde vedetään digitaaliseen virtalähteeseen VDD analogisen virtalähteen VDDA sijasta?

vastaus:

1. Virtalähteen vakaus

VDD:n vakaus: VDD on digitaalinen virtalähde, joka saa yleensä suoraan jännitteensäätimen jännitteen. Jännite on suhteellisen vakaa ja voi nopeasti saavuttaa vakaan arvon, kun se kytketään päälle. Nollauspiiri vaatii vakaan jännitelähteen palautussignaalin luotettavuuden varmistamiseksi.

VDDA riippuu VDD:stä: VDDA on analoginen virtalähde, vaikka se on myös erittäin vakaa. hitaampi kuin VDD.

2. Nollauspiirin vaikutus digitaalisiin piireihin

Nollauspiiri on suunnattu pääasiassa digitaalisille piireille: Nollaussignaalia käytetään pääasiassa STM32:n sisällä olevien digitaalisten piirien (mukaan lukien CPU ja oheislaitteet) nollaamiseen. Digitaalisten piirien käyttöjännite on VDD, joten on tarkoituksenmukaisempaa vetää nollausnasta VDD:hen.

3. Virtalähteen virran kuormitusnäkökohdat

VDD-virtakyky: VDD-virtalähteen nykyinen syöttökapasiteetti on yleensä suurempi kuin VDDA:n, koska se syöttää virtaa koko digitaaliselle osalle, mukaan lukien prosessori, muisti ja oheislaitteet. Vetovastuksen nykyisellä kuormalla on minimaalinen vaikutus VDD:hen.

VDDA:n kuormitusvaatimukset ovat korkeat: VDDA-virtalähde syöttää pääasiassa analogisia osia (kuten ADC, DAC jne. Näillä piireillä on korkeammat vaatimukset virtalähteen aaltoilulle ja kohinalle). Vetovastuksen kytkeminen VDDA:han voi aiheuttaa tarpeetonta kuormitusta ja kohinaa, mikä vaikuttaa analogisten piirien suorituskykyyn.

2.4 Piirikaavio

3. BOOT käynnistys

3.1 Johdanto

BOOT-nastoja (BOOT0 ja BOOT1) käytetään valitsemaan mikro-ohjaimen käynnistystila. Eri käynnistystilat voidaan valita erilaisilla nastatasoyhdistelmillä, kuten alla olevasta kuvasta näkyy:

3.2 Piiri

Ohjaa mikro-ohjaimen BOOT0- ja BOOT1-nastat ulos 2×3-urosnastan otsikon kautta.jumpperikorkki Valitse VDD_MCU (1) ylöspäin ja GND (0) alaspäin määrittääksesi mikro-ohjaimen käynnistystilan. Opettajan valitsema käynnistystapa on: käynnistys sisäänrakennetusta SRAM-muistista alla olevan kuvan mukaisesti.

4. Kristallipiiri

4.1 Miksi STM32 tarvitsee kaksi kideoskillaattoripiiriä?

STM32-mikro-ohjaimet käyttävät yleensä kahta kideoskillaattoripiiriä eri kellovaatimusten täyttämiseksi:

  • Pääkideoskillaattoripiiri (8MHz): Käytetään tarjoamaan pääjärjestelmän kello (HSE, High-Speed ​​External Clock). Tätä kellolähdettä käytetään yleensä mikro-ohjainten, nopeiden oheislaitteiden (kuten USB, CAN jne.) ja toimintojen, jotka vaativat erittäin tarkkoja ja nopeita kelloja, ydinprosessointiyksikköön.
  • Toissijainen kideoskillaattoripiiri (32,768 kHz): Käytetään toimittamaan vähän virtaa kuluttavaa kelloa (LSE, Low-Speed ​​​​External Clock). Tätä kellolähdettä käytetään yleensä reaaliaikakelloon (RTC, Real-Time Clock) ja ajastustoimintoihin virransäästötiloissa. 32,768 kHz:n taajuus on juuri oikea ajoitukseen, sillä sitä voidaan kätevästi käyttää 1 sekunnin kellojaksojen generoimiseen (32 768 on 2 nostettuna 15. potenssiin, sopii binäärilaskemiseen).

4.2 Miksi näiden kahden kideoskillaattoripiirin taajuudet ovat sellaisia?

Eritaajuisten ja erityyppisten kideoskillaattorien valinta perustuu pääasiassa seuraaviin syihin:

  • 8MHz:n kideoskillaattori (pääoskillaattori):

    • Taajuuden valinta: 8MHz on yleisesti käytetty korkea taajuus, joka voi täyttää STM32-ytimen ja nopeiden oheislaitteiden kellovaatimukset.
    • Kuormakapasitanssi (22pF): Varmista kideoskillaattorin vakaus ja luotettavuus tällä taajuudella. 22pF on yleinen kuormakapasitanssiarvo, jota käytetään vastaamaan kideoskillaattorin kuormitusvaatimuksia.
  • 32,768 kHz:n kideoskillaattori (toissijainen kideoskillaattori):

    • Taajuuden valinta: 32,768 kHz on standardi RTC-kideoskillaattorin taajuus, ja se sopii pienitehoisiin kellosovelluksiin.
    • Kuormakapasitanssi (10pF): Tämä pieniarvoinen kondensaattori soveltuu matalataajuisiin kideoskillaattoriin vakaan värähtelyn varmistamiseksi matalilla taajuuksilla.

4.3 Kuinka kideoskillaattoripiiri toimii? (On helpompi ymmärtää 4.4 ja 4.5 ongelmat)

(1) Kristallioskillaattori alkaa värähdellä

  • Kun virta kytketään päälle, kideoskillaattori alkaa tuottaa heikkoa värähtelysignaalia.
  • Tämä signaali tulee STM32:n sisäiseen oskillaattoripiiriin OSC_IN-nastan kautta.

(2) Kuormakapasitanssin säätö

  • C1- ja C2-kondensaattorit toimivat kiteen kanssa varmistaakseen, että kide värähtelee nimellistaajuudellaan.
  • Kuormakapasitanssin arvo valitaan yleensä välillä 10pF - 22pF, mutta todellinen arvo tulee säätää kideoskillaattorin spesifikaatioiden ja piirilevyn loiskapasitanssin mukaan.

(3) Signaalin vahvistus

  • STM32:n sisällä oleva oskillaattoripiiri vahvistaa sisääntulon heikkoa värähtelysignaalia ja muodostaa vakaan kellosignaalin.
  • Tämä vakaa kellosignaali lähetetään OSC_OUT-nastan kautta ja sitä käytetään STM32:n järjestelmäkellona.

(4) Signaalipalaute

  • Oskillaattoripiiri syöttää vahvistetun värähtelysignaalin takaisin kideoskillaattoripiiriin OSC_OUT-nastan kautta jatkaakseen kideoskillaattorin värähtelyn ylläpitämistä.
  • Tämä takaisinkytkentäsilmukka varmistaa, että kideoskillaattori voi jatkaa vakaan värähtelysignaalin tuottamista.

(Nyt ymmärrät, että kideoskillaattoripiirissä on silmukka.)

4.4 Miksi pääkideoskillaattoripiirillä OSC on suuri vastus? Onko sillä mitään vaikutusta?

Pääkideoskillaattoripiiri sisältää suuren 1 MΩ:n vastuksen (yleensä kytketty OSC_IN:n ja OSC_OUTin väliin. Sen päätoiminnot ovat seuraavat:

  • Voit estää käynnistysvaikeuksia: Suuri vastus tarjoaa alkupalautteen, joka auttaa kideoskillaattoria käynnistymään nopeasti, kun virta on kytkettynä, välttäen epävakaiden alkuolosuhteiden aiheuttamia käynnistysvaikeuksia.
  • Vakaa värähtely: Suuri vastus voi stabiloida oskillaattorin käynnistysprosessia ja varmistaa, että oskillaattori pääsee nopeasti vakaaseen tilaan käynnistyksen jälkeen.

(Yksinkertaisesti sanottuna se tarkoittaa kohdassa 4.3 mainitun virtasilmukan nopeaa muodostamista.)

4.5 Miksi toisiokideoskillaattoripiirillä OSC32 ei ole suurta vastusta?

Syitä, miksi toissijainen kideoskillaattoripiiri ei yleensä vaadi suurta vastusta, ovat:

  • Taajuus ja teho ovat alhaiset: 32,768 kHz:n kideoskillaattori toimii erittäin alhaisella taajuudella ja teholla, ja se on suhteellisen helppo käynnistää ilman, että käynnistyksessä tarvitaan lisävastuksia.
  • Pienen virrankulutuksen suunnittelu: Toissijaista kideoskillaattoripiiriä käytetään yleensä RTC- ja pienitehoisissa sovelluksissa. Suuren vastuksen lisääminen lisää virrankulutusta eikä täytä pienitehoisen suunnittelun vaatimuksia.

4.6 Piirikaavio

5. RTC reaaliaikainen kello

5.1 VBAT-nastan toiminta

VBAT-nastaa käytetään RTC:n ja vararekisterien virransyöttöön, jotta RTC voi jatkaa toimintaansa, kun päävirtalähde irrotetaan.

5.2 Suunnitteluperiaatteet

  1. Päävirtalähde (VDD_MCU): Kun päävirtalähde (VDD_MCU) saa virtaa, BAT54-C-diodi on biasoitu eteenpäin, VBAT-nasta saa VDD_MCU:n jännitteen diodin kautta ja RTC- ja vararekisteri toimivat normaalisti.
  2. Varavirtalähde: Kun päävirtalähde on katkaistu, BAT54-C-diodi estää päinvastaisen virran kulkua. RTC ja vararekisteri voivat edelleen saada virtaa varavirtalähteestä (kuten nappiparistosta) ZH1.25-2A-liittimen kautta. varmistaa, että RTC-aika ja varmuuskopiotiedot eivät katoa.

5.3 Kaaviokaavio

5.3.1 BAT54-C-diodin toiminta

  1. Taattu virtalähde: Kun päävirtalähde on olemassa, diodi on esijännitetty sen varmistamiseksi, että VBAT-nasta saa vakaan jännitteen, kun päävirtalähde on irrotettu, diodi on käänteinen ja varavirtalähde ottaa heti virransyötön haltuunsa. että RTC jatkaa toimintaansa.
  2. Estä käänteinen virta: Varmista, että kun päävirta on katkaistu, varavirta ei pala takaisin päävirtapiiriin tarpeettoman virrankulutuksen ja mahdollisen piirivaurion välttämiseksi. Samalla varmistetaan myös, että kun päävirtalähdettä syötetään normaalisti, sirun virta ei palaa vara-akkuun aiheuttaen vahinkoa.

5.3.2 ZH1.25-2A liittimen toiminta

  1. Varavirtaliitäntä: Tarjoaa käyttöliittymän varavirtalähteeseen kytkemistä varten, mikä helpottaa paristojen tai muun varavirtalähteen kytkemistä ja vaihtamista.
  2. Varmista virtalähteen reitti: ZH1.25-2A-liittimen kautta varavirtalähde voi luotettavasti antaa jännitteen VBAT-nastalle varmistaakseen, että RTC-virtalähde ei keskeydy.

6. Flash-siru

6.1 Sirun toiminnot

STM32-mikro-ohjaimissa ulkoista Flash-muistia (kuten tässä projektissa käytettyä W25Q64JVSSIQ:ta) käytetään yleensä laiteohjelmiston, tietolokien tai muiden haihtumatonta tallennusta vaativien sovellusten tallentamiseen.

6.1 Pin-esittely ja piirisuunnittelukonsepti

1. CS# (Chip Select):
  • design: CS#-nastaa ohjataan PA15-nastan kautta. Matala taso aktivoi sirun, korkea taso sammuttaa sirun.
  • periaate: Kun CS# on alhainen, Flash-siru valitaan ja STM32 voi kommunikoida sen kanssa, kun CS# on korkea, Flash-siru ei ole aktiivinen. Koska useat SPI-laitteet voivat jakaa saman SPI-väylän, muut laitteet voivat kommunikoida.
2. SO (sarjalähtö):
  • design: SO-nasta on kytketty STM32:een PB4-nastan kautta (MISO, Master In Slave Out).
  • periaate: Käytetään tietojen lähettämiseen Flash-sirulta STM32:een SPI-tiedonsiirrossa.
3. WP# (kirjoitussuoja):
  • design: WP#-nasta on kytketty suoraan 3,3 V:n virtalähteeseen.
  • periaate: Kytke WP# korkeaan tasoon (3,3 V) poistaaksesi kirjoitussuojaustoiminnon ja ottaaksesi kirjoitustoiminnot käyttöön.
4. GND (maa):
  • design: GND-nasta on kytketty maahan.
  • periaate: Tarjoaa virtapiirin sirulle.
5. SI (Serial Input):
  • design: SI-nasta on kytketty STM32:een PB5-nastan kautta (MOSI, Master Out Slave In).
  • periaate: Käytetään tietojen lähettämiseen STM32:sta Flash-sirulle SPI-viestinnässä.
6. CLK (kello):
  • design: CLK-nasta on kytketty STM32:een PB3-nastan kautta.
  • periaate: Tarjoaa kellosignaalin SPI-viestintään, jonka STM32 tuottaa ja ohjaa.
7. HOLD3#:
  • design: HOLD3#-nasta on kytketty 3,3 V:n virtalähteeseen.
  • periaate: Kytke HOLD3# korkeaan tasoon (3,3 V), jotta taukotoiminto poistetaan käytöstä ja Flash-siru toimii normaalisti.
8. VCC (virtalähde):
  • design: VCC-nasta on kytketty 3,3 V:n virtalähteeseen.
  • periaate: Tarjoa työjännite Flash-sirulle.
9. Tehosuodattimen piiri
  • design: 3,3 V:n virtalähde on kytketty maahan 0,1 uF:n kondensaattorin kautta.
  • periaate: Erotuskondensaattoreita käytetään suodattamaan korkeataajuista kohinaa voimalinjasta, vakauttamaan virtalähdettä ja varmistamaan Flash-sirun normaali toiminta.

6.2 Piirin toiminta

  1. Virta päälle: 3,3 V:n virtalähde antaa virtaa Flash-sirulle, ja kondensaattori suodattaa virtalähteen kohinan.
  2. SPI-viestintä: STM32 kommunikoi Flash-sirun kanssa SPI-liitännän kautta (PA15, PB3, PB4, PB5 nastat):
    • PA15 ohjaa CS#:ta ja valitsee sirun.
    • PB3 tarjoaa kellosignaalin (CLK).
    • PB5 lähettää tiedot Flash-sirulle (MOSI).
    • PB4 vastaanottaa Flash-sirun (MISO) tiedot.
  3. Kirjoitussuojaus: WP# (joka on IO2 alla olevassa kuvassa) on kytketty korkeaan tasoon varmistaakseen, että kirjoitustoimintoa ei ole poistettu käytöstä ja helpottaa tietojen kirjoittamista.
  4. Taukotoiminto: HOLD3# (se on IO3 alla olevassa kuvassa) on kytketty korkeaan tasoon taukotoiminnon poistamiseksi ja normaalin toiminnan varmistamiseksi.

6.3 Muut suunnittelumenetelmät

  1. Laitteiston kirjoitussuojaus: Jos tarvitset laitteiston kirjoitussuojaustoimintoa, voit yhdistää WP#-nastan STM32:n GPIO-nastaan ​​ja ohjata kirjoitussuojauksen tilaa ohjelmiston avulla.
  2. Käytä suurempaa kondensaattoria: Virtalähteen suodatinpiirissä voidaan käyttää suuremman kapasiteetin kondensaattoria (esim. 1uF tai 10uF) teholähteen jännitteen tasoittamiseksi edelleen todellisen tilanteen mukaan.
  3. Lisää puskuripiiri: Meluisassa ympäristössä SPI-signaalilinjaan voidaan lisätä puskuripiiri tiedonsiirron luotettavuuden parantamiseksi. (Tietyt menetelmät: käytä puskurisiruja, sarjavastuksia, kondensaattorisuodatusta ja käytä suojattuja kaapeleita.)

7. SWD-virheenkorjausliittymä

SWD (Serial Wire Debug) on ​​virheenkorjaus- ja ohjelmointiliittymä, jota käytetään laajalti ARM Cortex-M -sarjan mikro-ohjaimissa. Se mahdollistaa tehokkaan virheenkorjauksen ja ohjelmoinnin kahden datalinjan (SWDIO ja SWCLK) kautta, ja sen toiminnot ovat seuraavat:

  • Virheenkorjaus ja ohjelmointi: SWD-liitäntä on standardiliitäntä mikro-ohjainten virheenkorjaukseen ja ohjelmointiin. Sen kautta voit suorittaa toimintoja, kuten laiteohjelmiston lataamisen, virheenkorjauksen, keskeytyskohdan asettamisen, muuttujien katselun jne.
  • Yksinkertaistettu yhteys: Standardoitujen nastojen ja liitäntöjen avulla debuggeri voidaan yhdistää helposti, mikä yksinkertaistaa virheenkorjaus- ja ohjelmointiprosessia.
  • Luotettavaa viestintää: Varmista ylös- ja alasvetovastusten avulla, että signaalilinja on vakaalla tasolla lepotilassa häiriöhäiriöiden välttämiseksi.

Tämä tämän projektin piirin osa koostuu kolmesta osasta:

  1. HDR-M-2,54 1x5
  2. XYXH2.54-5A11
  3. Jianniu 2,54mm 2x10 suora

Nämä kolme osaa tarjoavat kaikki SWD-rajapinnat, mutta muoto ja yhteystavat ovat hieman erilaisia.

7.1 HDR-M-2.54 1x5

7.1.1 Piirikaavio

7.1.2 Toiminnot ja periaatteet

  • VCC ja GND: Anna virta- ja maadoitusjohdot varmistaaksesi, että virheenkorjaimella ja STM32:lla on yhteinen tehoviittaus.
  • NRST: Käytetään STM32:n ulkoiseen nollaukseen.Debuggeri voi ohjata NRST-nastaaNollaa STM32
  • SWDIO (Serial Wire Debug Input/Output): Kaksisuuntainen datalinja virheenkorjaus- ja ohjelmointitietojen lähettämiseen.
  • SWCLK (Serial Wire Clock): Debuggerin luoma kellosignaali tarjoaa ajoitusohjeen SWD-viestinnälle.

7.2 XYXH2.54-5A11

7.2.1 Piirikaavio

7.2.2 Toiminnot ja periaatteet

Tällä osalla on sama toiminto kuin HDR-M-2.54 1x5, mutta nastat ja liitäntämuodot ovat erilaisia.

7.3 Veto- ja alasvetovastukset

Mitä tulee siihen, miksi entisessä on veto- ja alasvetovastukset, mutta jälkimmäisessä ei, selitys on seuraava:

(1) Huomioitavaa ylös- ja alasvetovastusten valinnassa

  1. Ympäristön melu: Jos järjestelmä toimii meluisassa ympäristössä, on suositeltavaa lisätä ylös- ja alasvetovastuksia.
  2. Pin vakaus: On varmistettava, että nasta pysyy vakaana, kun debuggeri ei ole kytkettynä tai käytössä.
  3. Debuggerin ominaisuudet: Joissakin virheenkorjauslaitteissa on sisäänrakennetut sisäänveto- ja alasvetovastukset, ja ulkoiset vastukset voidaan jättää pois.

(2) Miksi HDR-M-2.54 1x5:ssä on ylös- ja alasvetovastukset?

  • sovellettavuus: HDR-M-2.54 1x5 -mallissa on ylös- ja alasvetovastukset, jotka varmistavat, että nasta on vakaa, kun debuggeri ei ole kytkettynä tai käytössä.
  • Paranna luotettavuutta: Veto- ja alasvetovastuksia käytetään välttämään melun aiheuttamia toimintahäiriöitä, kun debuggeria ei ole kytketty tai debuggeria ei käytetä, mikä parantaa järjestelmän luotettavuutta.

      tietty yhteys

  • SWDIO (veto): 10 kΩ:n vastus vetää jopa 3,3 V:iin varmistaakseen, että SWDIO-nasta pysyy korkealla, kun debuggeri ei ole kytkettynä, ja välttää kellumisen.
  • SWCLK (vedä alas): 10 kΩ:n vastus vedetään maahan sen varmistamiseksi, että SWCLK-nasta pysyy matalana, kun debuggeria ei ole kytketty kellumisen välttämiseksi.

(3) Miksi XYXH2.54-5A11:ssä ei ole ylös- ja alasvetovastuksia?

  • Suunnittelun yksinkertaistaminen: XYXH2.54-5A11 jättää pois vetämis- ja alasvetovastukset suunnittelun yksinkertaistamiseksi, mikä mahdollistaa enemmän joustavuutta erilaisten debuggerien käytössä.
  • Riippuu ulkoisesta piiristä: Joissakin malleissa se voi ollaLuotamme virheenkorjaus- tai kehityslevyn ylös- ja alasvetovastuksiin,Sen sijaan, että määrittäisit sen suoraan liitäntäpiirissä.
  • Eri ympäristöt: Joissakin sovellusympäristöissä voidaan ajatella, että ulkoiset häiriöt ovat pieniä ja että veto- ja alasvetosvastusten kysyntä ei ole suuri, joten ne jätetään pois.

7.4 Jane Niu 2.54mm 2x10 suora

Minun on mainittava tässä, että virheenkorjausta varten on kaksi virheenkorjaustilaa. JTAG-tilassa ja SWD-tilassa ensimmäisellä on monia rajapintoja ja se sopii paremmin monimutkaiseen laitteistosuunnitteluun, kun taas jälkimmäisessä on vähemmän signaalilinjoja ja se sopii rajoitettuihin sulautettuihin järjestelmiin.varattu täältä JTAG-liitäntä (kätevä myöhempiä parannuksia varten) käyttää vain SWD-tilaa.

7.4.1 Piirikaavio

7.4.2 Toiminnot ja periaatteet

Sama kuin edellä.

7.4.3 Laajennus

Tämä osa tarjoaa standardin JTAG-liitäntälomakkeen, mutta käyttää vain SWD:n vaatimia nastaja.Loput käyttämättömät nastat on merkitty yhdistämättömiksi tai yliviivattuina.

(1) Yliviivatut nastat
  1. TRST (nasta 3):

    • Tehtävä: JTAG-nollaussignaali, käytetään JTAG-virheenkorjauslogiikan nollaukseen.
    • Miksi haarukka: SWD-tilassa TRST-nastaa ei käytetä, koska SWD-tila ei vaadi erillistä JTAG-nollaussignaalia.
  2. TDI (nasta 5):

    • Tehtävä: JTAG-testitietojen syöttö, käytetään testitietojen syöttämiseen.
    • Miksi haarukka: SWD-tilassa TDI-nastaa ei käytetä, koska SWD-tila ei vaadi erillistä tiedonsyöttönastaa.
  3. TDO/SWO (nasta 13):

    • Tehtävä:
      • TDO (Test Data Out): JTAG-testitulostus, käytetään testitietojen tulostamiseen.
      • SWO (Serial Wire Output): SWD-tilassa sitä käytetään sarjalähtönä virheenkorjaustietojen ulostuloon.
    • Miksi haarukka: Joissakin yksinkertaistetuissa malleissa SWO-nasta on käyttämätön tai sitä ei ole kytketty.
  4. NC (nastat 9, 11, 15, 17):

    • Tehtävä: Ei yhdistetty, mitään tiettyä toimintoa ei ole määritetty.
    • Miksi haarukka: Näitä tappeja ei käytetä tietyissä malleissa.
(2) Selitys multipleksoiduista nastoista

Multipleksoiduilla nastoilla (TMS/SWDIO, TCK/SWCLK) on kaksi toimintoa ja ne tukevat sekä JTAG- että SWD-virheenkorjausprotokollia. Erityiset toiminnot ovat seuraavat:

  1. TMS/SWDIO (nasta 7):

    • TMS (testitilan valinta): JTAG-tilassa käytetään testitilan valitsemiseen.
    • SWDIO (Serial Wire Debug Input/Output): : SWD-tilassa se toimii kaksisuuntaisena datalinjana virheenkorjaus- ja ohjelmointitietojen lähettämiseen.
  2. TCK/SWCLK (nasta 9):

    • TCK (testikello): JTAG-tilassa käytetään testikellosignaalin tuottamiseen.
    • SWCLK (Serial Wire Clock): SWD-tilassa käytetään sarjakellosignaalin tuottamiseen.
(3) Uudelleenkäyttötoimintojen käyttö

Varsinaisessa käytössä debuggeri ja mikro-ohjain valitsevat sopivan virheenkorjausprotokollan ja pin-toiminnon kokoonpanon perusteella. Esimerkiksi:

  • Kun SWD-tila on valittuna, TMS/SWDIO-nasta konfiguroidaan SWDIO-nastaksi ja TCK/SWCLK-nastaksi SWCLK.
  • Kun JTAG-tila on valittuna, TMS/SWDIO-nasta konfiguroidaan TMS:ksi, TCK/SWCLK-nasta TCK:ksi ja TDI- ja TDO-nastoja voidaan käyttää.
(4) Muut laitteistosuunnitteluratkaisut

Yllä olevien suunnitteluvaihtoehtojen lisäksi on muitakin malleja, joita voidaan harkita:

  1. Vain SWD-liitäntä: Jos tarvitset vain SWD-virheenkorjaustoiminnon, voit säilyttää vain SWDIO- ja SWCLK-nastat ja tallentaa tarpeettomat JTAG-nastat.
  2. Monitoiminen käyttöliittymä: Suunnittele monitoiminen virheenkorjausliittymä, joka tukee JTAGia ja SWD:tä samanaikaisesti ja jota voidaan vaihtaa tarpeen mukaan.
  3. Sisäänrakennettu debuggeri: Suunnittele sisäänrakennettu debuggeri, kuten ST-LINK, integroitavaksi suoraan kehityskorttiin tarjotaksesi helpomman virheenkorjaus- ja ohjelmointiliittymän.
(5) Muut virheenkorjaustilat

SWD- ja JTAG-tilojen lisäksi on olemassa useita muita virheenkorjaus- ja ohjelmointitiloja:ISP, UART, I2C, SPIodota.

8. STM32

Päätapahtuma on täällä, olen hieman hermostunut.