i droid instrukcja82c

background image

12

N

a poprzednich stronach zapoznaliÊmy si´ z instrukcjà kon-
troli wyÊwietlacza z komputera PC. Teraz zobaczymy, jak
wykorzystaç sam wyÊwietlacz do pomiaru napi´cia baterii

za pomocà programu w j´zyku C-like. Stanie si´ to mo˝liwe po
pod∏àczeniu – za pomocà do∏àczonych do numeru 67 przewodów
p∏ytki testowej – dwóch biegunów testowanej baterii do gniazd z∏à-
cza zasobnika, oznaczonych jako GND (biegun ujemny baterii) i wej-
Êcie analogowe 1 (biegun dodatni). Trzeba podkreÊliç, ˝e testowa-
ne baterie nie powinny odznaczaç si´ napi´ciem nominalnym wi´k-
szym od 3 V – jest to bowiem maksymalna wartoÊç, jakà mo˝na
podaç na wejÊcia z∏àcza.

PROGRAM TESTER

Musisz wiedzieç, ˝e kod programu T

Te

esstte

err rozpoczyna si´ deklara-

cjami #

#iin

nccllu

ud

de

e, które umo˝liwiajà importowanie z cc--lliik

ke

e..h

h i rro

ob

bo

ott..h

h.

Nast´pnie opisane jest zachowanie T

Te

esstte

errB

Ba

atte

erriiii i funkcja

o

od

dn

no

ow

wW

WyyÊÊw

wiie

ettlla

acczz. Potem nast´puje kod zachowania M

Ma

aiin

n, roz-

poczynajàcy si´ od domyÊlnej llccd

d_

_cclle

ea

arr, czyli „czyszczenia” ekranu.

M

Ma

aiin

n uruchomia si´ po w∏àczeniu T

Te

esstte

errB

Ba

atte

erriiii, który za pomocà

protoko∏u magistrali I2C odczytuje wielkoÊç dostarczonà przez wej-
Êcie analogowe 1 zasobnika. Alternatywà jest skorzystanie z funk-
cji zasobów C-like n

ne

ew

w_

_vva

allu

ue

e =

= g

ge

ett((a

an

na

allo

og

g_

_iin

n))..p

piin

n_

_1

1; zwiàzanej

z odczytem wartoÊci napi´cia na wejÊciach analogowych. Tak czy
inaczej, jeÊli odczytana wielkoÊç ró˝ni si´ od zmierzonej uprzednio,
wiadomoÊç ta poka˝e si´ na wyÊwietlaczu. Zajmuje si´ tym funk-
cja o

od

dn

no

ow

wW

WyyÊÊw

wiie

ettlla

acczz, która konwertuje wielkoÊç z wejÊcia ana-

logowego i „zapisuje” jà na wyÊwietlaczu w postaci liczby dzie-
si´tnej.

D

Dzzii´

´k

kii w

wy

yp

po

ossa

a˝˝e

en

niiu

u w

w rró

ó˝˝n

ne

e n

na

arrzz´

´d

dzziia

a p

prro

og

grra

am

mo

ow

wa

an

niia

a ii--D

D0

01

1 m

mo

o˝˝e

e p

pe

e∏∏n

niiçç rro

ozzm

ma

aiitte

e

ffu

un

nk

kccjje

e.. W

Wy

ysstta

arrcczzy

y o

od

dp

po

ow

wiie

ed

dn

nii k

ko

od

d w

w jj´

´zzy

yk

ku

u C

C--lliik

ke

e ii d

dw

wa

a p

prrzze

ew

wo

od

dy

y,, a

ab

by

y zzb

bu

ud

do

ow

wa

açç

m

miie

errn

niik

k n

na

ap

pii´

´cciia

a b

ba

atte

erriiii..

Z∏àcze interfejsu umieszczonego
na zasobniku z p∏ytkà testowà.
Aby program Tester dzia∏a∏
prawid∏owo, trzeba pod∏àczyç
(na przyk∏ad za pomocà przewodów)
gniazdo GND (pierwsze od góry)
do ujemnego bieguna testowanej
baterii, zaÊ gniazdo wejÊcie
analogowe 1 (trzecie od do∏u)
do bieguna dodatniego.

PROGRAMOWANIE

KROK PO KROKU

PRZYK¸ADY PROGRAMOWANIA

KOD PROGRAMU TESTER

#include „c-like.h“
#include „robot.h“

declare( behavior(TesterBaterii) );

void odnowDisplay();

define( behavior(Main))
{

lcd_clear();
start(TesterBaterii);

}

unsigned char old_value = 0;

define( behavior(TesterBaterii) )
{

unsigned char new_value;
old_value = new_value;
i2c_read(44, 8, &new_value, 1);
if (new_value != old_value)

odnowDisplay(new_value);

msleep(100);

}

void odnowDisplay(unsigned char val)
{

char buffer[17];
float x = (float) ( (3.000f * val) / 255.0f );
snprintf(buffer, 17, „%0.3f Volt“, x);
lcd_write_string(1, 1, buffer);

}

Kod C-like programu Tester (przeznaczony do zapisania
w pliku tester.clike). Pozwala on zobaczyç na ekranie wy-
Êwietlacza i-D01 napi´cie, zmierzone po pod∏àczeniu biegu-
nów baterii do gniazd GND i wejÊcie analogowe 1 z∏àcza
zasobnika. Program przeprowadza pomiar napi´cia, pos∏u-
gujàc si´ liczbami typu

float. Ten rodzaj obliczeƒ wymaga

du˝ej pracy od procesorów robota – przy bardziej z∏o˝onych
zastosowaniach C-like warto go zatem unikaç. Musisz te˝
pami´taç, by nie testowaç baterii o napi´ciu nominalnym
przewy˝szajàcym 3 V.

GND

wejÊcie
analogowe 1

,,TESTER” BATERII
W JEZYKU C-LIKE

„TESTER” BATERII
W J¢ZYKU C-LIKE


Wyszukiwarka

Podobne podstrony:
i droid instrukcja87a
i droid instrukcja44
i droid instrukcja75
i droid instrukcja35
i droid instrukcja85a
i droid instrukcja43
i droid instrukcja82a
i droid instrukcja83b
i droid instrukcja87b
i droid instrukcja88b
i droid instrukcja81a
i droid instrukcja84a
i droid instrukcja66
i droid instrukcja87a
i droid instrukcja88a

więcej podobnych podstron