PANSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLAGU INSTYTUT INFORMATYKI STOSOWANEJ LABORATORIUM ELEKTRONIKI I MIERNICTWA |
|
Grupa dziekańska / podgrupa ćwiczeniowa: VI / III |
Tytuł ćwiczenia: 9. Układy cyfrowe kombinacyjne |
Skład grupy:
|
Data wykonania
/data oddania: |
|
Ocena: |
SPRAWOZDANIE Z LABORATORIUM ELEKTRONIKI I MIERNICTWA
ćwiczenie nr 9
Układy cyfrowe kombinacyjne
Wykaz i dane znamionowe elementów i przyrządów użytych w ćwiczeniu:
• Zasilacz stabilizowany HY3010 |
• Bramka NAND 7400 |
• Bramka XOR 7486 |
• Demultiplekser „1 z 8” 74138 |
Rys.1. Schemat do badania tablicy prawdy bramki NAND
Rys.2. Schemat do badania tablicy prawdy bramki XOR
Rys.3. Schemat do badania tablicy prawdy demultipleksera
Przebieg ćwiczenia:
Po podłączeniu bramek NAND i XOR oraz demultipleksera do zasilacza stabilizowanego zaczęliśmy określać tablice prawdy dla poszczególnych bramek oraz sprawdzaliśmy sprawność działania demultipleksera. Określiliśmy jakimi stanami aktywowane są poszczególne urządzenia cyfrowe.
TABELE POMIAROWE
Bramka NAND
A |
B |
Q |
Q |
|
|
[bin] |
[dec] |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
2 |
1 |
1 |
0 |
3 |
Bramka XOR
A |
B |
Q |
Q |
|
|
[bin] |
[dec] |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
2 |
1 |
1 |
0 |
3 |
Demultiplekser
Wejścia adresowe |
Wyjścia „1 z 8” |
Q |
|||||||||
A1 |
A2 |
A3 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
[dec] |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
128 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
8 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
32 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
2 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
64 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
4 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
16 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
Kody programów do określania stanu bramek i demultipleksera:
Bramka NAND:
#include <stdio.h>
#include <conio.h>
void main()
{
int a,b,Q;
printf("BRAMKA NAND\n\n");
printf("Podaj A: ");
scanf("%d",&a);
printf("\nPodaj B: ");
scanf("%d",&b);
Q=2*a+1*b;
if ( Q==0 || Q==1 || Q==2 )
{
printf("\nWyjscie bramki jest w stanie wysokim");
}
else
{
if (Q==3)
{
printf("\nWyjscie bramki jest w stanie niskim");
}
else
{
printf("\nPodano zle wartosci logiczne");
}
}
getch();
}
Bramka XOR:
#include <stdio.h>
#include <conio.h>
void main()
{
int a,b,Q;
printf("BRAMKA XOR\n\n");
printf("Podaj A: ");
scanf("%d",&a);
printf("\nPodaj B: ");
scanf("%d",&b);
Q=2*a+1*b;
if ( Q==1 || Q==2 )
{
printf("\nWyjscie bramki jest w stanie wysokim");
}
else
{
if (Q==0 || Q==3)
{
printf("\nWyjscie bramki jest w stanie niskim");
}
else
{
printf("\nPodano zle wartosci logiczne");
}
}
getch();
}
Demultiplekser:
#include <stdio.h>
#include <conio.h>
void main()
{
int A,B,C,Q;
printf("Wartosci logiczne dla Demultipleksera 1 z 8\n\n");
printf("\nPodaj wartosc A: ");
scanf("%d",&A);
printf("\nPodaj wartosc B: ");
scanf("%d",&B);
printf("\nPodaj wartosc C: ");
scanf("%d",&C);
Q=4*A+2*B+1*C;
switch (Q)
{
case 0:
printf("Wartosc logiczna dla wyjscia 0 wynosi 1");
break;
case 1:
printf("Wartosc logiczna dla wyjscia 4 wynosi 1");
break;
case 2:
printf("Wartosc logiczna dla wyjscia 2 wynosi 1");
break;
case 3:
printf("Wartosc logiczna dla wyjscia 6 wynosi 1");
break;
case 4:
printf("Wartosc logiczna dla wyjscia 1 wynosi 1");
break;
case 5:
printf("Wartosc logiczna dla wyjscia 5 wynosi 1");
break;
case 6:
printf("Wartosc logiczna dla wyjscia 3 wynosi 1");
break;
case 7:
printf("Wartosc logiczna dla wyjscia 7 wynosi 1");
break;
default:
printf("Podano zle wartosci logiczne");
break;
}
getch();
}
Spostrzeżenia i wnioski z ćwiczenia:
W ćwiczeniu tym porównywaliśmy naszą wiedzę teoretyczną na temat bramek NAND i XOR oraz demultipleksera „8 w 1”. Wszystkie zmiany stanów wejść odpowiadały naszej wiedzy na temat stanów wyjść. Dla przykładu, gdy obydwa wejścia bramki XOR były w stanie niskim, również wyjście tej bramki posiadało stan niski. W przypadku demultipleksera, którego używa się m.in. w telewizji przemysłowej, albo w wideokonferencjach, można było zauważyć przełączanie sygnałów z jednego wejścia na określone wyjście. I tak przy stanie wysokim trzech wejść, sygnał skierowany został na wyjście siódme. Zauważyliśmy również, że demultiplekser posiada działanie odwrotne do multipleksera.
Załączniki: - Załącznik nr 1 (Tabele pomiarowe)
Źródła:
„Elektrotechnika i elektronika dla nieelektryków” Hempowicz Paweł
„Elektronika dla elektryków” Opolski Andrzej
„Sztuka elektroniki” Paul Horowitz, Winfield Hill
2005-09-26