搜索
bottom↓
回复: 4

4.3寸的SmartBoard,怎么启用串口2

[复制链接]

出0入14汤圆

发表于 2020-7-5 22:23:27 | 显示全部楼层 |阅读模式
仿制串口1,

修改串口2初始化语句
void UartInit2(UART_TypeDef* UARTx,int BaudRate)
{
        UART_InitTypeDef       UART_InitStructure;  
        GPIO_InitTypeDef  GPIO_InitStructure;   
       
        RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
        GPIO_InitStructure.GPIO_Pin  = GPIO_Pin_2;   //uart2_tx  PA2
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; // 推免复用输出
  GPIO_Init(GPIOA, &GPIO_InitStructure);

  GPIO_InitStructure.GPIO_Pin  = GPIO_Pin_3;  //uart2_rx  PA3
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //上拉输入   

  GPIO_Init(GPIOA, &GPIO_InitStructure);
       
        GPIO_PinAFConfig(GPIOA, GPIO_Pin_2 | GPIO_Pin_3, GPIO_AF_UART_2345); //PA2、PA3复用为串口2
       
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_UART2, ENABLE);
        UART_InitStructure.UART_BaudRate = BaudRate; //波特率
  UART_InitStructure.UART_WordLength = UART_WordLength_8b;//数据位
  UART_InitStructure.UART_StopBits = UART_StopBits_1;//停止位
  UART_InitStructure.UART_Parity = UART_Parity_No ;
  UART_InitStructure.UART_Mode = UART_Mode_Rx | UART_Mode_Tx;//输入输出模式
  UART_InitStructure.UART_HardwareFlowControl = UART_HardwareFlowControl_None;        
        UART_Init(UARTx, &UART_InitStructure);
        UART_Cmd(UARTx, ENABLE);  //UART 模块使能
       
  UART_ClearITPendingBit(UARTx, 0xff);

}

u8 Uart2_Receive(void)
{
        //判断数据是否到来
  while((UART2->CSR & (1<<1)) ==0);
        return UART2->RDR;

}


void send_data2(u8 data)
{
        while((UART2->CSR &0x1) == 0);
        UART2->TDR = data;
}

void send_group2(u8*data,u16 len)
{
        while(len--)
        send_data2(*data++);
}






调用
UartInit2(UART2,9600);
send_str2("test");


串口1能正常接收数据的,串口2没反应,由于串口2挂有WIFI模块,这个有没有影响?

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出16170入6148汤圆

发表于 2020-7-6 12:05:09 来自手机 | 显示全部楼层
打赏!

庆祝论坛“打赏”功能实施, 现在开始发技术主题,可以获得打赏
https://www.amobbs.com/thread-5735948-1-1.html

出0入143汤圆

发表于 2020-7-6 12:18:49 | 显示全部楼层
这个串口2挂了WIFI模块,已经占用了TX,所以是不能再接到电脑上的了,你可以用其它串口;或者实在喜欢串口2,也可以吹WIFI模块下来

出0入14汤圆

 楼主| 发表于 2020-7-6 15:01:11 | 显示全部楼层
tiky 发表于 2020-7-6 12:18
这个串口2挂了WIFI模块,已经占用了TX,所以是不能再接到电脑上的了,你可以用其它串口;或者实在喜欢串口2 ...

这个串口2,就是准备跟WIFI通讯,我初始化代码没问题吧?

出0入14汤圆

 楼主| 发表于 2020-7-6 15:02:14 | 显示全部楼层
armok. 发表于 2020-7-6 12:05
打赏!

庆祝论坛“打赏”功能实施, 现在开始发技术主题,可以获得打赏

我只是提问,能把打赏,转给回答的大侠吗
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 22:41

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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