Professional Documents
Culture Documents
Figura 10
O conversor analógico/digital é o
ADC 0832, figura 10, que possuidois des vantagens em ler em um ou em - Adicione um componente Timer,
canais de entrada (CHo e CH,) e outro sentido, adotaremos a leitura dos altere sua propriedade I nte ruat para 20
irterface serial para sinais de contro- I primeiros bits. Como vimos na tabe- e Enabled para True, dê um duplo
le/dados. Os sinais de controle são la 1, a escolha de qual entrada será clique sobre ele, e estando no Code
brmados por uma entrada de clock lida é feita serialmente através do pino Editor, atribua o código da listagem 5
pam sincronismo CLK, uma entrada Dl, no bit ODD. ao manipulador de eventos do timer;
cfiip select (/CS - habilitação do AD) e - No Code Editor, em qualquer pon-
rma de entrada de dados Dl: onde é to abaixo da palavra reservada
Ëita a programação de qual canal se O novo código Delphl implementation e acima de end. ,
nÍvel alto, e como as entradas serão (Parâmetrol: tipo; Par2: tipo; ParN: escrita , Dado);
úns simples, o terceiro bit seleciona tipo):Tipo_Retorno; Sendo que os dois argumentos
qral delas terá o resultado da conver- private devem ser do tipo Word, ou seja, valo-
são.enviado via pino DO. { Private declarations } res possíveis de serem representados
E através da saída DO que o re- function LerADCanal(Canal em 16 bits, necessitaremos apenas de
srinado-da conversão:é externado pelo :lnteger):lnteger; // Declaração da fun- alguns valores triviais: o endereço da
lD.Observe no diagrama de tempo ção porta - $378 e $379 ou $278 e $279,
qlQgpós o chaveamento dq;MUX in:, .', PUblic conforme o seu PC endereçar a im-
ãno do AD (mux settling fline), sãoi .: I { Public declarations } pressora - e o dado a ser escrito, que
q os bits da conversflo, entre-
_edos
'ênd; é a representação hexadecimal dos
ffi'veja também que os I bits são Listagem 4 - Declaração da Íunção bits necessários para a gerar a
mlhdos de' duas ïorrnas:r"biiz a OitO temporização do circuito conversor AD.
Qfip primeiro) e depois de Íorma in- ' AgoraÍaçamos algumas mudanças procedure TForml .Timerl Timer
ËbA com LSB primeiro.lsto é obvia; no'prirjeto: (Sender: TObject);
nÈË redundante, todavia, é Íeito de , : Selecione o botão SpeedButtonl Var
tiÉn que a escolha entre ler os 8 pri- no Form, e altere a sua propriedade Y : lnteger;
nuios'Oits ou os I següinteb vénhà a Visible paraFalse; begin llCanal0 na Série 0:
Htar o tratamento por parte do dis- - Adicione um componente lOPort iÍ Chartl.Series[0].Count > 100
pdlirc que está recebendo estes bits. ao Form, e renomeie-o para simples- then Chartl .Series[O].Delete(0);
En nosso caso, como não há gran- mente'lOport'; // Mantém 100 pontos móveis