1253|7

100

帖子

0

资源

一粒金砂(中级)

串口发送入门问题,求指教

上一次,我发现了我的程序串口发送会丢失第一个字节,结果我去网上找资料看了许多。改了,在程序开始前加了 USART_ClearFlag(USART1,USART_FLAG_TC); (因为一开始TC置位状态,第二字节会覆盖第一个字节)不知道是放的位置有问题还是怎么样。现在又不行了

QQ截图20170115210744.png (12.62 KB, 下载次数: 0)
下载附件
昨天 21:10 上传





QQ截图20170115210707.png (3.57 KB, 下载次数: 0)
下载附件
昨天 21:10 上传




我发了两次,硬件复位法的 ,有没有大神懂啥意思
此帖出自stm32/stm8论坛

回复

100

帖子

0

资源

一粒金砂(中级)

QQ截图20170115210707.png QQ截图20170115210744.png

回复

100

帖子

0

资源

一粒金砂(中级)

a弄错了, a是我的变量,不关注这个

回复

3652

帖子

11

资源

五彩晶圆(高级)

有没有大神懂啥意思,你想表达啥意思呢。期望的结果是什么,实际得到什么。分析一下二者有什么关系。

回复

100

帖子

0

资源

一粒金砂(中级)

ienglgge 发表于 2017-1-17 20:37
有没有大神懂啥意思,你想表达啥意思呢。期望的结果是什么,实际得到什么。分析一下二者有什么关系。

因为我FOR循环里有俩个数 循环两次,应该是能收到4个数,但我硬件复位每次只能发3个数

点评

你把发送的内容改一下,比如,第一句改成12,第二句改成34,这样便于分析。发送之后,可以适当加个延时。  详情 回复 发表于 2017-1-18 21:46

回复

3652

帖子

11

资源

五彩晶圆(高级)

本帖最后由 ienglgge 于 2017-1-18 21:52 编辑
大家都是好朋友 发表于 2017-1-18 00:20
因为我FOR循环里有俩个数 循环两次,应该是能收到4个数,但我硬件复位每次只能发3个数

你把发送的内容改一下,比如,第一句改成0x12,第二句改成0x34,这样便于分析。发送之后,可以适当加个延时。

回复

5

帖子

0

资源

一粒金砂(初级)

我建议楼主先检查发送寄存器是否为空,如果空则发送,否则就等待,直到发送空才发送数据。

回复

1

帖子

0

资源

一粒金砂(初级)

本帖最后由 韧性人生 于 2017-3-10 17:52 编辑

7楼说的很对。最好这样写:

1.JPG
还有楼主把TC位的意义弄错了;就算真要先写入数据再等待发送完成,前面也不应该是把TC位清零
2.JPG

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

关闭
站长推荐上一条 1/5 下一条

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表