Diferencia entre revisiones de «Código Acelerómetro para Codewarrior 10.6»

De Wikitronica
Saltar a: navegación, buscar
Línea 45: Línea 45:
  
 
   SCI1BD = baud;  // set baud
 
   SCI1BD = baud;  // set baud
} //end InitSCI
+
}
  
 
</syntaxhighlight><br>
 
</syntaxhighlight><br>
Línea 51: Línea 51:
  
 
'''Funciones para la transmisión y recepción de datos'''
 
'''Funciones para la transmisión y recepción de datos'''
'''SCI'''
+
'''Enviar y recibir caracteres'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
char RecChar(void) {
+
  char RecChar(void) {
byte rec_char;
+
  byte rec_char;
  
if (SCI1S1_RDRF)   
+
  if (SCI1S1_RDRF)   
rec_char = SCI1D;   
+
  rec_char = SCI1D;   
SCI1C2_RE = 1;     
+
  SCI1C2_RE = 1;     
while(!SCI1S1_RDRF){  };
+
  while(!SCI1S1_RDRF){  };
rec_char = SCI1D;  
+
  rec_char = SCI1D;  
SendChar((char) rec_char);
+
  SendChar((char) rec_char);
return (char) SCI1D;
+
  return (char) SCI1D;
} //end RecChar 
+
}  
 
</syntaxhighlight><br>
 
</syntaxhighlight><br>

Revisión del 15:42 22 jun 2016

Código del Acelerómetro en CodeWarrior 10.6

Descripción de funciones

Inicialización de periféricos ICS

void ICS_FEI(void) {

if (NVICSTRM != 0xFF)
ICSTRM = NVICSTRM;
else
ICSTRM = 0xAD;
ICSC1 = ICSC1_FEI;
ICSC2 = ICSC2_FEI;
ICSSC = ICSSC_FEI;
while (ICSC1_CLKS != ICSSC_CLKST) {}
} //end


KBI

void InitKBI(void) {
// Enable KBI1P[3:2] as interrupt
  KBI1PE = KBI_SW;
  KBI1SC = 0b00000110;
/*               ||||
                 |||+---- KBIMOD = KBI detection mode: 0=edge only
                 ||+----- KBIE   = KBI int enable: 1=enabled
                 |+------ KBACK  = KBI int acknowledge: 1=clr IRQF
                 +------- KBF    = KBI flag
*/
}

SCI

void InitSCI(word baud) {

  SCI1BD = baud;  // set baud
}


Funciones para la transmisión y recepción de datos Enviar y recibir caracteres

  char RecChar(void) {
  byte rec_char;

  if (SCI1S1_RDRF)  
  rec_char = SCI1D;  
  SCI1C2_RE = 1;    
  while(!SCI1S1_RDRF){  };
  rec_char = SCI1D; 
  SendChar((char) rec_char);
  return (char) SCI1D;
}