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

东莞注塑切水口东莞网站建设如何做简单网站首页

东莞注塑切水口东莞网站建设,如何做简单网站首页,品牌设计公司介绍,在线链接转换工具STM32定时器输入捕获测量高电平时间 输入捕获测量高电平时间CuebMX配置代码部分 本篇内容要求读者对STM32通用定时器有一点理解#xff0c;如有不解#xff0c;请看 夜深人静学32系列15——通用定时器 输入捕获 输入捕获是STM32通用定时器的一种功能#xff0c;可以捕获特定… STM32定时器输入捕获测量高电平时间 输入捕获测量高电平时间CuebMX配置代码部分 本篇内容要求读者对STM32通用定时器有一点理解如有不解请看 夜深人静学32系列15——通用定时器 输入捕获 输入捕获是STM32通用定时器的一种功能可以捕获特定引脚的电平变化上升沿/下降沿对于一个变化的信号。只需要测量上升沿与下降沿的时间间隔即可计算出高电平的时间。 当上述时间间隔过长时由于定时器计数范围有限因此可能存在溢出的情况这点需要注意。解决办法如下 检测到第一个有效沿时清空定时器计数值创建一个变量TIM5CH1_CAP_STA在每次定时器溢出时TIM5CH1_CAP_STA加1检测到第二个有效沿时读取定时器计数值那么时间间隔 TIM5CH1_CAP_STA*定时器计数值最大值定时器当前计数值 测量高电平时间 CuebMX配置 其它部分设置请参照往期内容这里不做赘述同时需开启定时器3的中断 代码部分 main.c extern uint8_t TIM5CH1_CAP_STA; extern uint16_t TIM5CH1_CAP_VAL;int main(void) {/* USER CODE BEGIN 1 */long long temp 0;// 定义一个变量用以存储捕获到的时间 long long型是为了防止数据溢出/* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_TIM3_Init();MX_USART1_UART_Init();/* USER CODE BEGIN 2 */HAL_TIM_IC_Start_IT(htim3,TIM_CHANNEL_3); // 一定要开启TIM5通道1的捕获中断__HAL_TIM_ENABLE_IT(htim3,TIM_IT_UPDATE); // 一定要开启TIM5的更新中断printf(This is Timer3_Channel_Input_Capture test...\n);/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){HAL_Delay(500);if(TIM5CH1_CAP_STA 0X80) // 完成一次高电平捕获{temp TIM5CH1_CAP_STA 0X3F;temp * 65536; // 溢出总时间temp TIM5CH1_CAP_VAL; // 总的高电平时间printf(High level duration:%lld us\r\n,temp);TIM5CH1_CAP_STA 0; // 准备下一次捕获}/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}/* USER CODE END 3 */ } tim.c /* TIM5CH1_CAP_STA 各数据位说明 ** bit7 捕获完成标志 ** bit6 捕获到高电平标志 ** bit5~0 捕获高电平后定时器溢出的次数*/ uint8_t TIM5CH1_CAP_STA 0; // 输入捕获状态 uint16_t TIM5CH1_CAP_VAL; // 输入捕获值 // 中断服务函数里面会自动调用这个回调函数这个是定时器更新中断处理的函数 void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) {if(htim-Instance TIM3) // 判断定时器5是否发生中断{if((TIM5CH1_CAP_STA 0X80) 0) // 还未成功捕获{if(TIM5CH1_CAP_STA 0X40) // 已经捕获到高电平{ if((TIM5CH1_CAP_STA 0X3F) 0X3F)// 高电平时间太长了做溢出处理{ TIM5CH1_CAP_STA | 0X80; // 标记为完成一次捕获TIM5CH1_CAP_VAL 0XFFFF; // 计数器值}else{TIM5CH1_CAP_STA; // 若没有溢出就只让TIM5CH1_CAP_STA自加} } }} }// 定时器输入捕获中断处理回调函数该函数在 HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim) 中会被调用 void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim) {if((TIM5CH1_CAP_STA 0X80) 0) // 还未成功捕获{if(TIM5CH1_CAP_STA 0X40) // 捕获到一个下降沿{ TIM5CH1_CAP_STA | 0X80; // 标记成功捕获到一次高电平脉宽TIM5CH1_CAP_VAL HAL_TIM_ReadCapturedValue(htim3, TIM_CHANNEL_3); // 获取当前的计数器值TIM_RESET_CAPTUREPOLARITY(htim3, TIM_CHANNEL_3); // 清除原来的设置 TIM_SET_CAPTUREPOLARITY(htim3,TIM_CHANNEL_3, TIM_ICPOLARITY_RISING);// 设置上升沿捕获}else{TIM5CH1_CAP_STA 0; // 清空自定义的状态寄存器TIM5CH1_CAP_VAL 0; // 清空捕获值TIM5CH1_CAP_STA | 0X40; // 标记捕获到上升沿__HAL_TIM_DISABLE(htim3); // 关闭定时器__HAL_TIM_SET_COUNTER(htim3, 0); // 计数器值清零TIM_RESET_CAPTUREPOLARITY(htim3,TIM_CHANNEL_3); // 一定要先清除原来的设置 TIM_SET_CAPTUREPOLARITY(htim3,TIM_CHANNEL_3,TIM_ICPOLARITY_FALLING); // 设置下降沿捕获__HAL_TIM_ENABLE(htim3); // 使能定时器 } } }串口重定向部分代码这里不做展示往期内容中有…下面来讲一下代码流程 系统正常运行检测到第一个上升沿进入HAL_TIM_IC_CaptureCallback执行以下代码 清除定时器计数值设置下一次触发为下降沿触发。。。 2.等待下一次下降沿触发期间定时器一直计数过程中可能存在定时器溢出溢出进入HAL_TIM_PeriodElapsedCallback执行以下代码 记录期间定时器溢出的次数。 检测到第二个下降沿进入HAL_TIM_IC_CaptureCallback执行以下代码 读取当前定时器计数值标记捕获高电平持续时间完成 main函数里面计算持续时间至此完成一次高电平持续时间检测
http://www.dnsts.com.cn/news/24431.html

相关文章:

  • 重庆建设造价信息网站百度网盟官网
  • 任丘市网站建设长春搜索引擎优化
  • 珠宝网站建商台北wordpress主题 虎嗅网
  • 建设网站卡盟如何在本机搭建wordpress
  • 合肥专业网站制济南网站优化公司
  • 国内ui网站有哪些做app和网站怎样
  • 单页网站在线制作北京seo优化推广
  • postgresql做网站用什么环境wordpress 又拍
  • 展会网站建设建设网站费用多少
  • 建设网站需要域名还有什么企业邮箱登录9951026net
  • 西安网站建设费用广州工程项目
  • 开设计公司客源哪里找宁波seo整站优化软件
  • 做网站最低多少钱网络设计方案书中内容很多
  • 手机网站制作架构深圳网站建设哪个
  • 湖北做网站教程哪家好营销的方法手段有哪些
  • 响应式布局网站案例旅游设计网站
  • 最好的网站开发建设银行网站密码忘记了咋办
  • 做兼职工作上哪个网站招聘佛山网签查询系统
  • 哈尔滨网站seo公司做网站时怎么更改区域内的图片
  • 融水做的比较好的网站有哪些瑞安塘下做网站的公司
  • 辽宁pc网站建设开发wordpress建站wifi
  • 百度权重查询网站站长网站优点
  • 购买一个网站多少钱网站源码天堂
  • 网站单页面怎么做做网站建设公司crm在线
  • 福建自己建设网站宁波优化网站厂家
  • 网站流量图片生成阜新小程序 阜新网站建设开发
  • 成都摄影网站建设电子商务网站建设与维护读书心得
  • 建设论坛网站需要做什么的cad使用视频在线观看
  • 中关村网站建设公司福建省建设工程资格中心网站
  • 网站开发研究的方法与技术路线大连本地网