Zdravím
// analog - digital prevod
// vstup .0 - pripojen trimr
// zapojena propojka Jad
// Modul IO pripojen do portu A
// Pull-Ups Off
// GNDs Off
// LEDs .0 - .7 on
// BNC Off
// Postup:
// -------
// 1. nastavit registry (staly prevod, 8 bit, unsigned)
// 2. pozorovat v debuggeru
// 3. ovladat LED podle namerene hodnoty
// 4. prevest na rizene zahajovani prevodu a pozorovani CCF
#include <hidef.h> /* for EnableInterrupts macro */
#include "derivative.h" /* include peripheral declarations */
//--------------------------------------------------------------------------------------
//----- main ---------------------------------------------------------------------------
//--------------------------------------------------------------------------------------
void main(void) {
EnableInterrupts; // enable interrupts
// nastaveni ATD
ATD1PE=0b00000001; //trimr je pripojen k pinu .0
//ATD1PE_ATDPE0=1; //trimr je pripojen k pinu .0
ATD1C=0b10100000; //on, 8 bit unsigned
//ATD1C_RES8=1;
//ATD1C_PRS=0;
//ATD1C_ATDPU=1;
ATD1SC=0b00100000; //staly prevod, ch0 pro prvni cast zadani
//ATD1SC_ATDCO=1;
//ATD1SC_ATDCH=0;
//...... nastav port na vystup (pripojeny LED )
//------------------------------------------------------------------------------------
//----- hlavni smycka ----------------------------------------------------------------
//------------------------------------------------------------------------------------
for(;;) {
// !!! Prvni krok - staly prevod !!!
PTAD=ATD1RH; //vycti vysledek a zobraz na portu A
/*
// !!! Druhy krok - jednorazovy prevod !!!
ATD1SC=...... spust jednorazovy prevod na ch0
// cekej na dokonceni prevodu
while (ATD1SC_CCF==0) {
}
.....=ATD1RH(ATD1R) vycti vysledek a pripadne uprav
.......... zobraz na portu A (leds)
*/
__RESET_WATCHDOG(); // feeds the dog
} /* loop forever */
/* please make sure that you never leave main */
}
Můj postup:
// !!! Druhy krok - jednorazovy prevod !!!
ATD1SC=0b00100000; spust jednorazovy prevod na ch0
// cekej na dokonceni prevodu
while (ATD1SC_CCF==0) {
}
PTAD=ATD1RH(ATD1R) vycti vysledek a pripadne uprav
.......... zobraz na portu A (leds)
Jedná se o http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC9S08GB60.pdf