完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
/*******************************************************************************
* 实验名 : 定时器实验 * 使用的IO : * 实验效果 :LED每隔500ms左移一次 * 注意 : *******************************************************************************/ #include #include #define GPIO_LED P2 void timerConfiguration(); unsigned char Time; /******************************************************************************* * 函数名 : main * 函数功能 : 主函数 * 输入 : 无 * 输出 : 无 *******************************************************************************/ void main(void) { Time=0; GPIO_LED=0XFE; TimerConfiguration(); while(1) { if(Time==10) { GPIO_LED=_crol_(GPIO_LED,1); Time=0; } } } /******************************************************************************* * 函数名 : TimerConfiguration() * 函数功能 : 配置定时器值 * 输入 : 无 * 输出 : 无 *******************************************************************************/ void TimerConfiguration() { TMOD = 0x01; //选择工作方式1 TH0 = 0x3C; //设置初始值,定时50MS TL0 = 0xB0; EA = 1; //打开总中断 ET0 = 1; //打开定时器0中断 TR0 = 1; //启动定时器0 } /******************************************************************************* * 函数名 : Timer0() * 函数功能 : 定时器0中断函数 * 输入 : 无 * 输出 : 无 *******************************************************************************/ void Timer0() interrupt 1 { TH0 = 0x3C; //设置初始值 TL0 = 0xB0; Time++; } |
|
相关推荐
7个回答
|
|
问题就是 定时器的timer 调用在哪
|
|
|
|
就是最后面的子函数的调用在哪
|
|
|
|
中断自动运行,不需要调用。
|
|
|
|
中断里面不是有个time++么,主函数里面的while循环里面不是判断time是否等于10,并清零了吗。只要定时器一启动,中断内的程序就一直运行着,那个time就相当于检测定时器状态了,没有调用不调用这个说法。只要定时器启动,就一直运行着,只需判断它的状态就好了!
|
|
|
|
TimerConfiguration里面,你设置了定时器的定时时间,等到了定时时间会自动运行到中断函数里的。
|
|
|
|
明白了 谢谢了 |
|
|
|
你可能是想知道中断函数是什么时候被调用,回答就是中断到了,就会被调用,什么是中断到了,是定时时间到了嘛,如果要从内部程序中看,建议你去反汇编一下,其中Timer0() interrupt 1是在启动文件中就被定义在了某个地址里,pc会跳转全是靠事先定义好的。作为一名初学着,先不用管那么多,到了后续你也会渐渐明白。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
277 浏览 0 评论
【敏矽微ME32G070开发板免费体验】之原厂2812测试例程解析
368 浏览 0 评论
766 浏览 2 评论
《DNESP32S3使用指南-IDF版_V1.6》第二十六章 INFRARED_RECEPTION实验
592 浏览 0 评论
879 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12039 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 12:30 , Processed in 0.846497 second(s), Total 86, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号