切换到宽版
  • 11163阅读
  • 45回复

[ARM]GD32F103RET6  DAC 功能测试 [复制链接]

上一主题 下一主题
离线huaweiwx
 

发帖
1327
M币
196
专家
57
粉丝
252
只看楼主 倒序阅读 我要置顶 楼主  发表于: 2016-10-22

pos上的GD32F103RET6,硬件兼容STM,有两个12位DAC通道,在我准备用这个芯片做个数控恒压恒流可调电源前,先对DAC功能做个测试;
尽管在arduino中不直接支持DAC输出,但在我arduino系统(GD32F103RET6 ARDUINO),是基于 libmaple库,系统已经对其做好了底层的封装和支持,只要调用就可以使用;具体方法是:
1  建里一个空 的arduino 草稿 dac.ino;
2 将dac.h 头文件引入,dac.h 位于system/libmaple/include/libmaple, 系统对头文件搜索路径已经包含了system/libmaple/include,因此我们只要在dac.ino开头加上:
#include "libmaple/dac.h"
3 在 setup() 中初始化DAC通道;
直接调用库功能:dac_init(DAC,DAC_CH1| DAC_CH2); (我在这里一次性将连个通道全部进行初始化,可根据需要只初始化使用到的通道);
4 现在我们就可以向dac通道写入我们希望输出的电压了,用dac_write_channel1和dac_write_channel2对每个通道操作,输出 电压范围是0~3300mv;

实例 1 通道1 输出三角波形:
dac1.ino
  1. /*gd32f103ret6 dac test dac1.ino*/
  2. #include "libmaple/dac.h"
  3. void setup() {
  4.   // put your setup code here, to run once:
  5.   dac_init(DAC,DAC_CH1| DAC_CH2);
  6. }
  7. void loop() {
  8.   // put your main code here, to run repeatedly:
  9.   for(int i=0;i<=100;i++)  dac_write_channel1(i*33);
  10.   for(int i=100;i>=0;i--)  dac_write_channel1(i*33);
  11. }
dac通道1输出位于 PA4,示波器实测波形:


实例 2 通道1  输出三角波形,通道2输出反相三角波:
程序:dac2.ino
  1. /*dac2.ino*/
  2. #include "libmaple/dac.h"
  3. void setup() {
  4.   // put your setup code here, to run once:
  5.   dac_init(DAC,DAC_CH1| DAC_CH2);
  6. }
  7. void loop() {
  8.   // put your main code here, to run repeatedly:
  9.   for(int i=0;i<=100;i++){
  10.     dac_write_channel1(i*33);
  11.     dac_write_channel2(3300-i*33);
  12.   }
  13.   for(int i=100;i>=0;i--){
  14.     dac_write_channel1(i*33);
  15.     dac_write_channel2(3300-i*33);
  16.   }
  17. }
波形图:


试验的板子:


示波器连接(不用喷凌乱的桌面):




本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共14条打赏M币+39专家+1
12
离线xktx09

发帖
4978
M币
3806
专家
2
粉丝
126
只看该作者 1楼 发表于: 2016-10-22
好吧,看来大神要啊搞数控电源了,坐等团购
本帖最近打赏记录:共1条打赏M币+3
离线2545889167

发帖
13123
M币
20564
专家
301
粉丝
4705
只看该作者 2楼 发表于: 2016-10-22
坐等大神的数控电源弄出来了我也买一套
本帖最近打赏记录:共1条打赏M币+3
离线caterxy

发帖
278
M币
21
专家
2
粉丝
11
只看该作者 3楼 发表于: 2016-10-22
好厉害,坐等套件

内容来自Android手机客户端

离线zylmp

发帖
6294
M币
32
专家
0
粉丝
25
只看该作者 4楼 发表于: 2016-10-22
大神抽的一口好烟

内容来自Android手机客户端

本帖最近打赏记录:共1条打赏M币+3
离线信徒1102

发帖
231
M币
5267
专家
5
粉丝
38
只看该作者 5楼 发表于: 2016-10-22
dingyiha顶一哈顶一哈
本帖最近打赏记录:共1条打赏M币+3
离线zlj613

发帖
37
M币
-434
专家
0
粉丝
2
只看该作者 6楼 发表于: 2016-10-22
Re:GD32F103RET6  DAC 功能测试
看来我应该好好学习了
本帖最近打赏记录:共1条打赏M币+3
离线diannaozai

发帖
75
M币
23
专家
0
粉丝
5
只看该作者 7楼 发表于: 2016-10-22
大牛不错跟着混
本帖最近打赏记录:共1条打赏M币+3
离线mousebat04

发帖
16203
M币
8560
专家
10
粉丝
86
只看该作者 8楼 发表于: 2016-10-22
坐等大神出作品。
本帖最近打赏记录:共1条打赏M币+3
离线98xpj

发帖
475
M币
4980
专家
7
粉丝
29
只看该作者 9楼 发表于: 2016-10-22
Re:GD32F103RET6  DAC 功能测试
不错,大师级人物,值得学习。
本帖最近打赏记录:共1条打赏M币+3