You are on page 1of 5

BasCom KOMENDY ver.

1,0
by Bartek Wloch (XAX)
==00,,((1111((
DIM x AS y rezerwuje w pamici miejsce na zmienn x i typie y
typy zmiennych:
- BIT (1 bit) przyjmuje stan 0 (falsz) lub 1 (prawda)
- BYTE (1 bajt=8 bitw) liczba calkowita,bez znaku z zakresu 0..255
- INTEGER (2 bajty) liczba calkowita ze znakiem z zakresu -32768..+32767
- WORD (2 bajty) liczba calkowita bez znaku z zakresu 0..65535
- LONG (4 bajty) liczba calkowita ze znakiem z zakresu -
2147483648..+2147483647
- SINGLE (4 bajty) w Bascom jest to taki sam typ jak LONG
- STRING lacuch znakw(np.napis) o dlugoci do 254 bajtw;ostatni ze
znakw
w lacuchu ma zawsze kod #0 (nadawany przez kompilator)
77$$%%//,,&&((
DIM x(z) AS y rezerwuje w pamici miejsce na tablic x o typie y
i iloci elementw z
typy zmiennych:
- BIT (1 bit) przyjmuje stan 0 (falsz) lub 1 (prawda)
- BYTE (1 bajt=8 bitw) liczba calkowita,bez znaku z zakresu 0..255
- INTEGER (2 bajty) liczba calkowita ze znakiem z zakresu -32768..+32767
- WORD (2 bajty) liczba calkowita bez znaku z zakresu 0..65535
- LONG (4 bajty) liczba calkowita ze znakiem z zakresu -
2147483648..+2147483647
- SINGLE (4 bajty) w Bascom jest to taki sam typ jak LONG
- STRING lacuch znakw(np.napis) o dlugoci do 254 bajtw;ostatni ze
znakw
w lacuchu ma zawsze kod #0 (nadawany przez kompilator)
Przyklad u*ycia:
DIM Tabela(10) AS Byte
DIM Zmienna AS Byte
.
.
Zmienna=Tabela(1)
.2 .211)),,**885$& 5$&--$ $::<<##::,,((77//$& $&==$ $//&&''
Config Lcd kolumny*wiersze ustawienie iloci kolumn i wierszy dla
wywietlacza LCD
Config Lcdpin=Pin, Db4=pa, Db5=pb, Db6=pc, Db7=pd, E=pe, Rs=pf
konfiguracja linii
wejcia / wyjcia
Przyklad u*ycia (Bascom AVR):
Strona 1 z 5 ...::: ciga BASCOM, autor XAX :::...
02-05-22 http://republika.pl/atmelavr/EirstSteps1.htm
Config Lcd = 20 * 4
Config Lcdpin=Pin, Db4=Porta.5, Db5=Porta.4, Db6=Porta.3, Db7=Porta.2,
E=Porta.6, Rs=Porta.7
Deflcdchar Kod, b0, b1, b2, b3, b4, b5, b6, b7 wyslanie do wywietlacza
definicji
znaku o numerze Kod (od 0 do 7); b0..b1 - bajty definicji wierszy znaku
Przyklad zastosowania (Bascom AVR):
Tak typowo wyglda matryca znakw na ekranie LCD. Zazwyczaj
jest to
matryca 8 wierszy po 5 punkcikw.Na znak wplywaj bity od
b0..b4,
b5..b7 mog miec zupelnie dowoln wartoc.Program LCD
Designer do-
lczony do Bascom tlumaczy narysowany znak na sekwencj
bajtw.Znak
z przykladu obok reprezentowany bdzie przez nastpujc
definicj:
Deflcdchar 0,8,8,30,8,8,9,6,32
Znak zostanie wywietlony po wyslaniu do LCD kodu 0.
UWAGA:po rozkazie Deflcdchar nale*y wykonac Cls (czyszczenie ekranu).
Pozycjonowanie kursora
- UPPERLINE wywietl tekst w pierwszej lini
- LOWERLINE wywietl tekst w drugiej lini
- THIRDLINE wywietl tekst w trzeciej lini
- FOURTHLINE wywietl tekst w czwartej lini
- LOCATE x,y x i y to wsplrzdne miejsca na wywietlaczu gdzie ma byc
wywietlony
tekst;maksymalny zakres okrelony jest w Config Lcd
Wywietlanie
- LCD "napis" wywietla tekst napis na wywietlaczu
- LCD zmienna wywietla zawartoc zmienna
- LCD CHR(kod) wywietla zdefiniowany znak o numerze kod
67( 67(5522::$$11,,(3 (3,,11$$00,,
- SET port.bit ustawienie linii bit portu port na 1
- RESET port.bit ustawienie linii bit portu port na 0
Uwaga:Dla ukladw z rodziny 8051, porty to P1, P2, P3. Dla AVR Porta,
Portb, Portc.
Numery bitw podaje si w zakresie 0..7.
33225577< <00,,..5522335522&&((66225$ 5$
Strona 2 z 5 ...::: ciga BASCOM, autor XAX :::...
02-05-22 http://republika.pl/atmelavr/EirstSteps1.htm
- Px = liczba x to numer portu;do portu zapisywany jest bajt liczba
- zmienna = Px x to numer portu;z portu odczytywany jest bajt i
zapamitywany
w zmienna
- Px.bit = 0/1 x to numer portu,ELW to numer bitu portu;rozkaz dziala
jak
SET (gdy 1) lub RESET (gdy 0)
- z_bit = Px.bit x to numer portu,ELW to numer bitu portu;rozkaz
odczytuje stan
linii portu Px;]BELW to zmienna typu BIT
Uwaga:Dla ukladw z rodziny 8051, porty to P1, P2, P3. Dla AVR Porta,
Portb, Portc.
2233--11,,((11,,$$
- WAITMS x op(nienie w pracy programu;[ podaje si w milisekundach
- WAIT x op(nienie w pracy programu;[ podaje si w sekundach
Uwaga:Do poprawnej pracy WAIT i WAITMS niezbdne jest ustawienie $CRYSTAL
::$5 $58811((. .,,) ) 77++((1 1
Warunek pojedynczy:
- IF warunek THEN
akcja
ENDIF
Warunek "podwjny":
- IF warunek THEN
akcja1
ELSE
akcja2
ENDIF
Uwaga: warunek to najczciej porwnanie dwch zmiennych lub zmiennej i
stalej.
Dla przykladu mo*e to byc IF P1.0=1 THEN LCD "Linia 0 portu P1 ma stan H".
Miedzy IF a THEN mozna stosowac kilka argumentow oddzielonych funkcjami
logicznymi:
OR (lub albo inaczej suma logiczna),AND (i lub iloczyn logiczny)
3377//( (, ,66..22..,,
DO
....
....
LOOP
Strona 3 z 5 ...::: ciga BASCOM, autor XAX :::...
02-05-22 http://republika.pl/atmelavr/EirstSteps1.htm
ptla nieskoczona,wykonywana bez przerwy.
DO
....
....
LOOP UNTIL warunek
ptla wykonywana do momentu a* spelniony zostanie warunek.
FOR zmienna=wartoc TO granica [STEP wartoc_2]
....
....
NEXT zmienna
ptla wykonywana od wartoci wartoc do granica.Przyklad dla
"rozjanienia":
DIM I As Byte
FOR I=1 TO 100
LCD I
NEXT I
W powy*szym przykladzie krok jest co 1 (tzn.1,2,3...100).Co zrobic aby
zmienic krok?
Odpowied( na to pytanie poni*ej:
DIM I As Byte STEP 10
FOR I=1 TO 100
LCD I
NEXT I
- GOTO etykieta skok do etykiety zdefiniowanej w programie.Etykieta to
po prostu
nazwa zakoczona symbolem "". Przyklad:
Start:
FOR I=1 TO 10
IF I=5 GOTO Start
NEXT I
- GOSUB etykieta skok do podprogramu,z ktrego powrt do miejsca
wywolania
nastpuje po rozkazie RETURN.Przyklad:
FOR I=X TO 10
GOSUB ObliczPotegeX
NEXT X
ObliczPotegeX:
Pot=X*X
RETURN
Uwaga: oprcz podprogramu w Bascom mo*na rwnie* (jak w ka*dym "powa*nym"
jzyku
programowania) wywolywac funkcje i procedury podajc ich nazw.
335522&&((''885< 5<
Strona 4 z 5 ...::: ciga BASCOM, autor XAX :::...
02-05-22 http://republika.pl/atmelavr/EirstSteps1.htm
Powrt do strony gIwnej
Strona 5 z 5 ...::: ciga BASCOM, autor XAX :::...
02-05-22 http://republika.pl/atmelavr/EirstSteps1.htm

You might also like