本文完整源码
用数字信号带动蜂鸣器同一时间只能发出一种频率的声音,也没有和弦,会比较难听。而我们听到的音乐可以表示成任意波形的模拟信号,所以需要用DA转换器输出模拟信号
原理
DA转换器
这是DA转换芯片DAC0832的原理图,这种DA转换电路叫R-2R倒T形电阻网络,其中切换开关根据数字量每一位决定切换到哪边。利用等效电阻可以算出从右往左垂直支路的电流分别是 V R E F 2 R \frac{V_{REF}}{2R} 2RVREF, V R E F 4 R \frac{V_{REF}}{4R} 4RVREF, V R E F 8 R \frac{V_{REF}}{8R} 8RVREF, …, V R E F 2 n R \frac{V_{REF}}{2^{n}R} 2n