找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

一句C语言代码不理解 求助各位大佬解析

查看数: 2563 | 评论数: 16 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2023-10-22 18:50

正文摘要:

我画线的这句话是啥意思

回复

ID:1097455 发表于 2023-10-27 09:07
就是对蜂鸣器鸣叫时间进行定时,时间为=中断时间*100*50*3
ID:382454 发表于 2023-10-26 16:39
如果con_t1 大于等于 100*50*3(即15000)那就跳进下面的大括号里执行里面的代码。
ID:77589 发表于 2023-10-24 17:24
是来看评论的
ID:74687 发表于 2023-10-24 14:27
huangsantian 发表于 2023-10-22 18:51
这个函数是为了实现蜂鸣器响三秒

这个中断一次应该是0.2ms,5000次是1秒,所以3秒后,关闭中断,停止蜂鸣。
ID:105039 发表于 2023-10-24 09:58
1楼正解吧,这样写应该是为了方便修改间隔时长,因为和重载参数一起,容易在各参数调整后理解间隔时长的修改方向。
ID:420836 发表于 2023-10-24 08:19
如果con_t1的值达到15000,则将con_t1和TR1的值重置为零。
ID:883242 发表于 2023-10-23 19:02
上面回答的人就没有一个有能力看看编译出来的代码是什么样子的,单片机是不会计算“计算100*50*3等于15000”的,这个运算过程在编译过程中已经算完了,单片机只能见到15000这个数字,什么100、50、3都不是单片机要考虑的问题。
ID:1097004 发表于 2023-10-23 16:06
乘法优先级高,先计算100*50*3等于15000,然后拿con_t1比较,执行后边语句
ID:74687 发表于 2023-10-23 15:17
理解这个句块,先要把con_t1当成计数用,就是计算定时器工作的次数,但是超过限定值后,后面的程序段开始工作,先是清零con_t1,而后清零TR1这个寄存器,而这个寄存器却是定时器1的开关,当TR1=0时,定时器1停止工作。
ID:74687 发表于 2023-10-23 15:13
这个con_t1变量是来计算蜂鸣器响的次数,当超过限定值后,定时器停止工作。
ID:1096966 发表于 2023-10-23 11:42
乘法符号优先级较高,先算100*50*3等于15000,然后用con_t1跟15000比较,cont_t1大于等于15000时执行花括号内的语句
ID:1096966 发表于 2023-10-23 11:38
乘法符号优先级高,先算100*50*3等于15000,然后拿con_t1去比较,con_t1大于等于15000时执行花括号里的语句
ID:584814 发表于 2023-10-23 09:26
大于或等于符号,乘法符号,条件语句判断。
ID:517951 发表于 2023-10-23 07:30
条件cont_1大于等于15000后cont_1清零, tr1清零.
ID:227393 发表于 2023-10-22 23:11
如果cont_1大于等于15000执行后面语句
ID:1096905 发表于 2023-10-22 18:51
这个函数是为了实现蜂鸣器响三秒

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表