Mikä on sulautettu C-ohjelma ja sen rakenne aloittelijoille

Kokeile Instrumenttia Ongelmien Poistamiseksi





Aikaisemmin monia sulautettuja sovelluksia kehitettiin käyttämällä kokoonpanotason ohjelmointia. Ne eivät kuitenkaan tarjoaneet siirrettävyyttä. Tämä haitta voitettiin useiden korkean tason kielten, kuten C, Pascal ja COBOL, käyttöönotolla. C-kieli sai kuitenkin laajan hyväksynnän sulautetuille järjestelmille, ja se tekee niin edelleen. Kirjoitettu C-koodi on luotettavampi, skaalautuva ja kannettava ja itse asiassa paljon helpompi ymmärtää. Sulautettu C-ohjelmointi on prosessorin sielu, joka toimii jokaisessa upotettu järjestelmä kohtaamme jokapäiväisessä elämässämme, kuten matkapuhelimet, pesukoneet ja digitaalikamerat. Jokainen prosessori liittyy sulautettuihin ohjelmistoihin. Ensimmäinen ja tärkein asia on sulautettu ohjelmisto, joka päättää toimia sulautetussa järjestelmässä. Sulautettua C-kieltä käytetään useimmiten ohjelmoi mikrokontrolleri .

Mikä on C-kieli?

C-kielen on kehittänyt Dennis Ritchie vuonna 1969. Se on kokoelma yhdestä tai useammasta toiminnosta, ja jokainen toiminto on joukko lauseita, jotka suorittavat tietyn tehtävän.
C-kieli on keskitason kieli, koska se tukee korkean tason ja matalan tason sovelluksia. Ennen kuin menet syvennetyn C-ohjelmoinnin yksityiskohtiin, meidän tulisi tietää RAM-muistin organisaatiosta.




C-kielen pääpiirteet ovat seuraavat.

  • C-kieli on ohjelmisto, joka on suunniteltu erilaisilla avainsanoilla, tietotyypeillä, muuttujilla, vakioilla jne.
  • Sulautettu C on yleinen termi, joka annetaan C-kielellä kirjoitetulle ohjelmointikielelle, joka liittyy tiettyyn laitteistoarkkitehtuuriin.
  • Upotettu C on C-kielen laajennus, jossa on joitain ylätunnistetiedostoja. Nämä otsikkotiedostot voivat muuttua ohjaimesta ohjaimeen.
  • mikro-ohjain 8051 #include käytetään.

Mikä on sulautettu C-ohjelmointi

Kaikissa sulautettuihin järjestelmiin perustuvissa projekteissa sulautetulla C-ohjelmoinnilla on keskeinen rooli saada mikro-ohjain toimimaan ja suorittamaan suositellut toiminnot. Tällä hetkellä käytämme yleensä useita elektronisia laitteita, kuten matkapuhelimia, pesukoneita, turvajärjestelmiä, jääkaappeja, digitaalikameroita jne. Näiden sulautettujen laitteiden ohjaus voidaan tehdä sulautetun C-ohjelman avulla. Esimerkiksi digitaalikamerassa, jos painamme kameran painiketta kuvan kaappaamiseksi, mikro-ohjain suorittaa vaaditun toiminnon kuvan napsauttamiseksi ja tallentamiseksi.



Sulautettu C-ohjelmointi

Sulautettu C-ohjelmointi

Sulautettu C-ohjelmointi rakentaa joukon toimintoja, joissa jokainen funktio on joukko lauseita, joita käytetään tiettyjen tehtävien suorittamiseen. Sekä upotetut C- että C-kielet ovat samat ja ne toteutetaan joidenkin peruselementtien, kuten muuttujan, merkistöjen, avainsanojen, tietotyyppien, muuttujien ilmoitusten, lausekkeiden, lauseiden, kautta. Kaikilla näillä elementeillä on keskeinen rooli kirjoitettaessa upotettua C-ohjelmaa.

Sulautettujen järjestelmien suunnittelijoiden on tiedettävä laitteistoarkkitehtuurista kirjoittaakseen ohjelmia. Näillä ohjelmilla on merkittävä rooli ulkoisten laitteiden seurannassa ja ohjauksessa. Ne käyttävät myös suoraan mikro-ohjaimen sisäistä arkkitehtuuria, kuten keskeytysten käsittelyä, ajastimia, sarjaliikennettä ja muita käytettävissä olevia ominaisuuksia.


Sulautetun järjestelmän ohjelmointi

Kuten aiemmin keskustelimme, sulautetun järjestelmän suunnittelu voidaan tehdä laitteistolla ja ohjelmistolla. Esimerkiksi yksinkertaisessa sulautetussa järjestelmässä prosessori on päämoduuli, joka toimii kuin järjestelmän sydän. Tässä prosessori on vain mikroprosessori, DSP, mikro-ohjain, CPLD ja FPGA. Kaikki nämä prosessorit ovat ohjelmoitavia siten, että se määrittelee laitteen toiminnan.

Sulautetun järjestelmäohjelman avulla laitteisto voi tarkistaa tulot ja ohjauslähdöt vastaavasti. Tässä menettelyssä sulautetun ohjelman täytyy joutua ohjaamaan prosessorin sisäistä arkkitehtuuria suoraan, kuten ajastimet, keskeytyskäsittely, I / O-portit, sarjaliikenneliitäntä jne.

Joten sulautetun järjestelmän ohjelmointi on prosessorille erittäin tärkeää. Upotettuihin järjestelmiin, kuten C, C ++, kokoonpanokieli, JAVA, JAVA, komentosarja, Visual Basic jne., On saatavana erilaisia ​​ohjelmointikieliä. Joten tällä ohjelmointikielellä on keskeinen rooli sulautettua järjestelmää tehtäessä, mutta kielen valinta on erittäin tärkeää.

Vaiheet upotetun C-ohjelman luomiseen

Upotetun c-ohjelman suunnittelussa on erilaisia ​​vaiheita, kuten seuraava.

  • Kommentit
  • Suorittimen direktiivit
  • Portin määritys
  • Globaalit muuttujat
  • Ydin- / päätoiminto
  • Muuttujailmoitus
  • Ohjelman logiikka

Kommentit

Ohjelmointikielillä kommentit ovat erittäin tärkeitä kuvaamaan ohjelman toimintaa. Kommenttien koodi ei ole suoritettavissa, mutta sitä käytetään ohjelma-asiakirjojen toimittamiseen. Ohjelman toiminnan ymmärtämiseksi tämä tekee yksinkertaisen menetelmän ohjelman toiminnan ymmärtämiseksi. Upotetussa C: ssä kommentteja on saatavana kahdentyyppisinä, nimittäin yhden rivin ja päälinjan kommentteina.

Upotettuun C-ohjelmointikieleen voimme sijoittaa kommentteja koodissamme, mikä auttaa lukijaa ymmärtämään koodin helposti.

C = a + b / * lisää kaksi muuttujaa, joiden arvo on tallennettu toiseen muuttujaan C * /

Yhden rivin kommentti

Yleensä ohjelmointikielille yksiriviset kommentit ovat erittäin hyödyllisiä selventämään murto-osaa ohjelmasta. Nämä kommentit alkavat kaksoisviivalla (//) ja ne voivat sijaita missä tahansa ohjelmointikielessä. Tätä käyttämällä koko rivi voidaan ohittaa ohjelmassa.

Monirivinen kommentti

Moniriviset kommentit alkavat yhdellä kauttaviivalla (/) ja tähdellä (/ *) ohjelmointikielillä, mikä selittää koodilohkon. Tämäntyyppiset kommentit voidaan järjestää missä tahansa ohjelmointikielessä, ja niitä voidaan käyttää pääasiassa ohittamaan koko koodilohko ohjelman sisällä.

Suorittimen direktiivit

Ohjelmakoodiin sisältyviä rivejä kutsutaan esikäsittelydirektiiveiksi, joita voidaan seurata hash-symbolilla (#). Nämä rivit ovat esikäsittelydirektiivejä, mutta eivät ohjelmoituja lauseita.
Koodi voidaan tutkia esiprosessorin kautta ennen kuin todellinen koodin kokoaminen alkaa ja ratkaisee nämä direktiivit ennen koodin luomista säännöllisten käskyjen avulla. On olemassa useita erityisiä esikäsittelydirektiivejä, vaikka kaksi direktiiviä ovat erittäin hyödyllisiä ohjelmointikielessä

kuten seuraava.

#sisältää
#sisältää
Taajuuden LED = P2 ^ 3
Pää ()
{
LED = 0x0ff
Viive()
LED = 0x00
}
#määritellä
#sisältää
#define LED P0
Pää ()
{
LED = 0x0ff
Viive()
LED = 0x00
}

Yllä olevassa ohjelmassa #include-direktiiviä käytetään yleensä käsittelemään vakiokirjastoja, kuten tutkimus ja. h: tä käytetään I / O-toimintojen sallimiseen käyttämällä C-kirjastoa. #Define -direktiiviä käytetään yleensä kuvaamaan muuttujasarjaa ja varaamaan arvot suorittamalla prosessi tietyssä käskyssä, kuten makroissa.

Portin määritys

Mikrokontrolleri sisältää useita portteja, joissa jokaisella portilla on eri nastat. Näitä nastoja voidaan käyttää liitäntälaitteiden ohjaamiseen. Näiden nastojen ilmoittaminen voidaan tehdä ohjelmassa avainsanojen avulla. Upotetun c-ohjelman avainsanat ovat vakiona sekä ennalta määriteltyjä, kuten bitti, sbit, SFR, joita käytetään ilmoittamaan ohjelman bitit ja yksittäiset nastat.

On tiettyjä sanoja, jotka on varattu tiettyjen tehtävien suorittamiseen. Nämä sanat tunnetaan avainsanoina. Ne ovat vakiona ja ennalta määritelty sulautetussa C: ssä. Avainsanat kirjoitetaan aina pienillä kirjaimilla. Nämä avainsanat on määriteltävä ennen pääohjelman kirjoittamista. Avainsanojen päätoiminnot sisältävät seuraavat.

#sisältää
Sbit a = P 2 ^ 2
SFR 0x00 = PoRT0
Bitti C
main ()
{
…………… ..
…………… ..
}

sbit

Tämä on eräänlainen tietotyyppi, jota käytetään yhden bitin käyttämiseen SFR-rekisterissä.

Tämän tietotyypin syntaksi on: sbit muuttujan nimi = SFR-bitti

Esimerkki: sbit a = P2 ^ 1

Jos osoitamme p2.1: n a-muuttujaksi, voimme käyttää a: ta p2.1: n sijasta missä tahansa ohjelmassa, mikä vähentää ohjelman monimutkaisuutta.

Bitti

Tämän tyyppistä tietotyyppiä käytetään pääasiassa hajamuistin, kuten 20 h - 2 fh, bittiosoitettavan muistin sallimiseen.

Tämän tietotyypin syntaksi on: bittimuuttujan nimi

Esimerkki: bitti c

Se on pieni sarja-asetus pienellä data-alueella, jota käytetään pääasiassa ohjelman avulla muistamaan jotain.

SFR

Tällaista tietotyyppiä käytetään SFR-rekisterin oheisporttien hankkimiseen ylimääräisellä nimellä. Joten kaikkien SFR-rekistereiden ilmoitus voidaan tehdä isoilla kirjaimilla.

Tämän tietotyypin syntaksi on: SFR-muuttujan nimi = SFR-rekisterin SFR-osoite

Esimerkki: SFR-portti 0 = 0 × 80

Jos varaamme 0 × 80, kuten portti0, voimme sen jälkeen käyttää 0 × 80 portin0 sijasta missä tahansa ohjelmointikielessä ohjelman vaikeuden vähentämiseksi.

SFR-rekisteri

SFR on lyhenne sanoista Special Function Register. 8051-mikrokontrollerissa se sisältää RAM-muistin, jossa on 256 tavua, joka on jaettu kahteen pääelementtiin: 128 tavun ensimmäistä elementtiä käytetään pääasiassa tietojen tallentamiseen, kun taas toista 128 tavun elementtiä käytetään pääasiassa SFR-rekistereihin. Kaikki oheislaitteet, kuten ajastimet, laskurit ja I / O-portit, tallennetaan SFR-rekisteriin, ja jokaisessa elementissä on yksi osoite.

Globaalit muuttujat

Kun muuttuja ilmoitetaan ennen kuin avainfunktio tunnetaan globaalina muuttujana. Tämä muuttuja voidaan sallia missä tahansa ohjelman toiminnossa. Globaalin muuttujan elinkaari riippuu pääasiassa ohjelmoinnista, kunnes se saavuttaa loppunsa.

#sisältää
Allekirjoittamaton int a, c = 10
Pää ()
{
……………
………… ..
}

Ydin- / päätoiminto

Päätoiminto on keskeinen osa suoritettaessa mitä tahansa ohjelmaa ja se alkaa yksinkertaisesti päätoiminnosta. Kukin ohjelma käyttää yksinkertaisesti yhtä päätoimintoa, koska jos ohjelma sisältää yhden pääfunktion yläpuolella, seuraavaksi kääntäjä on hämmentynyt aloitettaessa ohjelman suorittamista.

#sisältää
Pää ()
{
……………
………… ..
}

Muuttujailmoitus

Muuttujan kaltaista nimeä käytetään arvojen tallentamiseen, mutta tämä muuttuja on ensin ilmoitettava, ennen kuin sitä voidaan käyttää ohjelmassa. Muuttuja-ilmoituksessa ilmoitetaan nimi ja tietotyyppi. Tässä tietotyyppi ei ole muuta kuin tallennustietojen esitys. Upotetussa C-ohjelmoinnissa se käyttää neljää perustietotyyppiä, kuten kokonaisluku, kelluva, merkki, tietojen tallentamiseen muistiin. Tietotyypin koko sekä alue voidaan määrittää kääntäjän mukaan.

Tietotyyppi viittaa laajaan järjestelmään erityyppisten muuttujien, kuten kokonaisluku, merkki, kelluva jne., Ilmoittamiseksi. Upotettu C-ohjelmisto käyttää neljää tietotyyppiä, joita käytetään tietojen tallentamiseen muistiin.

”Char” -merkkiä käytetään minkä tahansa yksittäisen merkin tallentamiseen. Int-arvoa käytetään kokonaisluvun tallentamiseen ja ”float” -toimintoa minkä tahansa tarkan liukulukuarvon tallentamiseen. Eri tietotyyppien koko ja alue 32-bittisessä koneessa on annettu seuraavassa taulukossa. Koko ja alue voivat vaihdella koneissa, joissa on erilainen sanakoko.

  • Char / allekirjoitetun char-tietotyypin koko on 1 tavu ja sen alue on -128 - +128
  • Allekirjoittamattoman char-tietotyypin koko on 1 tavu ja sen alue on 0–255
  • Int / Signed int -tyyppikoko on 2 tavua ja sen alue on -32768 - 32767
  • Allekirjoittamaton int-tietotyypin koko on 2 tavua ja sen alue on 0-65535

Pää ()
{
Allekirjoittamaton int a, b, c
}

Sulautetun C-ohjelman rakenne on esitetty alla.

  • kommentteja
  • esikäsittelydirektiivit
  • globaalit muuttujat
  • päätoiminto

{

  • paikalliset muuttujat
  • lausunnot
  • ………… ..
  • ………… ..

}

  • hauska (1)

{

  • paikalliset muuttujat
  • lausunnot
  • ………… ..
  • ………… ..

}

Ohjelman logiikka

Ohjelman logiikka on kaistan suunnitelma, joka näkyy teoriassa ja ohjelman toiminnan ennustettavissa olevien tulosten takana. Siinä selitetään lausunto muuten teoriasta siitä, miksi upotettu ohjelma toimii, ja näyttää muuten resurssien tunnistetut vaikutukset.

Main
{
LED = 0x0f
viive (100)
LED = 0x00
viive (100)
}

Sulautetun C-ohjelman tärkeimmät tekijät

Tärkeimmät tekijät, jotka on otettava huomioon valittaessa ohjelmointikieli sulautetun järjestelmän kehittämiseksi, ovat seuraavat.

Ohjelman koko

Jokainen ohjelmointikieli vie jonkin verran muistia, jossa upotettu prosessori, kuten mikro-ohjain, sisältää äärimmäisen vähemmän satunnaismuistia.

Ohjelman nopeus

Ohjelmointikielen tulisi olla erittäin nopea, joten sen pitäisi toimia mahdollisimman nopeasti. Sulautettujen laitteiden nopeutta ei pidä vähentää hitaasti käynnissä olevan ohjelmiston takia.

Siirrettävyys

Eri sulautetuille prosessoreille voidaan tehdä samanlaisia ​​ohjelmia.

  • Yksinkertainen toteutus
  • Yksinkertainen huolto
  • Luettavuus

C-ohjelman ja sulautetun C-ohjelman erot

Sulautettujen C- ja C-ohjelmointien välinen ero ei oikeastaan ​​ole paljoakaan erillään käyttöympäristöstä ja joistakin laajennuksista. Nämä ohjelmointikielet ovat ISO-standardeja ja niillä on myös suunnilleen samanlainen syntakse, toiminnot, tietotyypit jne. Tärkeimmät erot C-ohjelmoinnin ja sulautetun c-ohjelmoinnin välillä ovat seuraavat.

C Kieli

Upotettu C-kieli

Yleensä tätä kieltä käytetään työpöytäpohjaisten sovellusten kehittämiseen

Sulautettua C-kieltä käytetään mikrokontrolleripohjaisten sovellusten kehittämiseen.
C-kieli ei ole laajennus mille tahansa ohjelmointikielelle, vaan yleiskäyttöinen ohjelmointikieliSulautettu C on C-ohjelmointikielen laajennus, joka sisältää erilaisia ​​ominaisuuksia, kuten I / O-osoitteen, kiinteän pisteen aritmeettisen osoitteen, usean muistin osoitteen jne.

Se käsittelee luontaista kehitystäSe käsittelee ristikehitystä luonnossa
Se on riippumaton laitteistoarkkitehtuuristaSe riippuu mikro-ohjaimen ja muiden laitteiden laitteistoarkkitehtuurista
C-kielen kääntäjät riippuvat käyttöjärjestelmästäSulautetut C-kääntäjät ovat käyttöjärjestelmästä riippumattomia
C-kielellä vakiokääntäjiä käytetään ohjelman suorittamiseenSulautetussa C-kielessä käytetään erityisiä kääntäjiä.
Suosittuja kääntäjiä, joita käytetään tällä kielellä, ovat GCC, Borland turbo C, Intel C ++ jneSuosittuja kääntäjiä, joita tällä kielellä käytetään, ovat Keil, BiPOM Electronics ja green hill
C-kielen muoto on vapaamuotoinenSen muoto riippuu pääasiassa käytetyn mikroprosessorin tyypistä.
Tämän kielen optimointi on normaaliaTämän kielen optimointi on korkeaa tasoa
Se on erittäin helppo muokata ja lukeaSitä ei ole helppo muokata ja lukea
Virheenkorjaus on helppoaTämän kielen virheenkorjaus on monimutkaista

Esimerkkejä upotetuista C-ohjelmista

Seuraavassa on muutamia yksinkertaisia ​​sulautettuja C-ohjelmia, joita käytetään mikrokontrolleripohjaiset projektit .

Esimerkki 1

Esimerkki 1

Esimerkki 2

Esimerkki 2

Esimerkki 3

Esimerkki 3

Esimerkki 4

Esimerkki 4

Edut

upotetun c-ohjelmointipalvelun edut g sisältää seuraavat.

  • Se on hyvin yksinkertainen ymmärtää.
  • Se suorittaa samanlaisen tehtävän jatkuvasti, joten laitteiston, kuten lisämuistin, muuten tallennustilan vaihtamista ei vaadita.
  • Se suorittaa yksinkertaisesti yhden tehtävän kerralla
  • Upotetussa c: ssä käytetyn laitteiston hinta on tyypillisesti niin alhainen.
  • Sulautettujen sovellukset ovat erittäin sopivia teollisuudessa.
  • Sovellusohjelman kehittäminen vie vähemmän aikaa.
  • Se vähentää ohjelman monimutkaisuutta.
  • Se on helppo tarkistaa ja ymmärtää.
  • Se on kannettava ohjaimesta toiseen.

Haitat

sulautetun c-ohjelmoinnin haitat Sisällytä seuraavat.

  • Kerralla se suorittaa vain yhden tehtävän, mutta ei voi suorittaa useita tehtäviä
  • Jos vaihdamme ohjelmaa, on myös vaihdettava laitteisto
  • Se tukee vain laitteistojärjestelmää.
  • Sillä on skaalautuvuusongelma
  • Siinä on rajoituksia, kuten rajoitettu muisti, muuten tietokoneen yhteensopivuus.

Sulautetun C-ohjelman sovellukset

sulautetun c-ohjelmoinnin sovellukset Sisällytä seuraavat.

  • Sulautettua C-ohjelmointia käytetään teollisuudessa eri tarkoituksiin
  • Sovelluksissa käytetty ohjelmointikieli on nopeuden tarkistus maantiellä, liikennevalojen hallinta, katuvalojen hallinta, ajoneuvon seuranta, tekoäly, kodin automaatio ja automaattinen voimakkuuden säätö.

Toivomme, että olemme onnistuneet tarjoamaan helpon ja lähestyttävän tavan aloittelijoille Sulautettu C-ohjelmointi . Sulautetun C-ohjelmoinnin ymmärtäminen on tärkein edellytys sulautettujen pohjaisten projektien suunnittelulle. Tämän lisäksi parempi ymmärrys ja oikea tieto sulautetusta C-ohjelmoinnista auttaa opiskelijoita valtavasti palkitsevan uran valinnassa.

Kannustamme ja otamme mielellämme vastaan ​​lukijoiden kyselyitä, ehdotuksia ja kommentteja. Siksi voit lähettää kyselysi ja palautteesi tästä artikkelista alla olevaan kommenttiosioon. Seuraa alla olevaa linkkiä Juottamattomat projektit