OpenEdv-开源电子网

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

串口

[复制链接]

23

主题

57

帖子

0

精华

初级会员

Rank: 2

积分
169
金钱
169
注册时间
2012-9-1
在线时间
0 小时
发表于 2012-9-3 16:34:56 | 显示全部楼层 |阅读模式
板子返回上位机的都是乱码是怎么回事啊,求大神解
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

23

主题

127

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
389
金钱
389
注册时间
2012-5-6
在线时间
0 小时
发表于 2012-9-3 17:25:57 | 显示全部楼层
波特率设置问题?接线问题?上位机软件问题自己猜猜啊……
我的博客,欢迎来访~
http://rmingwang.com
回复 支持 反对

使用道具 举报

31

主题

269

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
450
金钱
450
注册时间
2012-5-18
在线时间
6 小时
发表于 2012-9-3 19:08:31 | 显示全部楼层
hehe
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
22
金钱
22
注册时间
2012-8-16
在线时间
0 小时
发表于 2012-9-3 19:28:48 | 显示全部楼层
网上找的一些解决办法,我也遇到过,我是通过办法2解决的,希望能帮到你:
   问题1(与编译软件无关):在程序中加入printf语句实现串口输出,但未写重定向函数fputc,出现编译无任何警号和错误直接下载无法运行,软件仿真可以运行至MAIN函数,硬件仿真在汇编窗口看到停留在“0x0800XXXX BEAB BKPT 0xAB //进入调试模式”处无法继续运行。

解决办法:编写fputc函数如下:
int fputc(int ch, FILE *f)
{
          USART_SendData(USART1, (uint8_t) ch);
        while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
        {}
        return ch;
}

问题2(与编译软件有关):重定向函数fputc编写无误,使用的是MDK4.22-3.40之间的编译环境,未使用微库,即MiclroLIB,因printf()之类的函数,使用了半主机模式。使用微库的话,不会使用半主机模式,所以就没有问题。

解决办法:在option for target->target 对话框中,选择Use MiclroLIB,重新编译程序即可。

问题3:重定向函数fputc编写无误,不用微库,即MiclroLIB,依然可以使用printf

解决办法:
在程序中加入如下语句:
#pragma import(__use_no_semihosting)
_sys_exit(int x)
{
x = x;
}
struct __FILE
{
int handle;
/* Whatever you require here. If the only file you are using is */
/* standard output using printf() for debugging, no file handling */
/* is required. */
};
/* FILE is typedef’ d in stdio.h. */
FILE __stdout;

此代码功能用于避免使用semhosting(半主机模式)

问题4:使用的是MDK4.22-3.40之间的编译环境,不想使用微库,也不想加入问题三语句。

解决办法:
更换低版本的MDK,3.4以下吧,本人试验使用mdk3.24不勾选MiclroLIB,也不加入问题三语句,能够正常使用printf,无任何问题。
My?kungfu?skills?with?the?stuff?of?legend.
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-9-3 21:42:13 | 显示全部楼层
多半是波特率设置错了。
直接刷我们的例程试试。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-20 22:50

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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