资源简介
stm32f407利用DAC的DMA通过产生位数达到256位的sin函数,定时器触发周围41K
代码片段和文件信息
#include “stm32f4xx.h“
#define DAC_DHR12R1_ADDRESS 0x40007408
u16 sinTable[tableSize];
void sin_Generation(void)
{
u16 n;
for(n=0;n {
sinTable[n] = (sin(2*PI*n/tableSize)+1)*2047;
}
}
void TIM6_Configuration(void)
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM6 ENABLE);
TIM_PrescalerConfig(TIM6 0x0 TIM_PSCReloadMode_Update);
TIM_SetAutoreload(TIM6 0x1);
TIM_SelectOutputTrigger(TIM6 TIM_TRGOSource_Update);
TIM_Cmd(TIM6 ENABLE);
}
void GPIO_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
GPIO_Init(GPIOA &GPIO_InitStructure);
}
void DAC_DMA_Configuration(void)
{
DAC_InitTypeDef DAC_InitStructure;
DMA_InitTypeDef DMA_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_DMA1 ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_DAC ENABLE);
DAC_InitStructure.DAC_Trigger = DAC_Trigger_T6_TRGO;
DAC_InitStructure.DAC_WaveGeneration = DAC_WaveGeneration_None;
DAC_InitStructure.DAC_OutputBuffer = DAC_OutputBuffer_Disable;
DAC_Init(DAC_Channel_1 &DAC_InitStructure);
DMA_DeInit(DMA1_Stream5);
DMA_InitStructure.DMA_Channel = DMA_Channel_7;
DMA_InitStructure.DMA_PeripheralbaseAddr = DAC_DHR12R1_ADDRESS;
DMA_InitStructure.DMA_Memory0baseAddr = (uint32_t)&sinTable;
DMA_InitStructure.DMA_BufferSize = tableSize;
DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord;
DMA_InitStructure.DMA_MemoryDataSize = DMA_PeripheralDataSize_HalfWord;
DMA_InitStructure.DMA_DIR = DMA_DIR_MemoryToPeripheral;
DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;
DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;
DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;
DMA_InitStructure.DMA_Priority = DMA_Priority_High;
DMA_InitStructure.DMA_FIFOMode = DMA_FIFOMode_Disable;
DMA_InitStructure.DMA_FIFOThreshold = DMA_FIFOThreshold_HalfFull;
DMA_InitStructure.DMA_MemoryBurst = DMA_MemoryBurst_Single;
DMA_InitStructure.DMA_PeripheralBurst = DMA_PeripheralBurst_Single;
DMA_Init(DMA1_Stream5 &DMA_InitStructure);
DMA_Cmd(DMA1_Stream5 ENABLE);
DAC_Cmd(DAC_Channel_1 ENABLE);
DAC_DMACmd(DAC_Channel_1 ENABLE);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-07-13 13:10 sin_cos_DAC\
文件 259595 2012-07-13 13:10 sin_cos_DAC\BlankPrj.uvgui.laoyl
文件 256964 2012-07-13 10:42 sin_cos_DAC\BlankPrj.uvgui_laoyl.bak
文件 18614 2012-07-13 13:10 sin_cos_DAC\BlankPrj.uvopt
文件 17893 2012-07-13 10:42 sin_cos_DAC\BlankPrj.uvproj
文件 18628 2012-07-13 10:42 sin_cos_DAC\BlankPrj_uvopt.bak
文件 22611 2012-07-05 00:22 sin_cos_DAC\BlankPrj_uvproj.bak
目录 0 2012-07-13 13:10 sin_cos_DAC\Debug\
文件 276 2012-07-13 13:10 sin_cos_DAC\Debug\BlankPrj.plg
文件 479 2011-10-20 15:08 sin_cos_DAC\Debug\BlankPrj.sct
文件 2184 2012-07-13 10:40 sin_cos_DAC\Debug\BlankPrj.tra
文件 19 2012-07-13 10:41 sin_cos_DAC\Debug\ExtDll.iex
目录 0 2012-07-12 14:16 sin_cos_DAC\lib\
文件 9654196 2011-07-26 17:34 sin_cos_DAC\lib\arm_cortexM4lf_math.lib
目录 0 2012-07-12 14:16 sin_cos_DAC\Source\
文件 240326 2011-10-04 02:48 sin_cos_DAC\Source\arm_math.h
文件 2424 2012-07-13 10:19 sin_cos_DAC\Source\common.c
文件 204 2012-07-13 10:05 sin_cos_DAC\Source\common.h
文件 172 2012-07-13 13:10 sin_cos_DAC\Source\main.c
文件 26908 2011-09-19 17:06 sin_cos_DAC\Source\selftest.c
文件 1800 2011-09-19 17:06 sin_cos_DAC\Source\selftest.h
文件 29506 2011-09-09 12:25 sin_cos_DAC\Source\startup_stm32f4xx.s
文件 3914 2012-07-12 16:05 sin_cos_DAC\Source\stm32f4xx_conf.h
文件 4457 2011-09-19 17:07 sin_cos_DAC\Source\stm32f4xx_it.c
文件 2067 2011-09-19 17:07 sin_cos_DAC\Source\stm32f4xx_it.h
文件 918 2012-06-29 13:44 sin_cos_DAC\Source\sysdelay.c
文件 349 2012-06-29 13:46 sin_cos_DAC\Source\sysdelay.h
文件 21471 2012-06-29 15:22 sin_cos_DAC\Source\system_stm32f4xx.c
文件 2224 2011-09-19 17:06 sin_cos_DAC\Source\usbd_conf.h
文件 8400 2011-09-19 17:06 sin_cos_DAC\Source\usbd_desc.c
文件 3425 2011-09-19 17:06 sin_cos_DAC\Source\usbd_desc.h
............此处省略64个文件信息
相关资源
- stm32f407ADC高速采样并进行CFFT变换
- STM32综合测试程序4.0寸ILI9488_320X480_8位
- 基于stm32F103的GRBL 0.9版本的移植
- Quite Imposing Plus 3.0f中文汉化版-含序列
- STM32_ucos.rar
- STM32可以实现用户给指定角度,然后舵
- stm32f103输入捕获得到占空比与周期
- stm32多路超声波避障小车,L298N驱动,
- STM32F407最小系统资料_包括原理图和
- 基于WK串口扩展芯片例程-STM32
- 基于STM32控制的可调PWM输出+LCD显示
- pwm呼吸灯stm32工程代码
- 基于STM32F103的modbus从机keil实际可用工
- STM32CubeIDE 1.6.1 自动代码补全插件
- STM32+ESP8266+MQTT接入OneNet 通过手机APP控
- ad9851 DDS 程序STM32 C51本人亲自调试
- STM32F407开发板示波器程序
- stm32f1-3串口通信
- STM32F103C8T6显程
- bootload for stm32f103
- F407 双路超声波.zip
- STM32控制步进电机带LCD显示
- 基于stm32语音识别与RFID技术智能分类
- stm32+mpu6050+QMC5883L
- STM32温控风扇
- STM32F413原理图
- Si7021温湿度STM32F1读取程序
- 基于stm32的电子密码锁
- 基于stm32的电子秤
- 2019 Multilevel Modeling using R.pdf
评论
共有 条评论