Processzor

IntelliClock

Szerző: Robotech, 2006.11.05

IntelliClock (TM) ;-)
Azaz Óra, egy kicsit tovább gondolva....

Based on familiar PIC16F628A


Az eszköz egy igen tanulságos kis gadget, amit természetesen igen könnyen lehetne helyettesíteni boltban kapható dobozolt, gyári, mindenféle IP védelemnek megfelelő eszközzel, de akkor hol maradna a megismerés, és a munka öröme?

Vagy ez a boltban kapható dolog mégsem áll? PL.: Kaphatunk a boltban olyan kijelzőt, ami megjeleníti a jelenleg Winampban futó szám címét, hátralévő időt, bitrátát, stb..? Én még nem hallottam róla...

Hát akkor nézzük csak, mit is tud ez az óra pontosan?

- Év, dátum, hónap, nap megjelenítésű LCD kijelzős óra
- 2x16 karakteres KS0066-os vezérlőjű LCD kijelzővel
- Beállítható időzítés (ébresztés) minden napra,
- Beállítható időzítés a hét napjaira külön külön
- Menü vezérelt, 3 nyomógombbal kezelhető (ok, mégse, +1)
- Relézett kimenet a riasztásra, vagy kapcsolásra, 250V AC 5A-ig,
- Soros porton keresztül fel-le programozható minden opciója,
- Hozzáadott célszoftverrel megjeleníti a winampon éppen futó szám címét, és egyéb információkat,
- Soros portos programozás miatt implementálható más projektekbe is
- Az IC minden kiegészítő nélkül alkalmas impulzus szolgáltatásra, Port B3-on (50duty cycle)

Kapcsolási rajz




Beültetési rajz


Az Óra kapcsolási rajza igen egyszerű a NYÁK tervből könnyen kiolvasható,mindazonáltal érdemes tudnunk, hogy az IC mely lábai hogyan vannak konfigurálva,és ezáltal bármilyen kapcsolási rajzot,és NYÁK tervet kreálhatunk hozzá. PIC16F628A lábkiosztás (program alapján):

RA0 LCD-nek enable bemenet
RA1 LCD-nek register select bemenet
RA2 OK gomb,alaphelyzetben nyitott, 5V a bemeneten
RA3 +1 gomb, alaphelyzetben nyitott, 5V a bemeneten
RA4 Mégse gomb, alaphelyzetben nyitott 5V a bemeneten
RA5 MCLR (lehet +5v-ra kötni)
RA6 OSC
RA7 OSC
RB0 Kimenet, riasztás esetén 5V 20mA levehető (most relézve tranzisztorral)
RB1 RS232 comm.
RB2 RS232 comm.
RB3 Impulzus kimenet, 50% duty cycle.
RB4 LCD-nek PORT4 adatbemenet
RB5 LCD-nek PORT5 adatbemenet
RB6 LCD-nek PORT6 adatbemenet
RB7 LCD-nek PORT7 adatbemenet



Ha valaki pontosan ezt a kapcsolást szeretné megépíteni így ahogy van, úgy a következő alkatrészekre lesz szüksége:

1db EW162G0YMY LCD kijelző (www.edtc.com, www.chipcad.hu)
1db PIC16F628 mikrovezérlő
1db MAX232 rs232 illesztő
1db SUB-D 9 apa csatlakozó
1db FTR F3 5V relé
1db BC182 tranzisztor
3db mikrokapcsoló
2db LED
2db sorkapocs
1db 1000 μF elkó
1db 1N4001 dióda
1db 4MHZ quartz(minél pontosabb annál jobb)
1db 7805 feszültség stabilizátor IC
1db 1K potméter a kijelző fényerő állításhoz
4db 1 kΩ ellenállás 1206-os tokozású
4db 1 μF kondi 1206-os tokozású

Néhány szó az LCD-ről:



Bármilyen olyan LCD modult lehet használni amely KS0066-os vezérlővel van ellátva,és 2x16 karakteres. Ezekből lehet kapni hagyományos sárga háttérvilágításút (ezek olcsóbbak), de van kék hátteres, vagy akár piros színű is. A leggyakoribb mérete a karaktereknek 5,55 mm-es magasság, de lehet kapni 9,5 mm magas karakterűt is, amelyet így messzebbről is jobban látni. Az LCD panelon attól függően, hogy háttérvilágításos-e vagy sem, 14, vagy 16 db forrfül található, ezeket következő képpen kellene bekötni:
1 0V
2 +5V
3 0V (kijelző kontraszt)
4 register select (PIC)
5 read/write (0V mivel csak írunk bele)
6 Enable (PIC)
7 DB0 (4 bites módban nem használt)
8 DB1 (4 bites módban nem használt)
9 DB2 (4 bites módban nem használt)
10 DB3 (4 bites módban nem használt)
11 DB4 (PIC)
12 DB5 (PIC)
13 DB6 (PIC)
14 DB7 (PIC)
15 háttérvilágítás + 5V
16 háttérvilágítás - 0V (1Kohmos potencióméterrel 0 V-ra)

Ezeknek az LCD moduloknak van 8 bites, és 4 bites interfész módja is, most itt a PIC kevés lába miatt, illetve a sok funkciója miatt 4 bites módban használjuk a kijelzőt, ekkor a teljes byte-ot 2 egymást követő nibble-ben adja át az LCD-nek. Ezek között egy enable ciklust csinál, hogy az LCD felismerje a 2. nibble-t.

Az LCD modulból ki lehetne olvasni a karakerek pozícióját, a kurzor helyzetét, stb... amit most hanyagolunk, ezért kerül a read/write láb 0V-ra állandóra. Más esetben itt kellene jeleznünk, hogy kiolvasni szeretnénk belőle.

A háttérvilágítás betáplálására érdemesnek tartom a potenciométer bekötését, mivel ha +5V-al direktbe megtápláljuk nem lesz túl hosszú életű, és amúgy is túl világos lesz. Kb 1K-val egész lineárisan lehet állítani a fényerőt.

Hobbista kollégáknak gondolatébresztőül megjegyzem, hogy most tervezem, hogy LDR07-es fényellenállás segítségével a mindenkori környezeti világítás függvényében szeretném automatikusan állítani a háttérvilágítás fényerejét...


LCD Interfész


Működés, programozás:




Az Eszköz programozása történhet a 3 db nyomógombbal vagy számítógépen keresztül ezen kívül bármilyen olyan eszközön keresztül, ami képes RS232 protokollon 9600 bps 1 stop 0 paritással kommunikálni. Így tehát ha pl készítünk egy olyan kapcsolást, amelyhez szükségünk van egy pontos órára, akkor ezt az IC-t használhatjuk. Soros porton beállíthatjuk a pontos időt, és le is kérdezhetjük azt, és dátumot, pontosan úgy, mintha pl egy PCF8583-unk lenne, csak nem I2C protokollal!!!



A Soros porton történő programozás kódjai (Decimal) a következőek:

;255: PING
;254: PC IDOT,es offszetet KER
;253: PC IDOT, es offszetet KULD
;252: PC ÖSSZES ADAT KÉRÉS EEPROMBOL,
;251: PC ADATOKAT KULDD EEPROMBA
;250: ADÁSVÉGE JEL ÓRÁBÓL.
;249: Nem használatos.
;248: FOLYAMATOS IDÕKÜLDÉS MINDEN MP-BEN
;247: FOLYAMATOS IDÕKÜLDÉS VÉGE
;246: Kimenet próba, köv. bájt >0 akkor 1-es, ha 0, akkor 0
;245: PC napot,napnevet,hónapot,évet KÉR
;244: PC napot,napnevet,hónapot,évet KÜLDD
;
;
;240: PC IDÕZÍTÉST ÁLLIT BE, köv.bájt: EGYÉB ESETÉN NINCS
; 49 ESETÉN MINDEN NAP VAN
; 50 ESETÉN 7NAPOS

Nyomógombokkal való beállítás menü segítségével történik, ahogy azt minden modern eszközben megszokhattuk. Mivel a menü készítése a program memóriából igen sok helyet vesz el, így nem érhető el minden funkció a nyomógombok segítségével, a 7 napos időzítés időadatainak beállítása csak soros porton lehetséges, minden más funkció elérhető. A menü felépítése a következő:





Az offszet beállításához úgy érzem egy pár sort mindenképpen kell írni.:

Mivel a quartz pontossága, és a PIC utasításvégrehajtása változhat a gyártás következtében, ezért található meg az offszet beállítás, amely másodpercenként kb 10 μs-enként lehet állítani az óra 'pontos járását'. Ez alapértelmezésben 192, mindenkinek saját magának ki kell majd kisérletezni, hogy mikor jár legpontosabban az óra. Nálam így naponta kb 2 másodpercet sietett. Ez szerintem egész jónak mondható, a LEVIS márkájú 12 éves rádiós órám is csal ennyit.



Fejlesztési lehetőségek, Outro:

A panelon megtalálható egy 6 eres dugaszolható aljzat, amiről még nem esett szó.

Amint azt látjátok az aljzat a nyomgómbsorral kapcsolatban áll, és kap +5 V-ot, és 0V-ot. Ez az a felület, amelyre a későbbiekben INFRAVÖRÖS távirányító jelfeldolgozó áramkört tudunk illeszteni, amely szimulálja a gombok lenyomását.

Továbbiakban ha ezt ébresztőórának szeretnénk használni a későbbiekben, akkor igen jópofa lenne, ha fel tudnánk rá venni valami zenét, és azt játszaná vissza ébresztéskor. Ehhez a relé helyére illeszthetnénk ISD2560-as, vagy ISD1620-as hangfelvevős chipet, amivel aztán igazán frankó ébresztő órát kaphatnánk....

Úgy gondolom, igen komolyan nézne ki úgy is, ha számítógépház MODdolásnál használnánk fel, így kapva egy ébresztős számítógépet, amelynek nem kell bekapcsolva lenni ahhoz, hogy felébresszen minket (tápot ATX-ről venni), illetve maga a számítógép is be tudni kapcsolni adott időben (ATX nyomógombbal párhuzamosan a relét), illetve ha megy a számítógép zenehallgatás céljából, akkor a monitort ki is nyomhatjuk, az LCD-n látjuk az éppen szóló szám adatait....

A működtető program teljes verziója, a NYÁK terv DWG-ben és a PC-s IntelliClock 1.0 kezelő program itt letölthető


Sikeres utánépítést kívánok mindenkinek! Bármilyen kérdéssel, ötlettel, javaslattal, ismerettel forduljatok hozzám!


Szívesen venném bárkitől, aki utánépíti ezt az áramkört ha egy pár sort írna róla milyen alkalmazásban, milyen módosításokkal használja.

Az eszközben található program saját tulajdonomat képezi, a program magánszemélyek önképzését, szórakozását szolgálhatja csupán ki, üzleti célra való használatához, értékesítéséhez nem járulok hozzá.
Az írást küldte: Hermann MárkEmail a szerzőnek

Legújabb írás:

Erősítők, előerősítőkTelefonkihangosító
2017. február 23. 12:44

További cikkek

2005. október 12. 15:23
2011. július 12. 08:48
2016. december 13. 10:11
2014. december 01. 11:18
2006. november 21. 20:00
2005. május 11. 13:30
2007. október 27. 11:29
2005. május 27. 09:10
2010. március 01. 08:56
2005. augusztus 08. 10:30
2005. május 27. 17:35
2014. december 14. 20:50
2010. október 09. 09:54
2006. november 06. 19:53

Vélemények

Legfrissebb hozzászólások

Erősítők, előerősítők25W-os erősítő TDA2050-el
2017. március 24. 17:48:59
Erősítők, előerősítők25W-os erősítő TDA2050-el
2017. március 24. 17:45:33
Erősítők, előerősítők2x4 W-os A osztályú erősítő ECL82 csővel
2017. március 23. 21:43:55
TápegységekFeszültség szimmetrizáló nagy terhelhetőséggel
2017. március 22. 04:39:20
TápegységekFeszültség szimmetrizáló nagy terhelhetőséggel
2017. március 21. 15:23:50

Írd meg a véleményed a cikkel kapcsolatban!

bsselektronika.hu/index.php?w=wY9Zx7z7gK