Home - Blog

16F877: PIC 16F877 Microcontroller functies, pinnen en snelkoppeling begrijpen

PIC 16F877 heeft vele functies die deze microcontroller geschikt maken voor zowel beginners als professionals.

PIC16F877A bevat alles wat PIC16F877 heeft en omvat een interne klokoscillator, een beter werkende analoog naar digitaal omzettermodule (ADC), en meer!

Dit artikel zal de kenmerken van de PIC16F877 microcontroller bespreken en u kennis laten maken met de ingangs-/uitgangspoort en eenvoudige aansluiting. Het zal u helpen deze schakelingen te begrijpen en hoe ze te gebruiken.

1.PIC 16F877 Overzicht

PIC16F877 betekent dat deze PIC microcontroller verschillende taken kan uitvoeren met behulp van software.

Het ontwerp van PIC 16F877 is bedoeld voor gebruik als standalone of als toevoeging aan schakelingen van andere apparaten. Bijvoorbeeld RAMPS en Arduino boards. Het kan ook op zichzelf werken. Maar, als je wilt dat het dat zonder problemen doet, heb je een kristal oscillator (frequentie) nodig.

PIC 16F877 is een volledig statisch apparaat, wat betekent dat het werkt met een beperkte hoeveelheid flash en RAM. Bovendien heeft het een uitstekende operationele flexibiliteit, is het goedkoop, en komt het het meest voor in schakelingen.

16F877 1

(Microcontroller)

2. Eigenschappen van PIC 16F877

16F877 2

 (Microchip)

De algemene kenmerken van PIC16F877 zijn;

– Energiebesparende STOP-modus, wat betekent dat je PIC16F877 kan stoppen zonder hem uit de schakeling te verwijderen

– Hoge-snelheid PWM (Pulse Width Modulation) module kan tot 256 uitgangsniveaus genereren en heeft een ingebouwde klok programmeerbare Prescaler

– Een interne spanningsregelaar voor het I/O-circuit en een geïntegreerde oscillator (kristal of keramische resonator)

– Een comparator module op de chip

– Analoog naar digitaal omzetter, met een resolutie van 12 bits en kan tot vier analoge ingangskanalen tegelijk omzetten

– Ondersteunt externe interrupts die worden gebruikt om het apparaat uit de slaapstand te halen of voor andere doeleinden.

– Acht verschillende energiebesparende modi

16F877 3

(Gedemonteerde microcontroller)

– Analoge vergelijkingsmodule

– Tot 23 I/O pinnen

– Eén SPI-modus en vier UART-modules (één full-duplex)

– Interrupt controller met tot 14 interrupt bronnen

– Watchdog timer, die een interrupt genereert als het tijdsinterval verstrijkt

– Power-on reset genererend circuit

– Programmeerbare brown-out detector (BOD)

– Interne gekalibreerde oscillator, waardoor de interne RC-schakeling als klokbron kan werken

– In-kring Periodieke Programmering en in-kring het zuiveren vermogen via de debugWIRE interface

16F877 4

 (Microcontroller)

De belangrijkste/sleutel eigenschappen van PIC 16F877 zijn:

Tot 20 Mhz interne klokken werkende frequentie

Heeft vijf (A-E) basisinput/outputhavens 

8 10-bits \ADC ingangskanalen 

Heeft PSP als parallelle communicatie

PIC16F877A heeft 8KB Flash geheugen

Twee seriële communicatie-interfaces: 2-draads Inter-Integrated Circuit () bus en SMBus

368 niveaus Data geheugen bytes met 256 niveaus (14bits) EEPROM Data geheugen

Heeft drie timers d.w.z. één 16-bit timer en 2 8-bit timers bruikbaar in timer of counter mode

Extra functies

– Programmeerbaar in C-taal.

– Microcontroller werkt op een 16MHz internal oscillator

– PIC16F877A is configureerbaar als master of slave en wordt geleverd met een SPI-module.

3. PIC16F877A Microcontroller Spelddiagrammen:

PIC16F877 chips zijn er in verschillende uitvoeringen en types. Bijvoorbeeld, 40-PIN DIP, 44-PIN TQFP, en 44-PIN QFN ontwerpen. Deze verschillen zijn een gevolg van hun uiteenlopende gebruik en toepassingen. De afbeelding hieronder toont PIC16F877A technieken en pinnen.

16F877 5

(Spelddiagrammen van PIC 16877 Chip)

BRON; Microchip Datasheetspdf.com 

4. Inleiding tot de Ingang/Uitgangspoort Beschrijvingen

Elke poort van de microcontroller is verbonden met twee registers. Bijvoorbeeld poort C; de registers zijn PORTC en TRISC. Het TRISC-register bepaalt of de poort een uitgang of een ingang is. Ook kunt u aan elke pin onafhankelijk waarden toekennen.

Bij het programmeren van microcontrollers, gebruik compilers voor uw software werk. De beste compiler voor PIC16877A is MPLAB XC8 COMPILER.  

– PORT A configuratie functioneert als een analoge ingangspoort, digitale I/O, of PWM uitgang. Poort A heeft zes pinnen die lopen van pin #2 tot #7; gelabeld als RA0 tot RA5

– POORT B-configuratie functioneert als digitale ingang, analoge ingang, timerinput capture, timeroutput compare, PWM-ingang. 16F877-Poort B heeft 8 pinnen, d.w.z. van pin #33 tot #40; Gelabeld als RBO tot RB7 

– POORT C configuratie is een counter/timermodule (ingang of uitgang), UART, en SPI. Poort C heeft ook 8 pinnen. De eerste 4 zijn van pin #15 tot #18, en de andere 4 zijn van pin #23-#26. Deze pinnen zijn RCO tot RC7

 (PIC16F877A Poort Illustraties)

BRON: Theengineeringprojects.com

– POORT D configuraties zijn digitale ingangspinnen, analoge ingang, en timeruitgang. Poort D heeft ook 8 pinnen. De eerste 4 zijn van pin #19-#22, en de anderen zijn van pin #27-#30. Deze pinnen zijn RD0 tot RD7

– POORT E is voor fabrieksgebruik gereserveerd. Het heeft drie pinnen #8-#10, dit zijn RE0 tot RE2.

– VDD en VSS zijn voedingspinnen, terwijl MCLR de master clear pin is.

– PIC16F877A heeft maximaal 18 GPIO-pennen waarmee de controller kan worden geconfigureerd als in- of uitgang met behulp van de bijbehorende registers.

– Naast de GPIO-pennen zijn er nog enkele andere specifieke pennen van de PIC16F877A op het bovenoppervlak.

– VDD is de positieve voedingsspanningspin, terwijl VSS de aardreferentie is.

– PIC16F877A heeft 23 I/O pinnen, verdeeld in twee banken; bank A en bank B.

– Elke I/O-pen heeft een unieke bit die als ingang of uitgang kan functioneren wanneer hij wordt toegewezen.

5. Van theorie naar praktijk- Knipperende LEDs met PIC16F877A

                                                        (PIC16F877A schakelschema)

Bovenstaand schema toont hoe je LED’s kunt aansluiten met de PIC16F877A. Ook worden de kritische microcontrollerpennen aangegeven die je nodig hebt bij het aansluiten. Voor een snelle aansluiting; 

Verbind eerst 5V met MSLR pin#1 en voeg er een weerstand van 10k Ohm aan toe.

Verbind ook de 5v met speld #11 (VDD). Aan de andere kant, sluit 5v aan op pin #32(VSS).

Zorg voor massa op VSS(pin#12). Verbind vervolgens pen #13(OSC1) en #14(OSC2) met de 16MHz kristal oscillator.

Verbind daarna 2 condensatoren van 33pF met de massa. 16F877-Verbind nu pen #31(VSS) met de massa.

Verbind tenslotte LED en een weerstand van 10k Ohm met pen #21(RD2) om het uploaden van het programma mogelijk te maken.

 (Elektronische componenten)

Om LEDs te laten knipperen met de PIC16F877A, sluit je de LEDs aan tussen PORTD en de massa. Aangezien we slechts één LED hoeven te flashen, kunnen we deze combineren met een weerstand van 10k Ohm. We moeten PORT-D configureren als output door hem op hoog-naar-laag overgang te zetten met behulp van de output latch om de LED te laten oplichten.

We kunnen PORT-D op laag-hoog zetten door 0x01 te schrijven naar het Data Direction Register (DDRB). Om PORT-D op hoog te zetten, moeten we 0x00 naar het DDRB register schrijven, en dit zal de LED doen oplichten.

Samenvatting

In dit artikel hebben we geleerd over de PIC 16F877, zijn functies, en de input/output poort van de PIC16F877A. We hopen dat je het leuk vond!

Als u geïnteresseerd bent in de PIC microcontroller, kunt u ook onze andere artikelen lezen. Bovendien, als u vragen heeft over PIC16F877, neem dan gerust contact met ons op.

Hommer Zhao
Hallo, ik ben Hommer, de oprichter van WellPCB. Tot nu toe hebben we meer dan 4.000 klanten wereldwijd. Voor vragen kunt u gerust contact met mij opnemen. Bij voorbaat bedankt.

Diensten