Strona Domowa

Dawida Urbanskiego

- Dział: arts -

< Go Back to List

elektronika/wyswietlacz_segmentowy_avr_asm

Wyświetlacz Segmentowy 8 znaków kod w Asemblerze z attiny3113

autor: Dawid napiano:2010-październik-1

cel

Dziś napisałem bibliotekę do obsługi wyświetlaczy segmentowych led. Przyznam się że była to dość prosta praca.

Wyświetlacz Segmentowy - Model

Kolor i rozmiar według uznania warto jednak zwróc uwagę na jego typ

Są 2 typy: ze wspólną anodą (+) oraz ze wspólną katodą(-)

Mój zestaw

Do mojej pracy użyłem, LEDTECH 42977 LA5641-11 Moj 7-Segmentowy ekran z kropkę Jest to wyświetlacz segmentowy ze wspólną anodą. polaryzacja pinow z dokumentacji

Zadanie nie jest wymagające - potrzebujesz 8portów I/O. Połączony z attiny2313, własciwie może to być dowolny mikroprocesor firmy Atmel mający min 8partów I/O

oznaczenia

W dokumentacji ekranów segmentowych urzywa się następujących oznaczeń do opisania elementów: z dokumentacj 7-Segment Display a - górna b - górna prawa c - dolna prawa d - dolna e - lewa dolna f - lewa górna g - środkowa DP - kropkaOznaczenia te zdaja się być uniwersalne i takie też ede stosował w swojej biblotece. w moim przypadku oznacza to: polaryzacja i znaczenie pinow z dokumentacji czyli dokładnie: polaryzacja i znaczenie pinow w przypadku mojego ekranu

Bibloteka

definiowanie zmiennych, pinow do ktorych bedziesz mial podlaczaony ekran .equ EKRAN_a_PORT = PORTA .equ EKRAN_a_PIN = 0 .equ EKRAN_b_PORT = PORTD .equ EKRAN_b_PIN = 0 .equ EKRAN_c_PORT = PORTD .equ EKRAN_c_PIN = 1 .equ EKRAN_d_PORT = PORTD .equ EKRAN_d_PIN = 2 .equ EKRAN_e_PORT = PORTD .equ EKRAN_e_PIN = 3 .equ EKRAN_f_PORT = PORTD .equ EKRAN_f_PIN = 5 .equ EKRAN_g_PORT = PORTD .equ EKRAN_g_PIN = 4 .equ EKRAN_PD_PORT = PORTA .equ EKRAN_PD_PIN = 1

dołączanie bibloteki .INCLUDE "screen.asm"

inicjacja ekranu rcall EKRAN_INIT;

zapalanie segmentu 'a' cbi EKRAN_a_PORT,EKRAN_a_PIN

wyswietlenie znaku '1' rcall EKRAN_DIS_0

mrugniecie segmenu BLINK EKRAN_a_PORT,EKRAN_a_PIN

Przyklad

Oto prosty programu .NOLIST ; wyłączenie z raportu z kompilacji .INCLUDE "tn2313def.inc" ; dołączonego pliku AT90S2313def.inc .list ;----------------------------------------------------------------------------- .cseg .org 0 rcall Main; ;----------------------------------------------------------------------------- .INCLUDE "screen.asm" ;----------------------------------------------------------------------------- Main: rcall EKRAN_INIT; cbi EKRAN_a_PORT,EKRAN_a_PIN rjmp Main

Źródła

Back to List


komentarze

brak komentarzy

dodaj komntarz

tools

qrcode:
qrcode
-

code by: Dawid Urbanski

Copyright © by Dawid Urbanski 2010 - 2020