• 大小: 3.6MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-10-29
  • 语言: 其他
  • 标签: spwm  

资源简介

stm32F103 time1输出多路spwm,和spwm的原来,方法等.stm32F103 time1输出多路spwm,和spwm的原来,方法等

资源截图

代码片段和文件信息

/* Includes ------------------------------------------------------------------*/
#include “adc.h“

/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* Private macro -------------------------------------------------------------*/
#define ADC1_DR_ADDRESS 0x4001244C

/* Private variables ---------------------------------------------------------*/
u32 ADC1_ConvertedValue= 0;
u32 ADC1_ConvertedBuffer[ADC1_BufferLength]= {0};
uint64_t ADC1_Channel6_DCOffset= 0;
uint32_t temp_index= 0;
//extern u32 CPI_Zero[];
//extern u32 SYS_Status[];


/* Private function prototypes -----------------------------------------------*/
static void ADC_RCC_Config( void );
static void ADC_GPIO_Config( void );
static void ADC_NVIC_Config( void );
static void ADC_DMA_Config( void );
static void ADC_Config( void );
//static void ADC_Zero(void);

/* Private functions ---------------------------------------------------------*/


void ADC_APP_Config( void )
{
  ADC_RCC_Config();
  ADC_GPIO_Config();
  ADC_NVIC_Config();
  ADC_DMA_Config();
  ADC_Config();

}


void ADC_RCC_Config( void )
{
  RCC_AHBPeriphClockCmd( RCC_AHBPeriph_DMA1 ENABLE );
  RCC_APB2PeriphClockCmd( RCC_APB2Periph_ADC1 | RCC_APB2Periph_GPIOA ENABLE );
}


void ADC_GPIO_Config( void )
{
  GPIO_InitTypeDef GPIO_InitADC;
  /*GPIO_Pin_0  采样逆变器输出电流
    GPIO_Pin_1  采样逆变器输出电压
GPIO_Pin_2  采样逆变桥输出电流
GPIO_Pin_3  采样直流侧电流
GPIO_Pin_4  采样直流侧电压*/
  GPIO_InitADC.GPIO_Pin= GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4;

  GPIO_InitADC.GPIO_Mode= GPIO_Mode_AIN;
  GPIO_Init( GPIOA &GPIO_InitADC ); 
}


void ADC_NVIC_Config( void )
{
  NVIC_InitTypeDef NVIC_InitADC_DMA;

  NVIC_InitADC_DMA.NVIC_IRQChannel= DMA1_Channel1_IRQChannel;
  NVIC_InitADC_DMA.NVIC_IRQChannelPreemptionPriority= 3;
  NVIC_InitADC_DMA.NVIC_IRQChannelSubPriority= 3;
  NVIC_InitADC_DMA.NVIC_IRQChannelCmd= ENABLE;

  NVIC_Init( &NVIC_InitADC_DMA );
}


void ADC_DMA_Config( void )
{
  DMA_InitTypeDef DMA_InitADC;

  DMA_InitADC.DMA_PeripheralbaseAddr= ADC1_DR_ADDRESS;
  DMA_InitADC.DMA_MemorybaseAddr= (uint32_t)ADC1_ConvertedBuffer;
  DMA_InitADC.DMA_DIR= DMA_DIR_PeripheralSRC;
  DMA_InitADC.DMA_BufferSize= ADC1_BufferLength;
  DMA_InitADC.DMA_PeripheralInc= DMA_PeripheralInc_Disable;
  DMA_InitADC.DMA_MemoryInc= DMA_MemoryInc_Enable;
  DMA_InitADC.DMA_PeripheralDataSize= DMA_PeripheralDataSize_Word;
  DMA_InitADC.DMA_MemoryDataSize= DMA_MemoryDataSize_Word;
  DMA_InitADC.DMA_Mode= DMA_Mode_Circular;
  DMA_InitADC.DMA_Priority= DMA_Priority_High;
  DMA_InitADC.DMA_M2M= DMA_M2M_Disable;

  DMA_Init( DMA1_Channel1 &DMA_InitADC );
  DMA_ITConfig( DMA1_Channel1 DMA_IT_TC ENABLE );
  DMA_Cmd( DMA1_Channel1 ENABLE );
}


void ADC_Config( void )
{
  ADC_InitTypeDef ADC_InitADC;

  ADC_InitADC.ADC_Mode= ADC_Mode_Independent;
  ADC_InitAD

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2011-08-08 11:08  SPWM\
     目录           0  2010-03-12 09:34  SPWM\201003\
     目录           0  2010-03-12 09:34  SPWM\201003\SPWM-一个定时器\
     目录           0  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\
     文件        4157  2010-03-08 14:23  SPWM\201003\SPWM-一个定时器\SPWM\ADC.c
     文件         739  2010-02-02 16:55  SPWM\201003\SPWM-一个定时器\SPWM\adc.h
     文件       25877  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\cortexm3_macro.lst
     文件       10308  2008-09-21 13:21  SPWM\201003\SPWM-一个定时器\SPWM\cortexm3_macro.s
     文件         205  2009-09-03 16:39  SPWM\201003\SPWM-一个定时器\SPWM\JlinkArm_Target 1.ini
     文件       11991  2010-03-15 14:19  SPWM\201003\SPWM-一个定时器\SPWM\main.c
     目录           0  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\
     文件      149065  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\adc.crf
     文件        1803  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\adc.d
     文件          45  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\cortexm3_macro.d
     文件        2476  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\cortexm3_macro.o
     文件          19  2010-03-15 14:09  SPWM\201003\SPWM-一个定时器\SPWM\output\ExtDll.iex
     文件      150151  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\main.crf
     文件        1810  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\main.d
     文件       53952  2010-03-15 15:53  SPWM\201003\SPWM-一个定时器\SPWM\output\Project1.htm
     文件         457  2010-03-15 15:53  SPWM\201003\SPWM-一个定时器\SPWM\output\Project1.lnp
     文件        1218  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\Project1.plg
     文件        1392  2010-03-15 15:53  SPWM\201003\SPWM-一个定时器\SPWM\output\Project1.tra
     文件        5196  2009-08-08 20:49  SPWM\201003\SPWM-一个定时器\SPWM\output\STM32F10x.o
     文件      152465  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\stm32f10x_it.crf
     文件        2123  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\stm32f10x_it.d
     文件          49  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\stm32f10x_vector.d
     文件        5792  2011-07-20 12:42  SPWM\201003\SPWM-一个定时器\SPWM\output\stm32f10x_vector.o
     文件      100730  2010-03-15 15:53  SPWM\201003\SPWM-一个定时器\SPWM\Project1.map
     文件        3953  2010-03-15 15:53  SPWM\201003\SPWM-一个定时器\SPWM\Project1.opt.bak
     文件         197  2009-08-08 18:40  SPWM\201003\SPWM-一个定时器\SPWM\Project1.plg
     文件        2912  2010-03-09 16:30  SPWM\201003\SPWM-一个定时器\SPWM\Project1.Uv2.bak
............此处省略160个文件信息

评论

共有 条评论