Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 04. 04. 2012 20:35

Tomas.P
Příspěvky: 648
Reputace:   22 
 

C program

Zdravím,

Code:

// 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 */
}

Offline

 

#2 04. 04. 2012 20:44

Tomas.P
Příspěvky: 648
Reputace:   22 
 

Re: C program

Můj postup:

Code:

// !!! 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/microcon … 08GB60.pdf

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson