完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
笔记亲自测试通过。
/* MAIN.C file * * Copyright (c) 2002-2005 STMicroelectronics */ /* 程序实现功能 设置外部 tiM1 时钟源 计数功能,如果串口 在串口助手上看到计数值 * **/ /* * TIM1 工作在定时功能模式时 定时器的时钟CK_PSC 由内部分频后提供 * 如果把时钟源改为外部当外部电平发生变化 时 TIM1_CNTR 中的值 就会变化 * 这样就实现了计数功能 * */ #include "stm8s105c4.h" void gpio_init(void) { /* * 这个可以不用IO 口 如果如果灯效果来显示也可以设置 */ PB_ODR = 0XFF; PB_DDR = 0XFF; PB_CR1 = 0XFF; PB_CR2 =0XFF; PC_DDR = 0X00; PC_CR1 = 0XFF; } //定时器1 初始化 void tim1_init(void) { //输入捕获频率设置 为 fsmapling = fmaster/32 n=8 TIM1_CCMR1 |= 0X00; //滤波频率设置 或采样频率设置 //OCICE =1 // 一旦检测到 ETRF 输入高电平OC1REF = 0; //OC1M[2:0] = 111 //pwm 模式2 向上计数 一旦TIM1_CNT // 一旦TIM1_CNT>TIM1_CCR1 时 通道1 为有效电平 否则为无效电平 TIM1_CCER1 = 0X20; //选择上升下降电平 //捕获发生在TI2F 的低电平或下降沿 TIM1_SMCR |= 0X07; //选择上升还是下降 作为触发 //外部时钟模式 1 选中的触发 TRGI 的上升沿驱动计数器 TIM1_SMCR |=0X60; //选择输入端 //选择TI2 作为输入端 // 也就是 PC2 // ITM1_CH2 } void uart2_init(void) { } void main() { gpio_init(); //IO 口初始化 tim1_init(); //定时器1 初始化 TIM1_CR1 |= 0X11; //ARPE =0 TIM1_ARR 寄存器没有缓存 直接写入 =1 TIM1_ARR 寄存器由预装载缓冲器缓冲 //CMS =00 边沿对齐模式 计数器依据方向位DIR 向上或向下计数 // = 01 中央对其模式1 计数器交替向上或向下计数 配置为输出的通道TIM1_CCMR 中CCIS =00 的输出比较中断标志位 //只在计数器向下计数时 计数置1 // = 10 中央对其模式2 计数器交替向上和向下计数,配置位输出通道TIM1_CCMRX 寄存器中 CCIS 输出比较中断标志位 // 只在计数器向上计数时 被置1 // 11 中央对齐模式3 计数器交替地向上和向下计数 配置为输出通道 的输出比较中断标志位 在计数器向上和向下计数时被 //置 1 //DIR //OPM //URS //UDIS =0 一旦下列事件发生 产生更新UEV 事件 //计数器上溢出 或下溢出 //软件更新 //时钟触发模式控制器产生硬件复位 //=1 不产生更新事件 影子寄存器 ARR PSC CCRX 保持它的值 如果设置UG 位 //或时钟触发控制器发出一个硬件复位 则计数器和预分频器重新初始化 //CEN =0 禁止计数器 =1 使能计数器 uart2_init(); //串口初始化 while (1) { PB_ODR =~TIM1_CNTRL; //把数到的数 在PB 口显示出来,实验是通过 PB 口接 8个led 灯来显示的。 } } // 其中的串口我去掉了,加上串口可以在串口助手中看到 计数的增加 //现在 需要通过PB 口接 LED 灯来查看计数的增加 //可以改变计数方向 //可以改变捕获频率 |
|
相关推荐
1 个讨论
|
|
298 浏览 1 评论
《DNESP32S3使用指南-IDF版_V1.6》第二十六章 INFRARED_RECEPTION实验
309 浏览 0 评论
826 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1911 浏览 2 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
1427 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12032 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 09:25 , Processed in 0.803878 second(s), Total 36, Slave 30 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号