learing:alpha:2017052301
差别
这里会显示出您选择的修订版和当前版本之间的差别。
| 两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
| learing:alpha:2017052301 [2017/10/03 08:36] – 弘毅 | learing:alpha:2017052301 [2025/10/11 02:55] (当前版本) – 外部编辑 127.0.0.1 | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| + | ====== 8F328P的DAC使用 ====== | ||
| + | ALPHA 8F328P具有一路8位DAC,我们介绍一下,怎样使用DAC。 | ||
| + | |||
| + | 需要注意的是,ADC和DAC使用的是同一个基准源,如果你改变基准源的话是两个所参考的基准源同时改变。 | ||
| + | |||
| + | ===== 程序 ===== | ||
| + | |||
| + | 输出一个固定电压值 | ||
| + | <code cpp> | ||
| + | int dac = 4; // | ||
| + | void setup() { | ||
| + | pinMode(dac, | ||
| + | analogReference(INTERNAL2V048); | ||
| + | } | ||
| + | |||
| + | void loop() { | ||
| + | analogWrite(dac, | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | 输出正弦波 | ||
| + | <code cpp> | ||
| + | #define PI 3.1415926535897932384626433832795 | ||
| + | |||
| + | void setup() { | ||
| + | |||
| + | pinMode(4, ANALOG); | ||
| + | analogReference(INTERNAL4V096); | ||
| + | } | ||
| + | |||
| + | void loop() | ||
| + | { | ||
| + | | ||
| + | { | ||
| + | float rad=PI*i; | ||
| + | float Sin=sin(rad); | ||
| + | long intSin=Sin*300; | ||
| + | byte val=map(intSin, | ||
| + | analogWrite(4, | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | {{: | ||
| + | |||
