dsm51 IO (3)


DSM-51
DYDAKTYCZNY SYSTEM MIKROPROCESOROWY
Instrukcja Obsługi
DSM-51
Copyright 2006, 2007 by MicroMade
All rights reserved
Wszelkie prawa zastrze\one
MicroMade
Gałka i Drożdż sp. j.
64-920 PIAA, ul. Wieniawskiego 16
Tel./fax: (67) 213.24.14
E-mail: mm@micromade.pl
Internet: www.micromade.pl
Wszystkie nazwy i znaki towarowe u\yte w niniejszej publikacji są własnością odpowiednich firm.
2 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
Szanowni Państwo !
Dziękujemy za zakup Dydaktycznego Systemu Mikroprocesorowego DSM-51.
System ten został specjalnie zaprojektowany w celu nauczania podstaw programowania mikrokontrolerów. Obecnie
znajduje się na wyposa\eniu wielu szkół średnich o profilu elektronicznym i na wy\szych uczelniach technicznych w
całym kraju. System DSM-51 zalecany jest przez Ministra Edukacji Narodowej do nauczania przedmiotu - pracownia
systemów mikroprocesorowych w zawodzie technik elektronik na poziomie technikum i szkoły policealnej.
Wraz z systemem otrzymali Państwo opracowany przez nas podręcznik do nauczania systemów mikroprocesorowych:
Piotr i Paweł Gałka  Podstawy programowania mikrokontrolera 8051. Pracownia systemów mikroproce-
sorowych na bazie DSM-51. . Daje on solidne podstawy do pózniejszego, samodzielnego opanowania programowania
dowolnego innego mikrokontrolera.
Jesteśmy przekonani, \e Dydaktyczny System Mikroprocesorowy DSM-51 spełni Państwa oczekiwania.
Autorzy
Przed przystąpieniem do u\ytkowania systemu, prosimy o zapoznanie się z poni\szymi uwagami.
Bezpieczeństwo u\ytkowania
Do zasilania Dydaktycznego Systemu Mikroprocesorowego DSM-51 nale\y wykorzystać zasilacz stanowiący bezpiecz-
ne zródło napięcia stabilizowanego 9V o wydajności prądowej 500mA. Zasilacz musi posiadać podwójną (lub
równowa\ną) izolację napięcia wyjściowego od napięcia sieci 230V. Zabezpiecza to u\ytkownika przed pora\eniem
prądem elektrycznym, zapewniając bezpieczeństwo u\ytkowania Dydaktycznego Systemy Mikroprocesorowego
DSM-51, bez konieczności uziemiania jego obudowy.
Wymagania te spełnia zasilacz sieciowy Tatarek 6WZS 9/500, stanowiący opcjonalne wyposa\enie systemu DSM-51.
Dydaktyczny System Mikroprocesorowy DSM-51 powinien być u\ytkowany w temperaturze otoczenia w zakresie
+10C do +40C.
Podczas pracy system powinien być ustawiony na poziomej, stabilnej powierzchni.
Systemu DSM-51 nie mo\na umieszczać w pomieszczeniach o du\ym zapyleniu i zawilgoceniu, ani nara\ać na działa-
nie wody i podobnych czynników.
Kompatybilność elektromagnetyczna.
Dydaktyczny System Mikroprocesorowy DSM-51 przeszedł badania potwierdzające spełnienie wymogów odpowied-
nich norm zharmonizowanych z dyrektywą EMC Unii Europejskiej. Normy takie określają zarówno dopuszczalne
poziomy emisji zakłóceń jak i wra\liwości urządzenia na zdarzające się zaburzenia elektromagnetyczne.
Ze względów dydaktycznych modele, stanowiące opcjonalne wyposa\enie systemu DSM-51, są wykonane w postaci
nieobudowanych płytek drukowanych. Mo\liwość bezpośredniego dotykania elementów elektronicznych nara\a je na
wyładowania elektrostatyczne. Wyładowania takie mogą zakłócić pracę modelu, a nawet, w szczególnych okoliczno-
ściach, spowodować jego uszkodzenie. Dlatego nie nale\y u\ytkować Systemu DSM-51 w środowisku sprzyjającym
powstawaniu ładunków elektrostatycznych (elektryzujące wykładziny podłogowe itp.).
Ochrona środowiska
Dydaktycznego Systemu Mikroprocesorowego DSM-51 w przypadku zaprzestania jego u\ytkowania nie mo\na wyrzu-
cać wraz z innymi odpadkami komunalnymi. Zgodnie z Dyrektywą WEEE Unii Europejskiej System DSM-51, tak jak
większość urządzeń elektronicznych, musi zostać poddany odpowiednim procesom odzysku i recyklingu. Informacji o
sposobie zbierania zu\ytych egzemplarzy systemu nale\y szukać na stronie: www.micromade.pl.
08/2007 MicroMade Instrukcja Obsługi 3.01 3
DSM-51
DEKLARACJA ZGODNOŚCI
Producent: MicroMade Gałka i Dro\d\ sp. j.
ul. Wieniawskiego 16
64-920 Piła
tel./fax: (+48) (67) 213 24 14
Polska
deklaruje, \e produkt:
DSM-51
Dydaktyczny System Mikroprocesorowy
jest zgodny z zasadniczymi wymaganiami dyrektywy Unii Europejskiej:
89/336/EEC  Kompatybilność Elektromagnetyczna
Produkt spełnia wymagania norm zharmonizowanych:
EN 61326:1997+A1:1998+A2:2001+A3:2003
EN 55022:1998+A1:2000+A2:2002
EN 61000-3-2:2000
Piła, 30.06.2005 Piotr Gałka
Główny Konstruktor
4 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
Spis treści
1.Instalacja systemu DSM-51............................................................................................................................................7
1.1 Zapoznanie z elementami zestawu............................................................................................................................7
1.2 Identyfikacja elementów systemu DSM-51..............................................................................................................8
1.2.1 Zasilanie...........................................................................................................................................................8
1.2.2 Elementy systemu mikroprocesorowego..........................................................................................................8
1.2.3 Układy komunikacji z u\ytkownikiem.............................................................................................................8
1.2.4 Porty urządzeń zewnętrznych...........................................................................................................................9
1.3 Podłączenie zasilania................................................................................................................................................9
1.4 Test systemu..............................................................................................................................................................9
1.5 Podłączenie do komputera......................................................................................................................................10
2.Instalacja oprogramowania..........................................................................................................................................11
2.1 Przebieg instalacji...................................................................................................................................................11
2.2 Rozmieszczenie plików po instalacji......................................................................................................................15
2.3 Testowanie transmisji komputer - DSM-51............................................................................................................16
3.Praca z systemem DSM-51............................................................................................................................................18
3.1 Tryby pracy DSM-51..............................................................................................................................................18
3.1.1 Tryby dekodera adresów................................................................................................................................18
3.1.2 Tryb 0 systemu DSM-51................................................................................................................................19
3.1.3 Tryb 1 systemu DSM-51................................................................................................................................19
3.1.4 Tryb 2 systemu DSM-51................................................................................................................................20
3.1.5 Tryb monitor systemu DSM-51......................................................................................................................20
3.2 Praca systemu pod nadzorem komputera................................................................................................................20
3.2.1 Przygotowanie kodu zródłowego...................................................................................................................20
3.2.2 Asemblacja programu.....................................................................................................................................21
3.2.3 Przesłanie i uruchomienie programu..............................................................................................................21
3.2.4 Uruchomienie programu pod nadzorem monitora..........................................................................................22
3.3 Uruchamianie programów bez pomocy komputera................................................................................................23
3.4 Podprogramy w pamięci EPROM systemu DSM-51..............................................................................................25
3.5 Urządzenia wejść/wyjść DSM-51...........................................................................................................................26
3.6 Ograniczenia pracy krokowej DSM-51..................................................................................................................27
4.Dokumentacja techniczna.............................................................................................................................................28
4.1 Zmiany wprowadzone w wersji 3 systemu..............................................................................................................28
4.2 Dane techniczne......................................................................................................................................................29
4.3 Dekoder adresów.....................................................................................................................................................31
4.4 Sterownik przerwań................................................................................................................................................32
4.5 Złącza systemu........................................................................................................................................................33
4.6 Schematy blokowe..................................................................................................................................................35
4.7 Schematy ideowe.....................................................................................................................................................37
5.Asembler dsm51ass........................................................................................................................................................43
5.1 Format linii programu:............................................................................................................................................43
5.2 Wyra\enia arytmetyczne.........................................................................................................................................43
5.3 Operatory arytmetyczne..........................................................................................................................................44
5.4 Dyrektywy asemblera..............................................................................................................................................46
5.5 Predefiniowane symbole.........................................................................................................................................48
6.Modele urządzeń............................................................................................................................................................51
M-01 - Skrzy\owanie....................................................................................................................................................51
M-02 - Tester diod i tranzystorów................................................................................................................................54
M-03 - Licznik obiektów...............................................................................................................................................57
M-04 - Zegar czasu rzeczywistego................................................................................................................................60
08/2007 MicroMade Instrukcja Obsługi 3.01 5
DSM-51
M-05 - Wyjście do drukarki Centronix.........................................................................................................................65
M-06 - Tyrystorowy regulator oświetlenia....................................................................................................................69
M-07 - Interface sieci RS485........................................................................................................................................72
M-08 - Czytnik kart magnetycznych.............................................................................................................................75
M-09 - Równia pochyła.................................................................................................................................................79
M-10 - Miernik i regulator temperatury........................................................................................................................82
M-11 - Programator pamięci EEPROM........................................................................................................................85
M-13 - Zegar Czasu Rzeczywistego IC.......................................................................................................................91
7.Notatki............................................................................................................................................................................96
6 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
1.Instalacja systemu DSM-51
1.Instalacja systemu DSM-51
1.1 ZAPOZNANIE Z ELEMENTAMI ZESTAWU
Przed rozpoczęciem u\ytkowania zestawu dydaktycznego nale\y sprawdzić, czy w pudełku zostały załączone wszystkie
jego elementy. W ka\dym zestawie powinny być:
system DSM-51
niniejsza instrukcja obsługi
ksią\ka  Podstawy programowania mikrokontrolera 8051 wraz z płytą CD zawierającą oprogramowanie syste-
mu DSM-51
kabel RS232, słu\ący do połączenia systemu z komputerem
zestaw kabli  Digital ,  Analog ,  Opto , słu\ących do podłączania modeli
Dodatkowo, w zale\ności od zamówienia, w pudełku mo\e znajdować się opcjonalne wyposa\enie systemu DSM-51:
zasilacz sieciowy Tatarek 6WZS 9/500
modele urządzeń sterowanych przez system DSM-51
M-01 - Skrzy\owanie,
M-02 - Tester diod i tranzystorów,
M-03 - Licznik obiektów,
M-04 - Zegar czasu rzeczywistego,
M-05 - Wyjście do drukarki Centronix,
M-06 - Tyrystorowy regulator oświetlenia,
M-07 - Interface sieci RS485,
08/2007 MicroMade Instrukcja Obsługi 3.01 7
DSM-51
1.Instalacja systemu DSM-51
M-08 - Czytnik kart magnetycznych,
M-09 - Równia pochyła,
M-10 - Miernik i regulator temperatury,
M-11 - Programator pamięci EEPROM,
M-12 - Czytnik kart chipowych.
1.2 IDENTYFIKACJA ELEMENTÓW SYSTEMU DSM-51
W celu lepszego rozumienia dalszych opisów, nale\y zidentyfikować wszystkie elementy systemu DSM-51. Wśród nich
mo\na wyró\nić cztery podstawowe grupy:
zasilanie
elementy systemu mikroprocesorowego
układy komunikacji z u\ytkownikiem
porty urządzeń zewnętrznych.
1.2.1 Zasilanie
Elementy systemu związane z zasilaniem znajdują się w lewym górnym rogu.
gniazdo zasilania
wyłącznik zasilania
zielona dioda LED  POWER ON sygnalizu-
jąca zasilanie systemu
1.2.2 Elementy systemu mikroprocesorowego
Przyciski RESET poło\one są w dolnym lewym rogu systemu:
przycisk RESET ROM - sygnał reset do mikrokontrolera oraz zerowanie trybu dekodera adresu
przycisk RESET RAM - sygnał reset do mikrokontrolera
\ółta dioda LED sygnalizująca pracę układu WatchDog
1.2.3 Układy komunikacji z u\ytkownikiem
sygnalizatory
czerwona dioda świecąca  TEST
brzęczyk
wyświetlacz 7-segmentowy z klawiaturą
6 wskazników 7-segmentowych
6 diod LED podłączonych jako siódmy wskaznik
6 przycisków przeglądanych razem z wyświetlaczem
wyświetlacz LCD
klawiatura matrycowa
<- klawisz Escape
<- klawisz Enter
8 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
1.Instalacja systemu DSM-51
1.2.4 Porty urządzeń zewnętrznych
W tylnej ściance systemu DSM-51 zostały umieszczone złącza. Słu\ą one do połączenia systemu z komputerem oraz do
dołączenia urządzeń zewnętrznych.
złącza: analogowe cyfrowe izolowane COM2 COM1 DC
wejścia/wyjścia analogowe
wejścia/wyjścia cyfrowe
wejścia/wyjścia izolowane galwanicznie
dwa kanały RS232 (COM1 i COM2)
1.3 PODACZENIE ZASILANIA
System DSM-51 wymaga zasilania prądem stałym o stabilizowanym napięciu 9V i wydajności 500 mA. Najwygodniej,
u\yć do tego celu, oferowany jako opcja zasilacz:
Tatarek 6WZS 9/500.
Kolejność wykonywanych czynności przy włączeniu zasilania powinna być następująca:
upewnić się, \e wyłącznik zasilania jest w pozycji  OFF
włączyć wtyk zasilacza do gniazda DSM-51
włączyć zasilacz do sieci 230V
wyłącznik zasilania przełączyć do pozycji  ON .
Je\eli wszystko jest prawidłowo, zapali się zielona dioda LED oznaczona  Power ON , a na wyświetlaczu LCD pojawi
się napis:
DSM-51v3 MODE 0
>> PC CONTROL <<
1.4 TEST SYSTEMU
System DSM-51 posiada wbudowany test, który umo\liwia sprawdzenie poprawności pracy pamięci RAM oraz ukła-
dów komunikacji z u\ytkownikiem. Procedurę testującą uruchamia się następująco:
nacisnąć i przytrzymać klawisz [0]
nacisnąć i puścić klawisz [RESET ROM]
puścić klawisz [0].
Po takim starcie system DSM-51 wykona następujące czynności:
sprawdzi pamięć RAM
jeśli pracuje ona poprawnie wypisze na wyświetlaczu napis  RAM OK!
po chwili napis zmieni się na  PRESS KEYS... zachęcający do naciskania kolejnych klawiszy
na wskaznikach wyświetlacza 7-segmentowego będą zapalane kolejne (na wszystkich te same) segmenty
naciskanie kolejnych klawiszy z klawiatury matrycowej powoduje:
wpisywanie na wyświetlacz LCD odpowiednich znaków
zapalanie diody  TEST
naciśnięcie klawisza  ENTER powoduje wyczyszczenie wyświetlacza
08/2007 MicroMade Instrukcja Obsługi 3.01 9
DSM-51
1.Instalacja systemu DSM-51
u\ycie klawiszy związanych z wyświetlaczem 7-segmentowym powoduje:
zapalenie się określonej diody świecącej (F1& F4, OK, ER)
włączenie brzęczyka.
W celu zakończenia testowania, nale\y nacisnąć klawisz [RESET ROM]. Spowoduje to powrót systemu do trybu 0 (tak
jak po włączeniu zasilania).
Opisany test funkcjonuje poprawnie bez względu na to, czy system jest połączony z komputerem, czy nie.
1.5 PODACZENIE DO KOMPUTERA
Dydaktyczny System Mikroprocesorowy DSM-51 mo\e być stosowany samodzielnie lub we współpracy z komputerem.
Ten drugi wariant nale\y obecnie uznać za podstawowy.
DSM-51 jest wyposa\ony w mechanizm umo\liwiający przesłanie programu z komputera do pamięci RAM systemu
oraz jego uruchomienie. Dzięki temu nie jest potrzebne \adne dodatkowe wyposa\enie, a uruchamianie oprogramowa-
nia nie wymaga ani ciągłego programowania i wymieniania pamięci EPROM, ani stosowania symulatora pamięci
EPROM.
Połączenie systemu DSM-51 z komputerem wykonywane jest za pomocą, dostarczonego wraz z systemem, kabla
RS232. Aby to wykonać nale\y:
wyłączyć zasilanie komputera oraz systemu DSM-51
podłączyć jeden koniec kabla RS232 do złącza COM1 systemu DSM-51
podłączyć drugi koniec kabla RS232 do złącza COM1 .. COM4 komputera
włączyć zasilanie komputera i systemu DSM-51
Po wykonaniu tych czynności system jest gotowy do pracy pod nadzorem komputera.
10 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
2.Instalacja oprogramowania
2.Instalacja oprogramowania
2.1 PRZEBIEG INSTALACJI
Razem z systemem DSM-51 dostarczana jest płyta CD, na której znajduje się wersja instalacyjna oprogramowania dla
systemu DSM-51. Po wło\eniu płyty do komputera powinna uruchomić się przeglądarka internetowa z załadowaną stro-
ną:
W celu uruchomienia instalacji nale\y wybrać klawisz  Instalator DSM-51 . Powinien zostać uruchomiony program
dsm51_setup.exe. Poniewa\ system traktuje ten plik jak plik z internetu, mogą, w zale\ności od wersji systemu Win-
dows, zostać wyświetlone ostrze\enia:
Faktycznie plik ten pochodzi z płyty CD, więc bez obaw mo\na zawsze wybrać klawisz  Uruchom . Je\eli jednak pro-
gram dsm51_setup.exe nie zostanie uruchomiony, mo\na to zrobić  ręcznie wybierając:
Start/Uruchom...
08/2007 MicroMade Instrukcja Obsługi 3.01 11
DSM-51
2.Instalacja oprogramowania
i wpisując
D:\dsm51_setup.exe
gdzie zamiast D nale\y wpisać literę odpowiadającą napędowi CD. Po uruchomieniu instalacji poka\e się okienko powi-
talne:
Przez kolejne okienka, je\eli akceptujemy zawarte w nim informacje, przechodzimy wybierając klawisz  Dalej . Pro-
gram kolejno zaproponuje standardowe ustawienia:
folder programu - C:\Program Files\MicroMade\DSM-51
folder w Menu Start - MicroMade\DSM-51
12 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
2.Instalacja oprogramowania
utworzenie dla programu DSM-51 ikon na pulpicie i na pasku szybkiego uruchamiania oraz skojarzenie plików
typu *.asm i *.hex z systemem DSM-51.
Z plikiem *.asm będą skojarzone komendy:
Otwórz - otwiera plik do edycji w Notatniku,
DSM-51 Ass - asembluje kod zródłowy wywołując asembler dsm51ass.
Natomiast z plikiem *.hex:
Uruchom - przesyła i uruchamia program w systemie DSM-51, wykorzystując program dsm51run.exe,
Otwórz - otwiera program DSM51.exe z załadowanym plikiem *.hex, co powoduje przesłanie pliku do systemu
DSM-51 i oczekiwanie na dalsze komendy wydawane z programu DSM51.
Skojarzenie komend z plikami *.asm i *.hex ułatwia pracę z systemem DSM-51.
Przed właściwą instalacją program oczekuje na potwierdzenie wybranych ustawień.
Naciśnięcie klawisza  Instaluj rozpoczyna właściwą instalację programu.
08/2007 MicroMade Instrukcja Obsługi 3.01 13
DSM-51
2.Instalacja oprogramowania
Po zakończeniu instalacji mo\na zapoznać się z opisem zainstalowanych plików. Opis ten jest równie\ dostępny pózniej
w pliku dsm51_info.txt w katalogu DSM-51.
Ostatni ekran informuje o zakończeniu instalacji.
Po zakończeniu instalacji oprogramowania DSM-51 komputer jest gotowy do pisania programów i uruchamiania ich w
systemie DSM-51.
14 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
2.Instalacja oprogramowania
2.2 ROZMIESZCZENIE PLIKÓW PO INSTALACJI
Wszystkie pliki przegrane na komputer w trakcie instalacji zostały umieszczone w folderze DSM-51. Standardowo jest
to folder:
C:\Program Files\MicroMade\DSM-51
Po instalacji będą tam umieszczone następujące pliki:
oprogramowanie przewidziane do uruchamiania na komputerze, które pozwala na asemblację, uruchamianie i
monitorowanie programów dla DSM-51
dsm51ass.exe - assembler 8051
dsm51run.exe - program do uruchamiania programów w DSM-51
DSM51.exe - program do monitorowania pracy programów w DSM-51
\Doc - dokumentacja systemu DSM-51 oraz opis programów DSM51.exe i asemblera dsm51ass.exe
DSM_dt03.pdf - dokumentacja techniczna DSM-51 v3
dsm51.txt - opis programu DSM-51
dsm51ass.pdf - dokumentacja programu dsm51ass
mxx_i.pdf - dokumentacja modeli (xx=01..11)
\Example - przykładowe programy dla DSM-51
segmenty.asm - kod zródłowy programu, który zapala kolejne segmenty wyświetlacza 7-segmentowego
segmenty.hex - w/w program po asemblacji
stoper.asm - DSM-51 jako stoper (ENTER = start/stop)
stoper.hex
\Lekcje - wszystkie programy zawarte w kolejnych lekcjach podręcznika "Podstawy programowania mikrokon-
trolera 8051"
\Modele - oprogramowanie dla modeli - opcjonalnego wyposa\enia systemu DSM-51
\M01 - Skrzy\owanie
skrzyz.asm - sterowanie światłami na skrzy\owaniu
m01.txt - propozycje zadań do wykonania
\M02 - Tester diod i tranzystorów
dioda.asm - program dla DSM-51 - testowanie diod
dioda.exe - wykreślanie charakterystyki diody - program na komputer
tranzyst.asm - program dla DSM-51 - testowanie tranzystorów
tranzystor.exe - wykreślanie charakterystyk tranzystora - program na komputer
m02.txt - propozycje zadań do wykonania
\SOURCE
dioda.cpp - kod zródłowy programu dioda.exe
tranzystor.cpp - kod zródłowy programu tranzystor.exe
\M03 - Licznik obiektów
licznik.asm - liczenie obiektów z wykryciem kierunku ruchu
m03.txt - propozycje zadań do wykonania
\M04 - Zegar czasu rzeczywistego
rtc_read.asm - odczytanie czasu z zegara czasu rzeczywistego
rtc_set.asm - ustawienie czasu zegara
08/2007 MicroMade Instrukcja Obsługi 3.01 15
DSM-51
2.Instalacja oprogramowania
m04.txt - propozycje zadań do wykonania
\M05 - Wyjście do drukarki Centronix
drukarka.asm - wypisanie tekstu na drukarce
m05.txt - propozycje zadań do wykonania
\M06 - Tyrystorowy regulator oświetlenia
zarowka.asm - sterowanie jasnością \arówki
m06.txt - propozycje zadań do wykonania
\M07 - Interface sieci RS485
master.asm - zarządzanie siecią RS485
slave.asm - element slave w sieci
m07.txt - propozycje zadań do wykonania
\M08 - Czytnik kart magnetycznych
czytnik.asm - czytanie kart magnetycznych
m08.txt - propozycje zadań do wykonania
\M09 - Równia pochyła
rownia.asm - pomiar czasów na równi pochyłej
m09.txt - propozycje zadań do wykonania
\M10 - Miernik i regulator temperatury
grzalka.asm - pomiar rezystancji czujników KTY81-210
m10.txt - propozycje zadań do wykonania
\M11 - Programator pamięci EEPROM
EE_93c46.asm - programowanie pamięci EEPROM Microwire 93c46
EE_25040.asm - programowanie pamięci EEPROM SPI 25040
EE_24c01.asm - programowanie pamięci EEPROM IC 24c01
m11.txt - propozycje zadań do wykonania
At93c46.pdf - karta katalogowa pamięci EEPROM Atmel 93c46
At25040A.pdf - karta katalogowa pamięci EEPROM Atmel 25040A
At24c01A.pdf - karta katalogowa pamięci EEPROM Atmel 24c01A
\Test - programy testowe
test.asm - program do testowania transmisji z komputera do DSM-51.
2.3 TESTOWANIE TRANSMISJI KOMPUTER - DSM-51
Po instalacji oprogramowania na komputerze mo\emy sprawdzić, czy połączenie RS232 komputera z systemem
DSM-51 opisane w rozdziale 1.5 na stronie 10 działa poprawnie. Do przetestowania poprawności transmisji pomiędzy
komputerem a systemem DSM-51 zostanie wykorzystany program dsm51run.exe, który prześle program testowy i auto-
matycznie go uruchomi.
Testowanie transmisji nale\y wykonać następująco:
Połączyć system DSM-51 kablem RS232 z komputerem (patrz rozdz. 1.5 str. 10).
Włączyć zasilanie - system DSM-51 wypisze na wyświetlaczu:
DSM-51v3 MODE 0
>> PC CONTROL <<
16 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
2.Instalacja oprogramowania
Otworzyć Eksplorator Windows na folderze
C:\Program Files\MicroMade\DSM-51\Test
Wskazać myszką plik  TEST.HEX i korzystając ze skojarzenia komend z plikami *.hex wykonanych w czasie
instalacji, wydać polecenie  Uruchom
Zostanie uruchomiony program dsm51run.exe, który prześle plik TEST.HEX do systemu DSM-51 i spowoduje
jego uruchomienie (je\eli wszystko przebiegnie pomyślnie okienko programu zostanie samoczynnie zamknięte)
System DSM-51 przełączy się w tryb 1, w którym pamięć RAM jest przełączana w obszar pamięci programu. Na
wyświetlaczu DSM-51 pojawi się napis:
DSM-51v3 MODE 1
>> SIMULATOR <<
Po upływie około 0,5 sekundy kontrola nad systemem jest przekazywana do programu załadowanego do pamięci
RAM. Dalsze działanie systemu DSM-51 jest wynikiem pracy przesłanego programu  TEST .
Na wyświetlaczu, litera po literze co ok. 0,1 s, pojawi się napis świadczący o tym, \e program  TEST został
prawidłowo przesłany i uruchomiony w systemie DSM-51:
DSM-51v3 TEST
TRANSMISSION OK
Naciśnięcie klawisza [RESET ROM] powoduje start systemu DSM-51 od początku - system czeka na przesłanie
programu do uruchomienia (jak po włączeniu zasilania). Mo\na powtórzyć test przesyłając ten sam, lub inny pro-
gram.
Brak mo\liwości przesłania programu do systemu DSM-51 jest sygnalizowane ju\ przez program dsm51run.exe. Okien-
ko programu nie zamknie się automatycznie i zostanie tam podana informacja o problemie.
W takim wypadku nale\y sprawdzić, czy połączenie jest wykonane prawidłowo, i czy inny program nie zablokował por-
tu COM w komputerze.
08/2007 MicroMade Instrukcja Obsługi 3.01 17
DSM-51
3.Praca z systemem DSM-51
3.Praca z systemem DSM-51
Dydaktyczny System Mikroprocesorowy DSM-51 mo\e pracować samodzielnie lub we współpracy z komputerem.
W ka\dym z tych wariantów umo\liwia u\ytkownikowi wprowadzanie swoich programów do pamięci RAM, a następnie
uruchamianie ich. Mo\liwe jest równie\ wykonywanie wprowadzonego programu pod kontrolą monitora - w trybie pra-
cy krokowej.
W celu zrealizowania tych wszystkich mo\liwości, system potrafi pracować w kilku trybach. Ró\nią się one przede
wszystkim trybem pracy dekodera adresów oraz reakcją na u\ycie klawiszy RESET.
3.1 TRYBY PRACY DSM-51
3.1.1 Tryby dekodera adresów
Dekoder adresów systemu DSM-51 mo\e pracować w jednym z dwóch trybów. Podział przestrzeni adresowej przy stan-
dardowej konfiguracji w poszczególnych trybach został przedstawiony poni\ej:
TRYB 0 TRYB 1
PROGRAM DANE PROGRAM DANE
FFFFH
I/O F000H I/O
EPROM EPROM
8000H
7FFFH
EPROM RAM RAM RAM
0000H
Zastosowany w systemie DSM-51 mikrokontroler 8051 posiada rozdzieloną przestrzeń adresową: oddzielnie pamięć
programu i oddzielnie pamięć danych. Dla ka\dej z tych pamięci przestrzeń adresowa wynosi 64 kB. Zastosowane ukła-
dy pamięci (EPROM i RAM) posiadają pojemność o połowę ni\szą, czyli 32 kB. Dzięki temu, mo\liwe jest ich  prze-
mieszczanie w przestrzeni adresowej.
Poło\enie pamięci w przestrzeni adresowej:
EPROM z firmowym oprogramowaniem systemu DSM-51
tryb 0 - dostępny w obu połowach pamięci programu
tryb 1 - dostępny tylko w starszej połowie
RAM
tryb 0 - dostępna tylko w młodszej połowie pamięci danych
tryb 1 - dostępna w młodszych połowach pamięci programu i danych
Układy wejść/wyjść - zawsze dostępne w starszej połowie pamięci danych
Dostępność w trybie 1 pamięci RAM zarówno w przestrzeni pamięci programu jak i danych umo\liwia wykonywanie
programu zapisanego wcześniej w obszar pamięci danych.
Zmiana trybu dekodera adresów odbywa się na zasadzie działania urządzenia wejść/wyjść, podłączonego do szyny mi-
krokontrolera. W tym celu został zarezerwowany adres FF40H w przestrzeni adresowej pamięci danych. Zapis
dowolnych danych pod ten adres zmienia tryb na 1, natomiast odczyt spod tego adresu zmienia tryb na 0. Funkcje te zo-
stały zrealizowane wewnątrz dekodera adresów.
18 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
3.Praca z systemem DSM-51
W systemie DSM-51 umieszczono dwa klawisze RESET:
[RESET RAM] - generuje sygnał RESET do mikrokontrolera
[RESET ROM] - generuje sygnał RESET do mikrokontrolera oraz impuls zerujący do dekodera adresów, czyli
przestawia go w tryb 0.
U\ycie klawisza [RESET ROM] gwarantuje, \e pod adresem 0 w pamięci programu znajduje się pamięć EPROM z
oprogramowaniem systemowym. System DSM-51 rozpocznie swoją pracę od początku.
3.1.2 Tryb 0 systemu DSM-51
(Dekoder adresów pracuje w trybie 0.)
Uwaga !
Nie mylić trybów pracy systemu DSM-51 z trybami dekodera adresów. Dla ka\dego trybu pracy systemu jest okre-
ślony jeden z trybów, w którym pracuje dekoder adresów.
Po włączeniu zasilania system startuje w trybie 0. System sygnalizuje ten stan wypisując na wyświetlaczu:
DSM-51v3 MODE 0
>> PC CONTROL <<
W trybie tym system DSM-51 pracuje pod kontrolą komputera tzn. oczekuje na polecenia z komputera przesłane przez
port szeregowy COM1 systemu. Polecenia te mogą być wydawane przez program DSM51.exe lub dsm51run.exe. Słu\ą
one przede wszystkim do przesłania programu u\ytkownika z komputera i uruchomiania go w systemie DSM-51.
Faktycznie, w trybie tym, mo\liwe jest tylko przesłanie programu do systemu DSM-51 i zapisanie go w pamięci RAM.
Nie mo\na go natomiast uruchomić, poniewa\ pamięć RAM nie le\y w obszarze pamięci programu. Aby program uru-
chomić, trzeba zmienić tryb pracy DSM-51 na tryb 1.
Do trybu pracy 0 mo\na zawsze powrócić (z dowolnego, innego stanu systemu DSM-51) poprzez u\ycie klawisza [RE-
SET ROM].
3.1.3 Tryb 1 systemu DSM-51
(Dekoder adresów pracuje w trybie 1.)
Program dsm51run.exe, po przesłaniu programu do systemu DSM-51, wydaje mu polecenie przełączenia się w tryb 1.
Po otrzymaniu tego polecenia system sygnalizuje to poprzez wypisanie na wyświetlaczu:
DSM-51v3 MODE 1
>> SIMULATOR <<
Napis ten oznacza, \e system przechodzi do pracy z symulowaniem pamięci EPROM przez pamięć RAM. Aby to było
mo\liwe, system zmienia tryb pracy dekodera adresów na tryb 1. Po upływie około 0,5 sekundy kontrola nad systemem
jest przekazywana do programu załadowanego do pamięci RAM. Dalsze działanie systemu DSM-51 jest wynikiem pra-
cy przesłanego programu.
W trybie tym klawisze  RESET pozwalają na sterowanie systemem.
[RESET RAM] - ponownie uruchamia przesłany program
[RESET ROM] - powoduje start systemu DSM-51, czyli przejście do trybu 0
Naciśnięcie klawisza [RESET ROM] nie niszczy zawartego w pamięci RAM programu. Dlatego, pomimo przejścia do
trybu 0, istnieje mo\liwość ponownego uruchomienia programu znajdującego się w pamięci RAM. W tym celu nale\y
nacisnąć kombinację klawiszy [RESET ROM] i [1]:
nacisnąć i przytrzymać klawisz [1]
nacisnąć i puścić klawisz [RESET ROM]
puścić klawisz [1].
Działanie to wymusi ponowne uruchomienie trybu 1, czyli ustawienie trybu 1 dekodera adresów i przekazanie sterowa-
nia do programu znajdującego się w pamięci RAM.
Uwaga!
U\ycie ww. kombinacji klawiszy, tj. [RESET ROM] i [1], przed załadowaniem jakiegokolwiek programu do pa-
mięci RAM spowoduje trudne do przewidzenia działanie systemu DSM-51 (po włączeniu zasilania w pamięci
RAM znajdują się losowe wartości).
08/2007 MicroMade Instrukcja Obsługi 3.01 19
DSM-51
3.Praca z systemem DSM-51
3.1.4 Tryb 2 systemu DSM-51
(Dekoder adresów pracuje w trybie 1.)
Tryb 2 pracy systemu DSM-51 pozwala na jego samodzielną pracę (bez połączenia z komputerem). Tryb drugi mo\na
uruchomić poprzez kombinację klawiszy [RESET ROM] i [2]:
nacisnąć i przytrzymać klawisz [2]
nacisnąć i puścić klawisz [RESET ROM]
puścić klawisz [2].
Przejście do trybu 2 system sygnalizuje poprzez wypisanie na wyświetlaczu:
DSM-51v3 MODE 2
>> ASSEMBLER <<
System zmienia tryb pracy dekodera adresów na 1, a pod adresem 00H pamięci RAM umieszcza skok do asemblera za-
wartego w pamięci EPROM. Asembler pozwala na wpisanie i uruchomienie programu zawierającego maksymalnie 255
linii. Wpisany program mo\e być uruchomiony w trybie pracy ciągłej bądz w trybie pracy krokowej.
Klawisze  RESET pozwalają na wydanie następujących komend (równie\ w trakcie działania wpisywanego
programu):
[RESET RAM] - ponownie uruchamia symulator (z zachowaniem treści wpisanego programu)
[RESET ROM] + [2] - ponownie uruchamia symulator, kasuje program wpisany do pamięci
[RESET ROM] - powoduje start systemu DSM-51, czyli przejście do trybu 0
3.1.5 Tryb monitor systemu DSM-51
(Dekoder adresów pracuje w trybie 1.)
Tryb monitor systemu DSM-51 mo\e być włączony tylko z trybu 0 poprzez wydanie odpowiedniej komendy z kompute-
ra. Tryb ten jest wykorzystywany przez program DSM51.exe.
Po przesłaniu programu do systemu DSM-51, program DSM51.exe wydaje polecenie wejścia w tryb monitora. Tryb ten
pozwala na uruchomienie przesłanego programu w trybie pracy krokowej, z jednoczesnym śledzeniem zawartości reje-
strów mikrokontrolera na ekranie komputera. W dowolnym momencie mo\na równie\ wydać z komputera polecenie
kontynuacji programu w czasie rzeczywistym, czyli faktycznie przejście do trybu 1.
Działanie klawiszy  RESET :
[RESET RAM] - uruchamia przesłany program od początku w trybie 1
[RESET ROM] - powoduje start systemu DSM-51, czyli przejście do trybu 0.
3.2 PRACA SYSTEMU POD NADZOREM KOMPUTERA
Uruchamianie programu u\ytkownika w systemie DSM-51 w przypadku korzystania z pomocy komputera składa się z
następujących kroków:
przygotowanie kodu zródłowego programu,
asemblacja programu,
przesłanie wynikowego programu (*.hex) do systemu DSM-51 i jego uruchomienie .
3.2.1 Przygotowanie kodu zródłowego
Kod zródłowy programu powinien być przygotowany w postaci pliku tekstowego. Mo\na się w tym celu posłu\yć do-
wolnym edytorem np. Notatnikiem. Jako domyśle rozszerzenie nazwy pliku przyjęto .asm. Dla tego rozszerzenia
skojarzono przy instalacji komendy:
Otwórz - otwiera plik do edycji w Notatniku,
DSM-51 Ass - asembluje kod zródłowy wywołując asembler dsm51ass.
20 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
3.Praca z systemem DSM-51
Na program w asemblerze składa się zestaw linii, z których ka\da mo\e zawierać maksymalnie jeden rozkaz procesora,
dyrektywę asemblera lub wywołanie wcześniej zdefiniowanego makrorozkazu. Format ka\dej linii programu jest nastę-
pujący:
[] [] [] [;] .
Znaczenie poszczególnych pól linii programu jest następujące:
- symbol umieszczony na samym początku linii (pierwszy znak etykiety musi być pierwszym znakiem
w linii). Etykieta musi zaczynać się od litery lub znaku podkreślenia  _ i mo\e zawierać dowolną
kombinację liter, cyfr i podkreśleń.
- mnemonik kodu maszynowego procesora, dyrektywa asemblera lub makrorozkaz
- informacje wymagane przez . Poszczególne operandy są oddzielane przecinkami
- wszystkie znaki po średniku są traktowane jako komentarz i ignorowane przez asembler.
Poszczególne pola linii programu muszą być oddzielone między sobą co najmniej jednym znakiem spacji (lub
tabulacji). W programie mogą występować puste linie lub linie zawierające wyłącznie komentarz.
Szczegółowy opis formatu pliku zródłowego dla asemblera znajduje się w rozdz. 5 na str. 43.
3.2.2 Asemblacja programu
Razem z Dydaktycznym Systemem Mikroprocesorowym DSM-51 dostarczany jest asembler mikrokontrolera 8051 -
dsm51ass.exe. W celu asemblacji programu nale\y wywołać asembler w następujący sposób:
dsm51ass
gdzie jest nazwą pliku zawierającego kod zródłowy programu. Jeśli w nazwie nie zawarto rozszerzenia, to do-
myślnie przyjmowane jest rozszerzenie .asm.
W celu ułatwienia wywołania asemblera, z plikiem *.asm skojarzono komendę  DSM-51 Ass . Jest ona dostępna z pod-
ręcznego menu otwieranego prawym klawiszem myszy.
Wywołanie tej komendy powoduje uruchomienie programu dsm51ass.exe z przekazaniem do niego nazwy pliku do
asemblacji.
W wyniku działania programu powstają następujące pliki:
.hex - plik zawierający kod wynikowy w formacie Intel HEX
.lst - listing programu.
Listing programu to plik tekstowy zawierający treść programu uzupełnioną o numery linii, wygenerowane kody rozka-
zów oraz opisy błędów.
3.2.3 Przesłanie i uruchomienie programu
Powstały w wyniku asemblacji plik w formacie Intel HEX (rozszerzenie .hex) jest wykorzystywany do uruchomienia
programu w systemie DSM-51.
Aby umo\liwić uruchomienie programu w systemie DSM-51, system powinien:
być połączony kablem RS232 z komputerem,
pracować w trybie 0.
Do przesłania i uruchomienia programu u\ytkownika słu\y program dsm51run.exe. Przy wywołaniem tego programu
nale\y podać jako parametr nazwę pliku, który ma być przesłany do DSM-51.
dsm51run .hex
W celu ułatwienia wywołania tego programu, z plikiem *.hex skojarzono komendę  Uruchom . Jest ona dostępna z
podręcznego menu otwieranego prawym klawiszem myszy.
08/2007 MicroMade Instrukcja Obsługi 3.01 21
DSM-51
3.Praca z systemem DSM-51
Wywołanie tej komendy powoduje uruchomienie programu dsm51run.exe z przekazaniem do niego nazwy pliku. Plik
jest przesyłany do systemu DSM-51 i automatycznie uruchamiany.
3.2.4 Uruchomienie programu pod nadzorem monitora
Do przesłania i uruchomienia programu mo\na oprócz dsm51run.exe u\yć równie\ program DSM51.exe. Mo\liwa jest
wtedy praca krokowa uruchamianego programu z jednoczesnym śledzeniem zawartości rejestrów mikrokontrolera na
ekranie komputera. W celu uruchomienia programu DSM51.exe najprościej u\yć komendy  Otwórz skojarzonej z pli-
kiem *.hex.
Uruchomiony w ten sposób program DSM51.exe wykona następujące czynności:
pobierze plik *.hex
przeszuka porty COM1 do COM4 komputera w celu połączenia się z systemem DSM-51
prześle plik *.hex do systemu DSM-51
przełączy system DSM-51 w tryb monitora
Na ekranie komputera program wyświetli stan mikrokontrolera i będzie oczekiwał na wydanie kolejnych poleceń.
Uwagi do pracy monitora systemu DSM-51.
Do realizacji pracy krokowej wykorzystuje przerwanie z wejścia INT0. Dlatego, uruchamiane programy nie
mogą wykorzystywać pamięci pod adresem 0003H..0005H. W przykładowych programach wstawiono na począt-
ku programu skok do adresu 0100H.
Monitor wykorzystuje do swej pracy 4 bajty na stosie. W oknie "Stos" w miejsce wartości tych 4 bajtów wpisy-
wane jest XX, aby przypomnieć u\ytkownikowi, \e bajty te nie mogą być wykorzystywane przez jego program.
W innych oknach ("8051 RAM" i "SFR") wartość tych bajtów nie jest maskowana.
Pozostałe ograniczenia wynikające z pracy monitora mo\na znalezć w rozdz. 3.6 na str. 27.
W czasie wykonywania programu w systemie DSM-51 w trybie pracy krokowej dostępne są następujące polecenia:
Reset - ponowne załadowanie programu do DSM-51 i przygotowanie do pracy krokowej.
Krok bez analizy procedur - wykonanie jednego rozkazu, a jeśli jest to LCALL lub ACALL to wykonanie pro-
gramu do następnej linii.
Krok bez analizy procedur DSM - wykonanie jednego rozkazu, a jeśli jest to LCALL lub ACALL, którego adres
docelowy znajduje się w EPROMie (procedury DSM) to wykonanie programu do następnej linii.
22 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
3.Praca z systemem DSM-51
Krok - wykonanie jednego rozkazu programu.
Następna linia - wykonanie programu do następnej linii.
Szybkość wykonania programu do następnej linii zale\y od tego, w której pamięci ona się znajduje.
Linia programu w pamięci RAM - wykonanie programu odbywa się z pełną prędkością.
Linia programu w pamięci EPROM - wykonanie programu jest wielokrotnie spowolnione. Z tego powodu, w
przypadku wejścia w zawarte w pamięci EPROM procedury opóznień czasowych mo\e się wydawać, \e na-
stąpiło zawieszenie systemu. Procedura, która normalnie wykonuje się 1s, w tym przypadku zajmie prawie
40s.
Uruchom - uruchomienie programu od aktualnej pozycji w trybie pracy ciągłej (utrata kontroli nad programem).
Aby przywrócić kontrolę nad systemem nale\y:
nacisnąć przycisk "RESET ROM" - system DSM-51 wróci do trybu 0
wykonać funkcję "Reset" w programie DSM51.
3.3 URUCHAMIANIE PROGRAMÓW BEZ POMOCY KOMPUTERA
System DSM-51 umo\liwia wpisywanie i uruchamianie krótkich programów bez konieczności korzystania z komputera.
Jest to mo\liwe dzięki wbudowaniu w system specjalizowanego edytora kodu zródłowego programu i prostego asemble-
ra. Wpisywanie kolejnej linii kodu programu polega na wybraniu z menu mnemonika rozkazu, wybraniu zestawu jego
parametrów i określeniu ich wartości. W treści programu mo\na wstawiać etykiety, które następnie są wykorzystywane
przy określaniu adresów skoków. Asembler zawarty w pamięci EPROM pozwala na wpisanie i uruchomienie programu
zawierającego maksymalnie 255 linii. W jednej linii mo\e być zawarty jeden rozkaz mikrokontrolera lub etykieta. Ob-
szar pamięci RAM 00..FFH i 7000H..7FFFH jest zarezerwowany dla potrzeb asemblera i nie mo\e być u\yty przez
program u\ytkownika.
Aby rozpocząć pracę z asemblerem, nale\y przełączyć DSM-51 w tryb 2. Mo\na to uzyskać poprzez kombinację klawi-
szy: [2] - przytrzymać naciśnięty i [RESET ROM] - nacisnąć na moment.
Po rozpoczęciu pracy w trybie 2 na wyświetlaczu pojawia się napis:
DSM-51v3 MODE 2
>> ASSEMBLER <<
który informuje o mo\liwości wpisywania programu w asemblerze, jego asemblacji i uruchamiania.
U\ycie klawisza [Enter] powoduje przejście do głównego menu asemblera:
EDIT RUN STEP
Znaczenie poszczególnych pozycji menu:
EDIT - edycja programu
RUN - uruchomienie wpisanego programu w trybie pracy ciągłej
STEP - uruchomienie wpisanego programu w trybie pracy krokowej.
Najpierw nale\y przystąpić do edycji programu. W tym celu nale\y klawiszami kursora ([!], []) wybrać odpowiednią
pozycję menu i nacisnąć klawisz [Enter].
Na wyświetlaczu pojawi się kolejne menu, które pozwala na:
INS - wstawianie kolejnej linii programu
MAIN - powrót do głównego menu
DEL - usunięcie linii programu
W drugiej linii wyświetlacza LCD widać jedną linię programu. Wstawianie kolejnej linii (polecenie INS) powoduje
wpisanie nowej linii przed linię widoczną na wyświetlaczu. Usunięcie linii (polecenie DEL) powoduje skasowanie linii
widocznej na wyświetlaczu.
Posługując się klawiszami kursora ([ę!], [ ]) mo\na przeglądać kolejne linie programu.
Na początku program ma długość jednej linii. Jest to ostatnia linia programu i wygląda następująco:
.END
08/2007 MicroMade Instrukcja Obsługi 3.01 23
DSM-51
3.Praca z systemem DSM-51
Linii tej nie mo\na skasować, natomiast mo\na wstawiać przed nią kolejne linie.
Po wybraniu komendy INS mo\na wybrać z menu odpowiedni mnemonik, dyrektywę bądz etykietę. Mnemoniki uło\one
są w kolejności alfabetycznej, za nimi następują dyrektywy (DB i ORG), a następnie etykiety. Program pozwala na u\y-
cie 64 etykiet o z góry zdefiniowanych nazwach, składających się z litery L i zapisanego szesnastkowo numeru etykiety
(L00... L3F).
Jeśli dla wybranego mnemonika istnieje kilka zestawów parametrów, to na wyświetlaczu pojawia się menu, pozwalające
na wybór jednego z dostępnych zestawów. Klawisze [!], [], [ę!], [ ] pozwalają wybrać zestaw parametrów, a klawisz
[Enter] [!] akceptuje wybór. Po wybraniu zestawu, system oczekuje określenia wartości kolejnych parametrów.
Dla poszczególnych typów parametrów istnieją następujące mo\liwości:
Rr - wybór jednego z ośmiu rejestrów R0...R7
@Ri - wybór jednego z dwu rejestrów @R0, @R1
dir - wybór rejestru specjalnego według jego nazwy lub edycja (w trybie szesnastkowym) adresu komórki pamięci
wewnętrznej
#d8 - edycja dwucyfrowej liczby szesnastkowej
#d16 - edycja czterocyfrowej liczby szesnastkowej lub wartość jednej z etykiet L00...L3F
bit - wybór bitu w rejestrach specjalnych wg. jego nazwy lub edycja (w trybie szesnastkowym) numeru bitu
addr - wybór jednej z etykiet: L00...L3F
addr - w rozkazie LCALL wybór jednego z podprogramów systemowych DSM-51 lub jednej z etykiet: L00...L3F
addr - w dyrektywie ORG edycja czterocyfrowej liczby szesnastkowej
rel - wybór jednej z etykiet: L00...L3F.
Do edycji liczb szesnastkowych wykorzystywane są klawisze kursorów. Klawisze [ę!], [ ] powodują zwiększanie lub
zmniejszanie cyfry wskazywanej przez kursor. Klawisze [!], [] pozwalają na wybór edytowanej cyfry. Wprowadzenie
liczby czterocyfrowej podzielone jest na 2 etapy. Najpierw wprowadzany jest jej starszy bajt, a potem młodszy.
Po określeniu wszystkich wartości w dolnej linii wyświetlacza ukazuje się cała linia programu. System oczekuje jej za-
twierdzenia klawiszem [Enter]. Zatwierdzona linia jest włączana do edytowanego programu. Naciśnięcie w tym
momencie klawisza [Esc] powoduje powrót do edycji programu bez wprowadzania linii.
Po zakończeniu edycji nale\y powrócić do głównego menu wybierając komendę MAIN.
Z głównego menu mo\na uruchomić wpisany program w trybie pracy ciągłej (RUN) bądz krokowej (STEP). Przed uru-
chomieniem program jest automatycznie asemblowany i umieszczany w pamięci RAM od adresu 100H. Uruchomienie
programu polega na wykonaniu skoku pod ten adres. W trakcie asemblacji do wszystkich dyrektyw ORG dodawana jest
wartość 100H. Na przykład kod rozkazu występujący po dyrektywie ORG 0023H jest umieszczany pod adresem 0123H.
W celu umo\liwienia obsługi przerwań pod adresy 000BH, 0013H, 001BH, 0023H zostały wpisane rozkazy skoków
(LJMP), odpowiednio do adresów 010BH, 0113H, 011BH, 0123H. Na przykład, rozkazy obsługi przerwania od układu
transmisji szeregowej nale\y poprzedzić dyrektywą ORG 0023H.
Wewnętrzny asembler nie sprawdza poprawności programu. Oto błędy, które mogą wystąpić:
próba wykonania skoku względnego poza dopuszczalny obszar,
próba wykonania skoku lub wywołania podprogramu rozkazami AJMP / ACALL poza obszar strony 2kB,
nało\enie się fragmentów programu na siebie przy złych adresach dyrektyw ORG.
W trybie pracy krokowej po wykonaniu ka\dego rozkazu programu aktualny adres i kolejny rozkaz, który będzie wyko-
nany, są wyświetlane na wyświetlaczu. Poza tym na wyświetlaczu widoczna jest zawartość jednego spośród rejestrów:
ACC, PSW, SP, (SP), (SP-1), B, DPTR, R0..R7. Klawisze [!], [] pozwalają na wybór wyświetlanego rejestru. Kla-
wisz [Enter] powoduje wykonanie kolejnego rozkazu, a klawisz [ ] wykonanie programu a\ do osiągnięcia następnej
linii. Mo\e to być na przykład szybkie wykonanie podprogramu czy dokończenie pętli.
Zarówno z trybu pracy krokowej, jak i z trybu pracy ciągłej, mo\na wrócić do asemblera klawiszem [RESET RAM].
Ten sposób powrotu do asemblera powoduje zachowanie treści wpisanego programu. Mo\liwa jest zatem jego edycja
bądz ponowne uruchomienie. U\ycie kombinacji klawiszy [2] i [RESET ROM] spowoduje skasowanie programu wpisa-
nego do pamięci.
Do realizacji pracy krokowej system DSM-51 wykorzystuje przerwanie INT0. W związku z tym, pod adresem 03H jest
umieszczony skok do odpowiednich podprogramów w pamięci EPROM. Zatem w programie uruchamianym w trybie
pracy krokowej u\ytkownik nie mo\e u\ywać tego przerwania do swoich celów.
24 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
3.Praca z systemem DSM-51
3.4 PODPROGRAMY W PAMICI EPROM SYSTEMU DSM-51
W pamięci EPROM systemu DSM-51 zostały umieszczone podprogramy, które mają ułatwić pisanie prostych progra-
mów. Podprogramy te obsługują wyświetlacz LCD, klawiaturę, generują opóznienia czasowe oraz wykonują
kilkubajtowe operacje mno\enia i dzielenia. Zestawienie wszystkich podprogramów jest zawarte w tabelce poni\ej.
Podprogram Opis
WRITE_TEXT 2 A,PSW R0 Wypisuje na wyświetlacz LCD tekst wskazany rejestrem DPTR,
,DPTR zakończony bajtem=0.
WRITE_DATA 2 A,PSW R0 Wypisuje znakowo bajt z Akumulatora na wyświetlacz LCD.
WRITE_HEX 3 A,PSW R0 Wypisuje szesnastkowo bajt z Akumulatora na wyświetlacz
LCD.
WRITE_INSTR 2 A,PSW R0 Wysyła do wyświetlacza LCD rozkaz z Akumulatora.
LCD_INIT 2 A,PSW R0 Inicjuje pracę wyświetlacza LCD.
LCD_OFF 1 A,PSW R0 Wyłącza wyświetlacz LCD.
LCD_CLR 1 A,PSW R0 Kasuje zawartość wyświetlacza LCD i ustawia kursor na począt-
ku.
DELAY_US 0 A - Oczekuje przez czas zgodnie ze wzorem (łącznie z wywołaniem
procedury):
Czas[s] = ( A*2 + 6 ) * 12 / 11.0592
DELAY_MS 1 A - Odczekuje przez czas A[ms] (A=0 oznacza 256 ms).
DELAY_100MS 2 A - Odczekuje przez czas A*100[ms] (A=0 oznacza 25.6 s).
WAIT_ENTER 4 A,PSW R0 Pisze na wyświetlaczu  PRESS ENTER... i czeka na naciśnię-
cie klawisza [Enter].
WAIT_ENTER_NW 2 A,PSW R0 Czeka na naciśnięcie klawisza [ENTER] (niczego nie pisze na
wyświetlaczu).
TEST_ENTER 1 A,PSW R0 Sprawdza, klawisz [Enter]. C=0 - klawisz naciśnięty, C=1 - kla-
wisz puszczony.
WAIT_ENT_ESC 2 A,PSW R0 Czeka na [Enter] lub [Esc]. Zwraca informację: C=0 - [Enter],
C=1 - [Esc])
WAIT_KEY 2 A,PSW R0 Program czeka na dowolny klawisz z klawiatury matrycowej. Nr
klawisza zwraca w Akumulatorze.
GET_NUM 4 A,PSW R0 Wczytuje liczbę BCD (4 cyfry) z klawiatury pod adres @R0. Ko-
niec wpisywania: [Enter] (C=0), po 4 cyfrze równie\ [Esc] (C=1).
BCD_HEX 0 A,PSW R0 Zamienia liczbę z postaci upakowane BCD na 2 bajtach wska-
,B zanych przez @R0 na HEX na tych bajtach.
HEX_BCD 4 A,PSW R0,R2 Zamienia liczbę HEX na 2 bajtach (@R0) na postać upakowane
,B BCD (3 bajty @R0).
MUL_2_2 1 A,PSW R0,R2 Mno\y 2 bajty * 2 bajty (mno\na - @R0, mno\nik - B,A (B-high),
,B iloczyn - @R0 (4 bajty))
MUL_3_1 1 A,PSW R0 Mno\y 3 bajty * 1 bajt (mno\na - @R0 (3 bajty), mno\nik - A,
,B iloczyn - @R0 (4 bajty))
DIV_2_1 1 A,PSW R0,R2 Dzieli 2 bajty przez 1 bajt (dzielna - @R0, dzielnik - B, iloraz - na
dzielnej (@R0), reszta - A)
DIV_4_2 1 PSW A,R0, Dzieli 4 bajty przez 2 bajty (dzielna -@R0,dzielnik -B,A (B=high),
R2 iloraz - na dzielnej (@R0), reszta - @(R0+4), @(R0+5))
1. W kolumnie 2& 4 umieszczono informacje: zapotrzebowanie na miejsce na stosie, zmieniane rejestry, u\y-
wane rejestry.
2. @R0 w podprogramach wskazuje najmłodszy bajt danych. Starsze bajty są pod kolejnymi starszymi adre-
sami.
08/2007 MicroMade Instrukcja Obsługi 3.01 25
DSM-51
3.Praca z systemem DSM-51
3.5 URZDZENIA WEJŚĆ/WYJŚĆ DSM-51
Podane poni\ej adresy urządzeń dołączonych do szyny mikroprocesora dotyczą adresowania 8-bitowego (@Ri) przy za-
ło\eniu, \e port P2 jest ustawiony na 0FFH. Przy adresowaniu poprzez rejestr DPTR nale\y dodać wartość 0FF00H.
Adres HEX Symbol Urządzenie
0000 0xxx B
00H CSIC sterownik przerwań
0000 1xxx B
08H CSDA przetwornik C/A
0001 0xxx B
10H CSAD przetwornik A/C
0001 1xxx B
18H CSMX multiplekser analogowy
0010 0x01 B
21H CSKB0 klawiatura matrycowa: klawisze 0& 7
0010 0x10 B
22H CSKB1 klawiatura matrycowa: klawisze 8&
0010 1x00 B
28H CS55A układ 8255 - rejestr portu A
0010 1x01 B
29H CS55B układ 8255 - rejestr portu B
0010 1x10 B
2AH CS55C układ 8255 - rejestr portu C
0010 1x11 B
2BH CS55D układ 8255 - rejestr sterujący
0011 0xxx B
30H CSDS bufor wyboru wskaznika 7-segmentowego
0011 1xxx B
38H CSDB bufor danych wskaznika 7-segmentowego
01xx xxxx B
40H CSMOD tryb dekodera adresów
10xx xx00 B
80H LCDWC HD44780 - wpis rozkazów
10xx xx01 B
81H LCDWD HD44780 - wpis danych
10xx xx10 B
82H LCDRC HD44780 - odczyt stanu
10xx xx11 B
83H LCDRD HD44780 - odczyt danych
Urządzenia podłączone do portów mikrokontrolera 8051
P1.0 COM2 wyjście P3.0 (RxD) COM1 wejście
P1.1 sterownik przerwań P3.1 (TxD) COM1 wyjście
P1.2 wyjście izolowane O1 P3.2 (INT0) sterownik przerwań - COM2 wejście
P1.3 wyjście izolowane O2 P3.3 (INT1) sterownik przerwań (patrz tabela)
P1.4 watchdog P3.4 (T0) wejście izolowane I1
P1.5 brzęczyk BUZZER P3.5 (T1) klawiatura
P1.6 wyświetlacz 7-segmentowy
P1.7 dioda świecąca TEST
Sterownik Przerwań
Nr Sygnał przerwania Priorytet
przerwania P1.1 =  1  P1.1 =  0  przerwania Opis
0 IAD IAD najwy\szy IAD - przetwornik A/C
1 IOI IOI IOI - wejście izolowane I2
2 - IPA IPA - PC3 (8255)
3 - IPB najni\szy IPB - PC0 (8255)
Dołączenie wyświetlacza 7-segmentowego i klawiatur
Bufor danych wsk. Bufor wyboru wsk. Klawiatura matrycowa
a
Bit segment LED wskaznik klawisz CSKB0 CSKB1
0 a F1 W1 0 8
!
f b
g 1 b F2 W2 Esc 1 9
2 c F3 W3 2 !
e c
3 d F4 W4 ę! 3
d
4 e OK W5 ! 4 ę!
DP
5 f ER W6 ! 5 !
6 g LED 6 Esc
7 DP 7 Enter
26 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
3.Praca z systemem DSM-51
3.6 OGRANICZENIA PRACY KROKOWEJ DSM-51
Ograniczenia nakładane na uruchamiane programy przez program pracy krokowej systemu DSM-51:
do realizacji pracy krokowej wykorzystane jest przerwanie z wejścia INT0. Pod adresem 0003H jest wpisany roz-
kaz skoku LJMP do procedury obsługującej wykonanie pojedynczego kroku (adresy 0003H& 0005H nie mogą
być wykorzystane przez program);
przy uruchamianiu programu w trybie pracy krokowej nie mo\na wykorzystywać przerwania INT0 oraz zmieniać
ustawień dotyczących tego przerwania - w rejestrach TCON (IE0, IT0), IE (EA, EX0), P3 (P3.2 - INT0);
program pracy krokowej wykorzystuje 4 bajty na stosie;
uruchomione przez program Timery będą pracowały z pełną prędkością;
rejestr IP nie jest kontrolowany przez program pracy krokowej - ustawienie wy\szego priorytetu pozwala na wy-
korzystanie przerwania w czasie rzeczywistym.
Dodatkowo, w trybie monitora sterowanego z komputera:
uruchamiany program powinien się rozpoczynać rozkazem LJMP pod adres min. 0006H;
obszar pamięci RAM 7F00H& 7FFFH jest u\ywany do zapamiętania zmiennych programu MONITOR i nie po-
winien być u\ywany przez program u\ytkownika;
komunikacja MONITORA z komputerem odbywa się poprzez COM1. W uruchamianym programie nie mo\na
wykorzystywać transmisji szeregowej oraz zmieniać ustawień dotyczących portu szeregowego i Timera 1.
Dodatkowo, w trybie wewnętrznego asemblera systemu DSM-51:
obszar pamięci RAM 7700H& 7FFFH jest u\ywany do zapamiętania treści programu i nie powinien być u\ywany
przez program;
w momencie uruchamiania pracy ciągłej lub krokowej program jest asemblowany i umieszczany w pamięci
RAM, począwszy od adresu 0100H;
do wszystkich dyrektyw ORG dodawana jest wartość 0100H, np. dyrektywa ORG 0023H jest traktowana przez
program jako ORG 0123H, tzn. kod rozkazu występującego po dyrektywie ORG 0023H jest umieszczany pod ad-
resem 0123H;
w celu umo\liwienia obsługi przerwań pod adresy 000BH, 0013H, 001BH, 0023H zostały wpisane rozkazy skoków
LJMP odpowiednio do adresów 010BH, 0113H, 011BH, 0123H;
pod adresem 0000H umieszczony jest rozkaz skoku do programu, który ponownie uruchomi pracę asemblera w
przypadku u\ycia klawisza RESET RAM. Zniszczenie tego rozkazu przez program uniemo\liwi powrót do asem-
blera bez straty wpisanej treści programu;
w trybie pracy krokowej nie mo\na u\ywać wyświetlacza LCD i klawiatury matrycowej.
08/2007 MicroMade Instrukcja Obsługi 3.01 27
DSM-51
4.Dokumentacja techniczna
4.Dokumentacja techniczna
Dydaktyczny System Mikroprocesorowy DSM-51 jest uniwersalnym sterownikiem zbudowanym w oparciu o mikrokon-
troler 80C51.
Zastosowane w systemie dwa programowalne układy logiczne typu GAL (Generic Array Logic - Uniwersalna Matryca
Logiczna) pozwalają na ró\norodne konfigurowanie otoczenia mikrokontrolera, a w szczególności na zmianę konfigura-
cji w trakcie pracy programu. Zostało to wykorzystane w standardowej konfiguracji dekodera adresów do uruchamiania
programu załadowanego do pamięci RAM.
Dydaktyczny System Mikroprocesorowy DSM-51 jest wykonany w postaci jednej płytki drukowanej o wymiarach 16,5
x 21,5 cm, umieszczonej na metalowej podstawie. Z góry system jest przykryty przezroczystą płytką wykonaną z pleksi,
na której umieszczono opisy złącz i klawiatur.
Dydaktyczny System Mikroprocesorowy DSM-51 mo\na podzielić na trzy zespoły:
system mikroprocesorowy,
układy komunikacji z u\ytkownikiem,
porty urządzeń zewnętrznych.
Zgodnie z tym podziałem narysowane są schematy blokowe i ideowe, zamieszczone w dalszej części dokumentacji.
4.1 ZMIANY WPROWADZONE W WERSJI 3 SYSTEMU
Usunięcie złącza szyny systemowej.
Obecnie szyna systemowa mikrokontrolera 8051 nie jest wyprowadzona poza DSM-51.
Zmiana sterownika przerwań.
Do sterownika przerwań był doprowadzony sygnał przerwania IX ze złącza szyny systemowej. Obecnie sygnał
ten nie istnieje. Nale\ało go równie\ usunąć z równań opisujących sterownik przerwań. Zostało to zrobione w
taki sposób, aby w niczym nie zmienić działania sterownika przerwań dla pozostałych sygnałów.
Zmiana dekodera adresów.
Poprzednio, do elementów systemu, były rozprowadzone sygnały wyboru (CS..) oraz sygnały zapisu i odczytu
(WR i RD). Obecnie, sygnały te zostały zmieszane ju\ w dekoderze adresów, tworząc odpowiednio sygnały wy-
boru i zapisu (CW..) oraz sygnały wyboru i odczytu (CR..), rozprowadzane do poszczególnych elementów
systemu. Nie zmienia to w jakikolwiek sposób działania systemu DSM-51.
28 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
4.Dokumentacja techniczna
4.2 DANE TECHNICZNE
Parametry ogólne:
wymiary: 170 x 220 x 25 mm
zasilanie: 9V / 500 mA.
System mikroprocesorowy:
mikrokontroler: 80C52
zegar: 11.0592 MHz
pamięć EPROM: 32kB
pamięć RAM: 32kB
stała czasowa watchdoga: min 250 ms.
Układy komunikacji z u\ytkownikiem:
sygnalizatory:
optyczny: dioda LED
akustyczny: brzęczyk
zespół wyświetlacza 7-segmentowego:
wyświetlacz: 6 cyfr
diody świecące: 6 diod
klawiatura sekwencyjna: 6 klawiszy
zespół wyświetlacza LCD:
wyświetlacz: 2 linie po 16 znaków
sterownik wyświetlacza: HITACHI - HD44780
klawiatura matrycowa: 16 klawiszy.
08/2007 MicroMade Instrukcja Obsługi 3.01 29
DSM-51
4.Dokumentacja techniczna
Porty urządzeń zewnętrznych:
Prąd pobierany z VCC łącznie przez urządzenia zewnętrzne: max 150 mA.
RS232: 2 kanały
dwukierunkowe wejścia/wyjścia cyfrowe: 24 linie
układ wejść/wyjść równoległych: 8255
izolowane wejścia cyfrowe: 2 linie
napięcie sterujące: 5& 9V
izolowane wyjścia cyfrowe: 2 linie
napięcie wyjściowe: max 9V
prąd wyjściowy: max 3mA
wejścia analogowe:
liczba wejść: 8
zakres przetwarzanego napięcia: 0& 5V
przetwornik A/C: ADC0804
rozdzielczość: 8 bitów
czas przetwarzania:
ok. 150 s
wyjścia analogowe:
liczba wyjść: 1
zakres napięć wyjściowych: 0& 5V
przetwornik C/A: DAC08
rozdzielczość: 8 bitów
czas ustalania przetwornika: 85 ns
szybkość narastania napięcia:
3V/s
30 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
4.Dokumentacja techniczna
4.3 DEKODER ADRESÓW
Równania opisujące dekoder adresów v3.0:
Sygnał wyboru pamięci EPROM:
CSE = *
PSEN + TRYB
A15
Sygnał wyboru pamięci RAM:
CSR =
A15
Sygnał odczytu pamięci RAM:
RDR = ( + ) * RD
A15
PSEN + TRYB
Sygnał wyboru pozostałych urządzeń wejść/wyjść:
CSIO =
A15 * A14 * A13 * A12 * A7 * A6
Sygnał wyboru wyświetlacza LCD:
A15 * A14 * A13 * A12 * A7 * A6 * RD + WR
LCD =
( )
Tryb podziału przestrzeni adresowej:
TRYB = *
A15 * A14 * A13 * A12 * A7 * A6
RST2
( ) * TRYB +
A15 * A14 * A13 * A12 * A7 * A6
+ * * RD * WR +
( )
RST2
+ * TRYB * RD
RST2
Uwaga!
Sygnał TRYB nie jest podłączony do \adnych zewnętrznych układów. Jest on jedynie wykorzystywany wewnątrz
dekodera adresów.
08/2007 MicroMade Instrukcja Obsługi 3.01 31
DSM-51
4.Dokumentacja techniczna
4.4 STEROWNIK PRZERWAC
Równania opisujące sterownik przerwań v3.0:
Pamięć przerwania IAD:
O = ( * * CWIC * IAD ) + ( O * IAD)
0 0
D0 D1
Pamięć przerwania IOI:
O1 = ( D0 * * CWIC *IOI ) + ( O1 * IOI )
D1
Pamięć przerwania IPA:
O2 = ( * D1 * CWIC * ) + ( O2 * ) + PP1
D0 IPA IPA
Pamięć przerwania IPB:
O = ( D * D * CWIC * PP1 ) + ( O * PP1 ) +
3 0 1 3
+ ( D * D * CWIC * * *
0 1 3
IPB PP1 ) + ( O * IPB PP1 )
Sygnał przerwania INT0 procesora:
INT0 = 0
INT0.TRST =
IRS
Sygnał przerwania INT1 procesora:
INT1 = O0 * O1 * O2 * O3
Sygnały wyjściowe (te równania decydują o priorytecie przerwań):
D0 = O0 * + O0 * O2
O1
D1 = O0 * O1
Sygnały sterujące trójstanowymi buforami wyjściowymi:
D0.TRST = CRIC
D .TRST = CRIC
1
32 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
4.Dokumentacja techniczna
4.5 ZACZA SYSTEMU
Złącze zasilania
9V / 0.5 A
Złącze kanału szeregowego COM1
S2
Pin Sygnał Opis
1 NC
2 RxD (P3.0) Wejście
1
6
3 TxD (P3.1) Wyjście
2
7
4 NC
3
8
5 Masa - GND
4
9
6 NC
5
7 NC
8 NC
9 NC
Złącze kanału szeregowego COM2
S3
Pin Sygnał Opis
1 NC
1 2 IRS Wejście
6
3 P1.0 Wyjście
2
7
4 NC
3
8
5 Masa - GND
4
9
6 NC
5
7 NC
8 NC
9 NC
Złącze wejść/wyjść izolowanych galwanicznie
S4
Pin Symbol Sygnał Opis
1 O1e P1.2 Wyjście 1 - emiter
1 2 2 O1k P1.2 Wyjście 1 - kolektor
3 O2e P1.3 Wyjście 2 - emiter
3 4
4 O2k P1.3 Wyjście 2 - kolektor
5 6
5 GND Masa
7 8
6 VCC Napięcie +5V
9 10
7 I1k P3.4 Wejście 1 - katoda
8 I1a P3.4 Wejście 1 - anoda
9 I2k IOI Wejście 2 - katoda
10 I2a IOI Wejście 2 - anoda
08/2007 MicroMade Instrukcja Obsługi 3.01 33
DSM-51
4.Dokumentacja techniczna
Złącze wejść/wyjść analogowych
S5
Pin Symbol Opis
1 AGND Masa
1 2 2 VCC Napięcie +5V
3 AGND Masa
3 4
4 OUT Wyjście analogowe
5 6
5 AGND Masa
7 8
6 VOUT Napięcie (ok. 8V / 30 mA)
9 10
7 IN0 Wejście analogowe 0
11 12
8 IN1 Wejście analogowe 1
13 14
9 IN2 Wejście analogowe 2
10 IN3 Wejście analogowe 3
11 IN4 Wejście analogowe 4
12 IN5 Wejście analogowe 5
13 IN6 Wejście analogowe 6
14 IN7 Wejście analogowe 7
Złącze wejść/wyjść cyfrowych
S6
Pin Symbol Opis
1 PA7 8255 port A
1 2 2 PA6
3 PA5
3 4
4 PA4
5 6
5 PA3
7 8
6 PA2
9 10
7 PA1
11 12
8 PA0
13 14
9 PC7 8255 port C
15 16
10 PC6
17 18
11 PC5
19 20
12 PC4
21 22
13 PC3
23 24
14 PC2
25 26
15 PC1
16 PC0
17 PB7 8255 port B
18 PB6
19 PB5
20 PB4
21 PB3
22 PB2
23 PB1
24 PB0
25 GDN Masa
26 VCC Napięcie +5V
34 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
4.Dokumentacja techniczna
4.6 SCHEMATY BLOKOWE
System mikroprocesorowy
RST2
PSEN
RD
RST1
WR SZYNA STERUJCA
DEKODER
WATCHDOG
P1.4
ADRESÓW
+ RESET
CSE CSR CRIC
RDR CWIC
WR
RESET RESET
ROM RAM
A0...A15
A8..A15 SZYNA ADRESOWA
A0...A7
MIKROKONTROLER
BUFOR
STEROWNIK
ALE SZYNA PRZERWAC
EPROM RAM
80C51
ADRESÓW PRZERWAC
D0...D1
D0...D7 SZYNA DANYCH
PRZERWANIA MIKROKONTROLERA
INT0, INT1
P1.1
Komunikacja z u\ytkownikiem
F1
P1.7 LED
WYŚWIETLACZ 7-SEGMENTOWY
TEST
F2
a 0
F3
a a a a a a
b 1
f b f b f b f b f b f b BUFOR
MIKRO
c 2
F4 g g g g g g
d 3
DANYCH
KONTROLER
e 4
OK
e c e c e c e c e c e c
f 5
P1.5
DP DP DP DP DP WSKAyNIKA
d d d DP d d d g 6
BUZZER
ER
DP 7
80C51
P3.5 (T1)
Esc
6 5 4 3 2 1 0
P1.6
BUFOR WYBORU WSKAyNIKA
SZYNA STERUJCA CWDB
CWDS
CRKB
LCD
SZYNA DANYCH
D0...D7
SZYNA ADRESOWA
A0...A1
BUFOR KLAWIATURY MATRYCOWEJ
A0
0 1 2 3 4 5 6 7
WYŚWIETLACZ
A1
LCD 2*16
8 9 Esc
Enter
08/2007 MicroMade Instrukcja Obsługi 3.01 35
DSM-51
4.Dokumentacja techniczna
Porty urządzeń zewnętrznych
WE/WY WE/WY
COM1 COM2
IZOLOWANE CYFROWE
TXD
P1.0
MIKRO BUFOR
KONTROLER TRANSMISJI
STEROWNIK
RXD
RS232
TRANSMISJI
80C51
RÓWNOLEGAEJ
P1.2, P1.3
(BUFOR WE/WY)
IZOLACJA
GALWANICZNA
P3.4(T0)
IPA
IPB
SZYNA
IRS IOI
PRZERWAC
IAD
SZYNA CR55
CW55
STERUJCA
CWMX CRAD CWDA
CWAD
SZYNA
DANYCH
D0...D7
D0..2
SZYNA
ADRESOWA
A0...A1
PRZETWORNIK
BUFOR
ANALOGOWO-
CYFROWY
PRZETWORNIK
MULTI - CYFROWO-
BUFOR
PLEKSER
ANALOGOWY
WEJŚCIA WYJŚCIE
ANALOGOWE
36 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
4.Dokumentacja techniczna
4.7 SCHEMATY IDEOWE
Na następnych stronach umieszczono schematy ideowe Dydaktycznego Systemu Mikroprocesorowego DSM-51:
1/4 - Schemat systemu DSM-51 v3
2/4 - System mikroprocesorowy
3/4 - Komunikacja z u\ytkownikiem
4/4 - Porty urządzeń zewnętrznych
oraz schematy następujących kabli połączeniowych:
RS232 - kabel połączeniowy kanałów szeregowych RS232,
DIGITAL - kabel połączeniowy wejść/wyjść cyfrowych,
ANALOG - kabel połączeniowy we/wy analogowych.,
OPTO - kabel połączeniowy wejść/wyjść izolowanych galwanicznie.
08/2007 MicroMade Instrukcja Obsługi 3.01 37
1 2 3 4 5
DSM-51
D D
DSM_PZ_C.sch
DSM_SM_C.sch
RST1 RST1
IAD IAD
IPB IPB
IPA IPA
IOI IOI
IRS IRS
TXD TXD
Porty
RXD RXD
P34 P34
CW55 CW55
urządzeń
CR55 CR55
CWMX CWMX
CWDA CWDA
CRAD CRAD
C zewnętrznych C
CWAD CWAD
System
P1[0..7] P1[0..7]
A[0..15] A[0..1]
D[0..7] D[0..7]
Mikroprocesorowy
DSM_KU_C.sch
D[0..7]
8051
A[0..1]
P1[0..7]
CWDB CWDB
Komunikacja
CWDS CWDS
CRKB CRKB
B B
LCD LCD
z użytkownikiem
P35 P35
ZASILANIE
V8
C20
100n U16
K1
D52
7805#
L25
C60
S4
1SPDT_03 D1A 220U/16 100UH/500 GND
L23
L22
3 2 1 3
3 IN OUT VCC
2 KF200 KF200
Tytuł:
R18 C22 C61 Tytuł:
C21 C62
1
100n C23 C24
100n 1k 220U/16 22u/10
D51
100n 100n
Dydaktyczny System Mikroprocesorowy DSM-51
A Dydaktyczny System Mikroprocesorowy DSM-51 A
Tr18D
DC_GN13#
D6
GND GND GND GND GND GND
LED3G
GND Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
Z1
C
C
DSM51 DSM
DSM51 DSM
GND
RAD_TO220
Data: Plik: Arkusz:
Data: Plik: Arkusz:
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM51_C.SCH 1 z 4
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM51_C.SCH 1 z 4
1 2 3 45
0
2
1 2 3 4 5
RST1
VCC GND D[0..7]
C4
100n
U14E
RST1
R52 VCC C2 VCC C3
R434X100
10AHC14 11 VCC VCC C1 B0 A0
1
1k 100n 100n
C11
R13
100n
R27
1n 10 35 CSR FCSR GND GND
100k R15 C8
RST Vpp/EA GND
U14F12 1 U14A2 1M
10M 100n
33P
13 C53 21 B1 A1
D53
U14B
X1 A0 12 13 D0 A0 10 11 D0
KF1K
VCC BAV99 3 4 U1 43 L7 2 19 B0 B10 A10 A0 D0 A0 D0
D0 D0
R16
AHC14 X1
C25 AHC14 GND P0.0 D0 Q0 A1 11 14 D1 A1 9 12 D1
80c32 KF1K
D1 D1
C55 330 20 42 L14 3 18 B1 A1 D1 A1 D1
100n R2
Rk11.059
AHC14
D62 X2 P0.1 D1 Q1
33P D54
R444X100 A2 10 A2 D2 15 D2 A2 8 A2 D2 13 D2
D 1k KF1K D
GND L1 41 L21 4 17 B2 B2 A2
D2 D2 1
C54
BAW56
LED3Y
P0.2 D2 Q2 A3 9 17 D3 A3 7 15 D3
KF1K
33P KF1K
GND GND P10 2 40 L26 5 16 B3 RDR FRDR A3 D3 A3 D3
D3 D3
U15F U14C
GND P1.0 P0.3 D3 Q3 A4 8 18 D4 A4 6 16 D4
KF1K
11 10 13 12 6 5 P11 3 39 L27 6 15 B4 B3 A3 A4 D4 A4 D4
D4 D4
P1.1 P0.4 D4 Q4 A5 7 19 D5 A5 5 17 D5
KF1K
VCC P12 4 38 L28 7 14 B5 B11 A11 A5 D5 A5 D5
D5 D5
C57
AHC14 D61 AHC14 P1.2 P0.5 D5 Q5 A6 6 20 D6 A6 4 18 D6
U15E KF1K
1n 5 37 L29 8 13 B6 A6 D6 A6 D6
P13 D6 D6
BAW56
R12
AHC14 R14 P1.3 P0.6 D6 Q6
R414X100 A7 5 A7 D7 21 D7 A7 3 A7 D7 19 D7
KF1K
100k 6 36 L30 9 12 B7 B4 A4
100k P14 D7 D7 1
R6 R5
D5 P1.4 P0.7 D7 Q7 A8 27 A8 25 D[0..7]
1k 1k
GND RST2 8 9 T2Z6V8 P15 7 B9 A9 A8 A8
P1.5 A9 26 A9 24
C18 8 24 B8 ALE 11 1 B5 A5 A9 A9
P16
U14D U9 U10
100n P1.6 P2.0 LE OE A10 23 A10 21
P17 9 25 B9 B8 A8 A10 29C512 A10 62C256
AHC14 C17
P1.7 P2.1 A11 25 A11 23
100n
U7
GND P1[0..7] 26 B10 GND A11 VCC A11
K2 K3
P2.2 AHC573 A12 2 27 WR
R424X100 A12 4 A12
USW USW
GND RXD 11 27 B11 B6 A6 A12 WE
1
C26
RXD P3.0 RXD P2.3 A13 28 31 A13 26 22 FRDR
100n RESET RESET
VCC TXD 13 28 B12 B13 A13 A13 WE A13 OE
ROM TXD P3.1 TXD P2.4 A14 29 24 A14 1 20 FCSR
RAM
INT0 14 29 B13 B7 A7 A14 OE A14 CE
P3.2 INT0 P2.5 3 22 FCSE
INT1 15 30 B14 B14 A14 A15 CE
P3.3 INT1 P2.6
P14 P34 16 31 B15
P34 P3.4 T0 P2.7
R78100 GND P3
P35 17 B12 A12
P35 P3.5 T1
18 33 KF1K 32 PLCC32
L8
R79100
P3.6 WR ALE B15 A15
C 19 32 KF1K C
L9PSEN A[0..15]
P3.7 RD PSEN A[0..1]
R39100
CSE FCSE
L11 L10
KF1K KF1K
WR RD
INT1 VCC C6 VCC C7
100n 100n
GND GND
VCC C5
100n
A15 2 19 CSIO 15 CWIC
GND I0 I/O0 Y0
A14 3 18 A3 1 14 CWDA
R1
I1 I/O1 A0 Y1 CWDA
IAD 2 19 1k 4 17 CSE A4 2 13 CWAD
A13
IAD I0 I/O0 I2 I/O2 A1 Y2 CWAD
IPA 3 18 D0 A12 5 16 A5 3 12 CWMX
IPA I1 I/O1 I3 I/O3 A2 Y3 CWMX
IPB 4 17 D1 A7 6 15 11
IPB I2 I/O2 I4 I/O4 Y4
5 16 A6 7 14 LCD CSIO 4 10 CW55
GND I3 I/O3 I5 I/O5 E1 Y5 CW55
IOI 6 15 WR 8 13 CSR WR 5 9 CWDS
IOI I4 I/O4 I6 I/O6 E2 Y6 CWDS
7 14 RD 9 12 RDR 6 7 CWDB
U3
VCC I5 I/O5 I7 I/O7 E3 Y7 CWDB
IRS 8 13 AHC138
B B
P1[0..7] IRS I6 I/O6 P2
P11 9 12 INT0 PSEN 1 VCC
I7 I/O7 I/CK VCC C10
RST2 11
100n
I/OE 20
CWIC 1 GND
PLCC20
I/CK
CRIC 11
U12 P1 U11
I/OE 15 CRIC
GAL16V8 GAL16V8 Y0
20 PLCC20
A3 1 14
A0 Y1
A4 2 13 CRAD
LCD A1 Y2 CRAD
LCD A5 3 12
A2 Y3
11 CRKB
Y4 CRKB
CSIO 4 10 CR55
E1 Y5 CR55
RD 5 9
E2 Y6
6 7
U4
VCC E3 Y7
AHC138
Tytuł:
Tytuł:
Dydaktyczny System Mikroprocesorowy DSM-51
A Dydaktyczny System Mikroprocesorowy DSM-51 A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
C
C
DSM51 - System mikroprocesorowy DSM_SM
DSM51 - System mikroprocesorowy DSM_SM
Data: Plik: Arkusz:
Data: Plik: Arkusz:
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM_SM_C.SCH 2 z 4
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM_SM_C.SCH 2 z 4
1 2 3 45
44
22
V
G
32
16
28
14
20
10
V
G
V
G
V
G
14
7
V
G
G
V
7
14
20
10
16
8
V
G
V
G
20
10
V
G
16
8
V
G
1 2 3 4 5
VCC
V8
R61 R26 C49
100n L24
2k2 10k
W1
GND GND
WL1602 KF200
C52 C51
100n 100n
D D
C19 L6 L5 L4 L3 L2 L1 L0
T26 T21 T23 T24 T25
220U/16 GND
T20 T9
T6 T7
T11 T8 T10
T22
BC807
T5
BC807 BC807 BC807
BC807 BC807 BC807
BC847 BC847
BC847 BC847
BC847
BC847 BC847
R60
470
A0 A1 LCD D0 D1 D2 D3 D4 D5 D6 D7
W2
P16
T3
W7A14*3
A[0..1]
A[0..1] BC857
LCD
W3
GND
W7A14*3
K10 K0 K18 K0
USW USW
S0 S1 S2 S3 S4 S5 S0 S1 S2 S3 S4 S5 S6 S7 S0 S1 S2 S3 S4 S5 S6 S7
K11 K1 K19 K1
USW USW
K12 K2 K20 K2 VCC S0 S1 S2 S3 S4 S5 S6 S7
R72 R73
VCC VCC
4X10K 4X10K C48 C46
USW USW T12 T13
T14 T15 T16 T17 T18 T19
100n 100n
BC847 BC847 BC847 BC847 BC847 BC847 BC847 BC847
K13 K3 K21 K3 GND GND
C C
R74
USW USW
R76
4X1K
K0 1 2 18 D0 D0 2 19 1 R0
K14 K4 K22 K4 A0 Y0 D0 Q0
K0 K1 K2 K3 K4 K5 K6 K7 K1 3 17 D1 D1 3 18 4X1K R1
USW USW
A1 Y1 D1 Q1
K2 4 16 D2 D2 4 17 R2
K15 K5 K23 K5 A2 Y2 D2 Q2
GND GND GND GND GND GND GND GND
K3 5 15 D3 D3 5 16 R3 R0 R1 R2 R3 R4 R5 R6 R7
USW USW
A3 Y3 D3 Q3
R77
K0 K1 K2 K3 K4 K5 K6 K7 K4 1 6 14 D4 D4 6 15 1
R4
K16 K6 K24 K6 A4 Y4 D4 Q4
K5 7 13 D5 D5 7 14 4X1K
R5
USW USW
A5 Y5 D5 Q5
K6 8 12 D6 D6 8 13 R6
K17 K7 K25 K7 A6 Y6 D6 Q6
GND K7 9 11 D7 D7 9 12 R7
USW USW
A7 Y7 D7 Q7
D47 D48 D49 D50
R75
R62 R63
T2Z6V8 T2Z6V8 T2Z6V8 T2Z6V8
3 2 6 5 4X1K 1 CWDB
11 1
OE1 CWDB CLK OE
220 220 19 R37
U6
D46 OE2
4X220
AHC541 GND L0 1 K4
U20 AHC574
T2Z6V8 D68
U13B
U13A
GND
USW
BAV70
AHC125 AHC125 GND L1
A1 A0 VCC L2 K5
C47
100n
L3
D40USW D43
GND
T2Z6V8
CRKB
T2Z6V8
CRKB
D6 2 19 L6 GND K6 GND
B B
D0 Q0
USW D69
D[0..7] D5 3 18 L5
D[0..7] D1 Q1 BAV70
D4 4 17 L4 K7
D2 Q2
USW
D3 5 16 L3
D3 Q3
D41 D44
R38
D2 6 15 L2
T2Z6V8 T2Z6V8
D4 Q4
4X220
P1[0..7] D1 7 14 L1 L4 1 GND K8 GND
D70
P1[0..7] D5 Q5
USW
BAV70
D0 8 13 L0 L5
D6 Q6
9 12 K9
GND D7 Q7 R57
USW
2k2
VCC
D42 D45
11 1
CWDS
T2Z6V8 T2Z6V8
U15A
CWDS CLK OE
C50
P17 1 2 GND GND GND
GND
U21 AHC574 GND
R17 100n
AHC14
G1 R40
330
P35
U15B
BUZ14G P35
R11
P15 3 4 220
D55
T4
1k BC847
LED3R
AHC14
VCC
C9
GND GND 100n
Tytuł:
Tytuł:
GND
Dydaktyczny System Mikroprocesorowy DSM-51
A Dydaktyczny System Mikroprocesorowy DSM-51 A
12 11 9 8 Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
U13C
C
C
DSM51 - Komunikacja z użytkownikiem DSM_KU
DSM51 - Komunikacja z użytkownikiem DSM_KU
U13D AHC125
AHC125
Data: Plik: Arkusz:
Data: Plik: Arkusz:
GND GND
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM_KU_C.SCH 3 z 4
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM_KU_C.SCH 3 z 4
1 2 3 45
3
2
1
V
RS
R/W
E
DB0
DB1
DB2
DB3
DB4
DB5
DB6
VO
DB7
A
K
G
4
5
6
7
8
9
12
8
12
8
10
11
12
13
14
15
16
D60
LED3R
D58
LED3R
D59
LED3R
D56
LED3R
D57
LED3R
D71
LED3G
A
B
A1
C
D
9
E
F
G
A3
DP
A
B
A1
C
D
9
E
F
G
A3
DP
7
4
2
1
A2
5
3
7
4
2
1
A2
5
3
11
10
11
10
1
1
20
10
20
10
V
G
V
G
R71
220/0.25W
R70
220/0.25W
R69
220/0.25W
R68
220/0.25W
R67
220/0.25W
R66
220/0.25W
R65
220/0.25W
R64
220/0.25W
1
4
20
10
V
G
14
7
G
13
V
10
1 2 3 4 5
VCC
C36
100n
V+ C27
GND
100n
AGND V+
R46 C29
1 2 1
PA7 PA6 PA0 PA0 R29 5 U24
D29 PA0 100n
4X100
3 4 4X220 1 C7 C0
PA5 PA4 PA1 PA1 4 39 RST1 D0 E0 E7 2 19 16 1
T2Z6V8
PA1 RST RST1 D0 Q0 B0 V+
5 6 C6 C1
PA3 PA2 PA2 PA2 3 D1 E1 E6 3 18 15
R49
D28 PA2 D1 Q1 B1
7 8 C5 C2
PA1 PA0 PA3 PA3 2 38 D0 D2 E2 E5 4 17 14 2 10k_1% C66
T2Z6V8
PA3 D0 D2 Q2 B2 VRef+
D R20 D
9 10 1 44 37 C4 C3
PC7 PC6 PA4 PA4 R30 D1 D3 E3 E4 5 16 13 3 33P
R48
D27 PA4 D1 D3 Q3 B3 VRef-
11 12 4X220 1 C3 C4
PC5 PC4 PA5 PA5 43 36 D2 D4 E4 E3 6 15 12 10k
T2Z6V8
PA5 D2 D4 Q4 B4 10k_1%
13 14 C2 C5
PC3 PC2 PA6 PA6 42 35 D3 D[0..7] D5 E5 E2 7 14 11 8 AGND 2
D26 PA6 D3 D[0..7] D5 Q5 B5 Iout 1
15 16 C1 C6
PC1 PC0 PA7 PA7 41 33 D4 D6 E6 E1 8 13 10 6 3
T2Z6V8
PA7 D4 D6 Q6 B6 Iout AGND
17 18 C0 C7
PB7 PB6 32 D5 D7 E7 E0 9 12 9 R22
D5 D7 Q7 B7 U23A
C30
L16
19 20 1 20 31
PB5 PB4 PB0 PB0 R31 D6 4 AGNDTLC272 10k KF220 V+
R474X100
100n C31
D37 PB0 D6 U18 Comp
21 22 4X220
PB3 PB2 PB1 PB1 21 30 D7 11 1 5 7 100n L17
T2Z6V8
PB1 D7 CLK OE VLC V-
KF220
23 24
PB1 PB0 PB2 PB2 22 A[0..1] AHC574 AGND
D36 PB2 A[0..1]
DAC08
25 26 PB3 PB3 24 10 A0 AGND AGND V- AGND C40
T2Z6V8
PB3 A0 C41
1 25 9
PB4 PB4 R32 A1 V+ V+ 100n
C34 100n
C33
S6 D35 PB4 A1
D38
100n 100n
4X220
GND PB5 PB5 26
T2Z6V8
D100/26GK
T2Z6V8 PB5 AGND AGND
PB6 PB6 27 40 CW55 AGND
4X220
VCC D34 PB6 WR CW55 R35
GND PB7 PB7 28 6 CR55 E0 18 131 IN0
T2Z6V8
L19
S5
PB7 RD CR55 D0 X0
KF220
7 E1 17 6 3 1 IN1 1 2
D21
CS D1 VI+ X X1
T2Z6V8
C43 1 16 E2 16 7 15 IN2 3 4
PC0 PC0 R33
100n C42 D33 IntB PC0 D2 VI- X2 AGND AGND
4X220
PC1 PC1 17 GND E3 15 X0 9 2 IN3 5 6
100n T2Z6V8
PC1 D3 A0 X3
PC2 PC2 18 E4 14 9 AGND 10 141 IN4 IN0 IN1 VOUT
X1 7 8
D32 PC2 D4 VRef/2 A1 X4
C GND PC3 PC3 19 E5 13 X2 11 5 IN5 IN2 IN3 C
9 10
T2Z6V8
IntA PC3 D5 A2 X5
1 15 11 12
PC4 PC4 R34 E6 12 8 12 IN6 IN4 IN5
D31 PC4 D6 AG X6
4X220 13 14
1 PC5 PC5 14 E7 11 6 4 IN7 IN6 IN7
T2Z6V8
PC5 R45 D7 CE X7
6 PC6 PC6 13 CWDA 1 AGND
R36
D30 PC6 CWDA D100/14GK
2 PC7 PC7 11 IAD 5 19 AGND 4X220
T2Z6V8 U25 U22
PC7 IAD INT CkR
82C55
HC4051
7 CWAD 3 R54
CWAD WE
47k
3 GND IPA CRAD 2 4
IPA CRAD OE Ck
8 IPB 1
U26
IPB 4X100 CE C56AGND
4 ADC0804
33P
VCC
9 AGND V+ AGND
C28
S2
100n D22 D23 D24 D25
5
L2
DB9W^
C16 T2Z6V8 T2Z6V8 T2Z6V8 T2Z6V8
AGND
KF1K
100n AGND
GND
R59 L15
GND GND 2 19 T2
22 KF220
C14 D0 Q0
C15 BC857
2 6 3 18
100n
100n
V+ V- D1 Q1
1 1 4 4 17 V- T1
D63
C12 C1+ C2+ D2 Q2 R50
BC857
DZ12V
6 100n 3 5 C13 5 16 C32 C39
100
C1- C2- 100n
D3 Q3 100n 100n
2 R28 6 15 AGND
D4 Q4 AGND
4X220 RS TTL R23
KF1K
7 L3 14 11 TXD E2 7 14 X2 5
B B
T1 t1 TXD D5 Q5 7 U23B 10k
KF1K
3 L4 13 12 R3 RXD E1 8 13 X1 6
R1 r1 RXD D6 Q6 TLC272
KF1K 1k
8 L5 7 10 P10 E0 9 12 X0 AGND
T2 t2 D7 Q7 AGND
KF1K
4 L6 1 8 9 IRS
R2 r2 IRS
U19
9 CWMX 11 1
1k
D1 R4
CWMX CLK OE
Tr18D
S3 5 D4 AHC574
C58 C59 R51
U8
DB9W^
Tr18D 1n 1n
100
GND ST202 AGND
D2 D3
GND GND
Tr18D Tr18D
GND
V+ C37 100n V-
U27
V8
O1 PC357 R7
O1k 8 9 P12 78L05
R53
L18 R58 L12
100
1k 8 1 2 1
D64
IN OUT I O
U15D
O1eDZ24V C38 KF220 2,3,6,7 22 KF1K
AHC14
GND C35 C65
S7
100n
100n U17
2u2/10
O1e 1 2 O1k
O2 PC357 R8 TPS60403
VCC O2k 6 5 P13 C63 C64
O2e 3 4 O2k
L20 22u/10 2u2/10
D39
1k P1[0..7] GND AGND AGND
KF220
T2Z6V8 D65
5 6 P1[0..7]
U15C
GND O2eDZ24V
AHC14
I1k 7 8 I1a GND
Tytuł:
Tytuł:
I2k 9 10
I2a
1k O3 PC357 R56
R9
I1a
Dydaktyczny System Mikroprocesorowy DSM-51
A Dydaktyczny System Mikroprocesorowy DSM-51 A
C44 C45 VCC
D100/10GK
2k2 P34
100n 100n
D66
GND R24 P34
GND I1k DZ24V 2k2 GND AGND Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
GND
C
C
DSM51 - Porty Zewnętrzne DSM_PZ
DSM51 - Porty Zewnętrzne DSM_PZ
O4 R55
R101k PC357 VCC
I2a
2k2 IOI Data: Plik: Arkusz:
Data: Plik: Arkusz:
D67
R25 IOI
I2k DZ24V 2k2
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM_PZ_C.SCH 4 z 4
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM_PZ_C.SCH 4 z 4
GND
1 2 3 45
8
29
G
V
20
10
V
G
10
20
16
8
7
G
V
G
V-
V+
IN0
IN1
IN2
IN3
IN4
IN5
IN6
IN7
20
10
V
G
16
15
V
G
8
4
3
5
C-
C+
G
4
1 2 3 4 5
Kabel DIGITAL
DSM-51 dł. 10 cm MODEL
D D
S3 S4
PA7 1 2 PA6 PA7 26 25 PA6
PA5 3 4 PA4 PA5 24 23 PA4
PA3 5 6 PA2 PA3 22 21 PA2
PA1 7 8 PA0 PA1 20 19 PA0
PC7 9 10 PC6 PC7 18 17 PC6
PC5 11 12 PC4 PC5 16 15 PC4
PC3 13 14 PC2 PC3 14 13 PC2
PC1 15 16 PC0 PC1 12 11 PC0
PB7 17 18 PB6 PB7 10 9 PB6
Kabel RS232
PB5 19 20 PB4 PB5 8 7 PB4
dł. 1.5 m
PB3 21 22 PB2 PB3 6 5 PB2
PB1 23 24 PB0 PB1 4 3 PB0
25 26 2 1
GND VCC GND VCC
S1 S2
D100/26W D100/26W
1 1
C 6 6 C
2 2
7 7
3 3
Kabel ANALOG
8 8
DSM-51 dł. 10 cm MODEL
4 4
9 9
5 5
S5 S6
1 2 14 13 DB9G DB9G
AGND VCC AGND VCC
3 4 12 11
AGND OUT AGND OUT
5 6 10 9
AGND VOUT AGND VOUT
IN0 7 8 IN1 IN0 8 7 IN1
IN2 9 10 IN3 IN2 6 5 IN3
IN4 11 12 IN5 IN4 4 3 IN5
IN6 13 14 IN7 IN6 2 1 IN7
D100/14W
D100/14W
B B
Kabel OPTO
DSM-51 dł. 10 cm MODEL
S7 S8
O1e 1 2 O1k O1e 10 9 O1k
O2e 3 4 O2k O2e 8 7 O2k
VCC 5 6 GND VCC 6 5 GND
I1k 7 8 I1a I1k 4 3 I1a
I2k 9 10 I2a I2k 2 1 I2a
D100/10W D100/10W
Tytuł:
Tytuł:
Dydaktyczny System Mikroprocesorowy DSM-51
A Dydaktyczny System Mikroprocesorowy DSM-51 A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
C
C
DSM51 - Kable standardowe DSM_KS
DSM51 - Kable standardowe DSM_KS
Data: Plik: Arkusz:
Data: Plik: Arkusz:
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM_KS_C.SCH 1 z 1
6-Jun-2006 D:\MM\MM_PROT\DSM\DSM51\DSM_KS_C.SCH 1 z 1
1 2 3 45
DSM-51
5.Asembler dsm51ass
5.Asembler dsm51ass
Program DSM51ASS jest asemblerem mikrokontrolera 8051 przeznaczonym do stosowania przy nauce programowania
tego mikrokontrolera z wykorzystaniem Dydaktycznego Systemu Mikroprocesorowego DSM-51.
Podstawowe cechy asemblera DSM51ASS:
jest makroasemblerem jednoprzebiegowym,
komunikaty wypisuje w języku polskim,
pozwala asemblować tylko pojedynczy plik wejściowy (nie ma fazy linkowania),
asemblowany program mo\e liczyć maksymalnie około 20 000 linii listingu (zale\nie od dostępnej pamięci),
zezwala na stosowanie rozbudowanych wyra\eń arytmetycznych o postaci zbli\onej do wyra\eń języka C,
wszystkie wyra\enia arytmetyczne liczy na liczbach 32 bitowych ze znakiem,
wartości wszystkich symboli pamięta w postaci liczb 16 bitowych bez znaku.
Wywołanie programu:
DSM51ASS
gdzie jest nazwą pliku zawierającego kod zródłowy programu. Jeśli w nazwie nie zawarto rozszerzenia to do-
myślnie przyjmowane jest rozszerzenie .asm.
W wyniku działania programu powstają następujące pliki:
.hex - plik zawierający kod wynikowy w formacie Intel HEX.
.lst - listing programu
5.1 FORMAT LINII PROGRAMU:
Typowa linia programu w asemblerze wygląda następująco:
[] [] [] [;]
Znaczenie poszczególnych pól linii programu jest następujące:
- symbol umieszczony na samym początku linii (pierwszy znak etykiety musi być pierwszym znakiem w li-
nii). Etykieta musi zaczynać się od litery lub znaku podkreślenia '_', i mo\e zawierać dowolną kombinację liter, cyfr i
podkreśleń. Jeśli etykieta jest zakończona dwukropkiem to nadawana jest jej wartość określająca jej pozycję w kodzie
zródłowym (adres rozkazu z tej linii programu). Etykiety (symbole) stosowane z dyrektywami nadającymi im wartość
nie są zakończone dwukropkiem.
- mnemonik kodu maszynowego procesora, dyrektywa asemblera lub makro.
- informacje wymagane przez mnemonik, dyrektywę asemblera lub makro. Poszczególne operandy są od-
dzielane przecinkami.
- wszystkie znaki występujące po średniku są traktowane jako komentarz i ignorowane przez asembler.
Poszczególne pola linii programu muszą być oddzielone między sobą co najmniej jednym znakiem spacji (lub
tabulacji). W programie mogą występować puste linie lub linie zawierające wyłącznie komentarz.
5.2 WYRAśENIA ARYTMETYCZNE
Wyra\enia arytmetyczne słu\ą do określenia wartości parametrów wymagających podania wartości liczbowej. Wyra\e-
nia składają się ze stałych liczbowych i symboli (etykiety, nazwy stałych lub zmiennych) połączonych operatorami
arytmetycznymi.
Składnia wyra\eń asemblera DSM51ASS została zaczerpnięta z języka C. Wprowadzono kilka dodatkowych operato-
rów stosowanych powszechnie w asemblerach oraz zmieniono priorytet operacji bitowych - są one wykonywane przed
operacjami porównań. Operatory porównań dają wartość 1 je\eli warunek jest prawdziwy oraz 0 je\eli jest fałszywy.
08/2007 MicroMade Instrukcja Obsługi 3.01 43
DSM-51
5.Asembler dsm51ass
Operatory logiczne ( !,&&,|| ) ka\dą wartość ró\ną od zera traktują jako prawdę, a wartość 0 jako fałsz. Jako wynik ope-
racji logicznych równie\ uzyskujemy wartość 1 lub 0.
W asemblerze DSM51ASS wszystkie obliczenia wykonywane są na liczbach 32 bitowych ze znakiem. Oznacza to, \e
wartość wyra\enia jest wyliczona prawidłowo dopóki wyniki pośrednie mieszczą się w zakresie -2,147,483,648 do
2,147,483,647. Przekroczenie tego zakresu w czasie obliczeń nie jest sygnalizowane.
Wartości symboliczne u\ywane w programie są przechowywane jako liczby 16 bitowe bez znaku.
Asembler kontroluje wartość i typ wyra\enia. Je\eli wartość wyra\enia arytmetycznego wykracza poza zakres dopusz-
czony dla aktualnego parametru lub typ wyra\enia jest nieodpowiedni to generowany jest błąd.
Stałe liczbowe
Stała liczbowa musi zaczynać się od cyfry.
DSM51ASS akceptuje następujące typy stałych liczbowych:
Typ Składnia Przykład
Dziesiętny 125
Szesnastkowy H 0FFFFH
Ósemkowy O 7777O
Binarny B 10101B
Znakowy '' 'A'
Symbole
Symbole reprezentowane są przez ciąg znaków zaczynający się od litery lub znaku podkreślenia '_' i składający się z do-
wolnej sekwencji liter, cyfr i podkreśleń. Asembler rozpoznaje pierwsze 32 znaki symbolu.
W asemblerze DSM51ASS zdefiniowano standardowe symbole reprezentujące poszczególne rejestry i bity procesora
8051. Poza tym asembler rozpoznaje symbole określające adresy urządzeń systemu DSM-51 i zawartych w jego pamięci
EPROM podprogramów standardowych.
Listę tych symboli umieszczono w rozdz. 5.5 na str. 48.
5.3 OPERATORY ARYTMETYCZNE
Operatory wg priorytetu ich wykonywania:
(), Nawiasy
!, ~, +, -, <, > Modyfikacje wartości
.0, .1, .2, .3, .4, .5, .6, .7 Selekcja bitów
*, /, % Mno\enie, dzielenie
+, - Dodawanie, odejmowanie
<<, >> Przesunięcia bitowe
& Bitowe AND
^ Bitowe XOR
| Bitowe OR
<, <=, >, >=, =, ==, != Porównania
&& Logiczne AND
|| Logiczne OR
Znaczenie poszczególnych operatorów
Nawiasy
() - Nawiasy określają kolejność wykonywania działań. Nie ma ograniczenia liczby zastosowanych zagłębio-
nych nawiasów.
44 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
5.Asembler dsm51ass
Operatory modyfikujące wartość następującego po nich operandu:
! - Negacja logiczna. Zmienia wartość ró\ną od 0 na 0, a wartość równą 0 na 1.
~ - Negacja bitowa. Zmienia wszystkie 32 bity w operandzie na odwrotne.
+ - Nie zmienia wartości.
- - Zmienia znak operandu na przeciwny.
< - Najmłodszy bajt operandu ( wyra\enie '< operand' jest równowa\ne wyra\eniu '( operand & 0FFH )' lub
'( operand % 256 )' ).
> - Starsze 3 bajty operandu ( wyra\enie '> operand' jest równowa\ne wyra\eniu '( operand >> 8 )' lub
'( operand / 256 )').
Operatory selekcji bitów w bitowo adresowalnych rejestrach:
.n - Występując po adresie (nazwie) rejestru oblicza adres wskazanego bitu tego rejestru. Je\eli dany adres
nie jest adresem bitowo adresowalnego rejestru sygnalizowany jest błąd. 'n' jest cyfrą z zakresu 0..7.
Operatory mno\enia i dzielenia:
* - Mno\enie.
/ - Dzielenie.
% - Dzielenie 'modulo' (reszta z dzielenia).
Operatory dodawania i odejmowania:
+ - Dodawanie.
- - Odejmowanie.
Operatory przesunięć bitowych:
<< - Przesunięcie w lewo. Operand występujący z lewej strony operatora jest przesuwany w lewo o liczbę bi-
tów określoną przez operand występujący z prawej strony. Na zwalniane bity wchodzą zera.
>> - Przesunięcie w prawo. Operand występujący z lewej strony operatora jest przesuwany w prawo o liczbę
bitów określoną przez operand występujący z prawej strony. Na zwalniane bity wchodzą zera.
Operatory bitowe:
& - AND między bitami operandów. Odpowiedni bit w wyniku ma wartość '1' tylko wtedy, gdy odpowiada-
jące mu bity w obu operandach mają wartość '1'. W pozostałych przypadkach ma wartość '0'. Operacja ta
jest wykonywana dla wszystkich 32 bitów.
Operand1 Operand2 Wynik
0 0 0
0 1 0
1 0 0
1 1 1
^ - XOR między bitami operandów. Odpowiedni bit w wyniku ma wartość '1' tylko wtedy, gdy jeden z od-
powiadających mu bitów w operandach ma wartość '1', a drugi '0'. W pozostałych przypadkach ma
wartość '0'. Operacja ta jest wykonywana dla wszystkich 32 bitów.
Operand1 Operand2 Wynik
0 0 0
0 1 1
1 0 1
1 1 0
| - OR między bitami operandów. Odpowiedni bit w wyniku ma wartość '1', gdy co najmniej jeden z odpo-
wiadających mu bitów w operandach ma wartość '1'. W przeciwnym przypadku ma wartość '0'. Operacja
ta jest wykonywana dla wszystkich 32 bitów.
Operand1 Operand2 Wynik
0 0 0
0 1 1
1 0 1
1 1 1
08/2007 MicroMade Instrukcja Obsługi 3.01 45
DSM-51
5.Asembler dsm51ass
Operatory porównań:
< - Mniejszy. Prawda (=1) gdy wartość lewego operandu jest mniejsza od wartości prawego operandu.
<= - Mniejszy lub równy. Prawda (=1) gdy wartość lewego operandu jest mniejsza od lub równa wartości
prawego operandu.
> - Większy. Prawda (=1) gdy wartość lewego operandu jest większa od wartości prawego operandu.
>= - Większy lub równy. Prawda (=1) gdy wartość lewego operandu jest większa od lub równa wartości pra-
wego operandu.
= - Równy. Prawda (=1) gdy wartość lewego operandu jest równa wartości prawego operandu.
== - Równy. Prawda (=1) gdy wartość lewego operandu jest równa wartości prawego operandu.
!= - Ró\ny. Prawda (=1) gdy wartość lewego operandu jest ró\na od wartości prawego operandu.
Operatory logiczne:
&& - AND logiczne. Prawda (=1) gdy oba operandy mają wartości ró\ne od zera.
|| - OR logiczne. Prawda (=1) gdy co najmniej jeden z operandów ma wartość ró\ną od zera.
5.4 DYREKTYWY ASEMBLERA
W poszczególnych liniach programu oprócz mnemoników oznaczających poszczególne rozkazy procesora mogą wystą-
pić dyrektywy asemblera. Umo\liwiają one wstawianie danych w treść programu, przypisywanie wartości symbolom,
sterowanie przebiegiem asemblacji i budowanie makr (zestawów poleceń wywoływanych pojedynczą nazwą).
Asembler DSM51ASS akceptuje następujące dyrektywy:
Dyrektywy danych:
DB - wstawienie w kod wartości numerycznych i tekstowych,
DW - wstawienie w kod dwubajtowych wartości numerycznych,
EQU - definiowanie stałej,
BIT - definiowanie stałej typu bit,
REG - definiowanie stałej typu rejestr,
SET - definiowanie zmiennej.
Dyrektywy sterujące:
IF - początek bloku warunkowej asemblacji,
ELSE - początek alternatywnego bloku warunkowej asemblacji,
ENDIF- koniec bloku warunkowej asemblacji,
ORG - ustawienie adresu dla następnego bloku kodu,
END - koniec programu.
Dyrektywy makrodefinicji:
MACRO - początek definicji makra,
ENDM (MACEND) - koniec definicji makra.
Dyrektywy danych
DB - wstawienie w kod wartości numerycznych i tekstowych
Składnia:
[] DB
Wpisuje w treść programu wartości parametrów. Poszczególne parametry oddzielane są przecinkami. Parametry mogą
być wyra\eniami arytmetycznymi lub ciągami znaków ujętymi w znaki ' lub ".
46 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
5.Asembler dsm51ass
Wartości kolejnych parametrów będących wyra\eniami arytmetycznymi są wpisywane w kolejne bajty treści programu.
Parametry będące ciągami znaków są wpisywane w całości do treści programu. W ciągu znaków ujętym w znaki " mo\e
wystąpić znak ' i odwrotnie.
DW - wstawienie w kod dwubajtowych wartości numerycznych
Składnia:
[] DW
Wpisuje w treść programu wartości parametrów. Poszczególne parametry oddzielane są przecinkami. Parametry są wy-
ra\eniami arytmetycznymi.
Wartość ka\dego parametru jest wpisywana w dwa kolejne bajty treści programu (najpierw starszy).
EQU - definiowanie stałej
Składnia:
EQU
Symbolowi przypisywana jest wartość wyra\enia. Typ symbolu ustalany jest na podstawie wyra\enia. Ka\da
wartość zdefiniowana dyrektywą EQU jest stałą i nie mo\e być zmieniana w trakcie asemblacji.
BIT - definiowanie stałej typu bit
Składnia:
BIT
Symbolowi przypisywana jest wartość wyra\enia. Kontroluje typ wyra\enia. Zdefiniowany symbol mo\e być
u\ywany wyłącznie jako adres bitu. Wartość symbolu nie mo\e być zmieniana w trakcie asemblacji.
REG - definiowanie stałej typu rejestr.
Składnia:
REG
Symbolowi przypisywana jest wartość wyra\enia. Kontroluje typ wyra\enia. Zdefiniowany symbol mo\e być
u\ywany wyłącznie jako adres rejestru wewnętrznego mikrokontrolera lub komórki wewnętrznej pamięci RAM. War-
tość symbolu nie mo\e być zmieniana w trakcie asemblacji.
SET - definiowanie zmiennej
Składnia:
SET
Symbolowi przypisywana jest wartość wyra\enia. Typ symbolu ustalany jest na podstawie wyra\enia. Warto-
ści zdefiniowane dyrektywą SET mogą być dowolnie wiele razy modyfikowane przez ponowne u\ycie dyrektywy SET.
Zmiana typu symbolu w trakcie kolejnego przypisania powoduje wygenerowanie ostrze\enia.
Dyrektywy sterujące
IF - początek bloku warunkowej asemblacji
Składnia:
IF
Je\eli wartość wyra\enia jest ró\na od '0' (prawda) to kod występujący za tą dyrektywą jest asemblowany. Je\eli wartość
wyra\enia jest równa '0' (fałsz) i istnieje dyrektywa ELSE to kod występujący po ELSE jest asemblowany. Dyrektywa
ENDIF zamyka blok kodu asemblowanego warunkowo. Dopuszczalne jest zagłębianie dyrektyw IF do 16 poziomów.
ELSE - początek alternatywnego bloku warunkowej asemblacji
Składnia:
ELSE
U\ywana w połączeniu z dyrektywą IF. Jeśli wyra\enie testowane w dyrektywie IF ma wartość '0' to alternatywny kod
zaznaczony przez ELSE jest asemblowany.
ENDIF - koniec bloku warunkowej asemblacji
Składnia:
ENDIF
Zakończenie bloku warunkowej asemblacji rozpoczętego dyrektywą IF.
ORG - ustawienie adresu dla następnego bloku kodu
08/2007 MicroMade Instrukcja Obsługi 3.01 47
DSM-51
5.Asembler dsm51ass
Składnia:
ORG
Ustawienie adresu dla następującego po tej dyrektywie bloku kodu. Adres dla następnej instrukcji procesora jest ustala-
ny poprzez wyliczenie wartości wyra\enia. Mo\liwe jest jedynie zwiększanie aktualnego adresu kodu. Próba
zmniejszenia adresu jest sygnalizowana jako błąd. Standardowo kod programu jest umieszczany rozpoczynając od adre-
su 0.
END - koniec programu
Składnia:
END
Zaznaczenie końca programu. Linie występujące w pliku zródłowym po tej dyrektywie nie są asemblowane.
U\ycie tej dyrektywy w programie nie jest konieczne. Przy jej braku końcem programu jest koniec pliku.
Dyrektywy makrodefinicji
MACRO - początek definicji makra
Składnia:
MACRO
Makro to zestaw instrukcji asemblera.
Ciąg instrukcji występujący po linii zawierającej dyrektywę MACRO, a\ do najbli\szej dyrektywy ENDM, tworzy ma-
kro o nazwie .
Po zdefiniowaniu cały taki zestaw mo\e być włączony w kod zródłowy programu poprzez wywołanie makra.
W treści makr mogą występować bez ograniczeń wywołania innych makr, ale nie mo\e wystąpić definicja innego ma-
kra. Próba wywołania przez makro samego siebie (lub innego zapętlenia wywoływań prowadzącego do nieskończonego
rozwijania makr) jest wykrywana i sygnalizowana jako błąd. Parametry to oddzielone przecinkami symbole (parametry
formalne makra), które mogą być wykorzystywane w treści makra.
Makro jest wywoływane poprzez umieszczenie jego nazwy w polu rozkazu danej linii programu. Przy wywołaniu poda-
wane są parametry aktualne makra.
W czasie wstawiania makra w kod programu asembler zastępuje wszystkie parametry formalne parametrami aktualnymi.
Asembler nie umo\liwia tworzenia etykiet lokalnych w makrach. Jeśli występuje taka potrzeba to mo\na podawać ety-
kietę (lub jej fragment) jako jeden z parametrów makra. Jest to mo\liwe, gdy\ zastępowanie parametrów formalnych
parametrami aktualnymi odbywa się na drodze podmieniania tekstów przed asemblacją linii programu. Teksty te są pod-
mieniane niezale\nie od tego, czy występują w etykiecie, nazwie mnemonika, czy w treści operandu.
ENDM (MACEND) - koniec definicji makra.
Składnia:
ENDM
Dyrektywa ENDM kończy definicję makra. Alternatywną nazwą tej dyrektywy jest MACEND.
5.5 PREDEFINIOWANE SYMBOLE
Rejestry funkcji specjalnych:
Symbol Nazwa (opis) Adres
ACC akumulator 0E0H
B rejestr B 0F0H
PSW rejestr stanu 0D0H
SP wskaznik stosu 81H
DPTR dwubajtowy wskaznik danych
DPL młodszy bajt 82H
DPH starszy bajt 83H
P0 Port 0 80H
P1 Port 1 90H
P2 Port 2 0A0H
48 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
5.Asembler dsm51ass
Symbol Nazwa (opis) Adres
P3 Port 3 0B0H
IP rejestr kontroli priorytetów przerwań 0B8H
IE rejestr zezwoleń na przerwania 0A8H
TMOD timery - tryby pracy 89H
TCON timery - sterowanie 88H
TH0 timer 0 starszy bajt 8CH
TL0 timer 0 młodszy bajt 8AH
TH1 timer 1 starszy bajt 8DH
TL1 timer 1 młodszy bajt 8BH
SCON sterownie transmisją szeregową 98H
SBUF bufory transmisji szeregowej 99H
PCON sterowanie trybami 'power down' 87H
Bity adresowalne bezpośrednio
Symbol Nazwa (opis) Adres
P PSW.0 0D0H
OV PSW.2 0D2H
RS0 PSW.3 0D3H
RS1 PSW.4 0D4H
F0 PSW.5 0D5H
AC PSW.6 0D6H
CY PSW.7 0D7H
RXD P3.0 0B0H
TXD P3.1 0B1H
INT0 P3.2 0B2H
INT1 P3.3 0B3H
T0 P3.4 0B4H
T1 P3.5 0B5H
WR P3.6 0B6H
RD P3.7 0B7H
PX0 IP.0 0B8H
PT0 IP.1 0B9H
PX1 IP.2 0BAH
PT1 IP.3 0BBH
PS IP.4 0BCH
EX0 IE.0 0A8H
ET0 IE.1 0A9H
EX1 IE.2 0AAH
ET1 IE.3 0ABH
ES IE.4 0ACH
EA IE.7 0AFH
IT0 TCON.0 88H
IE0 TCON.1 89H
IT1 TCON.2 8AH
IE1 TCON.3 8BH
TR0 TCON.4 8CH
TF0 TCON.5 8DH
TR1 TCON.6 8EH
TF1 TCON.7 8FH
RI SCON.0 98H
TI SCON.1 99H
RB8 SCON.2 9AH
TB8 SCON.3 9BH
REN SCON.4 9CH
SM2 SCON.5 9DH
SM1 SCON.6 9EH
SM0 SCON.7 9FH
08/2007 MicroMade Instrukcja Obsługi 3.01 49
DSM-51
5.Asembler dsm51ass
Urządzenia systemu DSM-51
Przedstawione poni\ej adresy urządzeń systemu DSM-51 dotyczą adresowania 8-bitowego (@Ri) przy zało\eniu, \e
port P2 jest ustawiony na 0FFH. Przy adresowaniu poprzez rejestr DPTR nale\y dodać wartość 0FF00H.
Symbol Nazwa (opis) Adres
CSIC sterownik przerwań 00H
CSDA przetwornik cyfrowo/analogowy 08H
CSAD przetwornik analogowo/cyfrowy 10H
CSMX multiplekser analogowy 18H
CSKB0 klawiatura matrycowa, klawisze 0..7 21H
CSKB1 klawiatura matrycowa, klawisze 8.. 22H
CS55A układ 8255 rejestr portu A 28H
CS55B układ 8255 rejestr portu B 29H
CS55C układ 8255 rejestr portu C 2AH
CS55D układ 8255 rejestr sterujący 2BH
CSDS wyświetlacz 7-segm, wybór wskaznika 30H
CSDB wyświetlacz 7-segm, bufor danych 38H
CSMOD dekoder adresów (przełączanie trybu) 40H
LCDWC wyświetlacz LCD, wpis rozkazów 80H
LCDWD wyświetlacz LCD, wpis danych 81H
LCDRC wyświetlacz LCD, odczyt stanu 82H
LCDRD wyświetlacz LCD, odczyt danych 83H
CSX zewnętrzna magistrala systemowa 0C0H
Podprogramy standardowe w pamięci EPROM systemu DSM-51
Symbol Nazwa (opis) Adres
WRITE_TEXT wypisanie tekstu na LCD 8100H
WRITE_DATA wypisanie znaku na LCD 8102H
WRITE_HEX wypisanie liczby hex na LCD 8104H
WRITE_INSTR wysłanie rozkazu do LCD 8106H
LCD_INIT inicjalizacja LCD 8108H
LCD_OFF wygaszenie LCD 810AH
LCD_CLR ustawienie w stan początkowy 810CH
DELAY_US opóznienie (2*A+6)*12/11.059 us 810EH
DELAY_MS opóznienie A ms 8110H
DELAY_100MS opóznienie A * 100ms 8112H
WAIT_ENTER "PRESS ENTER." i czeka na ENTER 8114H
WAIT_ENTER_NW czekanie na klawisz ENTER 8116H
TEST_ENTER sprawdzenie klawisza ENTER 8118H
WAIT_ENT_ESC czekanie na ENTER lub ESC 811AH
WAIT_KEY czekanie na dowolny klawisz 811CH
GET_NUM wczytanie liczby BCD (4 cyfry) 811EH
BCD_HEX zamiana BCD na HEX 8120H
HEX_BCD zamiana HEX na BCD 8122H
MUL_2_2 mno\enie liczb 2 bajtowych 8124H
MUL_3_1 mno\enie 3bajty * 1bajt 8126H
DIV_2_1 dzielenie 2bajty / 1bajt 8128H
DIV_4_2 dzielenie 4bajty / 2bajty 812AH
50 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
6.Modele urządzeń
M-01 - SKRZYśOWANIE
Przeznaczenie modelu
Model M-01 przedstawia sygnalizację świetlną na typowym skrzy\owaniu. Model wykonany jest w postaci płytki dru-
kowanej, na której namalowano układ jezdni i przejść dla pieszych. Rolę świateł pełnią kolorowe diody świecące.
Model umo\liwia przetestowanie ró\nych metod sterowania wieloma elementami w zadanej sekwencji czasowej.
Prawidłowe wykorzystanie modelu wymaga opanowania następujących elementów:
sterowanie układem 8255,
odmierzanie czasu w programie,
wykorzystanie timerów,
inicjalizowanie i obsługa przerwań od timerów.
W pliku DSM-51\Modele\M01\m01.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-01.
Budowa i zasada działania
08/2007 MicroMade Instrukcja Obsługi 3.01 51
DSM-51
6.Modele urządzeń
Model sterowany jest za pośrednictwem złącza wejść/wyjść cyfrowych.
Porty A i B układu 8255 powinny być ustawione jako porty wyjściowe pracujące w trybie 0. Linie portu A sterują świa-
tłami dla pieszych, natomiast linie portu B światłami dla samochodów. Przyporządkowanie poszczególnych świateł do
odpowiednich linii układu 8255 mo\na odczytać ze schematu blokowego.
Stan 0 na odpowiedniej linii układu 8255 powoduje zapalenie odpowiadających mu świateł.
Oprogramowanie
Przykładowy program (skrzyz.asm) demonstrujący sposób wykorzystania modelu M-01.
Program ustawia, w odpowiednich odstępach czasu, 8 kolejnych stanów świateł na skrzy\owaniu:
1 - przejazd samochodów poziomo (i przejście poziomo pieszych)
2 - zmiana świateł - \ółte dla samochodów jadących poziomo
- zielone mrugające dla pieszych
3 - zmiana świateł - czerwone dla samochodów jadących poziomo
- czerwone dla pieszych
4 - zmiana świateł - czerwone z \ółtym dla samochodów w pionie
5 - przejazd samochodów pionowo (i przejście pionowo pieszych)
6 - zmiana świateł - \ółte dla samochodów jadących pionowo
- zielone mrugające dla pieszych
7 - zmiana świateł - czerwone dla samochodów jadących pionowo
- czerwone dla pieszych
8 - zmiana świateł - czerwone z \ółtym dla samochodów w poziomie
Jednocześnie na wyświetlaczu LCD wypisuje aktualny stan świateł na skrzy\owaniu.
52 Instrukcja Obsługi 3.01 08/2007 MicroMade
1 2 3 4 5
VCC
D D
VCC
C2
D1 D2 D3 D4 D5 D6
100n LED1206Y LED1206Y LED1206G LED1206G
LED1206R LED1206R
GND
R1 R2 R3 R4 R5 R6
470 470 470 470 470 470
VCC
PB2 2 18
A0 Y0
PB1 3 17
A1 Y1 D7 D8 D9 D10 D11 D12
PB0 4 16 LED1206Y LED1206Y LED1206G LED1206G
LED1206R LED1206R
A2 Y2
5 15
R7 R8 R9 R10 R11 R12
A3 Y3
470 470 470 470 470 470
6 14
A4 Y4
PB3 7 13
A5 Y5
PB4 8 12
A6 Y6
PB5 9 11
A7 Y7
1
OE1
S1
19 U1
PA7 26 25 PA6 OE2
AHC541
PA5 24 23 PA4
C GND VCC C
10k 10k
PA3 22 21 PA2
R32 R31
10k 10k
PA1 20 19 PA0
R30 R29
VCC
PC7 18 17 PC6 C3 D13 D14 D15 D16 D17 D18 D19 D20
LED1206G LED1206G LED1206G LED1206G
100n LED1206R LED1206R LED1206R LED1206R
PC5 16 15 PC4
GND
R13 R14 R15 R16 R17 R18 R19 R20
PC3 14 13 PC2
470 470 470 470 470 470 470 470
PC1 12 11 PC0
PA0 2 18
PB7 10 9 PB6 A0 Y0
PA1 3 17
10k 10k
PB5 8 7 PB4 A1 Y1
R38 R37
PA2 4 16
10k 10k
PB3 6 5 PB2 A2 Y2
R36 R35
PA3 5 15
10k 10k
PB1 4 3 PB0 A3 Y3
R34 R33
PA0 6 14
2 1 A4 Y4
PA1 7 13
A5 Y5
D100/26GK PA2 8 12 VCC
GND A6 Y6
PA3 9 11
A7 Y7
VCC
D21 D22 D23 D24 D25 D26 D27 D28
C1
1 LED1206G LED1206G LED1206G LED1206G
LED1206R LED1206R LED1206R LED1206R
100u/16 OE1
19 U2
R21 R22 R23 R24 R25 R26 R27 R28
OE2
AHC541 470 470 470 470 470 470 470 470
B B
GND
GND
Tytuł:
Tytuł:
DSM-51 Skrzyżowanie
A DSM-51 Skrzyżowanie A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
D
D
Model M01 DM01
Model M01 DM01
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M01\DM01_D.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M01\DM01_D.SCH 1 z 1
1 2 3 45
20
10
V
G
20
10
V
G
DSM-51
6.Modele urządzeń
M-02 - TESTER DIOD I TRANZYSTORÓW
Przeznaczenie modelu
Model M-02 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 umo\liwiającą zdejmowanie
charakterystyk prądowo-napięciowych diod półprzewodnikowych (równie\ diod Zenera w kierunku przewodzenia i za-
porowym) oraz rodziny charakterystyk wyjściowych tranzystorów n-p-n.
Przystawka nie jest precyzyjnym miernikiem parametrów diod i tranzystorów. Stanowi natomiast doskonały przykład
mo\liwości wykorzystania Dydaktycznego Systemu Mikroprocesorowego DSM-51 do wykonywania serii pomiarów.
W celu samodzielnego uzyskania charakterystyki badanego elementu na ekranie monitora niezbędne jest opanowanie
następujących zagadnień:
sterowanie układu 8255,
sterowanie przetwornika C/A,
pomiary z wykorzystaniem przetwornika A/C,
przesyłanie danych po łączu RS232,
wyświetlanie charakterystyk w oknie systemu Windows.
W pliku DSM-51\Modele\M02\m02.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-02.
Budowa i zasada działania
54 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
Poszukiwana charakterystyka to zale\ność płynącego przez element prądu od panującego na nim napięcia. System
DSM-51 nie ma wejść umo\liwiających bezpośredni pomiar prądu. W przystawce pomiar płynącego przez element prą-
du wykonywany jest poprzez pomiar spadku napięcia na rezystorze włączonym w szereg z badanym elementem.
Model M-02 jest sterowany przez system DSM-51 za pośrednictwem dwu złącz: złącza wejść/wyjść cyfrowych oraz złą-
cza wejśc/wyjść analogowych. Badany element zasilany jest z wyjścia przetwornika C/A systemu DSM-51 poprzez
rezystor 200 &!. Napięcia z obu końców rezystora podane są do wejść analogowych (IN0, IN1) przetwornika A/C syste-
mu. Pomiar tych dwu napięć pozwala ustalić zarówno napięcie panujące na badanym elemencie jak i płynący przez ten
element prąd.
Rodzina charakterystyk wyjściowych tranzystora to zestaw charakterystyk prądowo-napięciowych złącza kolektor-emi-
ter przy ró\nych wartościach prądu bazy. Pomiar tej rodziny charakterystyk jest mo\liwy dzięki umieszczeniu na
przystawce sterowanego zródła prądowego zasilającego bazę badanego tranzystora.
Prąd zródła jest sterowany liniami PA0...PA3 układu 8255 za pośrednictwem prostego 4-bitowego przetwornika C/A
umieszczonego na przystawce. Port A układu 8255 powinien pracować jako port wyjściowy w trybie 0. Prąd bazy tran-
zystora wynosi 0, gdy wszystkie 4 linie sterujące są w stanie 0. Ka\dy wzrost podanej na port A wartości liczbowej o 1
powoduje wzrost prądu bazy o ok. 10 A. Maksymalną wartość prądu bazy uzyskuje się, gdy wszystkie linie
(PA0...PA3) są ustawione w stan 1 (wartość liczbowa = 15). Prąd bazy wynosi wtedy ok. 150 A.
Pomiar charakterystyki polega na wpisywaniu kolejnych wartości (od 0 do 255) do przetwornika C/A i mierzeniu napięć
panujących na wejściach IN0 i IN1. W ten sposób uzyskuje się kolejne punkty badanej charakterystyki napięciowo-prą-
dowej. Jeśli, odczytane z przetwornika A/C, liczby wynoszą odpowiednio N0 i N1, to wartość napięcia panującego na
badanym elemencie i płynącego prądu mo\na uzyskać ze wzorów:
U = ( N1 / 255 ) * 5 V
I = {[ ( N0 - N1 ) / 255 ] * 5V } / 200 &!
Oprogramowanie
Przykładowe programy (dioda.asm i tranzyst.asm) demonstrujące sposób wykorzystania modelu M-02 znajdują się w
katalogu DSM-51\Modele\M02. Programy te uruchamiane w systemie DSM-51 współpracują z programami Dioda.exe i
Tranzystor.exe uruchamianymi na komputerze. Kody zródłowe tych programów (Dioda.cpp i tranzystor.cpp) znajdują
się w katalogu DSM-51\Modele\MO2\Source.
Program dioda.asm mierzy charakterystykę diody (lub innego elementu 2 końcówkowego). Dla ka\dego punktu pomia-
rowego wykonywane są pomiary dwóch napięć:
napięcia na wyjściu przetwornika C/A,
napięcia na badanym elemencie.
Wyniki pomiarów przesyłane są przez łącze RS232 do komputera. Program na komputerze przelicza wyniki (oblicza
prąd na podstawie spadku napięcia na rezystorze włączonym w szereg z mierzonym elementem) i wykreśla na ekranie
zmierzoną charakterystykę.
Program tranzyst.asm mierzy rodzinę charakterystyk tranzystora dla 8 prądów bazy. Dla ka\dego punktu pomiarowego
wykonywane są pomiary dwóch napięć:
napięcia na wyjściu przetwornika C/A,
napięcia na badanym elemencie.
Wyniki pomiarów przesyłane są przez łącze RS232 do komputera. Program na komputerze przelicza wyniki i wykreśla
na ekranie rodzinę charakterystyk tranzystora.
Aby uruchomić odpowiednią parę programów nale\y:
Do systemu DSM-51 przesłać program dioda.hex lub tranzyst.hex i uruchomić go.
Na komputerze uruchomić odpowiedni program Dioda.exe lub Tranzystor.exe. Programy te czekają na dane wy-
słane z DSM-51 i po ich odebraniu przedstawiają wyniki w postaci wykresów.
Umieścić diodę lub tranzystor w podstawce modelu M-02.
Nacisnąć klawisz [Enter] (klawiatury 2 x 8) systemu DSM-51. Spowoduje to wykonanie przez DSM-51 pomia-
rów charakterystyki badanego elementu i przesłanie ich przez złącze COM1 systemu do komputera.
Aby zmierzyć inny element nale\y po jego umieszczeniu w podstawce ponownie nacisnąć klawisz [Enter] systemu
DSM-51. Nowa charakterystyka zostanie zmierzona i przesłana, a program na komputerze automatycznie ją wykreśli.
08/2007 MicroMade Instrukcja Obsługi 3.01 55
1 2 3 4 5
D D
U2A
R18
3
VCC VCC 1
C1 2 1k
100n
R15
LM358D
GND
10k
R12
VCC
20K_1%
12 C4
R1
S1 S2
11 GND
100u/16
R19
PA7 26 25 PA6 PA0 13 14 13
20K_1% GND
PA5 24 23 PA4 10k U1D 12 11 OUT
VCC GND
AHC00 R13
PA3 22 21 PA2 10 9
10k_1%
U1A V8
R16
PA1 20 19 PA0 1 IN0 8 7 IN1
R2
C 3 C2 C
R20
PC7 18 17 PC6 PA1 2 1k 6 5
100u/16
R8
20K_1%
PC5 16 15 PC4 10k R7 4 3
AHC00
100/0.25W
R10 10k_1%
PC3 14 13 PC2 2 1 GND
10k_1%
U1C VCC
PC1 12 11 PC0 9
R9
R3
8 D100/14GK
R21
PB7 10 9 PB6 PA2 10 V8 100/0.25W
R17
C3
20K_1%
PB5 8 7 PB4 10k 100n
AHC00
1k
R11
R14 R6
PB3 6 5 PB2 GND
10k_1%
U1B 100k 10k_1%
PB1 4 3 PB0 4
R4
6 5
R22
2 1 PA3 5 7
T1
20K_1% 6
BC857
R5
10k
AHC00
D100/26GK
10k_1%
GND
S3
U2B
1 6
LM358D
2 5
3 4
DIP6P
GND GND
B B
Tytuł:
Tytuł:
DSM-51 Tester diod i tranzystorów
A DSM-51 Tester diod i tranzystorów A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
D
D
Model M02 DM02
Model M02 DM02
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M02\DM02_D.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M02\DM02_D.SCH 1 z 1
1 2 3 45
14
7
V
G
8
4
DSM-51
6.Modele urządzeń
M-03 - LICZNIK OBIEKTÓW
Przeznaczenie modelu
Model M-03 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51. Przystawka ta, zawierająca fo-
tokomórkę, przeznaczona jest do liczenia przesuwających się obiektów.
Dzięki zastosowaniu dwóch fotodiod umieszczonych naprzeciw diody emitującej promieniowanie podczerwone, mo\li-
we jest określenie nie tylko liczby obiektów przecinających wiązkę promieniowania, ale tak\e kierunku ich ruchu.
Zastosowane w modelu układy ró\niczkujące, generujące krótkie impulsy w momencie zasłaniania i odsłaniania ka\dej
z fotodiod, umo\liwiają obsługę przystawki z wykorzystaniem przerwań.
Diody emitujące promieniowanie podczerwone wymagają zazwyczaj zasilania stosunkowo du\ym prądem. System mi-
kroprocesorowy mo\e decydować o zapaleniu i zgaszeniu diody nadawczej w przystawce. Umo\liwia to pisanie
programów oszczędnie gospodarujących energią (ma to szczególne znaczenie w przypadku aplikacji zasilanych z bate-
rii).
W pliku DSM-51\Modele\M03\m03.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-03.
Budowa i zasada działania
Przystawka podłączana jest do złącza wejść/wyjść cyfrowych systemu DSM-51.
D4
Tor T1
D2
D3
Tor T2
D5
Porty A i B układu 8255 powinny (choć nie są tutaj wykorzystane) być ustawione w tryb 0. Przy takim ustawieniu port
C pełni rolę zwykłego bufora podłączonego do szyny mikrokontrolera. Starsza część portu C (PC4..7) powinna być
ustawiona jako wyjście, natomiast młodsza część (PC0..3) jako wejście.
08/2007 MicroMade Instrukcja Obsługi 3.01 57
DSM-51
6.Modele urządzeń
Dioda D1, emitująca promieniowanie podczerwone, jest sterowana linią PC4 tego złącza. Stan logiczny 0 występujący
na tej linii, po wzmocnieniu (4 inwertery układu 74HC14), włącza diodę D1. Promieniowanie z diody dociera do
fotodiod D2 i D3 powodując ich przewodzenie.
Sygnał z ka\dej z fotodiod jest wzmacniany przez negator z wejściem Schmitta (74HC14). Stan z wyjścia negatora po-
dawany jest na odpowiednią linię układu 8255 w systemie DSM-51 oraz steruje diodą świecącą umieszczoną obok
fotodiody. Informacja o stanie fotodiody D2 mo\e być odczytana na linii PC1, a fotodiody D3 na linii PC2. Stan 0 na
odpowiedniej linii (i świecenie odpowiedniej diody) oznacza, \e fotodioda nie jest oświetlona promieniami podczerwo-
nymi (jest zasłonięta lub dioda D1 nie jest włączona).
Dodatkowo sygnały z wyjść negatorów podawane są na układy ró\niczkujące generujące dodatnie impulsy przy ka\do-
razowej zmianie stanu tych sygnałów. Te impulsy podawane są odpowiednio na linie PC0 (dla D2) i PC3 (dla D3). Linie
te są włączone w system przerwań w DSM-51 umo\liwiając przerwaniową obsługę ka\dej zmiany stanu fotodiod.
Oprogramowanie
Przykładowy program (licznik.asm) demonstrujący sposób wykorzystania modelu M-03 znajduje się w katalogu MO-
DELE\M03 na dyskietce systemu DSM-51.
Program liczy obiekty przesuwające się przez model M-03. Obiekty przesuwające się z góry na dół są dodawane do
licznika. Obiekty przesuwające się z dołu do góry są odejmowane od licznika. Program liczy tylko obiekty du\e, które w
czasie przesuwania się przesłaniają w jakimś momencie oba tory podczerwieni jednocześnie. Obiekty małe, które ani na
chwilę nie przesłaniają obu torów podczerwieni jednocześnie, są uznawane za zakłócenia. Liczba obiektów jest wyświe-
tlana na wyświetlaczu LCD jako liczba szesnastkowa bez znaku.
58 Instrukcja Obsługi 3.01 08/2007 MicroMade
1 2 3 4 5
D D
R13
PC1
VCC 220
VCC
VCC
VCC
C6
P1
100n
D4
D1
SHH1
C8
R4
LED5I LED1206R R5 R6 GND
P2
100n
4k7
D2
10k 10k
S1 C1
SHH1
R1 R10
U1B SFH203
PA7 26 25 PA6 VCC GND 220p
330
C7 330
3 4 13 12 4
R14
PA5 24 23 PA4 100n 6 PC0
C GND 5 C
T1
U1F
PA3 22 21 PA2 GND AHC14 GND U2A 220
AHC14
BC847 1
R17
PA1 20 19 PA0 R2 3
U2B
U1C 47k
2
R12 330
PC7 18 17 PC6 PC4 1 2 5 6 AHC132
AHC132 C2
PC5 16 15 PC4 10k
AHC14 GND 220p
U1A
PC3 14 13 PC2
R3
AHC14
U1D
PC1 12 11 PC0
330 R15
9 8 PC2
PB7 10 9 PB6
VCC 220
PB5 8 7 PB4 AHC14
VCC
PB3 6 5 PB2
PB1 4 3 PB0
D5
2 1
C9
R7
LED1206R R8 R9
P3
100n
4k7
D3 U2C
10k 10k
D100/26GK SHH1 C3
R11
SFH203
GND VCC GND AHC132
330 220p
11 10 10
R16
8 PC3
GND 9
T2
U1E
U2D 220
C5
AHC14
BC847 12
R18
100u/16
11
47k
13
GND
C4
B AHC132 B
220p
GND
Tytuł:
Tytuł:
DSM-51 Licznik obiektów
A DSM-51 Licznik obiektów A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
D
D
Model M03 DM03
Model M03 DM03
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M03\DM03_D.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M03\DM03_D.SCH 1 z 1
1 2 3 45
14
7
V
G
14
7
V
G
DSM-51
6.Modele urządzeń
M-04 - ZEGAR CZASU RZECZYWISTEGO
Uwaga!
Model wycofany z produkcji. W zastępstwie wprowadzono model M-13  Zegar Czasu Rzeczywistego IC.
Przeznaczenie modelu
Model M-04 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 pełniącą funkcję zegara czasu
rzeczywistego.
Zegar czasu rzeczywistego (Real Time Clock), to nic innego jak zwykły zegar, którego zadaniem jest podawanie mikro-
procesorowi aktualnego czasu. Zegar ten powinien prawidłowo liczyć czas nawet po wyłączeniu zasilania systemu
mikroprocesorowego, tak aby po jego ponownym włączeniu procesor mógł się od razu dowiedzieć o aktualny czas (rok,
miesiąc, dzień, godzina, minuta, sekunda, setna (tysięczna) część sekundy).
Zegary czasu rzeczywistego wykonywane są w postaci specjalizowanych układów scalonych, które są tak konstruowane
aby pobierały jak najmniej prądu i pracowały poprawnie przy niskich napięciach zasilających. Pozwala to na stosowanie
pojedynczej miniaturowej baterii do ich zasilania, nawet, gdy wymagana jest nieprzerwana praca zegara przez wiele lat.
W modelu zastosowano typowy, produkowany przez wielu producentów, układ zegara czasu rzeczywistego -
RTC58321. Układ ten oprócz ustawienia i odczytu czasu ma mo\liwość generowania przerwań do mikroprocesora w
określonych odstępach czasu.
W pliku DSM-51\Modele\M04\m04.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-04.
Budowa i zasada działania
Model podłączany jest do złącza wejść/wyjść cyfrowych systemu DSM-51.
60 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
Układ RTC 58321 w modelu M-04 jest zasilany z systemu DSM-51 (napięcie VCC). W przypadku braku tego napięcia
zasilanie przejmuje bateria. Zastosowana bateria zapewnia nieprzerwaną pracę układu przez ponad rok.
Mo\liwość odłączania baterii na czas przechowywania modelu pozwala na znaczne wydłu\enie czasu eksploatacji mo-
delu.
RTC58321 zawiera szereg rejestrów. Funkcje poszczególnych rejestrów zebrano w tabeli.
Adres Nazwa Zakres Opis
0H S1 0& 9 jednostki sekund
1H S10 0& 5 dziesiątki sekund
2H MI1 0& 9 jednostki minut
3H MI10 0& 5 dziesiątki minut
4H H1 0& 9 jednostki godzin
5H H10 0& 2 dziesiątki godzin (bity 0 i 1)
bit 2: 0 = AM, 1 = PM
bit 3: 0 = zegar 12 h, 1 = zegar 24 h
6H W 0& 6 dzień tygodnia
7H D1 0& 9 jednostki dnia miesiąca
8H D10 *) 0& 3 dziesiątki dnia miesiąca (bity 0 i 1)
9H MO1 0& 9 jednostki miesięcy
AH MO10 0& 1 dziesiątki miesięcy
BH Y1 0& 9 jednostki lat
CH Y10 0& 9 dziesiątki lat
DH Zerowanie dzielnika częstotliwości 1/32768 i układu BUSY. Są one zero-
wane po wpisaniu tego adresu, gdy na linii WR pojawi się stan 1..
E..FH Podanie sygnałów zegarowych na wyjście D0& D3. Następuje to po wpi-
saniu tego adresu, gdy na linii RD pojawia się stan 1.
*) Bity 2 i 3 określają sposób wybierania lat przestępnych:
Reszta z dzielenia
Kalendarz b3 b2 nr roku przez 4
Gregoriański 0 0 0
Showa 0 1 3
1 0 2
1 1 1
Komunikacja z układem RTC 58321 odbywa się po 4-bitowej dwukierunkowej szynie danych, po której przesyłane są
adresy i dane. Jest to jednak zupełnie inna szyna ni\ w mikrokontrolerze 8051 i dlatego model ten jest podłączony do
złącza wejść/wyjść cyfrowych.
Do wystawienia danych na szynę wykorzystuje się port A układu 8255, a do odczytu port B. Oba te porty powinny pra-
cować w trybie 0 - port A jako wyjście, port B jako wejście. Bit 4 portu A ustawiony na 0 powoduje wysterowanie
szyny przez młodszą część tego portu, natomiast ustawiony na 1 pozwala na wysterowanie szyny przez zegar czasu rze-
czywistego.
Starsza część portu C powinna być ustawiona jako wyjście (linia sterująca do układu RTC 58321), natomiast młodsza
część jako wejście - pozwala to na wykorzystanie systemu przerwań w DSM-51.
Sygnały CS1 i CS2 uaktywniają komunikację z układem. Oba te sygnały muszą być w stanie 1, aby mo\liwe było zapi-
sywanie i odczytywanie rejestrów układu zegara.
Cykl zapisu danych do jednego z rejestrów układu składa się z dwu operacji: zapis adresu, zapis danych. Adres rejestru
podany na linie D0...D3 jest wpisywany do układu dodatnim impulsem na linii Adres WR. Następnie dane, podane rów-
nie\ na linie D0...D3, są wpisywane do wybranego rejestru dodatnim impulsem na linii WR. Zale\ności czasowe cyklu
zapisu danych przedstawione są na rysunku.
Cykl odczytu zawartości rejestru przebiega równie\ dwuetapowo: zapis adresu, odczyt danych. Zapis adresu przebiega
identycznie jak w cyklu zapisu danych, natomiast do odczytu danych słu\y linia RD. Dodatni impuls na tej linii powodu-
08/2007 MicroMade Instrukcja Obsługi 3.01 61
DSM-51
6.Modele urządzeń
je podanie przez układ zegara zawartości wybranego rejestru na szynę danych. Zale\ności czasowe cyklu odczytu
danych przedstawione są na rysunku.
Cykl zapisu danych
Cykl odczytu danych
Linia TEST w czasie normalnej pracy zegara powinna być w stanie 0.
Linia STOP pozwala na wstrzymanie pracy zegara. Prawidłowy zapis nowych danych do rejestrów mo\na zagwaranto-
wać przez ustawienie linii STOP w stan 1 a następnie kolejne wpisanie danych, zaczynając od najmłodszych.
Linia STOP nie wstrzymuje pracy dzielnika, który dzieli częstotliwość 32768 Hz, uzyskaną z wewnętrznego generatora
wzorcowego, przez 215. Linia ta jedynie nie przepuszcza dalej impulsów 1 Hz występujących na wyjściu tego dzielnika.
Dlatego po ustawieniu linii STOP na 0 (wznowienie pracy zegara), przyrost czasu zegara o 1s mo\e nastąpić z dowol-
nym opóznieniem w zakresie 0...1s. Wyzerowanie dzielnika wytwarzającego impulsy 1 Hz mo\na uzyskać wpisując do
układu RTC 58321 adres DH (patrz tabela) i ustawiając linię WR w stan 1.
Linia BUSY informuje o momentach zmiany stanów wewnętrznych rejestrów. Na linii tej co 1s pojawia się ujemny im-
puls trwający 427 s. Zmiana stanów rejestrów rozpoczyna się po upływie 244 s od przedniego zbocza impulsu
BUSY. Koniec impulsu BUSY oznacza, \e rejestry zawierają ju\ nowe, stabilne dane. Odczyt zawartości rejestrów w
czasie, gdy następuje zmiana ich stanów, nie gwarantuje uzyskania prawidłowych wyników. Dlatego odczyt powinien
być przeprowadzony, gdy stany te są stabilne.
62 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
Układ RTC 58321 mo\na tak ustawić, aby na liniach danych podawał wzorcowe przebiegi czasowe. Uzyskuje się to po-
przez wpisanie do niego adresu EH lub FH i ustawienie linii RD w stan 1 (przy CS1 = CS2 = 1). Na liniach D0...D3
układ podaje wtedy następujące przebiegi:
D0 - przebieg prostokątny 1024 Hz
D1 - ujemny impuls 122.1 s co sekundę
D2 - ujemny impuls 122.1s co minutę
D3 - ujemny impuls 122.1 s co godzinę.
Impulsy na liniach D1...D3 występują w trakcie trwania impulsu BUSY. Przedstawia to rysunek.
W modelu M-04 przebiegi z linii D0 i D1 podane są poprzez układy ró\niczkujące na linie PC0 i PC3 złącza
wejść/wyjść cyfrowych systemu DSM-51. W układach tych dodatnie zbocze przebiegów występujących na liniach D0 i
D1 są zamieniane na krótkie (2 ms) dodatnie impulsy. Podanie tych impulsów na linie PC0 i PC3 powoduje, \e mogą
one być wykorzystane jako przerwania.
Oprogramowanie
Przykładowe programy (rtc_set.asm i rtc_read.asm) demonstrujące sposób wykorzystania modelu M-04 znajdują się w
katalogu DSM-51\Modele\M04.
Program rtc_set.asm ustawia RTC korzystając z danych wpisanych wewnątrz programu. Po wpisaniu danych do zegara
program wraca do systemu DSM-51. Aby ustawić inny czas trzeba zmodyfikować kod zródłowy programu, zasemblo-
wać go i uruchomić w systemie.
Program rtc_read.asm odbiera przerwania co sekundę z RTC, odczytuje i wypisuje na wyświetlacz LCD datę i czas oraz
generuje krótkie sygnały dzwiękowe.
08/2007 MicroMade Instrukcja Obsługi 3.01 63
1 2 3 4 5
D D
C6
100n
VCC GND
VCC
PA4 11 10
U1A
R1
HC125N
S1
U3A U3B
C1
PA7 26 25 PA6 PA0 2 3 10k U3E
HC14N HC14N
220p
HC14N
PA5 24 23 PA4 PB0 1 2 3 4 PC0
PA3 22 21 PA2 13 12
U1B
PA1 20 19 PA0 VCC
HC125N
C PC7 18 17 PC6 PA1 5 6 U3F C
GND
HC14N
PC5 16 15 PC4 PB1 R2
U3C U3D
C2
10k
PC3 14 13 PC2
HC14N HC14N
U1C 220p
PC1 12 11 PC0 5 6 9 8 PC3
HC125N
VCC
PB7 10 9 PB6 PA2 9 8
PB5 8 7 PB4 PB2
D1
PB3 6 5 PB2
BAT42 K1
U1D
R8
PB1 4 3 PB0 C3 1 4
HC125N
B1
2 1 100n 2 3
1k
R3 R4 R5 R6
VCC PA3 12 11 GND D2
CR2032
10k 10k 10k 10k
R7 BAT42
D100/26GK C4 DIPSW2
GND 4 10k
100U/16#
D0
5 10 PC1
VCC GND D1 BUSY GND
GND 6
C5
D2
PB3 100n 7 11 PA6
D3 STOP
12 PC7
TEST
PC4 3
RD
PC5 2
WR
PC6 9
B B
AWR
13 14
CS1 NC
PA5 1 15
CS2 NC
U2
RTC58321
Tytuł:
Tytuł:
DSM-51 Zegar Czasu Rzeczywistego
A DSM-51 Zegar Czasu Rzeczywistego A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
C
C
Model M04 DM04
Model M04 DM04
Data: Plik: Arkusz:
Data: Plik: Arkusz:
6-Jun-2006 D:\MM\MM_PROT\DSM\M04\DM04_C.SCH 1 z 1
6-Jun-2006 D:\MM\MM_PROT\DSM\M04\DM04_C.SCH 1 z 1
1 2 3 45
14
7
V
G
10
4
1
16
8
V
13
G
V
G
7
14
DSM-51
6.Modele urządzeń
M-05 - WYJŚCIE DO DRUKARKI CENTRONIX
Przeznaczenie modelu
Model M-05 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 zamieniającą złącze
wejść/wyjść cyfrowych systemu w wyjście do drukarki Centronix.
Sterownik wejść/wyjść równoległych 8255 zastosowany w systemie DSM-51 jest przystosowany do obsługi transmisji
równoległej z potwierdzeniami. Sterowanie drukarek przez łącze równoległe Centronix stanowi typowy przykład takiej
właśnie transmisji.
Model M-05 pozwala praktycznie zapoznać się ze szczegółami organizacji transmisji danych przez łącze Centronix oraz
z mo\liwościami układu 8255 pracującego w trybie 1.
W pliku MODELE\M05\m05.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-05.
Budowa i zasada działania
Model podłączany jest do złącza wejść/wyjść cyfrowych systemu DSM-51.
Model M-05 został tak zbudowany, \e mo\liwe jest wykorzystanie trybu 1 układu 8255, czyli przesyłanie z potwierdze-
niem. Port A układu 8255 powinien pracować w tym trybie jako port wyjściowy. W trybie tym poprzez linie PC7 i PC6
następuje wymiana sygnałów sterujących między DSM-51 a drukarką, natomiast poprzez linię PC3 układ 8255 zgłasza
do mikrokontrolera \ądanie obsługi (przerwanie IPA).
Po załączeniu zasilania drukarki, następuje jej inicjalizacja - ustawienie w pewien określony stan początkowy. W czasie
drukowania mo\na zmieniać takie ustawienia jak rodzaj czcionki, pozycje tabulacji czy rozmiar marginesów.
Aby przywrócić drukarce stan początkowy nale\y wysłać do niej rozkaz inicjalizacji. Polega to na podaniu ujemnego
impulsu na linii INIT. Po tym impulsie drukarka wystawia stan 1 na linii BUSY i ustawia odpowiednio wszystkie swoje
08/2007 MicroMade Instrukcja Obsługi 3.01 65
DSM-51
6.Modele urządzeń
parametry. Czas tej inicjalizacji jest zale\ny od typu drukarki. Gdy inicjalizacja jest zakończona drukarka wysyła ujem-
ny impuls na linii ACK (potwierdzenie). W trakcie trwania tego impulsu zdejmuje ona równie\ sygnał zajętości
(przestawia linię BUSY w stan 0).
Gdy stan linii BUSY jest 0 mo\na do drukarki przesyłać dane przeznaczone do drukowania. Aby przesłać znak nale\y
najpierw wystawić jego kod na liniach danych D0...D7. Gdy dane są stabilne nale\y do drukarki wysłać ujemny impuls
na linii STROBE. Drukarka odpowiada wystawiając stan 1 na linii BUSY, co oznacza \e jest teraz zajęta i nie mo\na
przesyłać do niej następnych danych. Po pewnym czasie drukarka wysyła ujemny impuls na linii ACK zdejmując jedno-
cześnie sygnał BUSY. Dopiero po zakończeniu impulsu ACK mo\na zmienić stan linii danych.
Czas trwania zajętości po przesłaniu do drukarki danej jest zazwyczaj bardzo krótki (pojedyncze s). Jednak czasem
mo\e on być znacznie dłu\szy (kilkadziesiąt ms). Wystąpi to, na przykład, gdy przyjęcie kolejnego znaku będzie mo\li-
we dopiero po wysunięciu papieru o jedną linię i przesunięciu głowicy na początek następnej linii.
Stany, na pozostałych liniach złącza Centronix, pozostają stabilne w czasie normalnej pracy drukarki. Zale\nie od typu
drukarki niektóre z tych linii mogą nie występować.
Inicjalizacja drukarki
Przesłanie danej do drukarki
Wymiana sygnałów sterujących między mikrokontrolerem, układem 8255 i drukarką przedstawiona jest na rysunku.
66 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
Wpisanie przez mikrokontroler danych do portu A (sygnał WR na rysunku) powoduje ustawienie linii OBF (Output
Buffer Full - Bufor wyjściowy pełny) w stan 0. Jest to sygnał dla zewnętrznego urządzenia, \e na porcie A są dane goto-
we do odczytu.
W układzie 8255 impuls sygnału OBF jest kończony dopiero po potwierdzeniu impulsem ACK. Natomiast w drukarce,
impuls ACK jest generowany dopiero po zakończeniu impulsu STROBE. Aby oba urządzenia potrafiły się porozumieć,
nale\ało pomiędzy wyjście OBF a wejście STROBE, wbudować układ ró\niczkujący, generujący krótki impuls STRO-
BE w odpowiedzi na ujemne zbocze impulsu OBF.
Impuls ACK powoduje zdjęcie sygnału OBF oraz wygenerowanie przerwania na linii INTR . Linia ta w systemie DSM-
A
51 podłączona jest do sterownika przerwań. Przerwanie to informuje mikrokontroler, \e dane wystawione poprzednio na
port A zostały ju\ odczytane i nale\y wystawić kolejne dane. Zapis, w trakcie obsługi przerwania, kolejnych danych na
port A, powoduje automatyczne zdjęcie sygnału przerwania.
Dzięki zastosowaniu trybu 1 i dodaniu układu ró\niczkującego, całość zadania transmisji równoległej do drukarki spro-
wadza się do wpisania danych do portu A.
Znaczenie poszczególnych linii sygnałowych złącza Centronix
Sygnały wejściowe drukarki:
D0...D7 szyna danych
STROBE ujemny impuls informuje, \e daną wystawioną na linii danych nale\y odebrać
INITIAL ujemny impuls powoduje inicjalizację drukarki
AUTOFEED w niektórych drukarkach stan 0 na tej linii powoduje, \e do ka\dego znaku powrotu karetki jest auto-
matycznie dodawane wysunięcie do następnej linii
SLCT IN stan 0 oznacza \e drukarka jest "wybrana" (transmisja po liniach danych jest przeznaczona dla niej)
Sygnały wyjściowe drukarki:
BUSY stan 1 oznacza, \e drukarka jest zajęta i nie mo\e odebrać danej
ACK ujemny impuls potwierdza odbiór znaku lub informuje o zakończeniu inicjalizacji drukarki
PE stan 1 oznacza brak papieru w drukarce
ERROR stan 0 oznacza błąd w drukarce (błąd wewnętrznej pamięci RAM, brak papieru, problemy z ustawie-
niem głowicy, stan OFF-LINE itp.)
SLCT stan 1 potwierdza, \e drukarka jest wybrana
Sygnał ERROR z drukarki jest zanegowany i podłączony do sterownika przerwań jako IPB (linia PC0 złącza).
Oprogramowanie
Przykładowy program (drukarka.asm) demonstrujący sposób wykorzystania modelu M-05 znajduje się w katalogu
DSM-51\Modele\M05.
Program wysyła tekst do drukarki poprzez port A układu 8255 ustawiony jako wyjście w trybie 1. Kolejne znaki tekstu
wysyłane są w przerwaniu generowanym przez układ 8255 w momencie potwierdzenia przez drukarkę odbioru poprzed-
niego znaku. Sygnał ERROR z drukarki (przerwanie IPB) powoduje wypisanie komunikatu na wyświetlaczu LCD.
08/2007 MicroMade Instrukcja Obsługi 3.01 67
1 2 3 4 5
VCC
C3
100n
VCC GND
D D
R1 9 8
10k
U1A U1B
C1
R2
U1D
PC7 1 2 3 4
AHC14
10k
220p
AHC14 AHC14
U1E
11 10
R5
U1C 100
AHC14
R4
PC0 6 5
S1
220
PA7 26 25 PA6 AHC14
R3
U1F
PA5 24 23 PA4
10k
13 12
PA3 22 21 PA2
PA1 20 19 PA0 AHC14
S2
GND
PC7 18 17 PC6
DB25G^
PC5 16 15 PC4
- STROBE 1
PC3 14 13 PC2
PB1 - AUTOFD 14
PC1 12 11 PC0
C PA0 D0 2 C
PB7 10 9 PB6
- ERROR 15
PB5 8 7 PB4
PA1 D1 3
PB3 6 5 PB2
PB2 - INIT 16
PB1 4 3 PB0
PA2 D2 4
2 1
PB3 - SLCT IN 17
D100/26GK PA3 D3 5
GND VCC
18
PA4 D4 6
C2
19
100u/16
PA5 D5 7
GND 20
PA6 D6 8
21
PA7 D7 9
22
PC6 - ACK 10
23
B B
PC1 BUSY 11
24
PC2 PE 12
25
PC4 SLCT 13
GND
Tytuł:
Tytuł:
DSM-51 Wyjście do drukarki CENTRONIX
A DSM-51 Wyjście do drukarki CENTRONIX A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
D
D
Model M05 DM05
Model M05 DM05
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M05\DM05_D.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M05\DM05_D.SCH 1 z 1
1 2 3 45
14
7
V
G
DSM-51
6.Modele urządzeń
M-06 - TYRYSTOROWY REGULATOR OŚWIETLENIA
Przeznaczenie modelu
Model M-06 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 demonstrującą mo\liwość wy-
korzystania systemów mikroprocesorowych do sterowania układów energetycznych.
W modelu tym mikroprocesor steruje, za pośrednictwem tyrystora, jasnością świecenia \arówki zasilanej napięciem
zmiennym 12 V.
Regulacja jasności odbywa się poprzez załączanie prądu płynącego przez \arówkę na odpowiedni fragment ka\dej po-
łówki okresu napięcia sieci (regulacja fazowa).
System mikroprocesorowy jest odizolowany od układu sterowanego za pośrednictwem transoptorów.
W pliku DSM-51\Modele\M06\m06.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-06.
Budowa i zasada działania
Przystawka jest sterowana z DSM-51 za pośrednictwem złącza wejść/wyjść izolowanych galwanicznie.
Schemat blokowy modelu przedstawiony jest na rysunku.
Schemat blokowy modelu M-06
Dzięki izolacji galwanicznej układ sterowany mo\e znajdować się na innym potencjale ni\ sam system. Przystawka jest
zasilana napięciem zmiennym 12 V / 50 Hz (okres przebiegu wynosi 20 ms). Napięcie to jest prostowane w prostowniku
dwupołówkowym. Takie wyprostowane napięcie składa się z szeregu impulsów o kształcie połówek sinusoidy (10 ms
ka\dy).
08/2007 MicroMade Instrukcja Obsługi 3.01 69
DSM-51
6.Modele urządzeń
Sygnały w wybranych punktach układu
W czasie ka\dego okresu tego przebiegu (okres = 10 ms) napięcie najpierw narasta od 0 V do pewnej wartości maksy-
malnej, a następnie opada do 0 V. Na początku ka\dego takiego impulsu tyrystor nie przewodzi. Jeśli w czasie, gdy
napięcie zasilające \arówkę i tyrystor jest większe od 0 V, na bramkę tyrystora podany zostanie impuls napięcia (dodat-
ni względem katody tyrystora), to tyrystor się włączy.
Przez włączony tyrystor i przez \arówkę płynie prąd. Po zakończeniu impulsu wyzwalającego podanego na bramkę, ty-
rystor nadal pozostanie włączony. Wyłączy się dopiero, gdy prąd płynący przez \arówkę i tyrystor spadnie do 0. Zdarzy
się to na końcu bie\ącej połówki sinusoidy, gdy napięcie zasilające \arówkę i tyrystor spadnie do 0. Od tego momentu
cały cykl zaczyna się od nowa, i tak co 10 ms.
Jeśli impuls podawany na bramkę tyrystora występuje w pobli\u początku ka\dego okresu wyprostowanego napięcia, to
prawie przez cały czas przez \arówkę płynie prąd - \arówka świeci jasno. Im pózniej występuje impuls wyzwalający ty-
rystor, tym \arówka słabiej świeci.
Bramka tyrystora jest sterowana przez izolowane wyjście O1. Wyjście to jest z kolei sterowane linią P1.2 mikrokontro-
lera. Wystawienie na tej linii stanu 0 powoduje podanie napięcia na bramkę tyrystora.
Aby prawidłowo sterować jasnością \arówki system mikroprocesorowy musi "wiedzieć" kiedy zaczyna się ka\dy okres
wyprostowanego napięcia. W tym celu napięcie to zostało podane na izolowane wejście I1 systemu DSM-51. Gdy war-
tość wyprostowanego napięcia zasilającego zbli\a się do zera, na nodze P3.4 procesora pojawia się stan 1 i trwa a\ do
momentu, gdy napięcie ponownie wzrośnie powy\ej pewnej wartości progowej. Mo\na przyjąć, \e w połowie tego im-
pulsu wartość napięcia zasilającego osiąga 0.
Oprogramowanie
Przykładowy program (zarowka.asm) demonstrujący sposób wykorzystania modelu M-06 znajduje się w katalogu
DSM-51\Modele\M06.
Program steruje jasnością świecenia \arówki poprzez załączanie płynącego przez nią prądu z odpowiednim opóznie-
niem względem momentu przejścia napięcia sieci przez 0 w ka\dej połówce okresu tego napięcia. Program czyta
klawiaturę matrycową (klawisze 0...7) i zgodnie z przyciśniętym klawiszem ustawia opóznienie odpowiednio 1...8 ms.
Wartość opóznienia jest wypisana na wyświetlaczu LCD.
70 Instrukcja Obsługi 3.01 08/2007 MicroMade
1 2 3 4 5
D D
R4
470
C C
D5
D1A
D1 D2
Z1 Z2
D1A D1A
ZAR_ML7382 ZAR_ML7382
C1 R1
S1
4u7/16
2 10k
~12V
1
*5/2
S2
TY1
O1e 10 9 O1k
BT148W
8 7
D3 D4
R3
R2 6 5
D1A D1A
10k
10k I1k 4 3 I1a
2 1
D100/10GK
B B
Tytuł:
Tytuł:
DSM-51 Tyrystorowy regulator oświetlenia
A DSM-51 Tyrystorowy regulator oświetlenia A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
D
D
Model M06 DM06
Model M06 DM06
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M06\DM06_D.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M06\DM06_D.SCH 1 z 1
1 2 3 45
DSM-51
6.Modele urządzeń
M-07 - INTERFACE SIECI RS485
Przeznaczenie modelu
Model M-07 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 umo\liwiającą połączenie wie-
lu systemów w sieć.
Do transmisji danych wykorzystano standard RS485. Standard ten umo\liwia podłączenie do wspólnej, dwuprzewodo-
wej linii przesyłowej wielu układów nadawczo/odbiorczych (typowo do 32). W danej chwili tylko jeden nadajnik mo\e
nadawać.
Wymianę danych między systemami DSM-51 mo\na zrealizować stosunkowo prosto ustalając jeden z systemów jako
nadrzędny (master) a wszystkie pozostałe jako podrzędne (slave). Fakt, \e tylko jeden z systemów steruje transmisją
istotnie upraszcza oprogramowanie.
Znacznie bardziej uniwersalne (i trudniejsze) jest oprogramowanie transmisji, przy zało\eniu, \e ka\dy z systemów
mo\e chcieć przejąć kontrolę nad linią przesyłową. Głównym problemem jest mo\liwość jednoczesnego rozpoczęcia
transmisji przez dwa systemy. Gdy dwa nadajniki "walczą" ze sobą na linii, to stan linii odczytywany przez odbiorniki
nie jest określony.
W pliku DSM-51\Modele\M07\m07.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-07.
Budowa i zasada działania
Model podłączany jest do złącza wejść/wyjść izolowanych galwanicznie systemu DSM-51.
Schemat blokowy modelu przedstawiony jest na rysunku.
Schemat blokowy modelu M-07
Model jest wykonywany w dwu wersjach: M-07 i M-07a. Model M-07a ró\ni się tym od modelu M-07, \e pobiera on
napięcie zasilające z systemu DSM-51, do którego jest podłączony (nie zapewnia izolacji galwanicznej) i przekazuje to
napięcie do pozostałych modeli w sieci. Tylko jeden z systemów wchodzących w skład sieci powinien być wyposa\ony
72 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
w model M-07a. Do wszystkich pozostałych systemów powinny być podłączone modele M-07. W ten sposób, zbudowa-
na z systemów DSM-51, sieć jest odizolowana galwanicznie od wszystkich systemów z wyjątkiem jednego, z którego
pobiera ona zasilanie. Takie rozwiązanie zapewnia izolację wzajemną wszystkich systemów.
Uwaga
Obecnie model M-07 produkowany jest tylko w jednej wersji. Został on uzupełniony o miniaturowy podwójny
przełącznik (opisany na płytce jako PWR), który słu\y do włączenia zasilania modelu (VCC i GND) z systemu
DSM-51. Ustawienie tych przełączników w pozycji  ON zastępuje dotychczasową wersję modelu M-07a. Zasila-
nie sieci nale\y włączyć tylko w jednym spośród modeli M-07 tworzących sieć.
Ze względu na zasilanie wszystkich modeli M-07 z jednego systemu DSM-51 liczba systemów, które mogą być połą-
czone w sieć z wykorzystaniem tych modeli jest ograniczone do 16.
Izolacja galwaniczna poszczególnych systemów jest podyktowana tym, \e mogą być one połączone z ró\nymi kompute-
rami, które z kolei mogą być zasilane z ró\nych gniazdek sieci. Przy takim połączeniu masy poszczególnych systemów
mogą być na innych potencjałach. Gdyby nie było izolacji galwanicznej między systemami DSM-51 łączenie i rozłącza-
nie sieci RS485 mogłoby prowadzić do uszkodzeń układów nadawczo/odbiorczych w modelach M-07.
Transmisja w standardzie RS485 odbywa się po dwuprzewodowej linii przesyłowej obcią\onej na końcach rezystorami
dopasowanymi do rezystancji falowej linii. Dopasowanie linii zapobiega powstawaniu odbić sygnałów na jej końcach.
To z kolei umo\liwia uzyskanie znacznie większych prędkości transmisji ni\ w standardzie RS232 (do 10 MBodów).
Typowo do realizacji sieci RS485 stosuje się specjalne kable telekomunikacyjne, w których przewody są ze sobą skrę-
cone parami. Taka skręcona para przewodów (skrętka) o odpowiednio dobranych średnicach drutów i grubości izolacji
ma precyzyjnie określoną rezystancję falową, co pozwala na jej dopasowanie.
Dopasowanie linii w modelach M-07 jest uzyskiwane poprzez odpowiednie ustawienie miniaturowych przełączników
włączających rezystory dopasowujące. Te przełączniki powinny być w pozycji "ON" na dwu skrajnych modelach w sie-
ci. Na wszystkich pośrednich modelach powinny one być w pozycji "OFF".
Prędkość transmisji w sieci powstałej z połączenia systemów DSM-51 z wykorzystaniem modeli M-07 jest ograniczona
przez transoptory wykorzystane w układzie izolacji galwanicznej. Ka\dy z transoptorów wprowadza opóznienie rzędu
5 s. Poza tym kable telefoniczne zastosowane do budowy sieci nie są przeznaczone do realizacji transmisji cyfrowych,
a ich dopasowanie na końcach jest tylko przybli\one. Wszystko to oznacza, \e osiągnięcie du\ych prędkości transmisji
w sieci zbudowanej w oparciu o modele M-07 jest niemo\liwe.
Przykładowe programy realizują transmisje w sieci z prędkością 9600 Bodów.
Wyjście izolowane O1 steruje danymi podawanymi na linię RS485 przez model M-07. Wyjście O2 steruje włączeniem
nadajnika. Stan 0 podany na linii P1.3 mikrokontrolera sterujący wyjściem O2 powoduje włączenie nadajnika. Dane od-
bierane z linii są podawane na oba wejścia izolowane galwanicznie: I1 i I2. Stan 0 na linii P1.2 sterującej wyjście O1 w
systemie nadającym dane powoduje pojawienie się równie\ stanu 0 na linii P3.4 i na linii przerwań IOI systemu odbiera-
jącego dane.
Oprogramowanie
Przykładowe programy demonstrujące sposób wykorzystania modelu M-07 znajdują się w katalogu
DSM-51\Modele\M07.
W jednym z systemów nale\y uruchomić program master.asm, a w pozostałych (max 15) slave.asm. Po uruchomieniu
programu slave nale\y podać numer urządzenia w sieci (1...15), dla ka\dego systemu inny. Numer podajemy przez naci-
śnięcie odpowiedniego klawisza klawiatury matrycowej, np. Esc = 14. Systemy są identyfikowane w sieci przez ten
numer.
Na ka\dym z komputerów nale\y uruchomić dowolny program terminala ustawiony na tryb 8N1 (8 bitów danych, bez
bitu parzystości, z 1 bitem stopu) i prędkość transmisji 2400 Bodów. Powstała w ten sposób sieć działa tak, \e ka\de na-
ciśnięcie klawisza na klawiaturze dowolnego z systemów lub połączonego z nim komputera jest rozsyłane do wszystkich
pozostałych systemów. Przychodzące z sieci znaki są wyświetlane na wyświetlaczu LCD systemu i przesyłane do połą-
czonego z nim komputera. W ten sposób wszystko, co jest pisane na klawiaturze dowolnego z komputerów jest
wyświetlane na wyświetlaczach wszystkich systemów i monitorach wszystkich komputerów.
08/2007 MicroMade Instrukcja Obsługi 3.01 73
1 2 3 4 5
D D
VCC VCC
C2
VCC
100n
S2
GND
R1
1
2k2
R8 1k
C 2 4 C
GND D
R4
3 6 3
A DE
4 10
1k
R9
R2
R5 S1
7 1 VCC
O1e
4P4C B R 2k2 10 9 O1k
10 2 GND
RE O2e 8 7 O2k
VCC
R3
GND 6 5
330
U1
R6 100
S3
GND I1k 4 3 I1a
1 RS485
I2k 2 1 I2a
2
GND
100
R7
3 D100/10GK
C1
4
100u/16
K1
4P4C DIPSW2
K2 GND
DIPSW2
VCC
GND
B B
Tytuł:
Tytuł:
DSM-51 Interface sieci RS485
A DSM-51 Interface sieci RS485 A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
D
D
Model M07 DM07
Model M07 DM07
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M07\DM07_D.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M07\DM07_D.SCH 1 z 1
1 2 3 45
8
5
V
G
3
2
4
1
4
1
3
2
DSM-51
6.Modele urządzeń
M-08 - CZYTNIK KART MAGNETYCZNYCH
Przeznaczenie modelu
Model M-08 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 umo\liwiającą odczyt kart
magnetycznych.
Karty magnetyczne są powszechnie stosowane do celów identyfikacji osób (kontrola czasu pracy, kontrola dostępu).
Standard zapisu danych na kartach magnetycznych przewiduje zapis danych na trzech niezale\nych ście\kach. Najczę-
ściej stosowany jest zapis na drugiej ście\ce, dla której standard przewiduje najmniejszą gęstość zapisu. Na ście\ce tej
mo\na zapisać do 40 znaków.
Model M-08 umo\liwia odczyt właśnie drugiej ście\ki.
W pliku DSM-51\Modele\M08\m08.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-08.
Budowa i zasada działania
Model podłączany jest do złącza wejść/wyjść cyfrowych systemu DSM-51.
Schemat blokowy modelu przedstawiony jest na rysunku.
Schemat blokowy modelu M-08
Zastosowany w przystawce standardowy czytnik drugiej ście\ki kart magnetycznych zawiera układ scalony, który na
podstawie sygnału z głowicy magnetycznej wytwarza sygnały cyfrowe pozwalające mikroprocesorowi odczytać dane z
karty.
Gęstość zapisu danych dla drugiej ście\ki wynosi 75 bpi (bitów na cal). Szybkość, z jaką pojawiają się dane na wyjściu
czytnika zale\y od szybkości przesuwu karty w czytniku. Dopuszczalny zakres prędkości przesuwu karty wynosi
10 - 100 cm na sekundę.
08/2007 MicroMade Instrukcja Obsługi 3.01 75
DSM-51
6.Modele urządzeń
Sygnały na wyjściu czytnika
Czytnik wytwarza trzy sygnały:
Card Present
pojawienie się 0 na tej linii oznacza, \e czytnik wykrył obecność karty. Po odczytaniu karty stan na
tej linii wraca na 1.
Data
po linii tej przesyłane są dane. Dane są zanegowane - stan 1 na tej linii oznacza wartość 0 kolejnego
bitu, a stan 0 oznacza wartość 1.
Strobe
dla ka\dego kolejnego bitu, który nale\y odczytać z linii Data na tej linii generowany jest ujemny
impuls.
Czytnik podłączony jest do złącza wejść/wyjść cyfrowych systemu DSM-51 w następujący sposób:
Card Present PB0
Data PB2
Strobe PB1
Znaki zapisywane na karcie składają się z czterech bitów i piątego bitu parzystości (najstarszy bit). Bity znaku zapisy-
wane są w kolejności od najmłodszego do najstarszego.
Zestaw znaków mogących wystąpić na karcie:
Bit Bity Znaczenie
Parzystości
Znaku Hex Znak kontrolne
1 0000 00H 0
0 0001 01H 1
0 0010 02H 2
1 0011 03H 3
0 0100 04H 4
1 0101 05H 5
1 0110 06H 6
0 0111 07H 7
0 1000 08H 8
1 1001 09H 9
1 1010 0AH :
0 1011 0BH ; SS (start)
1 1100 0CH <
0 1101 0DH =
0 1110 0EH >
1 1111 0FH ? ES (koniec)
76 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
Na drugiej ście\ce karty zapisane są kolejno:
znak SS (start),
znaki danych (max 37),
znak ES (koniec danych),
suma kontrolna liczona jako XOR wszystkich znaków łącznie z SS i ES.
Oprogramowanie
Przykładowy program (czytnik.asm) demonstrujący sposób wykorzystania modelu M-08 znajduje się w katalogu
DSM-51\Modele\M08 na dyskietce systemu DSM-51.
Program czyta dane z karty magnetycznej. Dane traktowane są jako 5-bitowe (4 bity znaku + bit parzystości). Maksy-
malna liczba danych wynosi 40. Program nie sprawdza poprawności odczytu (bity parzystości, suma kontrolna).
Wypisuje on na wyświetlaczu odczytane dane do momentu napotkania znaku ES oznaczającego koniec danych (1111B).
Znak ES jest widoczny na wyświetlaczu jako  ? . Na czas odczytu danych włączany jest brzęczyk, przez co sygnalizo-
wane jest odczytywanie kolejnych kart magnetycznych.
08/2007 MicroMade Instrukcja Obsługi 3.01 77
1 2 3 4 5
D D
S1
1 2
3 4
5 6
C 7 8 C
9 10
U1
11 12
13 14
15 16
17 18
19 20 - DATA 1 MAGNETIC
RDT
21 22 PB2 - STROBE 2 CARD
RCL
PB1 23 24 PB0 - CARD PRESENT 3 READER
CLS
GND 25 26 VCC
GND 4
GND
D100/26GK
VCC 5
VCC
CARD_READER
B B
Tytuł:
Tytuł:
DSM-51 Czytnik kart magnetycznych
A DSM-51 Czytnik kart magnetycznych A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
C
C
Model M08 DM08
Model M08 DM08
Data: Plik: Arkusz:
Data: Plik: Arkusz:
6-Jun-2006 D:\MM\MM_PROT\DSM\M08\DM08_C.SCH 1 z 1
6-Jun-2006 D:\MM\MM_PROT\DSM\M08\DM08_C.SCH 1 z 1
1 2 3 45
DSM-51
6.Modele urządzeń
M-09 - RÓWNIA POCHYAA
Przeznaczenie modelu
Model M-09 będący przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 stanowi przykład wykorzy-
stania układów mikroprocesorowych do przeprowadzania doświadczeń fizycznych.
M-09 to równia pochyła. Przystawka umo\liwia praktyczną weryfikację równań ruchu jednostajnie przyspieszonego.
Wzdłu\ równi rozmieszczone są, w równych odstępach, 4 fotokomórki słu\ące do pomiaru czasu potrzebnego toczącej
się kulce na pokonanie kolejnych odcinków.
Wykorzystanie przystawki wymaga, przede wszystkim, opanowania umiejętności precyzyjnego odmierzania czasu upły-
wającego między, rejestrowanymi przez system, zdarzeniami.
W przypadku równi, zdarzeniami są momenty przecięcia kolejnych barier podczerwieni przez toczącą się kulkę. Po
zmierzeniu czasów, jakie potrzebowała kulka na pokonanie kolejnych odcinków, wartości te mogą być wyświetlone na
wyświetlaczu LCD lub przeliczone na inne interesujące wielkości (stosunek czasów pokonania kolejnych odcinków,
prędkość średnia w ka\dym odcinku, itp.).
W pliku MODELE\M09\m09.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-09.
Budowa i zasada działania
Przystawka jest podłączana do złącza wejść/wyjść cyfrowych systemu.
Schemat blokowy modelu przedstawiony jest na rysunku.
Równię pochyłą wykonano w postaci rynienki z pleksi. Przezroczyste boczne ścianki umo\liwiają kontrolę toru toczenia
się metalowej kulki nie blokując działania fotokomórek. Fotokomórki są rozmieszczone co 10 cm.
Po jednej stronie rynienki umieszczone są diody nadawcze promieniowania podczerwonego. Po włączeniu zasilania sys-
temu, nadajniki działają w sposób ciągły. Po drugiej stronie rynienki, naprzeciw nadajników, umieszczone są fotodiody
- odbiorniki promieniowania podczerwonego. Sygnały z fotodiod są podawane na inwertery z wejściem Schmitta. Po
wzmocnieniu trafiają one na linie PA0...PA3 złącza wejść/wyjść cyfrowych systemu DSM-51.
Przy ka\dej fotokomórce jest dioda świecąca sygnalizująca przesłonięcie toru podczerwieni, np. przez toczącą się kulkę.
Program pracujący w systemie DSM-51 mo\e wykrywać momenty, w których kulka mija kolejne fotokomórki poprzez
odczyt stanu linii PA0...PA3. Stan 0 na jednej z linii oznacza, \e odpowiednia fotokomórka jest przesłonięta.
08/2007 MicroMade Instrukcja Obsługi 3.01 79
DSM-51
6.Modele urządzeń
D9
T1
D1 D5
D10
T2
D2 D6
D11
T3
D3 D7
D12
T4
D4 D8
Schemat blokowy modelu M-09
Oprogramowanie
Przykładowy program (rownia.asm) demonstrujący sposób wykorzystania modelu M-09 znajduje się w katalogu
DSM-51\Modele\M09.
Program weryfikuje równania ruchu jednostajnie przyspieszonego na równi pochyłej. Program mierzy czas przelotu kul-
ki pomiędzy kolejnymi punktami pomiarowymi T1, T2, T3 i T4. Wyniki pomiarów przelicza na czasy przelotu kulki, od
pierwszego punktu pomiarowego do ka\dego z pozostałych punktów, wyra\one w ms (czasy T2 - T1, T3 - T1 i
T4 - T1). Oblicza stosunki czasów (T3 - T1) / (T2 - T1) i (T4 - T1) / (T2 - T1), które teoretycznie powinny wynosić "2 i
"3 (przy zało\eniu zerowej prędkości w punkcie T1). Wyliczone wartości wyświetla kolejno na wyświetlaczu LCD.
Aby zapewnić zerową prędkość początkową program umo\liwia precyzyjne ustawienie kulki na pierwszym punkcie po-
miarowym. Po uruchomieniu programu, na wyświetlaczu pojawia się napis  TEST T1 .
Nale\y ustawić kulkę na równi pochyłej powy\ej punktu T1. Trzymając kulkę (mo\na posłu\yć się, np. linijką) opuścić
ją po równi, a\ do punktu T1 - zapali się czerwona dioda świecąca przy T1. Następnie wycofać kulkę tylko do momentu
zgaszenia diody. Jest to dokładnie próg zadziałania pierwszej fotokomórki. Na wyświetlaczu pojawi się napis
 START . Nale\y puścić delikatnie kulkę, tak aby nie nadać jej prędkości początkowej, ani nie popchnąć jej w górę. Po
przejechaniu przez kulkę całej równi odczytać kolejne wyniki naciskając klawisz [Enter].
80 Instrukcja Obsługi 3.01 08/2007 MicroMade
1 2 3 4 5
D D
VCC
C3
D9
100n
R17
LED1206R
4k7
R5
P5 D5
330
S1
SHH1 GND
SFH203
PA7 26 25 PA6
R13
1 2 PA0
PA5 24 23 PA4
GND 220
PA3 22 21 PA2 U1A
T1
AHC14
PA1 20 19 PA0
R6
BC847
PC7 18 17 PC6 47k
GND
PC5 16 15 PC4 VCC
PC3 14 13 PC2 GND
PC1 12 11 PC0
C C
C4
PB7 10 9 PB6
D10
100n
R18
PB5 8 7 PB4
LED1206R
4k7
R7
P6 D6
PB3 6 5 PB2
SHH1 330
SFH203 GND
PB1 4 3 PB0
R14
13 12 PA1
2 1
GND 220
U1F
T2
D100/26GK
AHC14
GND VCC
BC847
R8
47k
GND
C1 VCC
100u/16
GND
GND VCC
C5
C2
D11
100n
100n
R19
LED1206R
P7 4k7 GND
R9
D7
SHH1
330
SFH203 GND
R15
VCC 11 10 PA2 3 4
GND 220
U1E
T3 U1B
B AHC14 B
AHC14
BC847
R10
R1 R2 R3 R4
47k
220
220 220 220 GND
U1C
VCC
5 6
GND
P1
D1 D3
P3
AHC14
SHH1
LED5I LED5I SHH1 GND
C6
D12
100n
R20
P8 LED1206R
GND GND 4k7
D8 R11
D2
D4 SHH1
SFH203
P4 GND 330
P2
LED5I LED5I
R16
SHH1
SHH1 9 8 PA3
GND 220
U1D
T4
GND GND GND GND
AHC14
BC847
R12
47k
GND
GND
Tytuł:
Tytuł:
DSM-51 Równia pochyła
A DSM-51 Równia pochyła A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
D
D
Model M09 DM09
Model M09 DM09
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M09\DM09_D.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M09\DM09_D.SCH 1 z 1
1 2 3 45
14
7
V
G
DSM-51
6.Modele urządzeń
M-10 - MIERNIK I REGULATOR TEMPERATURY
Przeznaczenie modelu
Model M-10 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 demonstrującą wykorzystanie
systemów mikroprocesorowych do pomiarów i regulacji temperatury.
Model jest wyposa\ony w dwa rezystancyjne czujniki temperatury. Jeden z czujników przeznaczony jest do mierzenia
temperatury. Mo\e on być podgrzany z zewnątrz, np. strumieniem ciepłego powietrza lub przez dotknięcie ręką. Drugi
czujnik jest zmontowany razem z tranzystorem spełniającym rolę miniaturowej grzałki. Jest to model regulatora tempe-
ratury. Umo\liwia on testowanie oprogramowania realizującego ró\ne algorytmy regulacji temperatury.
Elementy stosowane w przystawce nie są kalibrowane. W związku z tym bezwzględna precyzja pomiarów wykonywa-
nych przez przystawkę nie jest du\a.
Przeznaczeniem modelu M-10 jest, przede wszystkim, przedstawienie metody pomiaru rezystancji czujników temperatu-
ry polegającej na porównaniu czasów ładowania kondensatora przez mierzony rezystor i przez rezystor wzorcowy.
Metoda ta zapewnia wystarczającą dokładność pomiaru bez stosowania przetwornika A/C. Wiele dostępnych obecnie
procesorów posiada trójstanowe wyjścia o odpowiednich parametrach oraz wejścia z przerzutnikiem Schmitta nadające
się do bezpośredniego podłączenia mierzonych rezystorów.
W pliku DSM-51\Modele\M10\m10.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-10.
Budowa i zasada działania
KTY81 KTY81
Schemat blokowy modelu M-10
Model sterowany jest za pośrednictwem złącza wejść/wyjść cyfrowych systemu DSM-51. Sterowanie modelu odbywa
się poprzez port A pracujący jako wyjście w trybie 0 oraz port C, którego starsza część pracuje jako wyjście, natomiast
82 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
młodsza jako wejście. Podłączenie wyjścia z bramki Schmitta na linię PC0 pozwala na przerwaniowe (IPB) zakończenie
wykonywanego pomiaru. Linia PC5 powinna być na stałe ustawiona na 0 w celu zablokowania przerwania z wejścia
PC3 (IPA).
W modelu zastosowano dwa czujniki KTY81-210. Są to rezystancyjne czujniki temperatury. Ich rezystancja w tempera-
turze 25C wynosi 2 k&! (ą 1%). Zale\ność rezystancji czujnika od temperatury wyra\a się wzorem:
2
R = R * ( 1 + ą * "T +  * "T ) = f (T ) [&!]
T 25 A A A
ą = 7.88 * 10-3 [K-1]
 = 1.937 * 10-5 [K-2]
Przy niezbyt du\ym zakresie mierzonych temperatur mo\na przyjąć, \e rezystancja ta wzrasta o około 0.79 % przy
wzroście temperatury o 1C. Z tych danych wynika, \e nie kalibrowany czujnik dopuszcza błąd wartości jego rezystan-
cji odpowiadający odchyłce o około 1.5C.
System mierzy wartość rezystancji czujników poprzez porównanie czasów ładowania kondensatora przez czujnik i przez
rezystor wzorcowy (2k&! 1%). Mo\liwe odchyłki wartości rezystora wzorcowego są zródłem kolejnego błędu rzędu
1.5C. Po zmierzeniu rezystancji czujnika, temperaturę wylicza się na podstawie jego charakterystyki.
Przed rozpoczęciem procesu ładowania kondensator C1 jest rozładowywany przez zwarcie go kluczem K3 do masy. Po
rozładowaniu kondensatora klucz K3 jest otwierany i włączany jest jeden z kluczy K0, K1 lub K2 rozpoczynając łado-
wanie kondensatora C1 przez rezystor wzorcowy 2 k&! 1% lub jeden z czujników temperatury. Gdy napięcie na
kondensatorze osiągnie próg przełączania wzmacniacza z wejściem Schmitta, stan na jego wyjściu zmieni się z 0 na 1.
Ta zmiana stanu odczytana z wejścia PC0 złącza wejść/wyjść cyfrowych jest sygnałem zakończenia pomiaru czasu.
Przed rozpoczęciem kolejnego procesu ładowania kondensatora jest on ponownie rozładowywany przez klucz K3.
Mo\na wykazać, \e mimo i\ proces ładowania kondensatora przez rezystor przebiega wykładniczo, to czas ładowania
tego samego kondensatora, z tego samego zródła napięcia, a\ do osiągnięcia tej samej progowej wartości napięcia jest
wprost proporcjonalny do rezystancji rezystora, przez który następuje ładowanie. Opierając się na tej zale\ności mo\na
wyliczyć wartość mierzonego rezystora na podstawie pomierzonych czasów ładowania i znajomości wartości rezystora
wzorcowego.
Jeśli mierzona temperatura waha się w niewielkim zakresie, to mo\na przyjąć, \e zale\ność rezystancji czujnika od tem-
peratury jest liniowa. Jeśli pomiar dotyczy szerszego zakresu temperatury, to przy przeliczaniu zmierzonej rezystancji
czujnika na temperaturę nale\y uwzględnić nieliniowość jego charakterystyki.
Jako klucze, wykorzystano w przystawce układ 74HC125 zawierający cztery niezale\nie sterowane bufory trójstanowe.
Gdy klucz ma być otwarty, to odpowiedni bufor ustawiany jest w stan wysokiej impedancji. Gdy klucz ma być zwarty,
to na wyjście bufora podawany jest odpowiedni stan (0 dla K3, 1 dla K0, K1 i K2).
Rolę miniaturowej grzałki spełnia tranzystor T1 (BC337). W stanie włączenia, napięcie na tranzystorze wynosi ok. 4.3
V, a prąd jest stabilizowany elementami R5 i T2 na poziomie ok. 70 mA. W tym stanie moc wydzielana w tranzystorze
wynosi ok. 300 mW.
Oprogramowanie
Przykładowy program (grzalka.asm) demonstrujący sposób wykorzystania modelu M-10 znajduje się w katalogu
DSM-51\Modele\M10 na dyskietce systemu DSM-51.
Program mierzy trzy rezystory:
rezystor wzorcowy R1 = 2 k&! 1%,
rezystancyjny czujnik temperatury R2 - KTY81-210,
rezystancyjny czujnik temperatury R3 - KTY81-210 z mo\liwością podgrzewania.
Po wykonaniu pomiarów program oblicza stosunek rezystancji czujników temperatury do rezystancji rezystora wzorco-
wego R1. Obliczone wartości są wyświetlane na wyświetlaczu LCD.
Pomiary są wykonywane co 1 sekundę.
Przed wykonaniem pomiarów program sprawdza stan klawiszy [Enter] i [Esc] w klawiaturze matrycowej. Naciśnięcie
klawisza [Enter] włącza grzałkę (tranzystor) ogrzewającą czujnik R3, natomiast klawisz [Esc] ją wyłącza. Poniewa\ kla-
wisze są sprawdzane co 1s więc naciśnięty klawisz nale\y przez chwilę przytrzymać, aby zadziałał.
Załączenie grzałki jest sygnalizowane świeceniem diody TEST.
08/2007 MicroMade Instrukcja Obsługi 3.01 83
1 2 3 4 5
D D
VCC
R7
PC0
220
C4
100n
GND
R1 R6
2 3
S1
1k_1% 1k_1%
R8
PA7 26 25 PA6 PA0
U1A
AHC125
PA5 24 23 PA4 10k
PA3 22 21 PA2 R2
5 6
PA1 20 19 PA0
U1B
R9
KTY81
PC7 18 17 PC6 PA1
AHC125
PC5 16 15 PC4 10k
PC3 14 13 PC2 R3
12 11
PC1 12 11 PC0
C U1D C
KTY81
PB7 10 9 PB6
AHC125
R10
PA2
PB5 8 7 PB4
10k
U2B U2A
PB3 6 5 PB2
9 8 3 4 1 2
PB1 4 3 PB0 GND
U1C
2 1 AHC14 AHC14
AHC125
R11
PA3
C1
D100/26GK
10k
4u7/16
GND VCC
C2 GND
100u/16
PC3
GND PC5 VCC
VCC C3
100n
GND
U2F U2E
R12
R4
PC4 13 12 11 10 T1 5 6
BC337
10k 1k
AHC14 AHC14
U2C
B D1 B
AHC14
BAV99
R5
10 U2D
9 8
GND
AHC14
GND GND
Tytuł:
Tytuł:
DSM-51 Miernik i regulator temperatury
A DSM-51 Miernik i regulator temperatury A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
D
D
Model M10 DM10
Model M10 DM10
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M10\DM10_D.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M10\DM10_D.SCH 1 z 1
1 2 3 45
14
7
G
10
13
4
1
V
14
7
V
G
DSM-51
6.Modele urządzeń
M-11 - PROGRAMATOR PAMICI EEPROM
Przeznaczenie modelu
Model M-11 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 umo\liwiającą programowanie
szeregowych pamięci EEPROM.
Istnieje wiele ró\nych pamięci EEPROM, ró\niących się między sobą interfejsem komunikacyjnym. Wśród nich wyró\-
niamy trzy najpopularniejsze:
Microwire
SPI
IC
Wszystkie te interfejsy są obsługiwane przez model M-11 - jest to więc w pełni funkcjonalny programator pamięci
EEPROM. Wykorzystanie tych mo\liwości zale\y tylko od napisania odpowiedniego oprogramowania.
Uwaga!
Model wyposa\ony jest w 3 dodatkowe podstawki, przeznaczone do przechowywania załączonych pamięci
EEPROM. Wyjmowanie układów z podstawek powinno być wykonywane za pomocą cienkiego śrubokrętu, aby
nie pogiąć nó\ek układów.
Budowa i zasada działania
Zaprojektowanie programatora pamięci EEPROM to zupełnie inne zagadnienie ni\ podłączenie jednego, wybranego
EEPROMu do mikrokontrolera. Projektując programator często nale\y pogodzić sprzeczne wymagania. Na przykład, na
tym samym pinie jeden EEPROM wymaga dołączenia masy (minus zasilania), podczas, gdy drugi ma w tym samym
miejscu transmisję dwukierunkową. Dlatego model M11 nie jest tylko podłączeniem wejść/wyjść cyfrowych do pod-
stawki.
Model M-11 jest sterowany przez system DSM-51 za pośrednictwem złącza wejść/wyjść cyfrowych. Wyjścia te są dwu-
kierunkowe, ale przestawiane mogą być tylko całymi portami. Programator wymaga natomiast indywidualnej zmiany
kierunku poszczególnych pinów. Dlatego wybrano następujące rozwiązanie.
Jako port wyjściowy u\yto port C, poniewa\ pozwala on na indywidualne sterowanie poszczególnymi pinami. Do stero-
wania pinów, które dla pewnych pamięci są równie\ wyjściami, zastosowano tzw. otwarte kolektory. Ustawienie na
danym pinie stanu 1 (podawanego faktycznie przez opornik podwieszający) pozwala na jego sterowanie przez progra-
mowany EEPROM.
W celu odczytu tych pinów dołączono je dodatkowo do portu A, ustawionego jako wejściowy.
Konsekwencją sterowania pinu poprzez jeden tranzystor w układzie otwartego kolektora jest zanegowanie stanu z wyj-
ścia portu. Trzeba o tym pamiętać pisząc oprogramowanie.
Dołączenie masy (ujemnego bieguna zasilania układu) jest wykonane w ten sam sposób, poniewa\ dla ró\nych pamięci
EEPROM masa musi być podłączona do ró\nych pinów.
Jak z powy\szego opisu wynika, poszczególne piny pełnią ró\ne funkcje, w zale\ności od typu programowanego ukła-
du. W celu ułatwienia pisania oprogramowania, mo\na programator przedstawić w postaci innego schematu blokowego,
dla ka\dego z typów pamięci EEPROM.
08/2007 MicroMade Instrukcja Obsługi 3.01 85
DSM-51
6.Modele urządzeń
Programator pamięci microwire
VCC
PC0
VCC
PC6 CS
PC7 SK
8255
PC4 DI
PC5=0
93C46
PA0 DO
PC1 ORG
GND
PC3
Programator pamięci SPI
VCC
PC0
VCC
PC6 CS
PC1 SCK
8255
PC3 SI
PC7=0
25C040
PA2 SO
PC4 WP
PC2 HOLD
GND
PC5
86 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
Programator pamięci IC
VCC
PC0
VCC
PA4 SDA
PC3
8255
24C01A
PC1 SCL
PC2 WP
PC6 A0
PC7 A1
PC4 A2
GND
PC5
Oprogramowanie
Wraz z modelem M-11 dostarczane są trzy pamięci EEPROM:
93C46 - Microwire, 128 x 8 bitów (64 x 16 bitów)
25C040 - SPI, 512 x 8 bitów
24C01A - IC, 128 x 8 bitów
Dostępne są równie\ trzy przykładowe programy, które potrafią odczytać i zapisać dane do określonego EEPROMu.
Ka\dy z tych programów potrafi odczytać 8 pierwszych komórek pamięci EEPROM. Po naciśnięciu klawisza Enter po-
zwala wybrać adres jednej z nich i wpisać do niej nową wartość. Programy te nie są oczywiście pełnowartościowymi
programatorami pamięci EEPROM, ale wykorzystując zawarte w nich procedury odczytu i zapisu, mo\na taki program
napisać.
Interfejsy szeregowe
Microwire.
Interfejs Microwire jest opisany w podręczniku do DSM-51. Interfejs ten stanowią 4 linie.
CS - wybór układu
SK - zegar transmisji
DI - wejście danych
DO - wyjście danych
EEPROMy Microwire posiadają jedną cechę nie występującą w innych pamięciach. Istnieją pamięci Microwire o orga-
nizacji 8 lub 16 bitowej, a niektóre mogą pracować w obu tych trybach. W takim wypadku, do zmiany organizacji
08/2007 MicroMade Instrukcja Obsługi 3.01 87
DSM-51
6.Modele urządzeń
pamięci słu\y linia ORG. Dostarczany z przystawką EEPROM AT93C46 mo\e pracować w obu trybach. Stan 0 na linii
ORG powoduje wybór trybu 8-bitowego, a stan 1 trybu 16-bitowego.
Poni\ej przedstawiona jest przykładowa sekwencja odczytu:
CS
SK
DI 1 1 0 A6 A0
DO 0 D7 D0
SPI
Interfejs SPI jest bardzo zbli\ony do Microwire. Tu równie\ występują cztery podstawowe linie interfejsu, w zasadzie o
identycznych funkcjach (choć oznaczane innymi skrótami).
CS - wybór układu (polaryzacja odwrotna ni\ w Microwire)
SCK - zegar transmisji
SI - wejście danych
SO - wyjście danych
W porównaniu do interfejsu Microwire ujednolicono tu długość wszystkich rozkazów i danych - zawsze przesyłana jest
wielokrotność 8 bitów. W Microwire długość rozkazu zmienia się wraz z rozmiarem pamięci EEPROM.
Stan 0 na linii WP powoduje zabezpieczenie zawartości EEPROMu 25C040 przed modyfikacją. Aby rozkazy zapisu do
pamięci działały linia ta musi być w stanie 1.
Linia HOLD pozwala na chwilowe zawieszenie komunikacji z EEPROMem w celu wykonania na szynie SPI innej ope-
racji. W czasie komunikacji z EEPROMem linia ta musi być ustawiona w stan 1.
Przykładowa sekwencja odczytu dla EEPROMu AT25C040 przedstawiona jest na rysunku.
CS
SCK
INSTRUKCJA ADRES DANE
A8 7 6 0
SI
SO
7 6 0
88 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
IC
Interfejs IC jest ju\ zdecydowanie inny. Z 4 linii pozostawiono tylko dwie:
SCL - zegar transmisji
SDA - dwukierunkowa linia danych.
Początek i koniec transmisji, czyli zbocza linii CS, zostały zastąpione odpowiednią sekwencją zmian na linii SDA w
czasie, gdy linia SCL jest w stanie wysokim.
SDA
SCL
START
STOP
Poza tymi sekwencjami, zmiana na linii danych mo\e następować tylko wtedy, kiedy na linii SCL jest stan niski.
Do interfejsu IC mo\na dołączyć wiele układów, gdy\ w transmisji jest przesyłany równie\ adres urządzenia. Ka\de
przesłane 8 bitów jest zawsze potwierdzane na dziewiątym bicie przez układ docelowy.
Trzy najmłodsze bity adresu EEPROMu 24C01A są określone przez stany podane na jego linie A2,A1,A0. Pozwala to
na podłączenie do 8 układów 24C01A do jednej szyny IC i niezale\ne komunikowanie się z ka\dym z nich. W interfej-
sach MicroWire i SPI takie rozwiązanie wymagałoby wytworzenia i rozprowadzenia niezale\nych linii CS dla ka\dego
EEPROMu.
Stan 1 na linii WP powoduje zabezpieczenie zawartości EEPROMu przed modyfikacją.
Przykład sekwencji odczytu EEPROMu AT24C01A przedstawia rysunek.
ADRES
ADRES ADRES
UKAADU UKAADU DANA
DANEJ
7 6 10 7 6 1 0
S W A A S R A N S
T R C C T D C O T
A
A K K K A O
R R C P
T T K
Poszczególne interfejsy zostały przedstawione dość pobie\nie. Dokładne dane dostarczonych EEPROMów zawarte są w
ich kartach katalogowych, umieszczonych w katalogu DSM-51\Modele\M11.
Załączone, przykładowe programy wykorzystują najprostszy sposób obsługi EEPROMów. Odczyt i zapis wykonywane
są zawsze po jednym bajcie. Nie jest to metoda zbyt efektywna. EEPROMy często pozwalają na odczyt kolejnych ko-
mórek pamięci bez podawania kolejnych adresów (sequential read). Natomiast zapis odbywa się przewa\nie większymi
blokami danych, co znacznie przyspiesza programowanie (czas programowania 1 bajtu i jednego bloku jest przewa\nie
jednakowy). Chcąc jednak wykorzystywać te mo\liwości, trzeba zawsze dokładnie przejrzeć dane katalogowe konkret-
nego EEPROMu. Zawsze mogą istnieć mniejsze lub większe ró\nice pomiędzy EEPROMami ró\nych firm.
08/2007 MicroMade Instrukcja Obsługi 3.01 89
1 2 3 4 5
D D
VCC
R1
PC6
S3
1k 1 8
T3
R11
VC 2 7
BC857
10k
R12
PC0 3 6
S1
R3 2k2 4 5
PA7 26 25 PA6 VC
R2 2k2
PA2
PA5 24 23 PA4 DIP8
R13
1k
C2
PA3 22 21 PA2 470
R4
PC7 100n
T1 S4
PA1 20 19 PA0
S2
2k2 BC847 1 8
PC7 18 17 PC6 D1
R5
GND 2 7
uW SPI I2C I2C SPI uW
LED1206R
PC5 16 15 PC4
2k2
GND 1 8 3 6
PC3 14 13 PC2 CS CS A0 VC VC VC GND
R14 1k
2 7 PC2 4 5
PC1 12 11 PC0 GND SK SO A1 WP HD NC
R6
C PC4 3 6 PC1 C
PB7 10 9 PB6 DI WP A2 SC SC OR DIP8
1k 4 5
1k
R15
PB5 8 7 PB4 DO GD GD SD SI GD
VC VC
S5
PB3 6 5 PB2
PROG_EE
1 8
PB1 4 3 PB0
R8 2 7
R16
2 1
R7 2k2 R17
2k2
PA0 PA4 3 6
D100/26GK 4 5
1k
1k
GND VCC
R9 R18
T4
PC5 PC3
T2
DIP8
BC847
2k2 BC847 2k2
C1
R10
R19 GND GND
100u/16
2k2
2k2
GND GND
GND
GND GND
B B
Tytuł:
Tytuł:
DSM-51 Programator pamięci EEPROM
A DSM-51 Programator pamięci EEPROM A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
B
B
Model M11 DM11
Model M11 DM11
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M11\DM11_B.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M11\DM11_B.SCH 1 z 1
1 2 3 45
DSM-51
6.Modele urządzeń
M-13 - ZEGAR CZASU RZECZYWISTEGO IC
Przeznaczenie modelu
Model M-13 jest przystawką do Dydaktycznego Systemu Mikroprocesorowego DSM-51 pełniącą funkcję zegara czasu
rzeczywistego.
Zegar czasu rzeczywistego (Real Time Clock), to nic innego jak zwykły zegar, którego zadaniem jest podawanie mikro-
procesorowi aktualnego czasu. Zegar ten powinien prawidłowo liczyć czas nawet po wyłączeniu zasilania systemu
mikroprocesorowego, tak aby po jego ponownym włączeniu procesor mógł się od razu dowiedzieć o aktualny czas (rok,
miesiąc, dzień, godzina, minuta, sekunda).
Zegary czasu rzeczywistego wykonywane są w postaci specjalizowanych układów scalonych, które są tak konstruowane
aby pobierały jak najmniej prądu i pracowały poprawnie przy niskich napięciach zasilających. Pozwala to na stosowanie
pojedynczej miniaturowej baterii do ich zasilania, nawet, gdy wymagana jest nieprzerwana praca zegara przez wiele lat.
W modelu zastosowano układ zegara czasu rzeczywistego opracowany przez firmę Philips - PCF8563. Układ ten
oprócz ustawienia i odczytu czasu ma mo\liwość generowania przerwań do mikroprocesora w określonych odstępach
czasu.
W pliku DSM-51\Modele\M13\m13.txt są zebrane propozycje zadań do wykonania z wykorzystaniem modelu M-13.
Budowa i zasada działania
Układ PCF8563 w modelu M-13 jest zasilany z systemu DSM-51 (napięcie VCC). Z tego napięcia ładowany jest rów-
nie\ kondensator podtrzymujący (SuperCap). W przypadku braku napięcia VCC (wyłączenie systemu DSM-51 lub
odłączenie modelu od systemu), zasilanie układu RTC przejmuje kondensator SuperCap.
Zastosowany kondensator SuperCap ma pojemność 0.1F. Do pełnego naładowania kondensatora wystarcza włączenie
napięcia VCC na ok. 1 minutę. W pełni naładowany kondensator pozwala na pracę układu PCF8563 przez kilka dni.
VCC
VCC
0.1F
VCC
PC1 SDA
PCF8563
PC5
CLKOUT
8255
PC4 SCL INT
PC0
PC3
08/2007 MicroMade Instrukcja Obsługi 3.01 91
DSM-51
6.Modele urządzeń
Układ PCF 8563 zawiera 16 8-bitowych rejestrów. Funkcje poszczególnych rejestrów zebrano w tabeli.
Adres Nazwa Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
00H control/status 1 TEST1 0 STOP 0 TESTC 0 0 0
01H control/status 2 0 0 0 TI/TP AF TF AIE TIE
02H sekundy VL 00 do 59 BCD
03H minuty x 00 do 59 BCD
04H godziny x x 00 do 23 BCD
05H dzień x x 01 do 31 BCD
06H dzień tygodnia x x x x x 0 do 6
07H miesiąc C x x 01 do 12 BCD
08H rok 00 do 99 BCD
09H Alarm - minuta AE 00 do 59 BCD
0AH Alarm - godzina AE x 00 do 23 BCD
0BH Alarm - dzień AE x 01 do 31 BCD
0CH Alarm - dzień tyg. AE x x x x 0 do 6
0DH CLKOUT sterowanie FE x x x x x FD1 FD0
0EH Timer sterowanie TE x x x x x TD1 TD0
0FH Timer timer
We wszystkich rejestrach zawierających czas (02H ... 0CH), wartość czasu została zapisana w formacie BCD.
Wszystkie bity oznaczone przez x są niezdefiniowane - przy odczycie mogą przyjąć dowolną wartość - 0 lub 1.
Układ PCF8563 posiada dwa wyjścia: INT i CLKOUT. Na wyjściu INT mo\e pojawić się sygnał alarmu, zgodnie z
wcześniej zaprogramowanym czasem alarmu, lub sygnał generowany przez Timer. Wyjście INT zostało dołączone do
linii PC0 złącza wejść/wyjść cyfrowych systemu DSM-51. Pozwala to na wykorzystanie sygnału alarmu jako przerwania
w systemie.
Na wyjściu CLKOUT mo\na włączyć falę prostokątną o częstotliwości 32.768kHz, 1024Hz, 32Hz lub 1 Hz. W modelu
M-13 przebieg z linii CLKOUT podany jest poprzez układ ró\niczkujący na linię PC3 złącza wejść/wyjść cyfrowych
systemu DSM-51. W układzie tym dodatnie zbocza przebiegu CLKOUT są zamieniane na krótkie (2 ms) dodatnie im-
pulsy. Podanie tych impulsów na linię PC3 pozwala na wykorzystanie ich jako przerwań.
Sposób sterowania wyjść INT i CLKOUT przez układ PCF8563 jest zale\ny od ustawień w rejestrach sterujących. Do-
kładny opis rejestrów sterujących (00H .. 01H, 0DH .. 0FH) zawarty jest w karcie katalogowej układu PCF8563,
załączonej w katalogu DSM-51\Modele\M13.
Szyna IC.
W układzie PCF8563, do komunikacji z mikroprocesorem, wbudowano interfejs IC. Jest to dwuprzewodowa szyna do
której mo\e być dołączonych wiele urządzeń. Poniewa\ mikrokontroler 8051 nie posiada wbudowanej szyny IC, więc
w modelu dobudowano specjalny interfejs, który umo\liwia podłączenie modelu do złącza wejść wyjść cyfrowych sys-
temu DSM-51. Jest to faktycznie zbudowanie szyny IC z elementów dyskretnych.
Szyna IC zawiera 2 linie:
SCL - zegar transmisji
SDA - dwukierunkowa linia danych.
Obie te linie podwieszone są rezystorami do napięcia VCC i sterowane są przez wyjścia typu otwarty kolektor. W ten
sposób mo\na do szyny IC dołączyć wiele urządzeń. Linią SCL sterują tylko urządzenia typu MASTER, natomiast linią
danych SDA sterują zarówno urządzenia MASTER jak i SLAVE.
W naszym przypadku jest tylko jedno urządzenie typu MASTER (DSM-51) i jedno typu SLAVE (PCF8563). Dlatego,
linia SCL jest bezpośrednio sterowana przez linię PC4, która dla tego modelu będzie ustawiana jako wyjście.
Linia SDA jest sterowana zarówno przez system DSM-51, jak i przez układ PCF8563. Dlatego, do jej obsługi w sys-
temie DSM-51 wykorzystano 2 linie:
PC5 (wyjście)  steruje linią SDA poprzez otwarty kolektor
PC1 (wejście) - czyta stan linii SDA.
Ka\da transmisja inicjowana jest przez układ typu MASTER. Początek i koniec transmisji zostały zdefiniowane jako
odpowiednia sekwencja zmian na linii SDA w czasie, gdy linia SCL jest w stanie wysokim.
92 Instrukcja Obsługi 3.01 08/2007 MicroMade
DSM-51
6.Modele urządzeń
SDA
SCL
START STOP
Poza tymi sekwencjami, zmiana na linii danych mo\e następować tylko wtedy, kiedy na linii SCL jest stan niski.
Transmisja na szynie IC jest zorganizowana jako przesyłanie 8 bitów, które jest potwierdzane na dziewiątym bicie
(ACK=0) przez układ docelowy. Na początku ka\dej transmisji przesyłany jest adres urządzenia (7 bitów) wraz z 8
bitem (RD/WR), który określa, kto będzie wysyłał kolejne bajty. Bit ten ustawiony na 0 oznacza zapis(WR) - a więc
kolejne bajty będą nadal przesyłane przez układ, który inicjował transmisję (MASTER). Natomiast, je\eli bit ten usta-
wiony jest na 1(odczyt-RD), to kolejne bajty będzie przesyłał układ zaadresowany na początku transmisji.
Zapis do wybranego rejestru wygląda dość naturalnie. Najpierw przesyłany jest adres urządzenia z bitem WR, następnie
adres rejestru do którego chcemy wpisać nową daną, a na koniec ta dana. Cała transmisja jest zakończona poprzez wy-
słanie sekwencji  STOP . (Układ PCF8563 ma ustalony swój adres - 0A2H.)
ADRES ADRES
UKAADU REJESTRU DANA
7 6 1 0 7 6 1 0
S W A A A S
T R C C C T
A K K K O
R P
T
Trochę mniej naturalnie wygląda odczyt rejestru. Poniewa\ najpierw trzeba przesłać adres rejestru, a następnie w drugą
stronę przesyłana jest jego zawartość, więc w trakcie tej procedury trzeba zmienić WR na RD. Wygląda to następująco:
START
Adres układu + WR
Adres rejestru
START
Adres układu + RD
Dana z rejestru przesłana przez adresowany układ
STOP
ADRES ADRES ADRES
UKAADU REJESTRU UKAADU DANA
7 6 1 0 7 6 1 0
S W A A S R A N S
T R C C T D C O T
A
A K K K A O
R R C P
T T K
08/2007 MicroMade Instrukcja Obsługi 3.01 93
DSM-51
6.Modele urządzeń
Nale\y jeszcze zwrócić uwagę na to, \e po przesłanej danej z rejestru , układ MASTER jej nie potwierdza (NO ACK).
W ten sposób przejmuje ponownie sterowanie linii SDA i mo\e zakończyć transmisję poprzez wygenerowanie sekwen-
cji STOP.
Je\eli MASTER potwierdzi przesłany bajt danych (ACK), to SLAVE rozpocznie nadawanie kolejnego bajtu - będzie to
zawartość kolejnego rejestru. W ten sposób mo\na odczytać kolejno zawartość nawet wszystkich rejestrów z układu.
Zakończenie tej transmisji nale\y wykonać poprzez brak potwierdzenia ostatniej bajtu (NO ACK) i wysłanie sekwencji
STOP - tak jak to jest przy odczycie zawartości jednego rejestru.
Oprogramowanie
Przykładowe programy (rtc2_set.asm i rtc2_rd.asm) demonstrujące sposób wykorzystania modelu M-13 znajdują się w
katalogu DSM-51\Modele\M13.
Program rtc2_set.asm ustawia RTC korzystając z danych wpisanych wewnątrz programu. Program wpisuje dane do
wszystkich rejestrów układu PCF8563. Przygotowane dane powodują podanie sygnału 1Hz na wyjście CLKOUT. Po
wpisaniu danych do zegara program wraca do systemu DSM-51. Aby ustawić inny czas, lub zmodyfikować zawartość
rejestrów sterujących, trzeba zmodyfikować kod zródłowy programu, zasemblować go i uruchomić w systemie.
Program rtc2_rd.asm odbiera przerwania co sekundę z PCF8563 (z wyjścia CLKOUT), odczytuje i wypisuje na wy-
świetlacz LCD datę i czas oraz generuje krótkie sygnały dzwiękowe.
94 Instrukcja Obsługi 3.01 08/2007 MicroMade
1 2 3 4 5
D D
C4
100n
VCC GND
13 12
S1
U2F
PA7 26 25 PA6
R11
U2D
AHC14
220
PA5 24 23 PA4 9 8 PC0
PA3 22 21 PA2
U2E
AHC14
PA1 20 19 PA0 VCC 11 10
C PC7 18 17 PC6 C
AHC14
PC5 16 15 PC4 R2
C1
10k
PC3 14 13 PC2
R12
U2B U2C U2A
220p
R1
220
PC1 12 11 PC0 3 4 5 6 PC3 1 2
VCC
PB7 10 9 PB6 1k
AHC14 AHC14 AHC14
PB5 8 7 PB4
PB3 6 5 PB2 GND
D1
BAV70
PB1 4 3 PB0 C3
2 1 100n
R3 R4 R5 R6
VCC GND
R14
R13
10k 10k 10k 10k
220
D100/26GK 220
C5
GND 7
100u/16
CKO
3 2
C2
INT XO
R7
GND PC4 6 0.1F/5.5#
SCL GND
1k
PC1 1k R8 5 1
SDA XI
X1
GND
Rk32k/12p
R9
PC5 U1
T1
PCF8563
2k2 BC847
R10
B B
2k2
GND
GND
Tytuł:
Tytuł:
DSM-51 Zegar Czasu Rzeczywistego I2C
A DSM-51 Zegar Czasu Rzeczywistego I2C A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
A
A
Model M13 DM13
Model M13 DM13
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M13\DM13_A.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M13\DM13_A.SCH 1 z 1
1 2 3 45
14
7
V
G
8
4
V
G
DSM-51
7.Notatki
7.Notatki
96 Instrukcja Obsługi 3.01 08/2007 MicroMade


Wyszukiwarka

Podobne podstrony:
amd102 io pl09
java io InvalidClassException
io port programming 3ogqzy3bscrrpgv753q3uywjfexgwwoiiffd46a 3ogqzy3bscrrpgv753q3uywjfexgwwoiiffd46a
acu 250 io pl14
DSM51 M11
tty io c (2)
asw100 io pl12
io programming pl 11
IO
GiorgioGaber Io non mi sento italiano di AnnaToscano Il discorso indiretto
java io SyncFailedException
io(11 15)
java io SequenceInputStream
io(49 54)
java io BufferedInputStream
java io BufferedWriter
java io PushbackInputStream

więcej podobnych podstron