Typer av AVR-mikrokontroller - Atmega32 & ATmega8

Prova Vårt Instrument För Att Eliminera Problem





ATmega32 - 8-bitars AVR-mikrokontroller

AVR-mikrokontroller baseras på den avancerade RISC-arkitekturen. ATmega32 är en CMOS 8-bitars mikrokontroller med låg effekt baserat på den AVR-förbättrade RISC-arkitekturen. AVR kan utföra 1 miljon instruktioner per sekund om cykelfrekvensen är 1 MHz.

40-stifts DIP Foto av ATmega32

40-stifts DIP Foto av ATmega32



Nyckelfunktioner:


  • 32 x 8 allmänna arbetsregister.
  • 32K byte i systemets självprogrammerbara flashminne
  • 2K byte av intern SRAM
  • 1024 byte EEPROM
  • Finns i 40 stift DIP, 44 ledare QTFP, 44-pad QFN / MLF
  • 32 programmerbara I / O-linjer
  • 8 kanaler, 10 bitars ADC
  • Två 8-bitars timers / räknare med separata förskalare och jämförelägen
  • En 16-bitars timer / räknare med separat förskalare, jämförläge och inspelningsläge.
  • 4 PWM-kanaler
  • I systemprogrammering via startprogram för chip
  • Programmerbar vakthundur med separat o-oscillator.
  • Programmerbar seriell USART
  • Master / slave SPI seriellt gränssnitt

Särskilda mikrokontrollerfunktioner:

  • Sex vilolägen: Tomgång, ADC-brusreducering, energisparläge, avstängning, standby och utökat standby.
  • Intern kalibrerad RC-oscillator
  • Externa och interna avbrottskällor
  • Ström på återställning och programmerbar upptäckt av utbrändhet.
40-stifts DIP av ATmega32

40-stifts DIP av ATmega32



Alla de 32 registren är direkt anslutna till den aritmetiska logikenheten (ALU), vilket gör att två oberoende register kan nås i en enda instruktion som utförs under en klockcykel.

Avstängningen sparar registerinnehållet men fryser oscillatorn. Alla andra chipfunktioner kommer att inaktiveras tills nästa externa avbrott uppstår. Asynkron timer tillåter användaren att hålla en timer baserad i energisparläge medan resten av enheten sover.

ADC-brusreduceringsläge stoppar CPU: n och alla I / O-moduler utom ADC och asynkron timer. I viloläge, utom kristalloscillator, sover resten av enheten. Både huvudoscillatorn och den asynkrona timern fortsätter att köras i utökat standby-läge.

ATmega32 är en kraftfull mikrokontroller på grund av sin egenprogrammerbara blixt på ett monolitiskt chip, ger en hög flexibel och kostnadseffektiv lösning för många inbäddade styrapplikationer.


44-pad TQFP / MLF

44-pad TQFP / MLF

Stiftbeskrivningar:

VCC: Digital spänningsförsörjning

GND: Jord

Port A (PA7-PA0): Denna port fungerar som analoga ingångar till A / D-omvandlaren. Den fungerar också som en 8-bitars dubbelriktad I / O-port om A / D-omvandlaren inte används.

Port B (PB7-PB0) & Port D (PD7-PD0): Det är en 8-bitars dubbelriktad I / O-port. Dess utgångsbuffertar har symmetriska köregenskaper med både hög diskbänk och källkapacitet. Som ingångar dras dessa extremt lågt om uppdragningsmotstånden aktiveras. Den tjänar också olika specialfunktioner hos ATmega32.

Port C (PC7-PC0): Det är en 8-bitars dubbelriktad I / O-port. Om JTAG-gränssnittet är aktiverat aktiveras uppdragsmotstånden på stift PC5 (TDI), PC3 (TMS) och PC2 (TCK).

Gränssnitt mellan JTAG och port C på ATmega32

Gränssnitt mellan JTAG och port C på ATmega32

Återställa: Det är en ingång.

XTAL1: Det är en ingång till den inverterande oscillatorförstärkaren och ingången till den interna klockan.

XTAL2: Det är en utgång från den inverterande oscillatorförstärkaren.

AVCC: Det är matningsspänningen för port A och A / D-omvandlare. Den ska anslutas till VCC.

AREF: AREF är den analoga referensstiftet för A / D-omvandlaren.

ATmega32-minnen:

Det har två huvudminnesutrymme dataminne och programminnet. Dessutom har den ett EEPROM-minne för datalagring.

I systemprogrammerbart flashprogramminne:

ATmega32 innehåller 32 kbyte on-chip i systemets omprogrammerbara flashminne för programlagring. Flash är organiserat som 16k X 16 och dess minne är uppdelat i två sektioner Boot-programavsnitt och applikationsprogramavsnitt.

Kretsschema för ISP-programmerare

ISP-programmerarens kretsschema

SRAM-dataminne:

Registerfilen, I / O-minnet och den interna datan SRAM adresseras av de nedre 2144-dataminnesplatserna. De första 96 platserna adresserar registerfilen och I / O-minnet, och den interna data SRAM adresseras av nästa 2048 platser. Direkt, indirekt med förskjutning, indirekt, indirekt med förminskning och direkt med efterminskning är de 5 olika adresseringslägena för dataminnet. De 32 allmänna ändamålsregisterna, 64 I / O-registren och 2048 byte av intern data SRAM är tillgängliga med hjälp av dessa adresseringslägen.

Blockdiagram över ATmega32

Blockdiagram över ATmega32

EEPROM Dataminne:

Den innehåller 1024 byte data EEPROM-minne. Det kan nås som ett separat datautrymme där enskilda byte kan läsas och skrivas.

I / O-minne:

Alla I / O och kringutrustning placeras i I / O-utrymmet. I / O-platserna nås genom IN- och OUT-instruktionerna och överför data mellan de 32 allmänna användarregistren och I / O-utrymmet. I / O-register med adressen 00-1F är direkt åtkomliga med SBI- och CBI-instruktionerna.

ATmega8

Introduktion

Det är en 8-bitars CMOS-byggd mikrokontroller från AVR-familjen (utvecklad av Atmel Corporation 1996) och bygger på RSIC-arkitekturen (Reduced Instruction Set Computer). Dess grundläggande fördel är att den inte innehåller någon ackumulator och resultatet av någon operation kan lagras i vilket register som helst, definierat av instruktionen.

Arkitektur

Arkitektur

Arkitektur

Minne

Den består av 8 KB flashminne, 1 KB SRAM och 512 Bytes EEPROM. 8K-blixt är uppdelad i två delar - den nedre delen används som startblixtsektion och den övre delen används som applikationsblixtsektion. SRAM innehåller 1K byte tillsammans med 1120 byte av allmänna ändamålsregister och I / O-register. De lägre 32 adressplatserna används för 32 generella 8-bitarsregister. Nästa 64-adress används för I / O-register. Alla register är anslutna direkt till ALU. EEPROM används för att lagra användardefinierade data.

Ingångs- / utgångsportar

Den består av 23 I / O-linjer med 3 I / O-portar, benämnda B, C och D. Port B består av 8 I / O-linjer, Port C består av 7 I / O-linjer och Port D består av 8 I / O-linjer rader.

Register som motsvarar valfri portX (B, C eller D) är:

DDRX : Port X-datariktningsregister

PORTX : Port X-dataregister

PINX : Ingångsregister för port X

Tidtagare och räknare

Den består av 3 timers med jämförbara lägen. Två av dem är 8 bitar medan den tredje är 16 bitar.

Oscillatorer

Den innehåller intern återställning och oscillator som gör det möjligt att eliminera behovet av extern ingång. Den interna RC-oscillatorn kan generera intern klocka som kan köras vid vilken frekvens som helst på 1 MHz, 2 MHz, 4 MHz eller 8 MHz som programmerad. Den stöder också extern oscillator med maximal frekvens på 16MHz.

Kommunikation

Det tillhandahåller både synkrona och asynkrona dataöverföringsscheman via USART (Universal Synchronous and Asynchronous Receiver Transmitter), dvs. kommunikation med modem och andra seriella enheter. Den stöder också SPI (Serial Peripheral Interface) som används för kommunikation mellan enheter baserat på master-slave-metoden. En annan typ av kommunikation som stöds är TWI (Two wire Interface). Det möjliggör pendling mellan två enheter med hjälp av två ledningar tillsammans med en gemensam jordanslutning.

Det har också en komparatormodul integrerad i chipet för att ge jämförelse mellan två spänningar anslutna till de två ingångarna till den analoga komparatorn via de externa chipsen.

Den innehåller också en 6-kanals ADC varav 4 har 10 bitars noggrannhet och 2 har 8 bitars noggrannhet.

Statusregister : Den innehåller information om den för närvarande utförda aritmetiska instruktionsuppsättningen.

ATmega Pin Diagram :

ATmega Pin Diagram

ATmega Pin Diagram

En av de viktiga funktionerna i ATmega8 är att alla andra stift stöder två signaler utom 5 stift.

  • Stift 23,24,25,26,27,28 och 1 används för port C, medan stiften 9,10,14,15,16,17,18,19 används för port B och stiften 2,3,4, 5,6,11,12 används för port D.
  • Stift 1 är också Återställningsstiftet och en applicering av lågnivåsignal under en längre tid än den minsta pulslängden genererar en återställning.
  • Stift 2 och 3 används också för seriekommunikation för USART.
  • Stift 4 och 5 används som externa avbrott. En av dem utlöses när avbrottsflaggbiten i statusregistret är inställd och den andra utlöses så länge avbrottstillståndet råder.
  • Stift 9 och 10 används som extern oscillator såväl som timerräknare oscillatorer där kristallen är ansluten direkt mellan stiften. Stift 10 används för kristalloscillator eller lågfrekvent kristalloscillator. Om den interna kalibrerade RC-oscillatorn används som klockkälla och den asynkrona timern är aktiverad, kan dessa stift användas som en timeroscillatorstift.
  • Stift 19 används som Master Clock-utgång, slavklockingång för SPI-kanal.
  • Stift 18 används som huvudklockingång, slavklockutgång.
  • Stift 17 används som masterdatautgång, slavdataingång för SPI-kanal. Den används som en ingång när den aktiveras av en slav och är dubbelriktad när den är aktiverad av mastern. Denna stift kan också användas som en output-jämför match-utgång, som fungerar som en extern utgång för timern / räknar-jämför-matchningen.
  • Pin16 används som en slavval-ingång. Det kan också användas som en jämförelse mellan timer / räknare1 genom att konfigurera PB2-stiftet som en utgång.
  • Pin15 kan användas som extern utgång för timern / räknarjämförelsematch A.
  • Stift 23 till 28 används för ADC-kanaler. Stift 27 kan också användas som seriellt gränssnittsklocka och stift 28 kan användas som seriellt gränssnittsdata
  • Stift 13 och 12 används som analoga komparatoringångar.
  • Stift 11 och 6 används som timer / räknarkällor.

Microcontroller vilolägen

Microcontroller fungerar i 6 vilolägen.

  • Viloläge: Det stoppar CPU: ns funktion, men möjliggör drift av SPI, USART, ADC, TWI, Timer / Counter och Watchdog och avbryter systemet. Det uppnås genom att sätta SM0 till SM2 bitar av MCU-registerflaggan till noll.
  • ADC-brusreduceringsläge : Det stoppar CPU men tillåter funktion av ADC, externa avbrott, timer / counter2 och vakthund.
  • Avstängningsläge : Det möjliggör externa avbrott, 2-tråds seriellt gränssnitt, vakthund samtidigt som den externa oscillatorn inaktiveras. Det stoppar alla genererade klockor.
  • Energisparläge : Den används när Timer / Counter klockas asynkront. Det stoppar alla klockor utom clkASY.
  • Standbyläge : I detta läge tillåts oscillatorn att fungera, vilket stoppar alla andra operationer.

Applikationer som involverar Atmega8

Blinkande lysdiod

Applikationer som involverar Atmega8

Blinkande LEd-schemat

Programmet är skrivet med C-språk och kompileras först som .c-fil. Programvaruverktyget ATMEL konverterar den här filen till en binär ELF-objektfil. Det konverteras sedan igen till hex-fil. Hexfilen skickas sedan till mikrokontrollern med hjälp av AVR-dude-programmet.

Fotokredit: