打印
[程序源码]

求大神帮忙给一个STM32F103VC的DAC简单功能的程序啊

[复制链接]
2921|5
手机看帖
扫描二维码
随时随地手机跟帖
沙发
huangxz| | 2014-1-23 18:25 | 只看该作者
库里面没有么

使用特权

评论回复
板凳
free_90|  楼主 | 2014-1-23 18:28 | 只看该作者
我按照库里的写了但是没有反应

使用特权

评论回复
地板
a627236799| | 2014-1-23 18:37 | 只看该作者
网上历程很多呀

使用特权

评论回复
5
free_90|  楼主 | 2014-1-23 18:43 | 只看该作者
有么  我找了一些都是keil环境下的..............

使用特权

评论回复
6
suzhwt| | 2014-2-8 12:35 | 只看该作者
#include "stm32f10x.h"
#include "Includes.h"
#include "Constants.h"
#include "Functions.h"
#include "Globals.h"

/*************************************************************
@Fn: ConfigCPU()
@Br: Config the MCU
@Pa: None
@Rt: None
*************************************************************/
void ConfigCPU( void ){
...
/* Enable DAC clocks */
  RCC_APB1PeriphClockCmd( RCC_APB1Periph_DAC, ENABLE );
...
}

#include "stm32f10x.h"
#include "Includes.h"
#include "Constants.h"
#include "Functions.h"
#include "Globals.h"

const uint SIN_TABLE[36] = {
      2047, 2403, 2747, 3071, 3363, 3616,
      3821, 3971, 4064, 4094, 4064, 3971,
      3821, 3616, 3363, 3071, 2747, 2403,
      2047, 1691, 1347, 1023,  731,  478,  
       273,  123,   30,    0,   30,  123,
       273,  478,  731, 1023, 1347, 1691
};


/*************************************************************
@Fn: ConfigDAC()
@Br: 配置PA4端口上的DAC1输出为无中断模式应用
@Pa: 无
@Rt: 无
*************************************************************/
void ConfigDAC( void ){
  DAC_InitTypeDef DAC_InitStruct;
  DAC_StructInit( &DAC_InitStruct );

  DAC_InitStruct.DAC_Trigger = DAC_Trigger_Software;              
                    /* 软件触发 */
  DAC_InitStruct.DAC_WaveGeneration = DAC_WaveGeneration_Noise;   
                    /* 波形产生模式,非三角波幅度模式 */  
  DAC_InitStruct.DAC_LFSRUnmask_TriangleAmplitude = DAC_LFSRUnmask_Bit0;
                    /* 波形产生模式时,线性反馈移位寄存器等于1 */
  DAC_InitStruct.DAC_OutputBuffer = DAC_OutputBuffer_Enable;      
                    /* 使能缓冲器 */   
   
  DAC_Init( DAC_Channel_1, &DAC_InitStruct );
  
  DAC_Cmd( DAC_Channel_1, ENABLE );
  
  DAC_SetChannel1Data( DAC_Align_12b_R, 0 );
  DAC_SoftwareTriggerCmd( DAC_Channel_1, ENABLE );
}
/************************************************************
@Fn: GeneratingSinWave()
@Br: 产生60Hz正弦波
@Pa: 无
@Rt: 无
@Specification: 定时器4定时后软件触发  
************************************************************/
void GeneratingSinWave( void ){
  ucIndexCntDAC++;
  if( ucIndexCntDAC >= 36 )ucIndexCntDAC = 0;
  DAC_SetChannel1Data( DAC_Align_12b_R, SIN_TABLE[ ucIndexCntDAC ] );
  DAC_SoftwareTriggerCmd( DAC_Channel_1, ENABLE );  
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

16

帖子

0

粉丝