Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Buscar ...
Detalles
C Última actualización: 29 de septiembre de 2018
Contenido [ Show ]
Intro
Para la placa compatible con SAM15x15 Arduino (/arduino/samd21/sam-15x15.html) , que usa
SAMD21G, necesitaba una biblioteca de temporizadores. Desafortunadamente, tal biblioteca no
existía, así que yo mismo he invertido tiempo en su desarrollo.
Esta biblioteca también se puede utilizar para Arduino Zero y placas equivalentes:
Sin tener una biblioteca sofisticada, usar el temporizador / contador es una tarea complicada y debe
entrar en muchos detalles, como los modos de contador, comparar / capturar canales, valores de
preescalador, etc. Aquí, una biblioteca adecuada hace la vida más fácil. Soy vago, lo único que
quiero hacer es especificar el período de tiempo y el pin de salida, y el resto debe ser resuelto por la
biblioteca.
Descargar
Descargue la biblioteca avdweb_SAMDtimer (https://github.com/avandalen/avdweb_SAMDtimer) de
GitHub, aquí también encontrará ejemplos de programas.
La biblioteca Adafruit_ZeroTimer (https://github.com/adafruit/Adafruit_ZeroTimer/) y la
Adafruit_ASFcore (https://github.com/adafruit/Adafruit_ASFcore) también deben ser instalados.
Atención: Las nuevas bibliotecas Adafruit_ASFcore y Adafruit_ZeroTimer ya no funcionan con la
biblioteca avdweb_SAMDtimer. Por lo tanto, instale estas 2 bibliotecas antiguas:
http://www.avdweb.nl/Article_files/Arduino/SAMDtimer/Adafruit_ASFcore-master.zip
(/Article_files/Arduino/SAMDtimer/Adafruit_ASFcore-master.zip)
http://www.avdweb.nl/Article_files/Arduino/SAMDtimer/Adafruit_ZeroTimer-master.zip
(/Article_files/Arduino/SAMDtimer/Adafruit_ZeroTimer-master.zip)
Mytimer3.attachInterrupt (myISR);
Explicación:
Mytimer3: un temporizador existente con un pin de salida, consulte el párrafo 1.
myISR: el nombre del ISR, consulte el párrafo 2.
Notas
Si el temporizador está desactivado, el ISR también está desactivado.
(/Article_files/Miscellaneous/Images/Wanted.jpg)
Mejoras futuras
Los temporizadores 0, 1, 2 y los modos de 8 bits aún no están implementados. Espero que otras
personas quieran hacer esto en GitHub.
También se pueden agregar más funciones, como:
setPeriod_us (us);