完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
测量频率在 1k-2k之间,要求精度0.01%,也就是2kHZ, 0.2HZ。在做的过程中,发现最大跳动在0.8HZ,不知道代码哪有问题,之后就用avr做了一个,能满足要求,但我还是想用STM8,希望高人指点,谢谢!
代码如下: #include "tiM1_Capture.h"#include "includes.h"#include "delay.h" //u16 tab[200]; INT_CHARS ICValue1,ICValue2;u8 cnt;u8 TIM1_OVF_Num;bool flag; void TIM1_Init(void){ GPIOC->DDR &= ~(1<<1); // 配置PC1为输入 GPIOC->CR1 |= 1<<1; GPIOC->CR2 &= ~(1<<1); // 开启TIM1时钟 CLK->CKENR1 |= 0X80; TIM1->CNTRH = 0X00; TIM1->CNTRL = 0X00; TIM1->ARRH = 0Xff; TIM1->ARRL = 0Xff; TIM1->CR1 = 0X80; // 自动重装 TIM1->CCMR1 = 0X00; TIM1->CCER1 = 0X00; TIM1->CCMR1 |= 0X01; TIM1->CCER1 &= 0XFD; // 上升沿捕获 TIM1->IER |= 0X03; // 允许TIM1捕获中断,更新中断 TIM1->SR1 = 0x00; TIM1->SR2 = 0x00; TIM1->CR1 |= 0X01; // 使能TIM1 TIM1->CCER1 = 0X01; // 使能捕获} u16 ComputeFreq(void){ u16 temp; u32 sum; flag = FALSE; cnt = 0; TIM1_Init(); while(!flag); // 等待100次捕获结束 sum = TIM1_OVF_Num; sum *= 65536; sum += ICValue2.x; sum -= ICValue1.x; sum /= 10; temp = 1600000000/sum; return temp;} #pragma vector=0x0E__interrupt void TIM1_CAP_COM_IRQHandler(void){ disableInterrupts(); if(cnt==5) { ICValue1.FJ[0] = TIM1->CCR1H; ICValue1.FJ[1] = TIM1->CCR1L; flag = FALSE; TIM1_OVF_Num = 0; } else if(cnt==105) // 100次捕获结束 { ICValue2.FJ[0] = TIM1->CCR1H; ICValue2.FJ[1] = TIM1->CCR1L; flag = TRUE; TIM1->CR1 &= 0XFE; // 失能TIM1 TIM1->CCER1 = 0X00; } TIM1->SR1 &= 0xFD;// TIM1->SR2 = 0x00; cnt++; enableInterrupts();} #pragma vector=0x0D__interrupt void TIM1_OVF_IRQHandler(void){ disableInterrupts(); TIM1_OVF_Num++; TIM1->SR1 &= 0xFE;// TIM1->SR2 = 0x00; enableInterrupts();} |
|
相关推荐
1个回答
|
|
還沒玩STM8....
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1810 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1631 浏览 1 评论
1098 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
737 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1687 浏览 2 评论
1944浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
748浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
583浏览 3评论
604浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
566浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-29 06:34 , Processed in 0.559258 second(s), Total 42, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号