OpenEdv-开源电子网

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

各位大神,我现在学到mini 开发板的串口部分,我自己写了一个串口接收数据并通过TFT显示出来的程序,遇到了一些问题?

[复制链接]

2

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2015-11-2
在线时间
10 小时
发表于 2017-5-7 20:52:36 | 显示全部楼层 |阅读模式
我的串口接收程序通过串口助手XCOM验证可以运行(问题是本来发送一次,运行起来却发送两次),但是用matlab上位机发送数据给STM32时,单片机就会自动复位,没法传输成功,想请教各位大神问题出在什么地方?
11111.jpg 3333.jpg 2222.jpg
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

51

帖子

0

精华

初级会员

Rank: 2

积分
161
金钱
161
注册时间
2016-10-19
在线时间
36 小时
发表于 2017-5-14 13:04:13 | 显示全部楼层
楼主stm32串口程序时是怎么弄的啊?我也在弄这个。
回复 支持 反对

使用道具 举报

2

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2015-11-2
在线时间
10 小时
 楼主| 发表于 2017-5-16 16:39:41 | 显示全部楼层
dmfy 发表于 2017-5-14 13:04
楼主stm32串口程序时是怎么弄的啊?我也在弄这个。

#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "LCD.h"
#include "led.h"
u8 jieshou;
u8 t,len;
int main()
{
        JTAG_Set(JTAG_SWD_DISABLE);
  Stm32_Clock_Init(9);   //ê±Öó3õê¼»ˉ
        delay_init(72);        //Ñóê±3õê¼»ˉ
        uart_init(72,460800);    //′®¿ú3õê¼»ˉ
        io_init();
        lcd_init();
        led_init();
        led1_off;
        LCD_Fill(0,0,240,320,BLUE);   //éèÖÃÇøóòìî3äÑÕé«
        while(1)
        {
                //LCD_ShowString(30,40,200,24,24,YELLOW,"MISSION SUCCESS");       
    printf("%d\r\n",1);
                led0_off;
                while(!(USART_RX_STA&0x8000));
                        len = USART_RX_STA&0x3fff;
                        jieshou=USART_RX_BUF[0];
                        jieshou=jieshou/16*10+jieshou%16;
                        USART_RX_STA =0;
                  
                printf("í¨1y′®¿ú′«1yà′μÄêy¾YêÇ£o%d\r\n",jieshou);
                LCD_ShowxNum(100,100,jieshou,4,24,RED,1);
                led0_on;
                delay_ms(1000);
        }
}
回复 支持 反对

使用道具 举报

2

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2015-11-2
在线时间
10 小时
 楼主| 发表于 2017-5-16 16:44:18 | 显示全部楼层
月光独灵 发表于 2017-5-16 16:39
#include "sys.h"
#include "delay.h"
#include "usart.h"

之前看原子有人发帖说过,由于mini stm32的硬件电路设计,导致从上位机给单片机发串口的时候会出现单片机复位的问题,我现在找不到那个帖子了,也不知道怎么去解决这个问题
回复 支持 反对

使用道具 举报

7

主题

51

帖子

0

精华

初级会员

Rank: 2

积分
161
金钱
161
注册时间
2016-10-19
在线时间
36 小时
发表于 2017-5-17 08:16:56 | 显示全部楼层
月光独灵 发表于 2017-5-16 16:39
#include "sys.h"
#include "delay.h"
#include "usart.h"

谢谢,只不过我已经解决了这个问题,我把原子哥串口中断改了,自己写了一个。
回复 支持 反对

使用道具 举报

2

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2015-11-2
在线时间
10 小时
 楼主| 发表于 2017-5-17 09:09:40 | 显示全部楼层
dmfy 发表于 2017-5-17 08:16
谢谢,只不过我已经解决了这个问题,我把原子哥串口中断改了,自己写了一个。

你怎么改的中断,想解决什么问题,能给我看看吗
回复 支持 反对

使用道具 举报

58

主题

359

帖子

0

精华

高级会员

Rank: 4

积分
987
金钱
987
注册时间
2014-9-29
在线时间
261 小时
发表于 2017-5-17 13:08:52 | 显示全部楼层
dmfy 发表于 2017-5-14 13:04
楼主stm32串口程序时是怎么弄的啊?我也在弄这个。

http://www.openedv.com/forum.php ... id=87071&extra=
之前自己写的一个可以试试
回复 支持 反对

使用道具 举报

7

主题

51

帖子

0

精华

初级会员

Rank: 2

积分
161
金钱
161
注册时间
2016-10-19
在线时间
36 小时
发表于 2017-5-18 09:35:19 | 显示全部楼层
月光独灵 发表于 2017-5-17 09:09
你怎么改的中断,想解决什么问题,能给我看看吗

我参考了别人的博客,http://blog.csdn.net/chenwei2002/article/details/50100427
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-13 21:06

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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