Home - Rasfoiesc.com
Educatie Sanatate Inginerie Business Familie Hobby Legal
Doar rabdarea si perseverenta in invatare aduce rezultate bune.stiinta, numere naturale, teoreme, multimi, calcule, ecuatii, sisteme




Biologie Chimie Didactica Fizica Geografie Informatica
Istorie Literatura Matematica Psihologie

Calculatoare


Index » educatie » » informatica » Calculatoare
» PROGRAMAREA SI UTILIZAREA SUBSISTEMELOR NTRARI SI IESIRI NUMERICE ALE INTERFETEI AX 5411


PROGRAMAREA SI UTILIZAREA SUBSISTEMELOR NTRARI SI IESIRI NUMERICE ALE INTERFETEI AX 5411


PROGRAMAREA SI UTILIZAREA SUBSISTEMELOR NTRARI SI IESIRI NUMERICE ALE INTERFETEI AX 5411

1.Obiectivele lucrarii

a) Insusirea modului de programare a subsistemului intrarilor numerice (SIN) prin operarea porturilor de intrare - iesire aferente;

b) Insusirea modului de programare a subsistemului iesirilor numerice (SEN) prin operarea porturilor de intrare - iesire aferente;



c) Elaborarea si implementarea unui program in C++Builder pentru realizarea unui decodificator software binar - hexa (7 segmente) ;

d) Elaborarea unui program in C++Builder pentru comanda unui dispozitiv de afisare cu 7 segmente;

2. aparatura si suporturile utilizate:

a) PC in configuratia unitate centrala, monitor, tastatura, mouse;

b) Modul pentru testarea sectiunilor numerice ale interfetei (figura 6.1);

d) Precizarile din prezentul indrumar;

e) Manualul utilizatorului pentru interfata AX 5411 (sectiunile referitoare la descrierea interfetei si prezentarea functiilor porturilor de intrare - iesire;

f) Manuale de prezentare a mediului C++Builder.

3. Breviar

3.1. Caracteristicile principale ale sistemului de interfata AX 5411

In continuare se reiau caracteristicile subsistemelor intrari si iesiri numerice ale sistemului de interfata AX5411. Pentru detalii privind caracteristicile acestui sistem , vezi precizarile din lucrarea nr. 4.

Subsistemul intrarilor numerice

Numar de intrari 8 (DI0.DI7);

Tip semnal acceptat compatibil TTL.

Subsistemul iesirilor numerice

Numar de iesiri 8 (DO0.DO7);

Tip semnal compatibil TTL.

Fig. 6.1. Schema modulului pentru testarea sectiunii numerice a interfetei (MTSN) : DI0 . DI3 - intrari numerice; DO0 . DO3 - iesiri numerice; K . K - comutaloare; D . D - diode cu emisie luminoasa (LED); R . R - rezistoare; DGND - masa numerica.

 



3.2. Programarea SIN si SEN prin operarea porturilor interfetei

AX 5411

Dupa cum se stie din lucrarea numarul 4, adresa portului de baza (IOPORT) pentru interfata AX5411este 0x300 (hexa). Incepand cu aceasta adresa, interfata utilizeaza 16 adrese consecutive care constituie spatiul de intrare - iesire (I/E) al interfetei. In tabelul 6.1 se prezinta porturile aferente SIN si SEN. Reamintim ca asupra unui port se pot efectua operatii de citire (R = Read in tabelul 6.1) respectiv de inscriere (W = Write in tabelul 6.1).

Tabelul 6.1

Semnificatiile porturilor de adresare pentru SIN si SEN ale interfetei AX 5411

LOCATIE

FUNCTIE

TIP

adresa de baza + 3

Digital Input - SIN

R

adresa de baza + 3

Digital Output - SEN

W

In continuare se prezinta succint semnificatiile si modul de operare a portului utilizat de SIN si de SEN.

Portul adresa de baza+3, la citire are structura din figura 6.2. In bitii IP0 - IP7 se inscriu cei 8 biti care corespund intrarilor numerice DI0 - DI7.

 

Fig. 6.2.

 


Portul adresa de baza+3, la scriere are structura din figura 6.3. In bitii OP0 - OP7 se inscriu cei 8 biti care vor fi transmisi la iesirile numerice DO0 - DO7.

 


Observatii

Scrierea intr-un port se face cu instructiunea axOutp, care are sintaxa axOutp(port,val), in care port reprezinta adresa portului, iar val variabila care contine valoarea ce se va transfera.

Citirea unui port se face cu instructiunea axInp, care are sintaxa val=axInp(port), in care port reprezinta adresa portului, iar val variabila care contine valoarea ce se preia prin citire.

Comutatoarele K0 . K3 ale modulului MTSN conecteaza intrarile DI0 - DI3 la masa (inchis - intrare zero) sau le lasa in aer (deschis - intrare 1).

In continuare se prezinta codurile sursa al functiilor Achiz_N si Gen_N, care permit achizitia / generarea unui octet de pe / pe portul IOPORT +3.

//Functia achizitie intrari numerice

int Achiz_N()

//Functia generare iesiri numerice

void Gen_N(int n) // n = octetul care se genereaza

Se prezinta mai jos codul sursa al programului P1 care realizeaza urmatoarele:

achizitia canalelor numerice DI0 - DI3 (la inchiderea unuia din comutatoarele K0 - K3) butonul aferent se activeaza ;

la apasarea unui buton activat se actioneaza iesirea numerica respectiva (concretizata in aprinderea LED-ului aferent de pe panoul MTSN ).

//Program P1 pentru utilizarea SIN si SEN ale interfetei AX5411

#include <vclvcl.h>

#pragma hdrstop

#include 'Unit1P1.h'

#include 'axdrv.h'

#define IOPORT 0x300

#pragma resource '*.dfm'

int nach=0;

unsigned char ngen=0;

TForm1 *Form1;

//Functia achizitie intrari numerice

int Achizitie_N()

//Functia generare iesiri numerice

void Gen_N(int n)

// n = numarul care se genereaza

__fastcall TForm1::TForm1(TComponent* Owner) //Constructor

: TForm(Owner)

void __fastcall TForm1::Timer1Timer(TObject *Sender) //Timer

if ((nach&2)==2)

Button2->Enabled=true;

else

if ((nach&4)==4)

Button3->Enabled=true;

else

if ((nach&8)==8)

Button4->Enabled=true;

else

void __fastcall TForm1::Button5Click(TObject *Sender) //Buton5

void __fastcall TForm1::Button1Click(TObject *Sender) //Buton1

void __fastcall TForm1::Button2Click(TObject *Sender) //Buton2

void __fastcall TForm1::Button3Click(TObject *Sender) //Buton3

void __fastcall TForm1::Button4Click(TObject *Sender) //Buton4

B. Desfasurarea lucrarii

a) Se realizeaza montajul din figura 6.4 in care subsistemele SIN (prin canalele DI0 - DI3 conectoarele 28,30,32,34) si SEN (prin canalele DO0 -DO3 - conectoarele 27,29,31,33) se conecteaza la modulul MTSN.

b) Se alimenteaza sistemul cu tensiune.

c) Se lanseaza mediul C++ Builder (dublu click pe icon-ul corespunzator din desktop) .

c) Se selecteaza din Main Menu optiunea File si apoi OpenProject urmat de calea D:DIDACTICSMP1905 (a sau b)LUC6Project1.mak.

e) Se executa click pe butonul Run din Toolbar (aceasta actiune este urmata de lansarea in executie a programului P1 al carui text sursa este prezentat in breviar);

f) Se examineaza in programul P1 modul de lucru cu functiile Achiz_N si Gen_N .

g) Se elaboreaza programul P2 pentru afisarea starii intrarilor numerice DI0 - DI3 prin intermediul unui digit grafic.



Fig. 6.5.

Pe forma programului (Form1) in Caption-ul careia se va afisa textul "Laborator Informatica Industriala" sunt dispuse urmatoarele obiecte reprezentate in figura 6.5:

un buton (Buton 1) iesirea din program (Caption Exit);

cinci casete de editare (Edit1, 2, 3, 4,5) cu urmatoarele functii:

Edit1 - inscrierea valorii in zecimal corespunzatoare starii celor 4 intrari numerice DI0 - DI4;

Edit2 - inscrierea starii intrari numerice DI3 ;

Edit3 - inscrierea starii intrari numerice DI2 ;

Edit4 - inscrierea starii intrari numerice DI1;

Edit5 - inscrierea starii intrari numerice DI0;

5 obiecte tip TImage (Image1,2,3,4,5) cu urmatoarele functii:

Image 1 - in care se va incarca imaginea corespunzatoare digitului care trebuie afisat (se realizeaza cu proprietatea LoadFromFile a obiectului de tip Timage- vezi Lucrarea 4) ;

Image 2,3,4,5 - in care se vor incarca imaginile corespunzatoare starii comutatoarelor K3, K2, K1; K0 (se realizeaza cu proprietatea LoadFromFile a obiectului de tip Timage- vezi Lucrarea 4);

4 obiecte de tip eticheta Label (Label 1,2,3,4) in care se vor afisa simbolurile intrarilor numerice (DI3 - DI0);

un obiect Timer (Timer1), cu Interval=100 ms pentru intervalul de achizitie a intrarilor numerice.

Observatii:

pentru realizarea programului P2 se vor utiliza module din programul P1;

pentru afisare starii comutatoarelor se gasesc in directorul curent imaginile inchis.bmp , deschis.bmp, iar pentru afisare digitului se gasesc imaginile cu numele 0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f.bmp reprezentand starile posibile ale digitului.

in figura 6.5 se prezinta o imagine obtinuta la rularea programului P2 (forma executabila a acestui program - P2.exe - se gaseste in directorul de lucru al subgrupei).

Fig. 6.5.

h) Se elaboreaza programul P3 pentru afisarea starii iesirilor numerice DO0 - DO6) pe un element cu 7 segmente (conectarea SEN la MTSN se realizeaza conform schemei din figura 6.6).

Fig. 6.6. Schema de conectare pentru comanda elementului de afisare cu 7 segmente.

 



Prin program se va realiza comanda digit-ului (pentru a a afisa 15 stari - 0,1,2,3.4,5,6,7,8,9,A,b,C,d,E,F) in trei maniere:

prin actionarea unui obiect de tip TrackBar;

prin actionarea a 16 butoane;

in regim de numarare continua.

Pe ecran se va afisa intr-un obiect Timage digit-ul grafic, utilizat in programul P2.

Pe forma Form1 a programului vor aparea obiectele evidentiate in figura 6.7 :

un obiect Timer (Timer1), cu Interval=100 ms pentru intervalul de generare a iesirilor numerice;

o caseta de editare Edit1 pentru afisarea echivalentului zecimal al iesirilor numerice care se genereaza;

un obiect de tip TrackBar, TrackBar1 ce se utilizeaza pentru a genera un numar intre 0 - 15 ;

20 de obiecte de tip Button cu urmatoarele functii:

Button1 activeaza TarckBar1 pentru comanda digit-ului (regimul 1);

Button2 activeaza cele 16 butoane, pentru comanda digit-ului (regimul 2);

Button3 activeaza regim numarare pentru comanda digit-ului (regimul 3);

Button4 iesire din program;

Button 5-20 pentru comanda digit-ului (regimul 2);

Un obiect de tip Timage , TImage1 in care se va incarca digitul grafic ce va reflecta combinatia afisata pe digit-ul fizic

Fig.6.7.

In directorul subgrupei, se gaseste forma executabila a programului P3, care va fi rulat inaintea inceperii lucrarii.

i) Lucrarea se va considera incheiata in momentul in care programele P2 si P3 sunt functionale. Referatul va cuprinde principalele idei din breviar referitoare la SIN si SEN precum si forma sursa a unit-urilor programelor P2 si P3.





Politica de confidentialitate





Copyright © 2024 - Toate drepturile rezervate

Calculatoare


Access
Adobe photoshop
Autocad
Baze de date
C
Calculatoare
Corel draw
Excel
Foxpro
Html
Internet
Java
Linux
Mathcad
Matlab
Outlook
Pascal
Php
Powerpoint
Retele calculatoare
Sql
Windows
Word






termeni
contact

adauga