资源简介
使用STM32内部的定时器的捕获模式采集输入的PWM波的频率,测量范围在大约1K~100K,精度到整数位
代码片段和文件信息
#include “stm32f10x.h“ //包含的头文件,此头文件会包含库中的一些头文件
void RCC_Configuration(void);
void NVIC_Configuration(void);
void GPIO_Configuration(void);
void Time_Configuration(void);
ErrorStatus HSEStartUpStatus;
/********************************************************************************
* 名 称: int main(void)
* 功 能:主函数
* 入口参数:无
* 出口参数:无
* 说 明:
*******************************************************************************/
int main(void)
{
SystemInit();
GPIO_Configuration();
RCC_Configuration();
NVIC_Configuration();
Time_Configuration();
while(1)
{
}
}
void GPIO_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA &GPIO_InitStructure);
}
/********************************************************************************
* 名 称: void Time_Configuration()
* 功 能:定时器配置函数
* 入口参数:无
* 出口参数:无
* 说 明:
*******************************************************************************/
void Time_Configuration()
{
TIM_ICInitTypeDef TIM_ICInitStructure;
TIM_ICInitStructure.TIM_Channel = TIM_Channel_2;
TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Falling;
TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;
TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;
TIM_ICInitStructure.TIM_ICFilter = 0x0;
TIM_ICInit (TIM3 &TIM_ICInitStructure);
TIM_PWMIConfig(TIM3 &TIM_ICInitStructure);
/* Select the TIM3 Input Trigger: TI2FP2 */
TIM_SelectInputTrigger(TIM3 TIM_TS_TI2FP2);
/* Select the slave Mode: Reset Mode */
TIM_SelectSlaveMode(TIM3 TIM_SlaveMode_Reset);
/* Enable the Master/Slave Mode */
TIM_SelectMasterSlaveMode(TIM3 TIM_MasterSlaveMode_Enable);
/* TIM enable counter */
TIM_Cmd(TIM3 ENABLE);
/* Enable the CC2 Interrupt Request */
TIM_ITConfig(TIM3 TIM_IT_CC2 ENABLE);
}
/*******************************************************************************
* Function Name : RCC_Configuration
* Description : Configures the different system clocks.
* Input : None
* Output : None
* Return : None
*******************************************************************************/
void RCC_Configuration(void)
{
/* TIM2 clock enable */
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3 ENABLE);
}
/*******************************************************************************
* Function Name : NVIC_Configuration
* Description : Configure the nested vectored interrupt controller.
* Input : None
* Output : None
* Return : None
*******************************************************************************/
void NVIC_Configuration(void)
{
NVIC_InitTypeDef NVIC_InitStructure;
/* Enable the T
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3356 2013-07-17 11:38 User\main.c
文件 23218 2013-07-17 11:38 User\stm32f10x_it.c
文件 2086 2011-04-04 19:03 User\stm32f10x_it.h
目录 0 2013-07-17 11:38 User
----------- --------- ---------- ----- ----
28660 4
相关资源
- SPWM波产生STM32F103 DMA
- STM32F103+DAC8552
- STM32F103C8T6 LCD12864 串行通信
- cubeMX视频教程stm32hal库函数cubemx实战讲
- 基于Multisim数字频率计的设计与仿真
- STM32 STM32F103C8T6 读取DS18B20温度数据例
- STM32 STM32F103C8T6 CAN从机+4DI2DO 硬件设计
- 基于STM32cubeMX,STM32F103C8T6的PWM输出实
- STM32F103RCT6使用DS1302时钟模块
- FPGA简易频率计
- stm32f103zet6最小系统原理图
- STM32F103单片机输出SPWM波
- STM32F103 ADC 中断模式 连续转换
- stm32f103引脚详图
- STM32F103C8T6+1.44寸ST7735TFT LCD彩屏驱动程
- stm32cubemx软件iic读取mpu6050dmp通过串口
- STM32F103ZET6 AD10封装库
- P3型水文频率曲线
- stm32f103的AD7091驱动程序
- EMD程序 瞬时频率计算
- stm32f103系列spi连接rc522的rfid读卡程序
- STM32F103+GPRS原理图 PCB制作PM2.5检测仪和
- STM32F103下的编码器程序
- VHDL四种频率输出的频率计报告
-
STM32f103 jli
nk命令行 SWD方式烧写脚本 - 数字频率计EDA课程设计
- AD7793 c程序
- 单片机1602液晶显示NE555频率计
- STM32F103 ucLinux 开发BOOT源码
- CANOPEN在STM32F103ZET6单片机上的实现
评论
共有 条评论