dac_write_timed.py
# Este trabalho está licenciado sob a licença MIT.
# Copyright (c) 2013-2023 OpenMV LLC. Todos os direitos reservados.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Exemplo de escrita temporizada do DAC
#
# Este exemplo mostra como usar a saída do pino DAC integrado à sua OpenMV Cam.
import math
from pyb import DAC
# cria um buffer contendo uma onda senoidal
buf = bytearray(100)
for i in range(len(buf)):
buf[i] = 128 + int(127 * math.sin(2 * math.pi * i / len(buf)))
# gera a saída da onda senoidal a 400Hz
dac = DAC("P6")
dac.write_timed(buf, 400 * len(buf), mode=DAC.CIRCULAR)