OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2826|回复: 6

串口通信

[复制链接]

6

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
153
金钱
153
注册时间
2016-3-19
在线时间
18 小时
发表于 2016-10-16 10:06:10 | 显示全部楼层 |阅读模式
在test.c文件中  if(times%30==0)LED0=!LED0;
                        delay_ms(10);   
这一段语句表示LED0闪烁,下载后闪烁正常,只是我不理解延时10ms这个时间是很短的,人眼无法看出变化,而且times一直++是会溢出的,不知道是什么原理,望解答。

串口通信test

串口通信test
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

26

帖子

0

精华

高级会员

Rank: 4

积分
731
金钱
731
注册时间
2014-12-2
在线时间
745 小时
发表于 2016-10-16 11:22:35 | 显示全部楼层
单片机里time++溢出不溢出也没什么
如果定义的是两字节的,那么到了65535后,再加1就回到0了。
回复 支持 1 反对 0

使用道具 举报

34

主题

388

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4090
金钱
4090
注册时间
2012-10-21
在线时间
642 小时
发表于 2016-10-16 10:09:33 | 显示全部楼层
10ms计时30次,就是300ms LED取反一次,当然看得见
溢出的问题是肯定不会有的,只是你没看程序上半部分
看程序要全局看,不能只看某一条语句就觉得有问题
回复 支持 反对

使用道具 举报

6

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
153
金钱
153
注册时间
2016-3-19
在线时间
18 小时
 楼主| 发表于 2016-10-17 12:43:20 | 显示全部楼层
是的,我明白了,没加一次就延时10ms,所以最后事300ms取反一次。,谢谢你的解答。
回复 支持 反对

使用道具 举报

6

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
153
金钱
153
注册时间
2016-3-19
在线时间
18 小时
 楼主| 发表于 2016-10-17 12:44:14 | 显示全部楼层
Ω囿圉Ω 发表于 2016-10-16 11:22
单片机里time++溢出不溢出也没什么
如果定义的是两字节的,那么到了65535后,再加1就回到0了。

是的,我明白了,没加一次就延时10ms,所以最后事300ms取反一次。,谢谢你的解答。
回复 支持 反对

使用道具 举报

6

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
153
金钱
153
注册时间
2016-3-19
在线时间
18 小时
 楼主| 发表于 2016-10-17 12:44:53 | 显示全部楼层
Ω囿圉Ω 发表于 2016-10-16 11:22
单片机里time++溢出不溢出也没什么
如果定义的是两字节的,那么到了65535后,再加1就回到0了。

嗯,明白了,谢谢你的解答。
回复 支持 反对

使用道具 举报

6

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
153
金钱
153
注册时间
2016-3-19
在线时间
18 小时
 楼主| 发表于 2016-10-17 12:45:50 | 显示全部楼层
PCA 发表于 2016-10-16 10:09
10ms计时30次,就是300ms LED取反一次,当然看得见
溢出的问题是肯定不会有的,只是你没看程序上半部分
...

嗯,明白了,谢谢你的解答。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-24 03:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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