OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4963|回复: 2

分享STML系列DAC调试经验

[复制链接]

5

主题

14

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2015-12-3
在线时间
32 小时
发表于 2016-3-21 19:13:06 | 显示全部楼层 |阅读模式
    一直对DAC和DMA心存神秘感,今天刚好没什么事,就想把STM8的相关程序跑一下。把官方的文件添加进来后整了半天还是没有正确的输出。
看数据手册、网上搜资料,一点点排查问题,最后终于成功了。下面就分享一下调试DAC时一些主要注意的点。
1: CLK_PeripheralClockConfig(CLK_Peripheral_COMP,ENABLE); //打开比较器时钟,因为DACDAC用到了比较器
2: SYSCFG_RIIOSwitchConfig(RI_IOSwitch_14,ENABLE);       //打开对应的开关,这里选择PB5输出,因为DAC功能是复用的,所以要打开对应的开关,使其正常输出
3: DAC_Init(DAC_Channel_1, DAC_Trigger_T4_TRGO, DAC_OutputBuffer_Enable);//选择触发源,这里选择TIM4的溢出;开始调试时可以用DAC_Trigger_None
                                                         //打开缓冲区,相当于跟随器;注意缓冲区运放并非轨到轨。
4:若不用DMA,可以用DAC_SetChannel1Data(DAC_Align_12b_R,value);
下面是DAC的初始化程序,注意在使用的时候要打开TIM4;                                                      
   void DAC_Config(void)
{
  GPIO_Init(GPIOB, GPIO_Pin_4, GPIO_Mode_In_FL_No_IT);
  CLK_PeripheralClockConfig(CLK_Peripheral_COMP,ENABLE); //打开比较器时钟
  CLK_PeripheralClockConfig(CLK_Peripheral_DAC, ENABLE); //打开DAC时钟
  SYSCFG_RIIOSwitchConfig(RI_IOSwitch_14,ENABLE);        //打开对应的开关,这里选择PB5输出
  /* DAC Channel1 Config: 12bit right ----------------------------------------*/
  /* DAC deinitialize */
  DAC_DeInit();
  /* Fill DAC Init param DAC_Trigger_T4_TRGO and  DAC Channel1 Init */
  DAC_Init(DAC_Channel_1, DAC_Trigger_T4_TRGO, DAC_OutputBuffer_Enable);
                                                        //选择触发源为TIM4,打开缓冲区
  /* Enable DAC Channel1 */                             //注意缓冲区运放并非轨到轨
  DAC_Cmd(DAC_Channel_1, ENABLE);                       //打开DAC
  /* Enable DMA for DAC Channel1 */
  DAC_DMACmd(DAC_Channel_1, ENABLE);                    //打开DMA
}                             

STM8L_DAC.zip

1.44 MB, 下载次数: 1019

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
171
金钱
171
注册时间
2016-3-16
在线时间
48 小时
发表于 2016-6-7 15:11:42 | 显示全部楼层
回复 支持 反对

使用道具 举报

0

主题

35

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2578
金钱
2578
注册时间
2012-1-5
在线时间
421 小时
发表于 2016-6-13 14:47:45 | 显示全部楼层
刚好要用,谢谢分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-7-1 04:51

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表