Kazalo:

Elektronski varnostni sistem z RTC in uporabniško določeno pin kodo: 7 korakov
Elektronski varnostni sistem z RTC in uporabniško določeno pin kodo: 7 korakov

Video: Elektronski varnostni sistem z RTC in uporabniško določeno pin kodo: 7 korakov

Video: Elektronski varnostni sistem z RTC in uporabniško določeno pin kodo: 7 korakov
Video: SAMODEJNI IZKLOP LUČI 2024, Julij
Anonim
Elektronski varnostni sistem z RTC in uporabniško določeno PIN kodo
Elektronski varnostni sistem z RTC in uporabniško določeno PIN kodo
Elektronski varnostni sistem z RTC in PIN -kodo, ki jo določi uporabnik
Elektronski varnostni sistem z RTC in PIN -kodo, ki jo določi uporabnik
Elektronski varnostni sistem z RTC in PIN -kodo, ki jo določi uporabnik
Elektronski varnostni sistem z RTC in PIN -kodo, ki jo določi uporabnik
Elektronski varnostni sistem z RTC in uporabniško določeno PIN kodo
Elektronski varnostni sistem z RTC in uporabniško določeno PIN kodo

Zdravo družba!

To je projekt, ki sem ga naredil s pomočjo mikrokrmilnika pic, njegovega elektronskega varnostnega sistema za kodo PIN z uro v realnem času in uporabniško definirano funkcijo PIN kode. Ta stran vsebuje vse podrobnosti, ki jih lahko naredite sami.

NJEGOVO DELO IN KONCEPT:

No, če vklopite varnostni sistem, bo zahteval PINKODO za odpiranje vrat (140595), če ga vnesete pravilno, se bodo vrata odprla. Vrata se odprejo le 1 minuto, nato se spet zaprejo. Če napačno vnesete kodo PIN, vam bo varnostni sistem dal še 3 možnosti, če bodo vse možnosti zapravljene, vklopi brenčalo in zahteva alternativno kodo, da zaustavi brenčanje, če je ta alternativna koda (t.j. 1984) pravilno vnesena:

1) Ustavi zvočni signal

2) Ponastavi prvotno kodo, ki je bila 140595

3) zahteva novo kodo za zamenjavo prvotne kode, ki je bila 140595 (ne več kot 6 mest)

zdaj se bodo vrata odprla s to novo kodo.

Predpostavimo, da je vstavljena napačna nadomestna koda, nato pa sistem zahteva, da počaka na 1 min odštevanja, med katerim so vsi gumbi onemogočeni in brenčalo še naprej zvoni.

VIDEO:

www.youtube.com/watch?v=O0lYVIN-CJY&t=5s

V redu, naredimo eno… !

Preden začnemo, predvidevam, da že imate osnovno znanje jezika C in ste že delali na MikroC pro ter da znate žariti LED, kako povezati LCD z mikrokontrolerjem PIC. V redu, začnimo!

1. korak: Zbiranje komponent

Zbiranje komponent
Zbiranje komponent

ZA PROJEKT: S. Št. | KOLIČINA | KOMPONENTA | INFO

1) 1 16x2 LCD Pin 14 na Pin 1, nato paket 15 Pin in 16 pin.

2) 1 mikrokrmilnik PIC18F4550

3) 1 PCF8583 Ura za realni čas (RTC) IC

4) 14 gumbov za ponastavitev Namesto tipkovnice sem uporabil gumbe za ponastavitev

5) 1 9v baterija Glavni napajalnik.

6) 1 10K ohmski lonec Za nastavitev kontrasta LCD -ja

7) 2 3,5 -milimetrska avdio priključka za zunanjo povezavo zvočnika in vrat

8) 1 100uF kondenzator Ceremic cap za uporabo s pin1 krmilnika.

9) 1 32,682 kHz kristal za PCF8583 IC

10) 1 enosmerni vtič Če uporabljate projekt z enosmernim adapterjem

11) 1 IC7805 Za pretvorbo 9V v 5V

12) 1 1K ohmski upor za uporabo s pin1 krmilnika.

13) 3 10K ohmski upor za uporabo s pin1 krmilnika in RTC IC

14) 13 220 ohmov upor bo vsak gumb uporabil 1 220 ohmov, bom razložil kasneje

15) 1 3V celica za uporabo z RTC IC

16) 1 Stikalo TICK TICK

17) 1 PCB plošča po vaši izbiri, če vam je na vrhu zelo dobro.

18) 1 8 -polni DIP za RTC IC

19) 1 40 -polni DIP za PIC184550 ali če želite, lahko vtičnico z zadrgo

20) 1 3V držalo za celice

21) 1 9V držalo za baterijo

22) 1 moški nastavek za spajkanje z LCD zaslonom

23) 1 ženska glava za spajkanje na tiskano vezje ali verro, kjer bo nameščen LCD.

DRUGI DELI:

20) Plošča za testiranje

21) Spajkalnik

22) Spajkalna žica

23) Programer PIC (ali PICKIT2)

24) Raztopina za jedkanje (za PCB)

25) Vrtalnik za PCB

26) Multimeter

Mislite, da boste opazili, da nisem vključil kristala za mikrokontroler PIC, kajne? No, to je zato, ker sem uporabil notranji oscilator PIC18F4550

TO JE VSE…! ZDAJ TO NAPRAVIMO …!

2. korak: TESTIRANJE PROTEJA

TESTIRANJE NA PROTEJU
TESTIRANJE NA PROTEJU
TESTIRANJE NA PROTEJU
TESTIRANJE NA PROTEJU

Vezje lahko preizkusite na proteusu, da dobite predstavo o projektu.

Za datoteko proteus bo za mikrokrmilnik PIC potrebna šestnajstiška datoteka.

Obe datoteki sta na voljo.

3. korak: Izdelava PCB -ja

Izdelava PCB
Izdelava PCB

Priporočam vam, da ta projekt zgradite na tiskanem vezju, ne uporabljajte verroboard.

Natisnite to tiskano vezje, ki sem ga oblikoval na Cadsoft Eagle. Če imate nameščen cadsoft eagle, odprite datoteko brd (prenos spodaj) in ustvarite datoteko glede na vaše zahteve glede velikosti strani.

Sicer sem priložil dve datoteki A4, druga pa A5, natisnite in preverite komponente, nato pa natisnite tiskano vezje. To sprašujem, ker morda obstaja faktor obsega strani.

OPOMBA: Projekt lahko vklopite z baterijo, ki bo priključena na priključek blizu 7805, pazite na polarnost. ALI lahko projekt vklopite z adapterjem prek vtičnice DC. Vire napajanja lahko preklopite s tipko za kljukico, ko je gumb v notranjosti vezja, ki se napaja od zunanjega vira prek priključka, ko gumb pritisnete zunaj napajanja vezja iz vtičnice DC.

4. korak: Spajkanje komponent

Spajkalne komponente
Spajkalne komponente
Spajkalne komponente
Spajkalne komponente
Spajkalne komponente
Spajkalne komponente
Spajkalne komponente
Spajkalne komponente

Spajkajte vse komponente, poglejte slike v prilogi.

Moram vam povedati, ker je proteus idealen, zato so gumbi priključeni neposredno na pin mikrokrmilnika brez upora.

Toda v resničnem življenju obstaja faktor hrupa.

Recimo, da v tem projektu, če enkrat pritisnete gumb 4, na proteusu dobite 4 na LCD -ju, če pa ga pritisnete v resničnem življenju, boste zaradi hrupa dobili 44444444 na LCD -ju. Če želite to odstraniti, vsebuje tiskalna plošča 220 ohmski upor z vsakim gumbom.

5. korak: Programiranje RTC IC PCF8583

Programiranje RTC IC PCF8583
Programiranje RTC IC PCF8583

V redu, to je malo težavno, a ker je na voljo koda, ne bo tako težavno. Nisem dal datoteke.hex za programiranje RTC IC, ker jo morate ustvariti, da nastavite želeni čas, tudi leto je nastavljeno na 2015, vam ga ni treba nastaviti.

Odprite mikroC Pro iz PIC in izberite PIC18F4550, kopirajte in prilepite spodnjo kodo:

// povezave z modulom LCDssbit LCD_RS pri RB2_bit;

sbit LCD_EN pri RB3_bit;

sbit LCD_D4 pri RB4_bit;

sbit LCD_D5 pri RB5_bit;

sbit LCD_D6 pri RB6_bit;

sbit LCD_D7 pri RB7_bit;

sbit LCD_RS_Smer na TRISB2_bit;

sbit LCD_EN_Smer na TRISB3_bit;

sbit LCD_D4_Smer na TRISB4_bit;

sbit LCD_D5_Smer na TRISB5_bit;

sbit LCD_D6_Smer na TRISB6_bit;

sbit LCD_D7_Smer na TRISB7_bit;

// Prekinitev povezav modula LCD

void main () {

ADCON1 = 0x0F;

CMCON | = 7; // Onemogoči primerjalnike

OSCCON = 0b01111111; // Uporaba notranjega oscilatorja @ 8MHz

TRISB = 0x00; // PORTB za izhod (LCD)

LATB = 0xFF; // PORTC za vnos

LATC = 0xFF; // PORTD za vnos

TRISA. RA2 = 0; // RA2 za izhod

TRISA. RA3 = 0; // RA3 za izhod

UCON. USBEN = 0; // Onemogoči usb UCFG. UTRDIS = 1;

TRISD = 0xF9; // izhod PORTD

Lcd_Init (); // Inicializirajte LCD

Lcd_Cmd (_LCD_CLEAR); // Čist zaslon

Lcd_Cmd (_LCD_CURSOR_OFF); // kurzor izklopljen

Lcd_Out (1, 1, "Nastavitev časa …");

Zakasnitev_ms (1000);

I2C1_Init (100000); // inicializiramo polni glavni način

I2C1_Start (); // izda signal za zagon

I2C1_Wr (0xA0); // naslov PCF8583

I2C1_Wr (0); // začni od besede na naslovu 0 (konfiguracijska beseda)

I2C1_Wr (0x80); // za konfiguracijo napišite 80 USD. (števec premorov …)

I2C1_Wr (0); // zapiši besedo 0 do centov

I2C1_Wr (0); // napiši besedo od 0 do sekund

I2C1_Wr (0x10); // SPREMENITE TE 10 na minute, ki jih želite nastaviti

I2C1_Wr (0x17); // SPREMENITE TEGA 17 na uro, ki jo želite nastaviti

I2C1_Wr (0x23); // SPREMENITE TEGA 23 na kateri koli datum, ki ga želite nastaviti

I2C1_Wr (0x2); // TO SPREMENI v kateri koli mesec, ki ga želiš nastaviti

I2C1_Stop (); // izda signal zaustavitve

I2C1_Start (); // izda signal za zagon

I2C1_Wr (0xA0); // naslov PCF8530

I2C1_Wr (0); // začni od besede na naslovu 0

I2C1_Wr (0); // napiši 0 za konfiguracijo besede (omogoči štetje)

I2C1_Stop (); // izda signal zaustavitve

Lcd_Cmd (_LCD_CLEAR);

Lcd_Out (1, 1, "Čas nastavljen!");

Zakasnitev_ms (500);

}

_END KOD _

Ustvarite šestnajstiško datoteko iz Mikroc Pro za PIC po prevajanju zgornje kode in jo nato zapišite na sliko mikrokrmilnika PIC18F4550

Postavite ga na tiskano vezje, spajkano z vsemi komponentami, ga vklopite. Na LCD -prikazovalniku bi moralo biti prikazano "Setting Time…", potem ko se prikaže "Time Set!" izklopite napajanje. Odstranite mikrokrmilnik PIC iz DIP -a, če ste uspešno programirali PCF8583 RTC IC.:)

6. korak: Programiranje PIC18F4550

Programiranje PIC18F4550
Programiranje PIC18F4550

Šestnajstiška datoteka je že na voljo v 2. koraku. Lahko jo zapišete v svoj PIC18F4550 prek programatorja PIC.

7. korak: Zadnji korak in KONČNI TEST… !

Priključite LED v spodnji desni 3,5 mm avdio priključek in zvočni signal v zgornji desni 3,5 mm priključek. Programirani PIC18F4550 položite na tiskalnik in vklopite napajanje.

Ko je vnesena pravilna koda, poda logiko 1 nižji led, predpostavil sem, da pri dajanju logike 1 vodi odpre vrata.

Vaš elektronski varnostni sistem bi moral biti zdaj pripravljen …! In če ste vse naredili prav, bi moralo delovati v redu.

Všečkajte in spremljajte mojo Facebook stran:

www.facebook.com/pg/ElectronicProjectsbySh…

Moje spletno mesto na blogu:

epshahrukh.blogspot.com/

Priporočena: