slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Program de formare : Mecatronica I Platforme mecatronice pentru educatie si formare flexibila PowerPoint Presentation
Download Presentation
Program de formare : Mecatronica I Platforme mecatronice pentru educatie si formare flexibila

Loading in 2 Seconds...

play fullscreen
1 / 9

Program de formare : Mecatronica I Platforme mecatronice pentru educatie si formare flexibila - PowerPoint PPT Presentation


  • 81 Views
  • Uploaded on

Program de formare : Mecatronica I Platforme mecatronice pentru educatie si formare flexibila. Titlul lucrarii: Microcontrolere – aplicatii. Grupuri de LED-uri care pulsează.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Program de formare : Mecatronica I Platforme mecatronice pentru educatie si formare flexibila' - neve-finley


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Program de formare: Mecatronica I

Platforme mecatronice pentru educatie si formare flexibila

Titlul lucrarii:Microcontrolere –aplicatii

grupuri de led uri care pulseaz

Grupuri de LED-uri care pulsează

Scopulaplicaţieieste de a scrieprogramulpentruaprindereaintermitentă la un interval de timp de 100000ms a ledurilor 0 şi 7.

Structuraprogramuluiesteurmatoarea:

#include “16F917.h”

# use delay (clock=8000000)

void main ()

{

while(1){

output _B(0x81)

delay_ms(1000000)

output _B(0x81)

delay_ms(1000000)

}

}

slide3

Explicareaprogramului: #include “16F917.h”aceastainstructiune include in procesul de compilarefunctiilecuprinse in fisierul “16F917.h”# use delay (clock=8000000)seteazafrecventa de utilizare a platformei ( de fapt a microcontrolerului) void main (){incepefunctiaprincipala a programului care nu are parametric si nu returneazanimic while(1){buclărepetitivă – câttimpcondiţiadintreparantezelerotundeesteadevărată se executăinstrucţiuniledintreacolade. Încazulnostrubucla se repetă la infinit, deoarece 1 esteasimilatvaloriilogice TRUE

slide4

In sistemulbinarledurilor le corespundvalori.

Ledurile 0 si 7 : B0(8) si B7(1), in hexazecimalavem 81

output _B(0x81)

se trimite 1 logic petoripiniiledurilor B, adica se aprindledurile 0 si 7

output _B(0x00)

se trimite 0 logic petotipiniiledurilor B, adica se sting ledurile 0 si 7

delay_ms(V)

se introduce o intarziere

}

se terminabuclarepetitivawhile

}

Se terminafunctiaprincipala main , adica se terminaprogramul

astabil cu grupuri de led uri

Astabil cu grupuri de LED-uri

Scopul aplicatiei este de aprinderea alternativa la un anumit interval de timp a doua grupuri de LED-uri.

Aprinderea alternativă a LED-urilor 1 şi 5 şi apoi 3 şi 7, la un interval de 800 ms are următorul program:

#include “16F917.h”

#use delay(clock=8000000)

void main() {

         while(1)  {

output_B(0x44);

delay_ms(800);

output_low(0x11);

delay_ms(800);

           }

}

slide6

Pentrurealizareaunui prim exemplu de program in cadrulcaruiavafiscrispeafisajcuvantul PIC, vorfiutilizate ca instructiuninoiurmatoareleuinstructiunibyte const DigMap[x]={...}; → creareaunui vector de date, de tip bit;#define DIG1 … → instructiunecedefinestenumeleuneivariabile (dupa o astfel de instructiune - directivaă nu se pune „ ; ” )setup_lcd(LCD_MUX14,0); → comandă de inițializare a LCD-ului. L lcd_symbol(val1,destinație); → comandăprin care se transfera (scrie) „val1” la adresa „destinație”. Ambele (val1 șidestinație), se vorscrieînhexazecimal!

afisarea unei cifre

Afisarea unei cifre

Scopulapicatieieste de a afisacifrelor de la 0 la 4 simultanpeceitreidigiti , la interval de o secunda.

Programulpropusesteurmatorul:

#include “16F917.h”

# use delay (clock=8000000)

byte const

Dig Map[10]={ 0xFD,0x60,0xF3,0x66,0xB7,0xBF,0xE0,0xFF,0xE7,0x00};

#define DIG1 COM0+22,COM0+23,COM2+23,COM3+22,COM2+22,COM1+22,COM1+23

#define DIG2 COM0+06,COM0+21,COM2+21,COM3+6,COM2+6,COM1+6,COM1+21

#define DIG3 COM0+03,COM0+11,COM2+11,COM3+03,COM2+03,COM1+03,COM1+11

void main() {

int8 n;

setup_lcd(LCD_MUX14,0);

for(n=0;n<5;n++)

{

lcd_symbol(DigMap[n],DIG1);

lcd_symbol(DigMap[n],DIG2);

lcd_symbol(DigMap[n],DIG3);

delay_ms(1000);

}

}

slide8

Explicareaprogramului: #include “16F917.h”aceastainstructiune include in procesul de compilarefunctiilecuprinse in fisierul “16F917.h”# use delay (clock=8000000)seteazafrecventa de utilizare a platformei ( de fapt a microcontrolerului)byte const declarvariabila de tip byte, numita constDig Map[10]={ 0xFD,0x60,0xF3,0x66,0xB7,0xBF,0xE0,0xFF,0xE7,0x00};codulpentrucifre#define DIG1 COM0+22,COM0+23,COM2+23,COM3+22,COM2+22,COM1+22,COM1+23adreseleundevorfitrimisevalorilevoid main() {incepeprogramulint8 ndeclarvariabila

slide9

setup_lcd(LCD_MUX14,0)comandă de inițializare a LCD-ului.lcd_symbol(DigMap[n],DIGi); → comandăprin care se transfera (scrie) DigMap[n] la adresaDIGi. for(n=0;n<5;n++) se repeatapana se terminaprogramul, afiseaza 0,1,2,3,4n++=n+1