OpenEdv-开源电子网

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

新手上路,关于STM32F407ZGT6串口调试的问题

[复制链接]

2

主题

11

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2016-5-24
在线时间
5 小时
发表于 2016-5-29 09:12:11 | 显示全部楼层 |阅读模式
5金钱
本帖最后由 天风海雨 于 2016-5-29 09:20 编辑

新手上路,求大神指教,我最近在用这个F407做一个项目,用到了它的串口,代码很简单,就是按照例程写的,然而用原子哥的XCOM可以正常通信,用我自己原来的串口调试助手SComAssistant却不能通信(可以收到单片机发的,但发过去,单片机没反应,没有接收到),用本人自己写的C#上位机,也接收不到,不知道为什么,以前这两个东西都可以用于51和Arduino单片机,难道是stm32不能用吗
我自己的上位机代码“private void btnTransmit_Click(object sender, EventArgs e)
        {
            if (btnOpenPort.Text == "关闭串口")
            {
                if (tbData.Text == "")
                {
                    MessageBox.Show("请输入数据!");
                }
                else
                {
                    serialPort.Write(tbData.Text);//串口写入数据/命令
                }
            }
            else
            {
                MessageBox.Show("发送失败!请打开串口!");
            }
        }

360反馈意见截图16331206282925.png
360反馈意见截图16620615108105114.png
360反馈意见截图16300513637664.png

最佳答案

查看完整内容[请看2#楼]

问题已经找到了,一般的串口调试助手只是单纯的发一个字符,而XCOM是发一个字符加'\r\n',因此把上位机代码改成下面这样就可以正常通信了。 private void btnTransmit_Click(object sender, EventArgs e) { if (btnOpenPort.Text == "关闭串口") { if (tbData.Text == "") { MessageBox.Show("请输入数据!"); ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

11

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2016-5-24
在线时间
5 小时
 楼主| 发表于 2016-5-29 09:12:12 | 显示全部楼层
问题已经找到了,一般的串口调试助手只是单纯的发一个字符,而XCOM是发一个字符加'\r\n',因此把上位机代码改成下面这样就可以正常通信了。
        private void btnTransmit_Click(object sender, EventArgs e)
        {
            if (btnOpenPort.Text == "关闭串口")
            {
                if (tbData.Text == "")
                {
                    MessageBox.Show("请输入数据!");
                }
                else
                {
                    serialPort.Write(tbData.Text + "\r\n");//串口写入数据/命令
                }
            }
            else
            {
                MessageBox.Show("发送失败!请打开串口!");
            }
        }
回复

使用道具 举报

5

主题

158

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2016-5-29
在线时间
5 小时
发表于 2016-5-29 11:25:53 | 显示全部楼层
这个问题估计是你的串口软件问题
回复

使用道具 举报

5

主题

158

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2016-5-29
在线时间
5 小时
发表于 2016-5-29 11:26:05 | 显示全部楼层
这个问题估计是你的串口软件问题
回复

使用道具 举报

2

主题

11

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2016-5-24
在线时间
5 小时
 楼主| 发表于 2016-5-29 14:51:29 | 显示全部楼层
Lone 发表于 2016-5-29 11:25
这个问题估计是你的串口软件问题

我的串口软件发送一个a,显示发送了一个字符,而用XCOM,却显示3个。就是XCOM界面下方的S后面的数字变成3,如果发送ab,则显示4,奇怪
回复

使用道具 举报

5

主题

158

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2016-5-29
在线时间
5 小时
发表于 2016-5-29 16:56:40 | 显示全部楼层
发送的字节是有要求的,可能是在你发送的基础上增加2个字节因软件而有别
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-27 11:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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