Nucleo-F446RE 内蔵の AD/DA を使うためのライブラリ.DA からの出力は,標本化周波数の4倍のレートで行う.AD の読み込みにはソフトウェア割り込みを使用.  このライブラリを登録した際のプログラム: Demo_F446_AD_DA_MultirateSWI. Library for built-in ADC and DAC in Nucleo-F446RE using software interrupt for reading ADC. Sampling rate for DAC is four times of that for ADC.

Dependencies:   Array_Matrix

Dependents:   F446_UpSampling_LPF_HPF_Variable Demo_F446_AD_DA_MultirateSWI

Committer:
MikamiUitOpen
Date:
Sun Feb 09 02:18:32 2020 +0000
Revision:
2:c8aa7ae0012c
Parent:
1:ea2fb701744d
3

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:3e5b7187753d 1 //--------------------------------------------------------
MikamiUitOpen 0:3e5b7187753d 2 // Class for buit-in single DAC on STM32F446
MikamiUitOpen 0:3e5b7187753d 3 //
MikamiUitOpen 0:3e5b7187753d 4 // STM32F446 内蔵の DAC 用のクラス
MikamiUitOpen 0:3e5b7187753d 5 // DAC_OUT1: A2 (PA_4)
MikamiUitOpen 0:3e5b7187753d 6 // DAC_OUT2: D13 (PA_5)
MikamiUitOpen 0:3e5b7187753d 7 //
MikamiUitOpen 1:ea2fb701744d 8 // 2018/11/28, Copyright (c) 2018 MIKAMI, Naoki
MikamiUitOpen 0:3e5b7187753d 9 //--------------------------------------------------------
MikamiUitOpen 0:3e5b7187753d 10
MikamiUitOpen 0:3e5b7187753d 11 #include "F446_DAC.hpp"
MikamiUitOpen 0:3e5b7187753d 12
MikamiUitOpen 0:3e5b7187753d 13 namespace Mikami
MikamiUitOpen 0:3e5b7187753d 14 {
MikamiUitOpen 0:3e5b7187753d 15 DacF446::DacF446(PinName pin) : da_(pin)
MikamiUitOpen 0:3e5b7187753d 16 {
MikamiUitOpen 0:3e5b7187753d 17 if ( (pin != A2) && (pin != D13) )
MikamiUitOpen 0:3e5b7187753d 18 {
MikamiUitOpen 0:3e5b7187753d 19 fprintf(stderr, "Invalid pin name\r\n");
MikamiUitOpen 0:3e5b7187753d 20 while (true) {}
MikamiUitOpen 0:3e5b7187753d 21 }
MikamiUitOpen 0:3e5b7187753d 22 if (pin == A2)
MikamiUitOpen 0:3e5b7187753d 23 {
MikamiUitOpen 1:ea2fb701744d 24 DAC->CR = DAC_CR_EN1;
MikamiUitOpen 0:3e5b7187753d 25 fpWriteDac = &DacF446::WriteDac1;
MikamiUitOpen 0:3e5b7187753d 26 }
MikamiUitOpen 0:3e5b7187753d 27 else
MikamiUitOpen 0:3e5b7187753d 28 {
MikamiUitOpen 1:ea2fb701744d 29 DAC->CR = DAC_CR_EN2;
MikamiUitOpen 0:3e5b7187753d 30 fpWriteDac = &DacF446::WriteDac2;
MikamiUitOpen 0:3e5b7187753d 31 }
MikamiUitOpen 0:3e5b7187753d 32 }
MikamiUitOpen 1:ea2fb701744d 33 }
MikamiUitOpen 0:3e5b7187753d 34