bascom_ep2_2007[1].pdf
(
2371 KB
)
Pobierz
043-046_bascom.indd
PROGRAMY
Bascomowe nowości
W natłoku wielu informacji dotyczących rozwoju elektroniki, do
których można zaliczyć szybką ekspansję mikrokontrolerów ARM,
trochę „zapomnieliśmy” o pakiecie programistycznym Bascom. Choć
ma on wielu przeciwników, jeszcze więcej ma zwolenników, gdyż
mikrokontrolery AVR są nadal bardzo popularne w naszym kraju.
Bascom nadal jest rozwijany, a grono jego użytkowników ciągle
wzrasta. Prócz kosmetycznych zmian polegających na poprawieniu
błędów lub ulepszeniu działania niektórych instrukcji, dodano
do Bascom wiele interesujących elementów. W artykule zostaną
przedstawione tylko najważniejsze informacje o nowych, ciekawych
elementach jakie posiadł Bascom. Pozostałych informacji o nowych
elementach w Bascom można szukać w zawartej w nim pomocy.
lerów AVR za
pomocą
bo-
otloadera
, bę-
dzie dotyczyła
tylko niektó-
rych z nich.
Jedynie większość mikrokontrolerów
ATmega umożliwia umieszczenie
w ich pamięci Flash programu
bo-
otloadera
. W katalogu zawierającym
przykłady, po zainstalowaniu Basco-
ma znajduje się plik
Bootloader.bas
,
w którym należy wybrać typ mikro-
kontrolera, do jakiego będzie on ła-
dowany. Na przykład w przypadku
mikrokontrolera ATmega88 należy
aktywować linie:
$regfile = "m88def.dat"
Const Loaderchip = 88
MCS Bootloader
W Bascomie dodano możliwość
programowania mikrokontrolerów
z wykorzystaniem
bootloadera
(pro-
gramu umożliwiającego programo-
wanie mikrokontrolera), który musi
być wcześniej umieszczony tylko
raz w odpowiedniej sekcji pamięci
Flash mikrokontrolera.
Bootloader
wykorzystuje do komunikacji inter-
fejs UART i za jego pomocą moż-
na bez dodatkowego programatora
programować mikrokontrolery AVR.
Można również wykorzystać do tego
celu konwerter USB<–>UART. Moż-
liwość programowania mikrokontro-
'$regfile = "m162def.dat"
'Const Loaderchip = 162
Pierwsza linia wskazuje plik
z rejestrami mikrokontrolera, a dru-
Elektronika Praktyczna 2/2007
43
PROGRAMY
prędkości transmisji
UART będą zależeć
od kwarcu użytego do
taktowania mikrokon-
trolera. W przypadku
wykorzystania do tak-
towania wewnętrznego
oscylatora mikrokon-
trolera, zaleca się nie
korzystanie z szybkości
większych niż 38400
bodów, ze względu
na małą stabilność
tego typu oscylatora.
Bootloader umożliwia
prócz programowania
pamięci Flash, rów-
nież programowanie
pamięci EEPROM. Li-
sta programatorów obsługiwanych
przez Bascom została uzupełnio-
na o
bootloader
(
rys. 2
). Dodatko-
wo w oknie programatorów można
skonfigurować czy linia DTR ma
być wykorzystywana do zerowania
mikrokontrolera. Po wczytaniu
bo-
otloadera
do mikrokontrolera, aby
go zaprogramować (po kompilacji
programu przez naciśnięcie klawi-
sza F7) wystarczy nacisnąć klawisz
F4. Wyświetlone zostanie okno po-
kazane na
rys. 3
, w którym wi-
doczny jest postęp programowania.
Dostępny jest również bezpłatny
zewnętrzny program umożliwiający
programowanie mikrokontrolerów
AVR poprzez
bootloader
(
rys. 4
).
Informacje przedstawione w artykule dotyczą
Bascoma AVR w wersjach 1.11.7.3 do
1.11.8.3.
Rys. 1. Schemat elektryczny sprzętowego interfejsu
bootloadera
te same instrukcje, co do programo-
wej obsługi interfejsu I
2
C. W Bascom
można również wykorzystać interfejs
TWI pracujący jako
Slave
. Umożli-
wi to na emulowanie nietypowych
układów (zależnie od oprogramowa-
nia) z interfejsem I
2
C
Slave
. Również
i w tym przypadku konfiguracja in-
terfejsu TWI jest prosta. Dla pracy
układu TWI w trybie
Slave
, należy
prócz częstotliwości sygnału zegaro-
wego, dodatkowo podać parametr ad-
resu, jaki układ ma posiadać w magi-
strali I
2
C. Większość nowych mikro-
kontrolerów posiada już układ TWI.
Korzystając ze sprzętowego interfejsu
TWI obsługa interfejsu I
2
C będzie
zajmowała mniej pamięci, gdyż ko-
munikacja nie będzie się odbywała
w sposób programowy.
ga na typ mikrokontrolera. Moż-
na również w pliku
bootloadera
skonfigurować prędkość transmisji
przez UART. Należy mieć na uwa-
dze że za pomocą
bootloadera
nie
ma możliwości zmiany bitów
Fuse
.
Można je zmienić tylko za pośred-
nictwem zewnętrznych programato-
rów.
Bootloader
może być urucha-
miany automatycznie za pomocą li-
nii DTR interfejsu UART, używanej
do zerowania mikrokontrolera lub
ręcznie poprzez jego zerowanie. Na
rys. 1
pokazano przykładowy sche-
mat interfejsu umożliwiającego ko-
munikację z
bootloaderem
zapisanym
w pamięci mikrokontrolera. Składa
się on jedynie z konwertera napięć
MAX232 i kilku dodatkowych ele-
mentów biernych. Rezystor R6 blo-
kuje możliwość zerowania mikro-
kontrolera, gdyby nie było podłą-
czone złącze RS232 do komputera.
Do komunikacji z
bootloaderem
rów-
nie proste będzie zastosowanie kon-
wertera USB<–>UART wykonanego
na układzie typu FT232R. Możliwe
Rys. 3. Okno MCS Bootloadera
podczas pracy
Obsługa interfejsu TWI
W mikrokontrolerach AVR interfejs
I
2
C, a dokładnie kompatybilny z nim
interfejs, jest nazywany TWI (
Two
Wire Interface
). Interfejs ten służy do
łączenia wielu nadajników jak i od-
biorników do jednej dwuprzewodo-
wej magistrali szeregowej. Dołączane
układy mogą pracować w try-
bach nadrzędnych (
Master
)
lub podrzędnych (
Slave
).
Na
rys. 5
pokazano sche-
mat blokowy interfejsu TWI
jednego z mikrokontrolerów
AVR. Układ TWI jest zgodny
ze specyfikacją I
2
C i umożli-
wia pracę w trybie nadrzęd-
nym i podrzędnym. Bascom
umożliwia obsługę interfejsu
TWI, którego konfiguracja jest
bardzo prosta: wystarczy po-
dać w instrukcji konfiguracyj-
nej
Config Twi
częstotliwość
taktowania linii zegarowej. Do
obsługi interfejsu TWI, służą
Obsługa EASY TCP/IP TWI
Od jakiegoś czasu w Bascom jest
dostępna biblioteka TCP/IP, za po-
mocą której jest możliwość korzysta-
nia z układów TCP/IP firmy Wiznet
(mogą to być moduły IIM7000A lub
IIM7010A). Jak dotąd komunikacja
z układem TCP/IP odbywała się w spo-
sób równoległy w którym potrzebnych
jest kilkanaście linii mikrokontrolera.
W modułach Wiznet można również
wykorzystać do komunikacji interfejs
I
2
C, co oznacza, że do zapewnienia
komunikacji wystarczą 2 linie magi-
Rys. 2. W nowych wersjach Bascoma pro-
gramowanie za pomocą bootloadera wystę-
puje na liście programatorów
Rys. 4. Okno bezpłatnego programu
MCS Bootloader
44
Elektronika Praktyczna 2/2007
PROGRAMY
ELEKTRONIKA. TECHNIKA. INNOWACJE.
•
Elektronika do domu,
biura,warsztatu,ogrodu,gara˝u
oraz dla hobbystów!
Zamów
darmowy
katalog na
www
.
con
rad
.
pl
lub pod numerem telefonu 022 627 80 80
Rys. 5. Schemat blokowy interfejsu TWI (I2C) stosowane-
go w mikrokontrolerach AVR
strali I
2
C, 2 linie zasilania
oraz linie: przerwania i ze-
rowania.
W nowych wersjach Ba-
scoma dodano możliwość
komunikacji w modułami
firmy Wiznet za pomocą
interfejsu TWI (I
2
C). Komu-
nikacja poprzez I
2
C będzie
wolniejsza niż w przypadku
komunikacji równoległej. Za-
zwyczaj nie będzie potrzeb-
ny szybki interfejs komuni-
kacyjny i szeregowa komu-
nikacja w zupełności wystar-
czy w większości urządzeń,
w których przykładowo, co
jakiś czas będzie wysyłana
wiadomość e–mail. Firma
MCS Electronics, dla uła-
twienia użycia modułu II-
M7010A z zamontowanym
w nim złączem RJ45, przy-
gotowała dla niego adapter
(
fot. 6
). Przełącznik DIP
umożliwia ustawienie adre-
su
Slave
, jaki będzie posia-
dał moduł w magistrali I
2
C.
Dzięki wykorzystaniu ada-
ptera potrzebne jest tylko
dołączenie do niego sześciu
linii. Dla adaptera TCP/IP
TWI dostępny jest rów-
nież prosty zestaw starto-
wy (
fot. 7
). W zestawie jest
możliwość umieszczenia mi-
krokontrolera ATmega88 lub
ATmega32. Dostępny jest
interfejs RS232, wyświetlacz
LCD, złącze do programo-
wania oraz wszystkie linie
portów mikrokontrolera. Po-
przez zastosowanie magistra-
li szeregowej, z zalet modułu
IIM7010A można skorzystać
wykorzystując mikrokontro-
lery z niewielkimi zasobami.
Programy wykorzystujące
już równoległą komunikację
z układami TCP/IP w bardzo
prosty sposób można dosto-
sować do komunikacji przez
I
2
C. Wystarczy zmienić tyl-
ko jedna linijkę programu,
a dokładnie w komendzie
Config Tcpip
, należy do-
pisać parametr określający
adres modułu (w przypadku
wykorzystywania adaptera,
adres jest ustawiany prze-
łącznikiem DIP). Na stronie
internetowej fir-
my MCS znajdu-
je się polskoję-
zyczna instrukcja
do adaptera, jak
i przygotowanego
dla niego pro-
stego zestawu.
Można w niej
znaleźć wszystkie
Fot. 6. Wygląd modułu IIM7010A na
płytce adaptera
Elektronika Praktyczna 2/2007
45
PROGRAMY
Fot. 7. Wygląd zestawu startowego
TCP/IP
SON.LBX
dla wyświetlaczy
z kontrolerami firmy Epson
i
LCD–PCF8833.LBX
dla wy-
świetlaczy z kontrolerem
PCF8833. Do komunikacji
z tego typu wyświetlaczami
wymaganych jest kilka linii
mikrokontrolera. W przypad-
ku kolorowego wyświetla-
cza można wykorzystywać
komendy:
LINE
,
LCDAT
,
CIRCLE
,
PSET
i
BOX
. Wy-
świetlacze te nie posiadają
wbudowanego generatora
znaków. Czcionki należy
wygenerować samemu, do
czego można wykorzystać
program
FontEditor
(
rys. 8
),
który wchodzi w skład pa-
kietu Bascom.
Dla ułatwienia pracy
z kolorowymi wyświetlaczami
LCD jest dostępny program
LCD RGB–8 Converter
, które-
go okno pokazano na
rys. 9
.
Za pomocą tego programu możliwe
jest konwertowanie bitmap do plików
BGC. Format BGC jest Bascomowym
formatem zapisu plików graficznych,
które można wyświetlić na wyświe-
tlaczu wykorzystując komendę
SHOW-
PIC
. Program ten umożliwia otworze-
nie pliku, jego zapisanie, edytowanie
oraz obsługę schowka. Jest również
możliwość edytowania wczytanego pli-
ku graficznego za pomocą kilkunastu
prostych narzędzi charakterystycznych
dla programów graficznych. Konwerter
można ściągnąć ze strony:
http://www.
mcselec.com/index.php?option=com_do-
cman&task=doc_download&gid=168&I-
temid=54
. Wykorzystanie we własnych
projektach tanich kolorowych wyświe-
tlaczy graficznych nie tylko podniesie
ich funkcjonalność, ale i zwiększy ich
atrakcyjność.
informacje o tym jak zmontować ze-
staw startowy w raz z adapterem oraz
jak go uruchomić. W instrukcji został
przedstawiony również jeden przy-
kład. Więcej przykładów wykorzysta-
nia TCP/IP dostępnych jest w katalogu
SAMPLES
znajdującym się w katalogu
instalacyjnym oprogramowania Ba-
scom.
Rys. 9. Widok okna programu LCD RGB8
Converter
Obsługa kolorowych
wyświetlaczy LCD
W Bascom predefiniowano obsłu-
gę wielu wyświetlaczy. Oprócz wy-
świetlaczy alfanumerycznych LCD,
można wygodnie obsłużyć mono-
chromatyczne wyświetlacze gra-
ficzne z popularnymi sterownikami
KS0107B, KS0108B, T6963C oraz
sterownikami z rodziny SED. Coraz
popularniejsze i tanie są kolorowe
wyświetlacze LCD, zwłaszcza wy-
świetlacze wymontowane z telefo-
nów komórkowych. W Bascom zaim-
plementowano obsługę kolorowych
wyświetlaczy, które zostały wyposa-
żone w kontroler firmy Epson lub
PCF8833 Philipsa.
Ponieważ w Bascomie można
obsługiwać kolorowe wyświetlacze
z dwoma rożnymi kontrolerami, do-
stępne są dwie biblioteki:
LCD–EP-
ryczny wyświetlacza LCD dodano
obsługę nowych wyświetlaczy ze
sterownikami KS077 i DOGM. Dotąd
były obsługiwane wyłącznie wyświe-
tlacze LCD z kontrolerem Hitachi.
Dodano także polecenia umożli-
wiające obsługę układu MAX485, za
pomocą którego jest możliwe zreali-
zowanie transmisji danych w stan-
dardzie RS485. Pojawiło się rów-
nież wiele nowych dyrektyw kom-
pilatora, za pomocą których można
ustawiać stosy oraz wybierać typ
programatora.
Nie sposób wymienić tutaj
wszystkich nowych i uaktualnionych
instrukcji oraz dyrektyw. Tego typu
informacje można znaleźć w pliku
history.txt
znajdującym się w kata-
logu instalacyjnym pakietu Bascom.
Opis i przykłady wykorzystania no-
wych instrukcji znajdują się w ba-
scomowym
helpie
.
Nowe rozkazy
W każdej kolejnej wersji
Bascoma pojawiają się nowe
rozkazy, ponadto wiele zna-
nych już rozkazów jest po-
prawianych (są do nich do-
dawane nowe parametry). Do
interesujących nowych rozka-
zów można zaliczyć umożli-
wiające obsługę impulsatora
oraz polecenia obsługi sy-
gnałów CTS/RTS (w przypad-
ku korzystania z „pełnego”
interfejsu RS232).
Do grupy poleceń kon-
figuracyjnych dla alfanume-
Rys. 8. Okno edytora fontów
Podsumowanie
Bascom jest cały czas rozwijany,
o czym świadczą m.in. jego wielo-
krotne aktualizacje co roku. Jest to
narzędzie coraz doskonalsze, speł-
niające wymagania coraz bardziej
zaawansowanych aplikacji.
Warto wspomnieć o tym, że ogra-
niczenie wielkości kompilowanego
programu w wersji demonstracyjnej
Bascom zostało zwiększone z 2 kB
do 4 kB. Miłej zabawy!
Marcin Wiązania, EP
marcin.wiazania@ep.com.pl
46
Elektronika Praktyczna 2/2007
Plik z chomika:
slawekfilipiak
Inne pliki z tego folderu:
mach3.pdf
(337 KB)
opis g-kodów przykłady w j angielskim.pdf
(1216 KB)
Using3Mill.pdf
(3973 KB)
Using3Turn[1].jpg.pdf
(5784 KB)
bascom_ep2_2007[1].pdf
(2371 KB)
Inne foldery tego chomika:
(1) Nowe Dzwonki SMS
(1) Nowe tapety na telefon 240x320 ok.2500 sztuk
(1) Programy do sciągania simlocka
(1) Sony Ericsson Motywy K800i
17 Paternów w formacie z00 do wk 3500 3300 3800
Zgłoś jeśli
naruszono regulamin