Documente Academic
Documente Profesional
Documente Cultură
- ZILOG - cu familia Z-8; - INTEL - cu familia 8051 (8 bii); - INTEL - cu familia 80196 (16 bii); - MOTOROLA - cu familia 68HC11, mai nou 68HC16; - MICROCHIP - cu familiile PIC 15CXX, PIC16CXX, PIC17CXX; - TEXAS INSTRUMENTS - cu familia TMS370. - NEC - cu familia 70K
Microcontrolerul standard 8051 este realizat ntr-o capsul cu 40 pini sau 44 pini. Pentru funcionare are nevoie de o singur surs de tensiune (+5V). Iniial a fost realizat n tehnologie NMOS (consum 125 150 mA), iar ulterior a aprut i variante CMOS (consum 15 30 mA). Denumirea versiunii CMOS este 80C51. Familia 8051 cuprinde diverse variante ale circuitului standard: - circuitul 8051 conine 4Ko memorie PROM (one time programming) i 128 octei RAM;
- circuitul 8031 conine 128 octei RAM i nu are memorie ROM (ROMless); - circuitul 8751 conine 4 Ko memorie EPROM i 128 octei RAM; - circuitul 8052 conine 8 Ko PROM i 256 octei RAM; - circuitul 8032 conine 256 octei RAM i nu are memorie ROM; - circuitul 8752 conine 8 Ko EPROM i 256 octei RAM; - circuitul 8754 conine 16 Ko EPROM i 256 octei RAM; - circuitul 8758 conine 32 Ko EPROM i 256 octei RAM. Microcontrolerul 8051 are n structura sa: unitate aritmetic i logic de 8 bii ce poate execut operaii de adunare, scdere, nmulire, mprire, incrementare, I, SAU, SAU Exclusiv, complementare i rotire, memorie de program de tip ROM 4k octei memorie de date RAM 128 octei 4 porturi paralele de intrare/ieire P0-P3 de 8 bii un port serial duplex dou circuite numrtoare/temporizatoare N/T0, N/T1 de cte 16 bii 5 surse de ntrerupere cu dou nivele de prioriti generator de tact 1,2-12 MHz Deasemenea microcontrolerul are posibilitatea de adresare a unei memorii externe de program i a unei memorii externe de date cu capacitate maxim de 64k octei. Exist i posibilitatea suprapunerii celor dou zone de memorie cu micorarea spaiului total de adresare la 64 Ko. Microcontrolerele care au memorie ROM intern pot s inhibe acest spaiu i s utilizeze numai memorie ROM extern. Exist i posibilitatea lucrului simultan cu memorie ROM intern i memorie ROM extern. Memoria de program poate fi doar citit. La 8051 primii 4k octei de program sunt n chip. Restul se afl n exterior, iar pentru a citi aceast memorie de program extern se folosete semnalul PSEN (Program Store Enable). Memoria de date ocup un spaiu separat fa de memoria program. La 8051 exist 128 octei RAM n chip. Memoria de date extern poate fi accesat prin generarea de ctre unitatea central a semnalelor de citire RD sau scriere WR. Memoria de program i cea de date (extern) pot fi combinate dac dorim prin folosirea semnalelor RD si PSEN pentru a genera semnal de citire pentru o memorie comun n care s avem att memorie program ct i memorie de date. Schema bloc a microcontroller-ului:
1.senzorul de temparatura masoara temeparturi intre 0-50 C 2.am nevoie de o tensiune intre 0-5V si am v\nevoie de doar 8 biti. 3.are 4 proturi paralele de I/O si anume P0,P1,P2 so P3. 4.8051 contine 4 Ko memorie PROM.
Conectarea ADC-ului
Pinul A,B i C este folosit pentru selectarea adresei de intrare(+ activarea ALE- Address Latch Enable):
SC - start conversion (WR - 8051) EOC - end-of-conversion (High cnd a terminat conversia) OE - output enable (READ) Dout = Vin / step size
Codul:
#include<reg51.h> sbit ale=P0^6; sbit oe=P0^7; sbit sc=P0^1; sbit eoc=P0^0 sbit clk=P0^2 sbit ADD_A=P0^5; sbit ADD_B=P0^4;
sbit ADD_C=P0^3; sfr input_port=0x90; sfr output_port=0xA0; void timer0() interrupt 1 { clk=~clk; } void delay(unsigned int count) { int i,j; for(i=0;i<count;i++) for(j=0;j<500;j++); } void main() { input_port = 0xff; eoc=1; ale=0; oe=0; sc=0; TMOD = 0x02; TH0 = 0xFC; TL0 = 0x67; IE = 0x82; TR0 = 1; while(1) { ADD_C=0; ADD_B=0; ADD_A=1; delay(2); sc=1; delay(1); ale=0; delay(1); sc=0; while(eoc==1); while(eoc==0); oe=1; output_port=input_port; delay(2); oe=0; } }
- circuitul amplific diferena tensiunilor i rejecteaz semnalele de mod comun - n cazurile parctice se pune R1=R3 i R2=R4