《嵌入式技术应用》课件-第15讲 秒表_第1页
《嵌入式技术应用》课件-第15讲 秒表_第2页
《嵌入式技术应用》课件-第15讲 秒表_第3页
《嵌入式技术应用》课件-第15讲 秒表_第4页
《嵌入式技术应用》课件-第15讲 秒表_第5页
已阅读5页,还剩7页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十五讲时钟系统应用之——秒表一、秒表原理图目CONTENT录二、秒表的控制逻辑三、初始化和主函数四、仿真效果1.秒表原理图使用端口PC0~PC11;PB0~PB2PC0~PC11为输出方式PB0~PB2为输入方式2.秒表的控制逻辑一开始,不计时,数码管熄灭PB0为启动键,按下后开始计时,数码管实时显示时间,计时范围为0.00~99.99秒PB1为暂停键,按下后暂停计时,数码管显示当前秒数PB2为复位键,按下后计时归零,并停止计时3.初始化和主函数初始化需要说明的内容开始启动暂停复位定时器开始工作,获取秒数并显示定时器停止工作,显示当前秒数定时器停止工作,秒数归零此任务需要定时器,按键,数码管共同参与完成因此需要对定时器,按键,数码管相关端口进行初始化需要注意的是,按键需要随时监测,数码管也需要不间断显示,当遇到多个任务有时间冲突时,最好使用中断方案3.初始化和主函数定时器的配置TIM3_Handler.Instance=TIM3;

//

操作对象为定时器3TIM3_Handler.Init.Prescaler=psc;//定时器分频系数为pscTIM3_Handler.Init.CounterMode=TIM_COUNTERMODE_UP;//增计数TIM3_Handler.Init.Period=arr;//一个周期为arr个数TIM3_Handler.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;//使用默认时钟源HAL_TIM_Base_Init(&TIM3_Handler);//以上内容写入定时器3寄存器HAL_TIM_Base_Start_IT(&TIM3_Handler);//开启定时器3更新中断定时器的中断配置voidHAL_TIM_Base_MspInit(TIM_HandleTypeDef*htim){if(htim->Instance==TIM3) { __HAL_RCC_TIM3_CLK_ENABLE(); HAL_NVIC_SetPriority(TIM3_IRQn,1,3); HAL_NVIC_EnableIRQ(TIM3_IRQn);

}}3.初始化和主函数定时器的中断服务函数voidHAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef*htim){if(htim==(&TIM3_Handler))//如果是中断3的请求{time++;//轮次加1if(time==100)//当轮次达到100(100个0.01秒,就是1秒) {dat++;time=0;//时间加1 if(dat==10000)dat=0;//如果超过99.99秒,自动归零 } }}3.初

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论