Operácie

CADRS Cvičenie 11: Rozdiel medzi revíziami

Zo stránky SensorWiki

Balogh (diskusia | príspevky)
Balogh (diskusia | príspevky)
Riadok 52: Riadok 52:
Vstupy A/D prevodníka na MiniMEXLE doske sú zapojené takto:
Vstupy A/D prevodníka na MiniMEXLE doske sú zapojené takto:


''' Kanál      MUX3:0    signál'''
Kanál      MUX3:0    signál
--------------------------------------------------------------
  ADC 0 - 3            nepoužívame
  ADC 0 - 3            nepoužívame
  ADC 4        0100    konektor X2, pravý kanál, Termistor NTC
  ADC 4        0100    konektor X2, pravý kanál, Termistor NTC
Riadok 61: Riadok 62:




Ako zdroj referenčného napätia použijeme priamo napájacie napätie 5V oddelené tlmivkou a filtrované paralelným kondenzátorom 100n. Zodpovedajúce bity REFS1, REFS0 v registri ADMUX sú teda 01.


Pozri [[AVR A/D example.c]]
Zdroj hodinového signálu pre A/D prevodník musí byť v rozsahu 50 až 200 kHz, preto volíme preddeličku 128.
 
Príklad najjednoduchšieho SW ovládaného A/D prevodu je uvedená v tomto príklade - pozri [[AVR A/D example.c]]


=== Vizualizácia ===
=== Vizualizácia ===

Verzia z 22:55, 2. december 2008

A/D prevodník a vizualizácia pomocou UART

Literatúra:


Rekapitulácia

Máte k dispozícii vývojovú dosku MiniMEXLE (popis,schéma zapojenia) a s procesorom ATmega88 (datasheet) a prípadne aj testovací program mexletest2.hex.

V tejto úlohe sa predpokladá znalosť funkcie A/D prevodníka z prednášky (datasheet, str. 87 -- 115). Procesor je nakonfigurovaný na prácu s externým kryštálovým oscilátorom 18,432 MHz (fuses). Demonštračný program je tuto: mexletest2.hex


USART

Nebudeme sa zaoberať detailmi implementácie sériového komunikačného rozhrania procesorov AVR, pre naše účely postačí jednoduchá knižnica, ktorá obsahuje základné funkcie odladené pre dosku MiniMEXLE s procesorom ATmega88 a oscilátorom 18,432 MHz. Máte k dispozícii jednoduchú knižnicu pre prácu so sériovou linkou na procesore ATmega88, stiahnite a pozrite si príklady...

Parametre prenosu pre túto knižnicu sú 9600,n,8,1.

Na prácu so sériovou linkou na vašom PC odporúčame program Terminal by Bray, ale môžete to skúsiť aj s Hyperterminálom.

Keby niekoho zaujímalo, ako je realizovaný prevod TTL úrovní na RS-232, tak tu je schéma zapojenia, ktorá vychádza z tohoto návodu.


A/D prevodník

Pre nameranú hodnotu N platí vzťah

Vstupy A/D prevodníka na MiniMEXLE doske sú zapojené takto:

Kanál       MUX3:0    signál
--------------------------------------------------------------
ADC 0 - 3             nepoužívame
ADC 4        0100     konektor X2, pravý kanál, Termistor NTC
ADC 5        0101     konektor X2, ľavý kanál, dióda LED2
ADC 6 - 7             nepoužívame
Vref         1110     vnútorná referencia 1,1 V
GND          1111     vnútorná zem 0 V


Ako zdroj referenčného napätia použijeme priamo napájacie napätie 5V oddelené tlmivkou a filtrované paralelným kondenzátorom 100n. Zodpovedajúce bity REFS1, REFS0 v registri ADMUX sú teda 01.

Zdroj hodinového signálu pre A/D prevodník musí byť v rozsahu 50 až 200 kHz, preto volíme preddeličku 128.

Príklad najjednoduchšieho SW ovládaného A/D prevodu je uvedená v tomto príklade - pozri AVR A/D example.c

Vizualizácia

Vizualizáciu dát môžeme robiť rozlične. Jeden z možných spôsobov je vypisovať po sériovej linke v pravidelných intervaloch holé data a tie potom uložiť ako maticu do Matlabu a tam nakresliť graf, priebeh, čo treba...

Iná možnosť je použiť napr. program StampPlot, ktorý kreslí prichádzajúce data priamo ako graf, s výnimkou reťazcov, ktoré začínajú znakom '!', tie považuje za konfiguračné príkazy.

Download: StampPlotLite1.7

Príklad: AVR StampPlotExample.c Manual: Stamp Plot Manual


Úloha

  1. Vyhodnotením prechodového deja identifikujte veľkosť kondenzátora vo výstupnom filtri.
  2. Navrhnite vhodnú frekvenciu PWM a demonštrujte.


Návrat na zoznam cvičení...