void TIME3_Config(void)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
GPIO_InitTypeDef GPIO_InitStructure;
TIM_OCInitTypeDef TIM_OCInitStructure;
//第一步:配置时钟
// GPIOC Configuration: Channel 6 as alternate function push-pull
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);
//第二步,配置goio口
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOC, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOC, GPIO_PinSource6, GPIO_AF_TIM3);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); //TIM2时钟使能
TIM_TimeBaseStructure.TIM_Period =1000UL-1; // 自动重装载寄存器周期的值 ;
TIM_TimeBaseStructure.TIM_Prescaler = 30UL-1; // 设置了用来作为TIM2时钟频率除数的预分频值。20S
TIM_TimeBaseStructure.TIM_ClockDivision = 0; // 设置了时钟分割。
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; // TIM向上计数模式 ;
TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
//第四步pwm输出配置
TIM_OCInitStructure.TIM_OCMode=TIM_OCMode_PWM2; //设置为pwm2输出模式
TIM_OCInitStructure.TIM_OutputState=TIM_OutputState_Enable;//正向通道有效
TIM_OCInitStructure.TIM_Pulse=500; //设置占空比时间
TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_High; //设置输出极性
TIM_OC1Init(TIM3,&TIM_OCInitStructure); //按照指定参数初始化
TIM_OC1PreloadConfig(TIM1, TIM_OCPreload_Enable);
//第五步,使能端的打开
//TIM8计数器使能
TIM_ARRPreloadConfig(TIM3,ENABLE);
TIM_Cmd(TIM3,ENABLE); //打开TIM8
}
关键字:STM32F PWM
引用地址:
STM32F PWM的生成
推荐阅读最新更新时间:2024-03-16 15:26
msp430F149调PWM
还说好好安下心调我的PID 结果又被某人喊调一个占空比为10%的PWM波 这不,直接上代码吧: But first,还是要先解释一下端口:按键改变PWM的占空比 按键IO口如下: 然后就是用P2.3和P2,4口输出两路PWM信号 #include msp430x14x.h #define uchar unsigned char #define uint unsigned int #define keyin (P1IN & 0x0f) uchar T ={10,20,40,100,150,200}; //高电平持续 void delay(void) { uint tmp; for(tmp =
[单片机]
STM32蜂鸣器pwm控制频率播放音乐
通过修改输出的pwm波的频率来达到不同的音频 单片机源程序如下: #include stm32f10x.h #include led.h #include delay.h #include sys.h #include timer.h #define proport 10000 //Tclk/(psc+1)=72000000/(7199+1) #define L1 ((proport/131)-1)//低调 do 的周期根据Tout= ((arr+1)*(psc+1))/Tclk推出arr值就是本句define定义的值,Tout为音调频率131Hz的倒数,Tclk=72MHz #define L2
[单片机]
53.PWM DAC实验
一。 PWM DAC的原理 N= ARR-1 T= 定时器一个计数周期的时间,也就是它频率的倒数。 n = CCR计数器的值 任何一个连续信号都可以把它通过傅里叶变换成有直流分量+一次谐波+二次谐波+。。。 。n次谐波(n=无穷大)这种表示。 我们通过定时器产生一个PWM信号,是一系列方波输出到定时器的通道引脚,我们看到公式中有一个直流分量,然后有一次谐波,二次谐波。。。。。n次谐波,如果我们有办法先把谐波这一部分给去掉,那么只剩下直流分量,直流分量中 有几个常量,Vh一般是3.3,Vl一般是0,那么这个公式就可以表示成(n/N)*Vh,如果我们设置好了自动装载值N,那么输出的电压只与n有关,n越大,输出电
[单片机]
DAC数模转换、PWM输出、呼吸灯
一、DAC 转换原理和技术指标 (一)分辨率 分辨率是指输入数字量的最低有效位(LSB)发生变化时,所对应的输出模拟量(电压或电流)的变化量。它反映了输出模拟量的最小变化值。 (二)线性度 线性度(也称非线性误差)是实际转换特性曲线与理想直线特性之间的最大偏差。 常以相对于满量程的百分数表示。如±1%是指实际输出值与理论值之差在满刻度的 ±1%以内。 (三)绝对精度和相对精度 绝对精度(简称精度)是指在整个刻度范围内,任一输入数码所对应的模拟量实际输出值与理论值之间的最大误差。 相对精度与绝对精度表示同一含义,用最大误差相对于满刻度的百分比表示。 (四)建立时间
[单片机]
NiosⅡ系统Avalon总线PWM设计
在NiosⅡ系统的构建过程中,SoPC Builder开发环境集成了许多常用类型的设备模型,供开发者调用。在日新月异的嵌入式系统设计中开发环境所集成的接口设备是非常有限的,有时无法满足开发者的需要,SoPC Builder开发工具允许用户依据规则扩展自己的所需设备,完成系统的设计和开发,开发者按照Avalon总线规范将设备驱动程序集成到SoPC Builder的硬件抽象层(HAL)中,在SoPC Builder环境下加载使用,方便了用户开发一个自定制的片上系统。本文通过在NiosⅡ嵌入式系统内部集成了基于Avalon总线的脉冲宽度调制(PWM)从外设,介绍了自定制Avalon设备的过程。将其应用在嵌入式智能小车监控系统,为采用N
[嵌入式]
S3C2440开发板裸机程序系列05—定时器PWM
1. PWM概述 定时器0、1、2和3具有PWM功能。TCNTBn是计数初值,定时器开启后,减1计数。TCMPBn的值是用于比较的,初始值是0,所以TCNTBn减1计数到0时,就等于TCMPBn,此时TOUTn就会翻转。 所以,TCMPBn的值是用于脉宽调制PWM的,即当递减计数器(确切说是TCNTn)的值与定时器控制逻辑中的比较寄存器的值(确切说是TCMPn)相等时,控制逻辑改变输出电平。 TOUT0即是GPB0,GPB0接蜂鸣器,因此可以利用Timer0的PWM功能实现蜂鸣器发声。 如上图可知,需要把GPBCON 设置为2。 关于TCON :该位只是定义TOUT0的极性是否反相。只要TCNT0=TCMP0,
[单片机]
实用小功率开关稳压电源的设计
1电路结构选择 开关稳压电源与传统的线性稳压电源相比具有体积小、重量轻、效率高等优点,已成为稳压电源的主流产品。为使电源结构简单、紧凑,工作可靠、减少成本,小功率开关稳压电源常采用单端反激型或单端正激型电路。与单端反激型相比,单端正激型开关电流小、输出纹波小、更容易适应高频化。用电流型 PWM 控制芯片 UC3843 构成的单端正激型开关稳压电源的主电路如图 1 所示。 图 1主电路的结构 实用的单端正激型开关稳压电源必须加磁通复位电路 ,以泄放励磁电路的能量。如图1所示,开关管Q导通时D1导通,副边线圈N2向负载供电,D4截止,自馈电线圈Nf电流为零;Q关断时D1截止,D4导通,Nf经电容C1滤
[电源管理]
单片机手机电板充电器程序(PWM自动调压)
#include stc12c2052ad.h #include intrins.h #define uchar unsigned char #define uint unsigned int #define AD_SPEED 0x60 //0110,0000 1 1 270个时钟周期转换一次, //少占鱼制作 河北正定欢迎您 长沙航空职业技术学院 2010 年QQ:411656434 // sbit M=P1^5; //过压指示灯 sbit N=P1^6; //欠压指示灯 sbit LED=P1^7; //充满 指示灯 sbit REF=P1^0; sbit PWM=P3^7; bit START =0; ucha
[单片机]