mikroprocesory sprawko 1

Politechnika Lubelska w Lublinie

Laboratorium Układów Mikroprocesorowych

Wykonał: Emil Leńczuk

Gr: ED 9.7

Data: 14.10.2008

Ocena:


Temat: Uklady przetworników A/C i C/A. Model: tester tranzystorów





Cel ćwiczenia:

Badanie tranzystorów za pomocą mikrokontrolera 8051



Rys.1 schemat modelu do badania tranzystorów.


1. Ręczne zdejmowanie charakterystyki za pomocą modelu testera tranzystorów.





























  1. Charakterystyki zdjęte za pomocą modely badania tranzystorów, programu tranzystor.exe i tranzystor.asm.





  1. Modyfikowanie programu tranzystor.asm w celu zmiany prądu bazy badanego tranzystora i ilości ściąganych charakterystyk.




Kod programu

SET_8255 EQU 10001011B


LJMP START


ORG 13H


PUSH PSW ;przechowanie rejestru stanu

PUSH ACC ;i akumulatora na stosie


MOVX A,@R1 ;odczyt ze sterownika przerwań

ANL A,#03H ;numeru przerwania

MOVX @R1,A ;skasowanie przerwania


JZ INT_AD ;przerwanie z przetwornika A/C

POP ACC ;inne przerwanie - faktycznie nie wystšpi

POP PSW

RETI


;**************************************

ORG 23H

;przerwanie z portu szeregowego


JBC TI,NAD

CLR RI ;odbior bajtu - faktycznie

RETI ;nic nie jest odbierane


;**************************************

;nadawanie zmierzonych danych

NAD: ;nadanie bajtu

MOV A,DPH ;czy nadane 256*16 bajtów

CJNE A,#20H,NADNEXT

MOV SBUF,R2 ;tak - nadaj sumę i zakończ nadawanie

CLR ES ;zablokuj przerwania od RSa - nadany

;jest ostatni bajt, dodatkowo ES użyty

;jako wskaŸnik końca nadawania

RETI


NADNEXT: ;nadaj kolejny bajt

MOVX A,@DPTR

MOV SBUF,A

XRL A,R2 ;obliczaj sumę bajtów - XOR

MOV R2,A

INC DPTR ;zwiększ wskaŸnik danych

RETI


;**************************************

;przerwanie z przetwornika A/C - koniec pomiaru

INT_AD:

MOV A,#10 ;odczekanie czasu do zakończenia

DJNZ ACC,$ ;wewnętrznego sygnału w przetw. A/C

;wywołujšcego przerwanie


MOVX A,@R0 ;odczyt wyniku z przetw. A/C

MOVX @DPTR,A ;zapamiętaj wynik pomiaru

INC DPTR ;zwiększ adres


CLR A ;skasowanie przerwania ze sterownika przerwań

MOVX @R1,A ;trzeba to zrobić po odczycie z A/C


POP PSW ;zdjęcie danej ze stosu

;ACC=0 jako znacznik końca pomiaru

POP PSW ;odtworzenie rejestru stanu

RETI


;**************************************

ORG 100H

START:

MOV R0,#CS55D ;inicjalizacja 8255

MOV A,#SET_8255

MOVX @R0,A


;**************************************

;ustawienie portu szeregowego


;mod 1 portu szeregowego:

;transmisja asynchroniczna

;1 bit startu, 8 bitów danych, 1 bit stopu

;prędkoœć transmisji ustawiana przez timer T1

MOV SCON,#01010000B


;Timer T1 pracuje w modzie 2:

;8 bitów auto-reload

MOV TMOD,#00100000B


;przy F=11.059 MHz v=19200 bodów

;dla TL1=256-3, SMOD=1

ORL PCON,#80H ;SMOD=1


MOV TL1,#256-3 ;Timer 1 liczy do trzech

MOV TH1,#256-3 ;Wartoœć automatycznie przeładowywana

SETB TR1 ;start Timera 1


;**************************************

;zerowanie sterownika przerwań

MOV R1,#CSAD ;skasowanie ewentualnego przerwania

MOVX A,@R1 ;wystawianego przez przetwornik A/C


MOV R1,#CSIC ;skasowanie przerwania 0 (A/C)

CLR A ;w sterowniku przerwań

MOVX @R1,A


;pozostałe przerwania zawieszone w sterowniku przerwań

;będš automatycznie skasowane w momencie zezwolenia na przerwania

;-przerwanie będzie wygenerowane i obsłużone - a więc skasowane


;**************************************

SETB EA ;zezwolenie na przerwania


;**************************************

;pomiar rodziny charakterystyk tranzystora

LOOP:

LCALL LCD_CLR

LCALL WAIT_ENTER ;oczekiwanie na rozkaz poczštku pomiarów


LCALL LCD_CLR

MOV DPTR,#TEXT1 ;wypisanie tekstu o rozpoczęciu pomiarów

LCALL WRITE_TEXT

SETB EX1 ;włšczenie przerwań z wejœcia INT1

;- tj. sterownika przerwań


MOV DPTR,#1000H ;adres - miejsce w RAMie na wyniki pomiarów


MOV R5,#6 ;8 charakterystyk tranzystora

;dla różnych pršdów Bazy


;**************************************

;pomiar 1 charakterystyki

POM1:

MOV R0,#CS55A ;ustalenie pršdu Bazy

MOV A,#3 ;R5=8 -> 0 ... R5=1 -> 7

CLR C

SUBB A,R5

MOVX @R0,A


ADD A,#31H ;wypisanie numeru mierzonej charakterystyki

LCALL WRITE_DATA


MOV R7,#0 ;nr pomiaru - napięcie z przetwornika C/A

MOV R6,#0 ;licznik pomiarów

POM:

ACALL POMIAR ;wykonanie pomiarów dwóch napięć

;- napięcie z przetwornika C/A

;i napięcie na badanym elemencie


INC R7 ;kolejny numer pomiaru

DJNZ R6,POM ;wykonanie kolejnego pomiaru (do 256)

;jednej charakterystyki tranzystora


DJNZ R5,POM1 ;wykonanie pomiaru kolejnej charakterystyki


CLR EX1 ;wyłšczenie przerwań z wejœcia INT1

;**************************************

LCALL LCD_CLR

MOV DPTR,#TEXT2 ;wypisanie tekstu o rozpoczęciu transmisji

LCALL WRITE_TEXT


MOV SBUF,#55H ;wysłanie znacznika poczštku transmisji

MOV A,#2 ;odczekanie czasu na 'obudzenie' IBMa

LCALL DELAY_100MS


MOV DPTR,#1000H ;adres poczštku wyników

SETB ES ;zezwolenie na przerwania od RSa


;ponieważ był wysyłany znacznik więc natychniast będzie wygenerowane

;przerwanie i rozpocznie się transmisja danych


JB ES,$ ;oczekiwanie na koniec transmisji


AJMP LOOP


;**************************************

;wykonanie pomiarów dwóch napięć

;- napięcie z przetwornika C/A i napięcie na badanym elemencie


POMIAR:

MOV R0,#CSDA ;ustawienie napięcia na przetw. C/A

MOV A,R7

MOVX @R0,A


MOV R0,#CSAD | 7 ;adres przetwornika A/C tak zmodyfikowany,

;aby po dodaniu 1 mieć adres multiplexera

MOV R2,#2 ;dwa pomiary


AN1:

MOV A,R2 ;pomiar w kanale 0 i 1

CLR ACC.1


INC R0 ;wpisanie numeru kanału do multiplexera

MOVX @R0,A

DEC R0


MOV A,#5 ;odczekanie czasu ok. 10 uS na ustabilizo-

DJNZ ACC,$ ;wanie napięć na wejœciu przetwornika A/C


INC A ;A=1 <>0 - jako znacznik braku przerwania

MOVX @R0,A ;wpisanie dowolnej wartoœci do przetwornika

;A/C - start przetwarzania


JNZ $ ;A=0 - ustawiane w przerwaniu od przetw. A/C

;jako zakończenie pomiaru


DJNZ R2,AN1 ;wykonaj drugi pomiar


RET


;**************************************

TEXT1:

DB 'POMIAR ',0

TEXT2:

DB 'TRANSMISJA',0

;**************************************

;END









Charakterystyki po modyfikacjach:






















Rys 2. Charakterystyki po zmodyfikowaniu programu.



Wnioski:


W niniejszym ćwiczeniu badaliśmy tranzystor. Ćwiczenie miało to na celu zademonstrowanie jednej z wielu możliwości jakie daje nam mikrokontroler 8051. Niniejszy układ dzięki modułom przetwarzania cyfrowo-analogowym i analogowo-cyfrowym jest bardzo przydatnym narzędziem do strerowanie procesami i układami analagowymi.


Wyszukiwarka

Podobne podstrony:
mikroprocesory sprawko 1
mikroprocesory sprawko 1
mikroprocesory sprawko 1
TECHNIKA CYFROWA - sprawko lab 1, Studia, PWR, 4 semestr, Podstawy techniki mikroprocesorowej, labor
Budowa mikroprocesora, Politechnika Lubelska, Studia, Semestr 6, sprawka 6 sem moje
TECHNIKA CYFROWA - sprawko lab 4, Studia, PWR, 4 semestr, Podstawy techniki mikroprocesorowej, labor
TECHNIKA CYFROWA - sprawko lab 5, Studia, PWR, 4 semestr, Podstawy techniki mikroprocesorowej, labor
SPRAWKO W 3, politechnika infa 2 st, Mikroprocesory
SPRAWKO W 8, politechnika infa 2 st, Mikroprocesory
mikroprocesor 2
El sprawko 5 id 157337 Nieznany
LabMN1 sprawko
Opracowanie Zagadnień na egzamin Mikroprocki
Obrobka cieplna laborka sprawko
Ściskanie sprawko 05 12 2014
1 Sprawko, Raport wytrzymałość 1b stal sila
stale, Elektrotechnika, dc pobierane, Podstawy Nauk o materialach, Przydatne, Sprawka
2LAB, 1 STUDIA - Informatyka Politechnika Koszalińska, Labki, Fizyka, sprawka od Mateusza, Fizyka -

więcej podobnych podstron