当前位置: 首页 > news >正文

杭州市下城区建设厅网站网站什么英文字体

杭州市下城区建设厅网站,网站什么英文字体,搭建一个网站花多少钱,汕头做网站设计一、简介 IC输入捕获 输入捕获模式下#xff0c;当通道输入引脚出现指定电平跳变时#xff0c;当前CNT的值将被锁存在CCR中#xff0c;可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数 每个高级定时器和通用定时器都拥有4个输入捕获通道 可配置为PWMI模…一、简介 IC输入捕获 输入捕获模式下当通道输入引脚出现指定电平跳变时当前CNT的值将被锁存在CCR中可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数 每个高级定时器和通用定时器都拥有4个输入捕获通道 可配置为PWMI模式同事测量频率和占空比 可配合主从触发模式。实现硬件全自动测量 二、工程代码 项目一 程序现象自己“测”自己输入捕获模式测频率 配置流程 1.RCC开启时钟 2.GPIO初始化配置为输入模式 3.配置时基单元 4.配置输入捕获单元捕获通道、捕获方式、输入捕获预分频器 5.选择从模式触发源 6.触发之后进行的操作 7.开始定时器 接线一根杜邦线一端接在单片机的PA6,另一端接在PA0 这个是输入捕获的代码输出波形的代码在在我之前写的TIM输出比较的文章里面pwm_led.c里面 pwm_ic.c #include stm32f10x.h // STM32F10x外设库头文件 #include pwm_ic.h // PWM控制相关头文件 #include delay.h // 延时函数头文件// 按键初始化函数 void PWM_IC_Init(void) {// 定义定时器基础结构体和输出比较结构体TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; GPIO_InitTypeDef GPIO_InitStructure; // GPIO初始化结构体TIM_ICInitTypeDef TIM_ICInitStruct; // 定时器输入捕获初始化结构体// 使能TIM3和GPIOA的时钟RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); // 使能定时器TIM3时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); // 使能GPIOA时钟// 配置GPIOA的引脚6为定时器的输入引脚PWM输入GPIO_InitStructure.GPIO_Pin GPIO_Pin_6; // 配置GPIOA的Pin6GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz; // 配置引脚的速度为50MHzGPIO_InitStructure.GPIO_Mode GPIO_Mode_IPD; // 配置为输入下拉模式GPIO_Init(GPIOA, GPIO_InitStructure); // 初始化GPIOA的Pin6引脚/* 配置时钟源 */TIM_InternalClockConfig(TIM3); // 选择TIM3为内部时钟源若不调用此函数TIM默认也是内部时钟// 配置定时器基本参数TIM_TimeBaseStructure.TIM_Period 65535 - 1; // 自动重载值定时器的计数周期为65535即计数从0到65534周期为65535个时钟周期TIM_TimeBaseStructure.TIM_Prescaler 72 - 1; // 预分频器值定时器时钟源被分频为72MHz / 72 1000000Hz即定时器时钟频率为1MHzTIM_TimeBaseStructure.TIM_ClockDivision TIM_CKD_DIV1; // 时钟分割设置为1表示不进行时钟分割保持时钟完整性TIM_TimeBaseStructure.TIM_CounterMode TIM_CounterMode_Up; // 计数模式设置为向上计数模式从0计数到自动重载值65535TIM_TimeBaseStructure.TIM_RepetitionCounter 0; // 重复计数器设置为0不启用重复计数器定时器只进行单次计数TIM_TimeBaseInit(TIM3, TIM_TimeBaseStructure); // 初始化定时器TIM3应用上述配置// 配置定时器输入捕获参数TIM_ICInitStruct.TIM_Channel TIM_Channel_1; // 使用TIM3的通道1TIM_ICInitStruct.TIM_ICSelection TIM_ICSelection_DirectTI; // 选择直接连接到TI1的输入信号TIM_ICInitStruct.TIM_ICPrescaler TIM_ICPSC_DIV1; // 输入捕获预分频器为1TIM_ICInitStruct.TIM_ICFilter 0xF; // 输入滤波器设置为最大滤波值TIM_ICInitStruct.TIM_ICPolarity TIM_ICPolarity_Rising; // 上升沿触发输入捕获TIM_ICInit(TIM3, TIM_ICInitStruct); // 初始化输入捕获// 配置触发器TIM_SelectInputTrigger(TIM3, TIM_TS_TI1FP1); // 选择输入触发器为TIM3通道1的输入TI1TIM_SelectSlaveMode(TIM3, TIM_SlaveMode_Reset); // 配置为复位模式作为从设备// 启动定时器TIM3TIM_Cmd(TIM3, ENABLE); // 启动TIM3使其开始计数并处理输入捕获}// 获取PWM频率的函数 u32 IC_GetFreq(void) {// 计算PWM频率单位为Hz根据捕获到的输入信号周期return 1000000 / (TIM_GetCapture1(TIM3) 1); // 以微秒为单位进行计算 }pwm_ic.h #ifndef __PWM_IC_H #define __PWM_IC_H#include stm32f10x.h #include sys.hvoid PWM_IC_Init(void); u32 IC_GetFreq(void);#endif main.c #include stm32f10x.h // 设备相关头文件 #include pwm_ic.h // PWM控制相关头文件 #include delay.h // 延时相关头文件int main(){PWM_IC_Init(); // 初始化PWMdelay_init(); // 初始化延时函数/*使用PWM模块提供输入捕获的测试信号*/PWM_SetPrescaler(720 - 1); //PWM频率Freq 72M / (PSC 1) / 100//这两个函数在之前输出比较文章中pwm_led.c里面PWM_SetCompare1(50); //PWM占空比Duty CCR / 100while(1){ IC_GetFreq(); } } 项目二 程序现象PWMI模式测频率占空比 pwmi_ic.c #include stm32f10x.h // STM32F10x外设库头文件 #include pwmi_ic.h // PWM控制相关头文件 #include delay.h // 延时函数头文件// 按键初始化函数 void PWMI_IC_Init(void) {// 定义定时器基础结构体和输出比较结构体TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; GPIO_InitTypeDef GPIO_InitStructure; // GPIO初始化结构体TIM_ICInitTypeDef TIM_ICInitStruct; // 定时器输入捕获初始化结构体// 使能TIM3和GPIOA的时钟RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); // 使能定时器TIM3时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); // 使能GPIOA时钟// 配置GPIOA的引脚6为定时器的输入引脚PWM输入GPIO_InitStructure.GPIO_Pin GPIO_Pin_6; // 配置GPIOA的Pin6GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz; // 配置引脚的速度为50MHzGPIO_InitStructure.GPIO_Mode GPIO_Mode_IPD; // 配置为输入下拉模式GPIO_Init(GPIOA, GPIO_InitStructure); // 初始化GPIOA的Pin6引脚/* 配置时钟源 */TIM_InternalClockConfig(TIM3); // 选择TIM3为内部时钟源若不调用此函数TIM默认也是内部时钟// 配置定时器基本参数TIM_TimeBaseStructure.TIM_Period 65535 - 1; // 自动重载值定时器的计数周期为65535即计数从0到65534周期为65535个时钟周期TIM_TimeBaseStructure.TIM_Prescaler 72 - 1; // 预分频器值定时器时钟源被分频为72MHz / 72 1000000Hz即定时器时钟频率为1MHzTIM_TimeBaseStructure.TIM_ClockDivision TIM_CKD_DIV1; // 时钟分割设置为1表示不进行时钟分割保持时钟完整性TIM_TimeBaseStructure.TIM_CounterMode TIM_CounterMode_Up; // 计数模式设置为向上计数模式从0计数到自动重载值65535TIM_TimeBaseStructure.TIM_RepetitionCounter 0; // 重复计数器设置为0不启用重复计数器定时器只进行单次计数TIM_TimeBaseInit(TIM3, TIM_TimeBaseStructure); // 初始化定时器TIM3应用上述配置// 配置定时器输入捕获参数TIM_ICInitStruct.TIM_Channel TIM_Channel_1; // 使用TIM3的通道1TIM_ICInitStruct.TIM_ICSelection TIM_ICSelection_DirectTI; // 选择直接连接到TI1的输入信号TIM_ICInitStruct.TIM_ICPrescaler TIM_ICPSC_DIV1; // 输入捕获预分频器为1TIM_ICInitStruct.TIM_ICFilter 0xF; // 输入滤波器设置为最大滤波值TIM_ICInitStruct.TIM_ICPolarity TIM_ICPolarity_Rising; // 上升沿触发输入捕获TIM_ICInit(TIM3, TIM_ICInitStruct); // 初始化输入捕获// // 配置定时器输入捕获参数 // TIM_ICInitStruct.TIM_Channel TIM_Channel_2; // 使用TIM3的通道2 // TIM_ICInitStruct.TIM_ICSelection TIM_ICSelection_IndirectTI; // 选择交叉输入到TI1的输入信号 // TIM_ICInitStruct.TIM_ICPrescaler TIM_ICPSC_DIV1; // 输入捕获预分频器为1 // TIM_ICInitStruct.TIM_ICFilter 0xF; // 输入滤波器设置为最大滤波值 // TIM_ICInitStruct.TIM_ICPolarity TIM_ICPolarity_Falling; // 下降沿触发输入捕获 // TIM_ICInit(TIM3, TIM_ICInitStruct); TIM_PWMIConfig(TIM3,TIM_ICInitStruct);// 配置触发器TIM_SelectInputTrigger(TIM3, TIM_TS_TI1FP1); // 选择输入触发器为TIM3通道1的输入TI1TIM_SelectSlaveMode(TIM3, TIM_SlaveMode_Reset); // 配置为复位模式作为从设备// 启动定时器TIM3TIM_Cmd(TIM3, ENABLE); // 启动TIM3使其开始计数并处理输入捕获}// 获取PWM频率的函数 u32 IC_GetFreq(void) {// 计算PWM频率单位为Hz根据捕获到的输入信号周期return 1000000 / (TIM_GetCapture1(TIM3) 1); // 以微秒为单位进行计算 }u32 IC_GetDuty(void) {return (TIM_GetCapture2(TIM3) 1)* 100 / (TIM_GetCapture1(TIM3) 1); }pwmi_ic.h #ifndef __PWMI_IC_H #define __PWMI_IC_H#include stm32f10x.h #include sys.hvoid PWMI_IC_Init(void); u32 IC_GetFreq(void); u32 IC_GetDuty(void);#endif main.c #include stm32f10x.h // 设备相关头文件 #include pwmi_ic.h // PWM控制相关头文件 #include delay.h // 延时相关头文件int main(){PWMI_IC_Init(); // 初始化PWMdelay_init(); // 初始化延时函数/*使用PWM模块提供输入捕获的测试信号*/PWM_SetPrescaler(720 - 1); //PWM频率Freq 72M / (PSC 1) / 100PWM_SetCompare1(50); //PWM占空比Duty CCR / 100while(1){ IC_GetFreq(); IC_GetDuty();} }
http://www.hkea.cn/news/14280621/

相关文章:

  • 别人用我公司营业执照备案做网站呼和浩特网站推广公司
  • 做服务器的网站的模板购物类网站模板
  • 2018做网站前景如何wordpress idstore
  • 邯郸市做网站业务推广方式
  • 给网站设置长尾关键词海口网站建设网站制作
  • 网站建设工资四川省第十五公司官网
  • wordpress广告链接地址网站搜索引擎优化教程
  • 网站正在建设中 源码行业网站盈利模式
  • 那个网站做足球测网站建设那个公司好
  • 苏州网站定制公司定制幸福
  • 淘宝买cdk自己做网站好点得手机网站托管
  • 开封府景点网站建设的目的新手站长做什么网站
  • 厦门品牌网站建设建设网页的公司
  • 适应 分辨率 网站温州专业营销网站公司
  • 自己建的网站能用吗产品网络营销策划
  • 大兴西红门网站建设proxy网页在线代理
  • 号号网站开发网络服务提供者是不是网络运营者
  • 直播网站建设需要什么建设什么网站挣钱
  • 菏泽郓城网站建设公司网站的标题符号
  • 大型网站开发语言中学网站建设书
  • 济南 网站建设jquery特效的网站
  • 上海大型网站设计公司佛山网站建设专业主修课程
  • 免费购物网站源码广州哪家做网站好
  • 有没有专门做家纺的网站制作做网站的基本流程
  • 如何建立一个小程序的网站惠来建设局网站
  • 江苏常州建设银行网站怎么查那家网络公司做的所以网站
  • 做慕课的网站有哪些网站建设工作经历
  • 莱芜亓家网站西安酒店网站制作
  • 太原网站建设电话科讯cms 网站地图
  • 怎么做外汇返佣的网站电子商城网站建设报告