PC A PICAXE 08M2

PCF8574

Vágner Vlastimil

  Přípravek umožňuje ovládat (modul) osazený integrovaným obvodem PCF8574 mikroprocesorem PICAXE 08M2, zadávání dat pro PCF8574 je po sběrnici I2C z mikroprocesoru PICAXE 08M2 který data přijímá z počítače PC. Přípravek se k počítači PC připojuje na sériový port COM nebo pomocí redukce USB/COM, může posloužit pro inspiraci při vlastních pokusech. Další jednoduchá zapojení s PICAXE jsou v [1]

 

POPIS PŘÍPRAVKU A MODULU S PCF8574

    Přípravek zapojený dle schéma na Obr.č.01 je společně s modulem PCF8574 napájen napětím 5V DC toto napětí je stabilizováno IO 7805, (schéma zapojení stabilizace s IO 7805 je dle továrního zapojení vstup a výstup IO 7805 je proti rozkmitání blokován  keramickými kondenzátory 100nF). Modul PICAXE je osazený JUMPEREM JP1 kterým se propojuje programovací vstup mikroprocesoru označený „PIN2“. Při programování mikroprocesoru se propojí vstupy na JP1 č.1 a 2 což umožní nahrání programu do mikroprocesoru z PC, po naprogramování se přepojí propojka na JP1 na pozice 2 a 3, PIN2 je pak trvale připojený přes rezistory 22K a 10K na záporný napájecí pól(-). Propojením PINŮ na JUMPERU JP1 na pozici 2 a 3 jsou do mikroprocesoru na pinu označeném „PIN3“ nahrávány data do mikroprocesoru pro ovládání PCF8574, vstup „PIN3“ je na JUMPER JP1 připojen přes odporový dělič z rezistoru 22K a rezistoru 10K. Modul PCF8574 je osazen na DPS konektory které umožňují zapojit na sběrnici I2C více modulů maximálně však osm v mém případě je použit pouze jeden modul, na DPS je osazen tří segmentový DIL spínač pro volbu adres. Základní adresa modulu osazeného PCF8574 pokud jsou všechny tři DIL spínače spojeny se záporným napájecím napětím (-) je 32 viz obrázek č.06 tato adresa společně s bitem R/W pak jako celek má hodnotu 64 TATO HODNOTA SE ZADÁVÁ PAK V PROGRAMU „POZOR INTEGROVANÝ OBVOD PCF8574A MÁ JINOU ADRESU BLIŽŠÍ POPIS JE V DATASHEETU K UVEDENÝM INTEGROVANÝM OBVODŮM“ vstupní linky SCL a SDA jsou již osazeny při výrobě modulu zdvihacími rezistory 4K7 tak že není třeba osazovat další rezistory tyto osadíme pouze tehdy pokud si budeme sami vyrábět DPS osazenou PCF8574 nebo PCF8574A . Po připojení napájecího napětí k PCF8574 jsou všechny vstupně/výstupní linky P0 – P7 nastaveny na vysokou hodnotu „H“ a je na nich plné kladné napětí,v tomto případě je možné tyto vstupy P0 - P7 stáhnout na zápornou hodnotu napětí a linky načítat pokud chceme vstupní linky načítat je nutné zadat adresu 65 bit R/W má hodnotu „1“. Pro posílení výstupních linek je možné použít integrovaný obvod ULN2803 kterým můžeme načítat vstupy PCF8574 nebo ovládat například relátka, motorky a podobně schéma zapojení s ULN2803 je na obrázcích č.04 a č.05. Na o obrázku č.02 je nákres PCF8574 na obrázku č.03 je schéma zapojení posílení výstupních linek P0 – P7 pomocí tranzistorů s vodivostí NPN  po připojení napájecího napětí k PCF8574 jsou všechny tranzistory ve vodivém stavu a jejich vypnutí a následné ovládaní je prováděno programově, jako první je do PCF8574 vyslána hodnota „0“ tím se všechny linky P0 – P7 nastaví na hodnotu „L“ a poté pak již hodnota která má ovládat příslušný výstup například hodnota „1“ sepne výstupní linku P0, hodnota „6“ sepne výstup P1 a P2 ostatní linky P0, P3, P4, P5, P6 a P7 zůstanou vypnuté. Po úpravě zapojení a použití tranzistorů s opačnou vodivostí PNP jsou po připojení napájecího napětí k PCF8574 všechny tranzistory v nevodivém stavu a zapnutí požadovaného výstupu P0 – P7 je provedeno programově, po zadání hodnoty „0“ se všechny tranzistory uvedou do vodivého stavu. Pokud potřebujeme aby se sepnul tranzistor ovládaný výstupem „P0“ zadáme hodnotu 254, v programu pro ovládání zařízení je pak provedeno přepínání výstupních linek P0 – P7 například výpočtem tak že od hodnoty 255 odečteme hodnotu požadovaného sepnutého výstupu P0 – P7 a výsledek pak zadáme do PCF8574. Například chceme sepnout linku P3 + P5 hodnota linky P3 je 8, hodnota linky P5 je 32 součet je 40, od hodnoty 255 odečteme hodnotu 40 (255 – 40 =  215 ) tuto hodnotu zadáme do PCF8574, možnosti napsaného programu jsou čistě individuální a záleží na aplikaci kterou bude program ovládat. Pro odzkoušení samotného modulu (BEZ POUŽITÍ DOPLŇKŮ PRO POSÍLENÍ VÝSTUPŮ) je použit program na využití PCF8574 pro načítání vstupů a program pro využití PCF8574 na ovládání výstupů P0 – P7. Program pro PC kde se na monitoru PC zobrazují informace co se zadává a v případě načítání hodnot na vstupech P0 – P7 načtené hodnoty, program je možné využít i s jiným mikroprocesorem pro který je napsán program tak aby umožňoval zadávání dat do mikroprocesoru z PC a načítání dat z mikroprocesoru do PC a zobrazování na monitoru PC komunikace mezi mikroprocesorem a počítačem probíhá po RS 232.

              

 

 

 

                                    

 

       

 

                            

 

                        

 

 

PROGRAMY K PICAXE A POČÍTAČI

    Program k PC má název PICAXE I2C.EXE  je uložen v adresáři PROGRAMY S PODADRESÁŘEM „POČÍTAČ“, programy pro mikroprocesor mají názvy čtení_1.bas, čtení_vstupů.bas, zápis_vstupů.bas programy jsou v podadresáři „PICAXE“.

 

POPIS PROGRAMU A TLAČÍTEK PICAXE I2C : Po spuštění programu jako první zvolíme sériový port, po volbě portu zvolíme komunikační rychlost TUTO MUSÍME ZVOLIT SHODNOU S RYCHLOSTÍ ZADANOU V MIKROPROCESORU ZDE VOLÍME RYCHLOST 4800Bd, POKUD BY SE ZADALA JINÁ RYCHLOST PROGRAM BY ODESÍLAL DO PICAXE HODNOTY KTERÉ BY ALE PICAXE ŠPATNĚ VYHODNOCOVAL!!!.

TLAČÍTKO OTEVŘÍT COM : Kliknutím myši na tlačítko otevřeme COM pro komunikaci s PICAXE po zadání hodnot „volby portu, komunikační rychlosti.

TLAČÍTKO SMAZAT ZÁPIS : Kliknutím myši na tlačítko smažeme data v okně „ZÁPIS DO PICAXE“

TLAČÍTKO SMAZAT ČTENÍ : Kliknutím myši na tlačítko smažeme data v okně „ČTENÍ Z PICAXE“

TLAČÍTKO SMAZAT VŠE :  Kliknutím myši na tlačítko smažeme data v oknech „ZÁPIS DO PICAXE A ČTENÍ Z PICAXE“.

TLAČÍTKO UKONČIT PROGRAM : Kliknutím myši na tlačítko ukončíme program stejně tak jako když klikneme tlačítkem myši na „X“ v horní liště před ukončením je uzavřen COM PORT a tím je umožněno tento používat jinými aplikacemi.

 PROGRAM VYUŽÍVÁ KNIHOVNU RS232.DLL KTERÁ MUSÍ BÝT UMÍSTĚNA SPOLEČNĚ S PROGRAMEM VE STEJNÉM ADRESÁŘI.

 

OVLÁDÁNÍ MODULU A PICAXE  PROGRAMEM

    Po propojení přípravku PICAXE kde je nahrán program „zápis_vstupů.bas“ s modulem osazeným PCF8574 a počítačem spustíme na počítači program a po zadání COM PORTU, komunikační rychlosti klikneme myší na tlačítko „OTEVŘÍT COM“ poté myší klikneme do levého horního okna „ZÁPIS DO PICAXE“ kde poté začne mrkat kursor. Nyní zapneme napájení PICAXE společně s modulem a v okně „ČTENÍ Z PICAXE“ se zobrazí „zadej adresu I2C“ do okna „ZÁPIS DO PICAXE“ zadáme hodnotu 64 a stiskneme klávesu „ENTER“, nyní se v okně „ČTENÍ Z PICAXE“ zobrazí „zadej hodnotu 0 - 255“ do okna „ZÁPIS DO PICAXE“ zadáme hodnotu „0“ a stiskneme klávesu „ENTER“. Pokud nyní vezmeme DMM a proti zápornému napájecímu napětí měříme vstupy P0 až P7 nesmíme naměřit žádné kladné napětí („pokud napětí naměříme zadáme znovu hodnotu „0“ pokud i nyní po druhém zadání hodnoty „0“ do PCF8574 naměříme na některém výstupu P0 – P7 kladné napájecí napětí je možné že uvedeny IO není v pořádku). V okně „ČTENÍ Z PICAXE“ je opět zobrazeno „zadej hodnotu 0 - 255“. Do okna  „ZÁPIS DO PICAXE“ zadáme libovolnou hodnotu (možnost zadání hodnoty je 0 až 255) a stiskneme klávesu „ENTER“, nyní opět můžeme pomocí DMM měřit napětí na výstupech P0 až P7 a pokud se zadaná hodnota shoduje s výstupem P0 až P7 tak na tomto výstupu naměříme kladné napětí proti zápornému napájecímu napětí.  Pokud chceme zadávat nová data a v oknech „ZÁPIS DO PICAXE a ČTENÍ Z PICAXE“  je již hodně dat je vhodné kliknout myší na tlačítko „SMAZAT VŠE“  poté kliknout myší do levého horního rohu v okně „ZÁPIS DO PICAXE“ a zadat hodnotu 0 – 255 a stisknout klávesu „ENTER“. Nyní se v okně „ČTENÍ Z PICAXE“ bude opět zobrazovat „zadej hodnotu 0 – 255“. Pokud je v PICAXE nahrán program „čtení _vstupů.bas“ je postup spuštění programu na PC shodný s předešlým popisem : v okně „ČTENÍ Z PICAXE“ se zobrazí na monitoru PC „zadej adresu I2C“ zadáme adresu „64“ a stiskneme klávesu ENTER, nyní se v okně „ČTENÍ Z PICAXE“ zobrazí „zadej hodnotu 255“ zadáme hodnotu a stiskneme klávesu ENTER. Nyní se v okně „ČTENÍ Z PICAXE“ pravidelně zobrazuje hodnota načtená ze vstupů PCF8574, pokud nyní některý vstup P0- P7 spojíme se záporným napájecím napětím zobrazí se v okně „ČTENÍ Z PICAXE“ hodnota vstupu. Program ukončíme kliknutím myši na tlačítko „UKONČIT PROGRAM nebo na „X“. Hodnoty I/O linek P0 – P7 PCF8574 jsou P0 = 1, P1 = 2, P2 = 4, P3 = 8, P4 = 16, P5 = 32, P6 = 64, P7 = 128 součet všech I/O linek je 255.

 

          

                  

                                        Volba komunikační rychlosti zde 4800

   

               

   

  

        

                                               Otevření COM PORTU

 

         

                         Kliknutí levým tlačítkem myši v okně „zápis do PICAXE“

 

     

                             Zadání adresy PCF8574 do programu v PICAXE

 

         

                                           Zadání hodnoty do PCF8574 

 

         

              Načtení hodnoty linek P0 – P7 vstupy nejsou připojeny na (-) pól zdroje

 

        

                           Načtená hodnota spojené linky P0 s (-) pólem zdroje

 

                                            Použitý modul s PCF8574

 

 

                               Testování modulu s PCF8574 určený pro LCD displeje

 

 

                Modul PICAXE 08M2 osazený na univerzální destičce

 

      případné dotazy zodpovím na :

      vagnervlastimil@seznam.cz

      

     Použité prameny :

     Datasheet k modulu A4988

     Popis mikroprocesoru PICAXE 08M2 ročník PE2012, PE2013

     Burkhart Kainka Elektronika s podporou PC Visual Basic v praxi

    [1] www.mojeelektronika.mzf.cz články PC A PICAXE O8M2