Lär dig mer om PIC-mikrokontroller och dess arkitektur med förklaringar

Prova Vårt Instrument För Att Eliminera Problem





PIC är en Perifera gränssnitt mikrokontroller som utvecklades 1993 av General Instruments Microcontrollers. Den styrs av programvara och programmeras på ett sådant sätt att den utför olika uppgifter och styr en generation. PIC-mikrokontroller används i olika nya applikationer som smartphones, ljudtillbehör och avancerade medicinska enheter.

PIC-mikrokontroller

PIC-mikrokontroller



Det finns många PICs tillgängliga på marknaden, allt från PIC16F84 till PIC16C84. Dessa typer av PIC: er är prisvärda flash-PIC: er. Microchip har nyligen introducerat flashchips med olika typer, som 16F628, 16F877 och 18F452. 16F877 kostar dubbelt så mycket som den gamla 16F84, men det är åtta gånger mer än kodstorleken, med mer RAM och mycket mer I / O-stift, en UART, A / D-omvandlare och mycket fler funktioner.


PIC Microcontrollers Architecture

De PIC-mikrokontroller är baserad på RISC-arkitektur. Dess minnesarkitektur följer Harvard-mönstret med separata minnen för program och data, med separata bussar.



PIC-mikrokontrollerarkitektur

PIC-mikrokontrollerarkitektur

1. Minnesstruktur

PIC-arkitekturen består av två minnen: Programminne och Dataminne.

Programminne: Detta är ett 4K * 14-minne. Den används för att lagra 13-bitars instruktioner eller programkoden. Programmets minnesdata nås av programräknarregistret som innehåller adress till programminnet. Adressen 0000H används som återställt minnesutrymme och 0004H används som avbrottsminneutrymme.

Dataminne: Dataminnet består av 368 byte RAM och 256 byte EEPROM. 368 byte RAM består av flera banker. Varje bank består av allmänna register och specialfunktionsregister.


De specialfunktionsregisterna består av kontrollregister för att styra olika operationer av chipresurserna som Timers, Analoga till digitala omvandlare , Seriella portar, I / O-portar etc. Till exempel TRISA-registret vars bitar kan ändras för att ändra ingångs- eller utmatningsfunktionerna för port A.

Registren för allmänna ändamål består av register som används för att lagra tillfällig data och bearbeta resultat av uppgifterna. Dessa allmänna register är var och en 8-bitarsregister.

Arbetsregister: Den består av ett minnesutrymme som lagrar operanderna för varje instruktion. Det lagrar också resultaten för varje körning.

Statusregister: Bitarna i statusregistret anger statusen för ALU (aritmetisk logikenhet) efter varje utförande av instruktionen. Det används också för att välja någon av de fyra bankerna i RAM-minnet.

Register för filval: Det fungerar som en pekare till något annat allmänt register. Den består av en registerfiladress och används för indirekt adressering.

Ett annat allmänt ändamålsregister är programräknarregistret, vilket är ett 13-bitarsregister. De fem övre bitarna används som PCLATH (Program Counter Latch) för att oberoende fungera som vilket annat register som helst, och de nedre 8-bitarna används som programräknebitarna. Programräknaren fungerar som en pekare till instruktionerna lagrade i programminnet.

EEPROM: Den består av 256 byte minne. Det är ett permanent minne som ROM, men dess innehåll kan raderas och ändras under drift av mikrokontrollern. Innehållet i EEPROM kan läsas från eller skrivas till med hjälp av specialfunktionsregister som EECON1, EECON, etc.

2. I / O-portar

PIC16-serien består av fem portar, såsom Port A, Port B, Port C, Port D och Port E.

Port A: Det är en 16-bitars port, som kan användas som in- eller utgångsport baserat på status för TRISA-registret.

Port B: Det är en 8-bitars port, som kan användas både som ingångs- och utgångsport. 4 av dess bitar kan, när de används som ingång, ändras vid avbrottssignaler.

Port C: Det är en 8-bitars port vars funktion (ingång eller utgång) bestäms av statusen för TRISC-registret.

Port D: Det är en 8-bitars port, som förutom att vara en I / O-port, fungerar som en slavport för anslutning till mikroprocessor buss.

Port E: Det är en 3-bitars port som tjänar den extra funktionen av styrsignalerna till A / D-omvandlaren.

3. Tidtagare

PIC-mikrokontroller består av 3 timers , varav Timer 0 och Timer 2 är 8-bitars timers och Time-1 är en 16-bitars timer, som också kan användas som disken .

4. A / D-omvandlare

PIC Microcontroller består av 8-kanaler, 10-bitars analog till digital omvandlare. Driften av A / D-omvandlare styrs av dessa specialfunktionsregister: ADCON0 och ADCON1. Omvandlarens nedre bitar lagras i ADRESL (8 bitar) och de övre bitarna lagras i ADRESH-registret. Det kräver en analog referensspänning på 5V för dess drift.

5. Oscillatorer

Oscillatorer används för timinggenerering. PIC-mikrokontroller består av externa oscillatorer som kristaller eller RC-oscillatorer. När det gäller kristalloscillatorer är kristallen ansluten mellan två oscillatorstift, och värdet på kondensatorn som är ansluten till varje stift bestämmer oscillatorns arbetssätt. De olika lägena är lågeffektläge, kristalläge och höghastighetsläge. När det gäller RC-oscillatorer bestämmer värdet på motståndet och kondensatorn klockfrekvensen. Klockfrekvensen varierar från 30 kHz till 4 MHz.

6. KKP-modul:

En CCP-modul fungerar i följande tre lägen:

Fångningsläge: Detta läge fångar tidpunkten för ankomst av en signal, eller med andra ord, fångar värdet på Timer1 när CCP-stiftet blir högt.

Jämför läge: Det fungerar som en analog komparator som genererar en utgång när timer1-värdet når ett visst referensvärde.

PWM-läge: Det ger pulsbredd modulerad utdata med en 10-bitars upplösning och programmerbar arbetscykel.

Andra speciella kringutrustning inkluderar en Watchdog-timer som återställer mikrokontrollern i händelse av programvarufel och en Brownout-återställning som återställer mikrokontrollern vid strömförändringar och andra. För en bättre förståelse av denna PIC-mikrokontroller ger vi ett praktiskt projekt som använder denna styrenhet för dess drift.

Gatubelysning som lyser vid upptäckt av fordonets rörelse

Detta Projekt för LED-gatubelysning är utformad för att upptäcka fordonets rörelse på motorvägen för att sätta på ett gatubelysning framför den och för att stänga av bakljusen för att spara energi. I detta projekt görs en PIC-mikrokontroller-programmering med hjälp av inbäddad C eller monteringsspråk.

Gatubelysning som lyser vid upptäckt av fordonets rörelse

Gatubelysning som lyser vid upptäckt av fordonets rörelse

Strömförsörjningskretsen ger ström till en hel krets genom att trappa ner, rätta till, filtrera och reglera nätströmmen. När det inte finns några fordon på motorvägen förblir alla lampor släckta så att strömmen kan sparas. IR-sensorerna är placerade på vardera sidan av vägen eftersom de känner av fordonens rörelse och i sin tur skickar kommandona till mikrokontroller för att slå på eller av lysdioderna. Ett block av lysdioder tänds när ett fordon närmar sig det och när fordonet passerar från denna rutt blir intensiteten låg eller helt avstängd.

De PIC-mikrokontrollerprojekt kan användas i olika applikationer, till exempel kringutrustning för videospel, ljudtillbehör etc. Bortsett från detta kan du kontakta oss genom att kommentera i kommentarsektionen om du behöver hjälp med eventuella projekt.