OpenEdv-开源电子网

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

求stm32f407从串口1收发数据用串口2打印到电脑串口助手的代码

[复制链接]

1

主题

5

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2017-10-18
在线时间
9 小时
发表于 2017-10-18 09:57:05 | 显示全部楼层 |阅读模式
5金钱
本帖最后由 枫彦堂 于 2017-10-18 09:58 编辑

求各位大神指点

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2017-10-19 01:11:57 | 显示全部楼层
自己学到什么程度了?
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2017-10-18
在线时间
9 小时
 楼主| 发表于 2017-10-19 11:02:03 | 显示全部楼层
正点原子 发表于 2017-10-19 01:11
自己学到什么程度了?

想知道在开发板上 两个串口怎么通信?  用什么函数? 还是怎么设置? 是设置好了中断他们就能自己通信,  还是需要用函数把他们建立连接?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2017-10-20 01:18:50 | 显示全部楼层
枫彦堂 发表于 2017-10-19 11:02
想知道在开发板上 两个串口怎么通信?  用什么函数? 还是怎么设置? 是设置好了中断他们就能自己通信,  ...

看教程
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2017-10-18
在线时间
9 小时
 楼主| 发表于 2017-10-21 10:35:01 | 显示全部楼层

原子哥   有没有STM32F407固件库使用手册  中文版的
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2017-10-18
在线时间
9 小时
 楼主| 发表于 2017-10-25 14:41:13 | 显示全部楼层

原子哥 我现在用串口助手给485发数据在232所连的串口助手上能收到数据,但是从232给485发送,485这边就接收不到。   但是把232那边短接了 485这就能接收到数据,而且之前没有接收到的数据也都显示出来了  这块有点不懂,
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2017-10-18
在线时间
9 小时
 楼主| 发表于 2017-10-25 18:08:03 | 显示全部楼层
本帖最后由 枫彦堂 于 2017-10-25 18:15 编辑


#include "main.h"
#include "delay.h"
#include "usart2.h"
#include "rs485.h"

int main(void)
{   
        u16 rs232_len;
        u16 rs485_len;
        
        
        delay_init();          //
        Usart2_init(9600);     //9600
        RS485_Init(9600);      //9600
        while(1)
        {        
                                   // while(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)     
                                   //        {         
                                   //        if(USART_GetITStatus(USART3, USART_IT_TXE) != RESET)
                                   //        {
                                   // RS485_RX_TX=1;  
                                  //485接收电脑指令  从232发送给外设
              if(RS485_RX_STA&0x8000)                             //RS485_RX_STA位15 表示接收完成
                      {                        
                                       
                             rs485_len=RS485_RX_STA&0x3fff;                  
                             RS485_RX_BUF[rs485_len]='\0'   ;               
                       u2_printf("%s\r\n",RS485_RX_BUF);  //RS232将RS485接收到的信息发到外设上
                                                RS485_printf("你发送的数据"”%s\r\n",RS485_RX_BUF);
                             RS485_RX_STA=0;                                                                       
                       }
                                         
                                          //         RS485_RX_TX=0;
                                          // while(USART_GetITStatus(USART3, USART_IT_TXE) != RESET)      
                                          //        else if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)
                                          //        {
        
                     //RS232从外设接收信息 用485打印在电脑上
                    if(USART2_RX_STA&0x8000)                        
           {                                            
                             rs232_len=USART2_RX_STA&0x3fff;                                       
                              USART2_RX_BUF[rs232_len]='\0'   ;
                             RS485_printf("你接收的数据%s\r\n",USART2_RX_BUF);   
                             USART2_RX_STA=0;                                 
                                   
                                     // }
                delay_ms(10);                                      
        }
}

这个代码这么写可以吗
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-18 22:39

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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