stm32的5个串口同时使用问题 5C

stm32的5个串口同时用到,如何处理各个串口的数据,需要注意哪些问题

3个回答

参数设置都不难,难的是如果串口同时工作,怎么进行数据处理,中断设置及判断接收数据是否完整

同时用到若数据量比较大,建议用串口dma方式

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
stm32L0同时使用两个串口问题

项目需要同时使用两个串口和外界通信。用的是20脚的stm32L0,因为引脚太少,每个引脚的复用功能就很多。 突然发现LPUART1和USART2两个外设的TX引脚竟然共用一个引脚(如下方数据手册截图所示),想求问各位大神这个芯片还能两个串口同时用么,需要怎样配置呀? 另:一个引脚上这么多Alternate functions是不是只能通过外设时钟来控制具体是哪个外设在工作? ![图片说明](https://img-ask.csdn.net/upload/201910/22/1571744755_267880.png)

stm32获取串口扫描枪数据

初学stm32,实现功能:串口2连接扫描枪,获取一维码信息后通过串口1打印;目前已实现串口2通过串口调试助手发送数据,串口1能够在串口调试助手上打印接收到的数据,stm32通过pc串口调试助手模拟发送接收数据正常,扫描枪与pc串口助手发送接收数据正常,存在问题:stm32与扫描枪无法通信,串口2连接扫描枪后发送数据,串口1无法打印,debug发现串口2中断无数据接收。![图片说明](https://img-ask.csdn.net/upload/201809/17/1537175779_974945.jpg)

stm32f107关于串口复位问题

![图片说明](https://img-ask.csdn.net/upload/202004/20/1587352765_183768.png) 请问一下这个串口初始化函数能否用在串口数据异常时候对串口进行复位? 这个初始化函数的初始值是多少..?谢谢!

使用STM32CubeProgrammer对STM32F103进行串口烧录出现此问题怎么解决?

![图片说明](https://img-ask.csdn.net/upload/202001/14/1578973288_266877.png) 出现此问题是什么原因???求大神指点!!!

关于stm32UART串口发送数据的问题

我想用stm32单片机的uart串口发送一个十进制的数据(例如adc转换的电压值)到上位机上面。请问怎么把一个十进制的数字发送出去,这个程序要怎么写。我查了一下资料,好像要发送的数据都要求是二进制的。求大佬

STM32F4DISCOVERY串口设置问题

如题,这个板子的串口怎么打开 是把usb连接到电脑就可以还是要另外配置什么啊 我的板子连接到了电脑也可以下载程序,设备管理器里也显示正确安装,可是串口调试助手里面就是没有啊 请问该怎么做啊

菜鸡求教,stm32f7做串口通信时,串口复用PA9改成其他口之后就失效了?

本菜鸡在改串口通信小实验的时候,遇到了一个问题。 就是下面这段串口复用程序: ``` GPIO_Initure.Pin=GPIO_PIN_9; GPIO_Initure.Mode=GPIO_MODE_AF_PP; GPIO_Initure.Pull=GPIO_PULLUP; GPIO_Initure.Speed=GPIO_SPEED_FAST; GPIO_Initure.Alternate=GPIO_AF7_USART1; HAL_GPIO_Init(GPIOA,&GPIO_Initure); GPIO_Initure.Pin=GPIO_PIN_10; HAL_GPIO_Init(GPIOA,&GPIO_Initure); ``` 这段程序本菜鸡想把发送口的GPIO_PIN_9改成GPIO_PIN_5,或者GPIO_PIN_5|GPIO_PIN_9,但5口都没有用,不知道为啥,求教!

stm32串口调试助手乱码

用stm32写了个串口程序 上位机发送一个数字 返回一个数字,可是返回的是些不认识的字符,波特率已经同步9608 数据停止位 等都是一样的,tx接rx 还是乱 换了3个串口调试助手都是一样的,有谁知道,谢谢解答

STM32L011K4 uart串口多机通信 的问题

本人在使用stm32L0114K做多机通信,一个主机给多个从机通过串口发消息,因此从机的串口需要被配置成不同的地址,并且使用静默模式。然后问题来了。 手册上说设置为静默模式,需要把RQR寄存器中的MMRQ位置1,但是无论怎么写,这位都没有被写成1,一直是0,所以现在很困惑。 不知道是自己配置有误,还是寄存器那位禁止这样的写操作(但是我并没有在手册上看到)?

STM32F4 USB串口发送完成 怎么检测?

用 VCP_fops.pIf_DataTx(buf,2*3); 发送数据给上位机,发送比较频繁的时候,会丢数据。 f103的库里面有个if (GetEPTxStatus(ENDP1) == EP_TX_NAK) ,可以检测发送完成, **f4里面没找到这个函数,请问各位大神是怎么检测的?**

stm32串口中断和定时器中断冲突

串口1每1秒给32发一串数据,通过中断接收;串口而是被动的,只有32给他发送数据0x01,它才给32回一串数据,定时器中断产生定时时长,用来发送那个0x01,现在的问题是32在定时器和串口同时工作的情况下,接收到的串口数据有错。

stm32F4DISCOVERY串口通信问题

void RCC_Configuration(void) { RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD, ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3, ENABLE); } void GPIO_Configuration(void) { GPIO_InitTypeDef GPIO_InitStructure; /* Configure USART Tx and Rx as alternate function push-pull */ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz; GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; GPIO_Init(GPIOD, &GPIO_InitStructure); GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStructure.GPIO_Pin =GPIO_Pin_9; GPIO_Init(GPIOD, &GPIO_InitStructure); GPIO_PinAFConfig(GPIOD,GPIO_PinSource8,GPIO_AF_USART3); GPIO_PinAFConfig(GPIOD,GPIO_PinSource9,GPIO_AF_USART3); } void USART_Configuration(void) { USART_InitTypeDef USART_InitStructure; USART_InitStructure.USART_BaudRate = 9600; USART_InitStructure.USART_WordLength =USART_WordLength_8b; USART_InitStructure.USART_StopBits = USART_StopBits_1; USART_InitStructure.USART_Parity = USART_Parity_No ; USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; USART_Init(USART3,&USART_InitStructure); /* Configure USART1 basic and asynchronous paramters */ //USART_ITConfig(USART3,USART_IT_RXNE,ENABLE); USART_ITConfig(USART3,USART_IT_TXE,ENABLE); USART_Cmd(USART3, ENABLE); /* Enable USART1 */ USART_ClearITPendingBit(USART3,USART_IT_TC); } void NVIC_Configuration(void) { NVIC_InitTypeDef NVIC_InitStructure;//????? NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0); NVIC_InitStructure.NVIC_IRQChannel = USART3_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); } int main(void) { RCC_Configuration(); GPIO_Configuration(); NVIC_Configuration(); USART_Configuration(); while(1); } volatile char StringLoop[] = "The quick brown fox jumps over the lazy dog"; void USART3_IRQHandler(void) { static int tx_index = 0; // static int rx_index = 0; if (USART_GetITStatus(USART3, USART_IT_TXE) != RESET) // Transmit the string in a loop { USART_ClearITPendingBit(USART3, USART_IT_TXE); USART_SendData(USART3, StringLoop[tx_index++]); if (tx_index >= (sizeof(StringLoop) - 1)) tx_index = 0; } } 就是这个程序为什么会不停的发送数据,PC接收端一直在接收,不是清除了标志位吗,想问问大家啊

STM32F4超声波串口打印不出来,大神求救

STM32F4超声波模块测距,想串口助手显示距离打印不出来,新手求救,不仅感谢。程序如下: cs.c #include "cs.h" #include "stm32f4xx.h" #include "delay.h" #include "usart.h" /*¼Ç¼¶¨Ê±Æ÷Òç³ö´ÎÊý*/ uint overcount=0; /*ÉèÖÃÖжÏÓÅÏȼ¶*/ void NVIC_Config(void) { NVIC_InitTypeDef NVIC_InitStructer; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); NVIC_InitStructer.NVIC_IRQChannelPreemptionPriority=0; NVIC_InitStructer.NVIC_IRQChannelSubPriority=0; NVIC_InitStructer.NVIC_IRQChannel=TIM2_IRQn; NVIC_InitStructer.NVIC_IRQChannelCmd=ENABLE; NVIC_Init(&NVIC_InitStructer); } /*³õʼ»¯Ä£¿éµÄGPIOÒÔ¼°³õʼ»¯¶¨Ê±Æ÷TIM2*/ void CH_SR04_Init(void) { GPIO_InitTypeDef GPIO_InitStructer; TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructer; RCC_AHB1PeriphResetCmd(RCC_AHB1Periph_GPIOB, ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE); /*TRIG´¥·¢ÐźÅ*/ GPIO_InitStructer.GPIO_Speed=GPIO_Speed_50MHz; GPIO_InitStructer.GPIO_Mode=GPIO_Mode_OUT; GPIO_InitStructer.GPIO_Pin=GPIO_Pin_8; GPIO_Init(GPIOB, &GPIO_InitStructer); /*ECOH»ØÏìÐźÅ*/ GPIO_InitStructer.GPIO_Mode=GPIO_Mode_IN; GPIO_InitStructer.GPIO_Pin=GPIO_Pin_9; GPIO_Init(GPIOB, & GPIO_InitStructer); /*¶¨Ê±Æ÷TIM2³õʼ»¯*/ TIM_DeInit(TIM2); TIM_TimeBaseInitStructer.TIM_Period=999;//¶¨Ê±ÖÜÆÚ1000 TIM_TimeBaseInitStructer.TIM_Prescaler=71; //·ÖƵϵÊý72 TIM_TimeBaseInitStructer.TIM_ClockDivision=TIM_CKD_DIV1; TIM_TimeBaseInitStructer.TIM_CounterMode=TIM_CounterMode_Up; //TIM_TimeBaseInitStructer.TIM_RepetitionCounter TIM_TimeBaseInit(TIM2,&TIM_TimeBaseInitStructer); TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE);//¿ªÆô¸üÐÂÖÐ¶Ï NVIC_Config(); TIM_Cmd(TIM2,DISABLE);//¹Ø±Õ¶¨Ê±Æ÷ʹÄÜ } float Senor_Using(void) { float length=0,sum=0; u16 tim; uint i=0; /*²â5´ËÊý¾Ý¼ÆËãÒ»´Îƽ¾ùÖµ*/ while(i!=5) { PBout(8)=1; //À­¸ßÐźţ¬×÷Ϊ´¥·¢ÐźŠdelay_us(20); //¸ßµçƽÐźų¬¹ý10us PBout(8)=0; /*µÈ´ý»ØÏìÐźÅ*/ while(GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_9)==RESET); TIM_Cmd(TIM2,ENABLE);//»ØÏìÐźŵ½À´£¬¿ªÆô¶¨Ê±Æ÷¼ÆÊý i+=1; //ÿ´ÎÊÕµ½Ò»´Î»ØÏìÐźÅ+1,ÊÕµ½5´Î¾Í¼ÆËã¾ùÖµ while(GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_9)==SET);//»ØÏìÐźÅÏûʧ TIM_Cmd(TIM2,DISABLE);//¹Ø±Õ¶¨Ê±Æ÷ tim=TIM_GetCounter(TIM2);//»ñÈ¡¼ÆTIM2Êý¼Ä´æÆ÷ÖеļÆÊýÖµ£¬Ò»±ß¼ÆËã»ØÏìÐźŠlength=(tim+overcount*1000)/58.0;//ͨ¹ý»ØÏìÐźżÆËã¾àÀë sum=length+sum; TIM2->CNT=0; //½«TIM2¼ÆÊý¼Ä´æÆ÷µÄ¼ÆÊýÖµÇåÁã overcount=0; //ÖжÏÒç³ö´ÎÊýÇåÁã delay_ms(100); } length=sum/5; return length;//¾àÀë×÷Ϊº¯Êý·µ»ØÖµ } void TIM2_IRQHandler(void) { if(TIM_GetITStatus(TIM2,TIM_IT_Update)!=RESET) { TIM_ClearITPendingBit(TIM2,TIM_IT_Update);//Çå³ýÖжϱêÖ¾ overcount++; } } 主函数 #include "stm32f4xx.h" #include "usart.h" #include "delay.h" #include "cs.h" float ChangeDistance(int cout1) { float distance=0; printf("cou1=%d\n",cout1); distance=cout1/58.0; return distance; } int main(void) { NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//ÉèÖÃϵͳÖжÏÓÅÏȼ¶·Ö×é2 delay_init(168); //ÑÓʱ³õʼ»¯ uart_init(115200); //´®¿Ú³õʼ»¯²¨ÌØÂÊΪ115200 // int count=0; // float distance=0; CH_SR04_Init(); printf("Senor_Using\n"); }

为什么STM32和zigbee不能串口通信?

最近在做一个项目,需要用到zigbee与STM32串口通信,我用的是STM32的开发板和zigbee的底板。如果是一个zigbee单独的串口通信工程,32就能和zigbee进行通信,但是如果是z-stack里的串口通信就不能和32进行通信。

stm32f103串口发送问题

TimeVal = TIM4->CNT; TimeVal = TimeVal; datal = TimeVal & 0x00ff; //取低八位 datah = TimeVal & 0xff00; //取高八位 dataz = (char)datal; USART_SendData(USART1, dataz); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE)==RESET); //判断是否发送完毕 TimeVal = 0; 为什么我串口接收到的数据乱码?

STM32串口如何实现一个发数据,另外一个接收数据

在keil5在编程环境下,想要实现的功能是:利用中断,让串口四接收数据,串口一发送数据 部分代码如下: int main(void) { //初始化USART1和UART4 配置模式为 115200 8-N-1,通过USART1发送数据,通过UART4接收数据 Debug_USART1_Config(); Debug_UART4_Config(); while(1) { } } 、、、、、、、、、中断函数如下、、、、、、、、、 相关宏定义 #define DEBUG_R_USART_IRQHandler UART4_IRQHandler #define DEBUG_R_USART_IRQ UART4_IRQn //串口四的中断程序:用于接收数据 void DEBUG_R_USART_IRQHandler(void) { if(USART_GetITStatus(UART4,USART_IT_RXNE)!=RESET) { USART_ClearFlag(UART4,USART_IT_RXNE); // USART_ClearITPendingBit(UART4,USART_IT_RXNE); //清除中断标志 ucTemp = USART_ReceiveData(UART4); } } //串口一的中断程序:用于发送数据 void DEBUG_T_USART_IRQHandler(void) { if(USART_GetITStatus(USART1,USART_IT_RXNE)!=RESET) { USART_ClearFlag(USART1,USART_IT_RXNE); //清除标志 // USART_ClearITPendingBit(USART1,USART_IT_RXNE); //清除中断预处理位 USART_SendData(USART1,ucTemp); } } 、、、、、、、、中断函数的配置、、、、、、、、、 //接收串口引脚定义 /*******************************************************/ #define DEBUG_USART UART4 #define DEBUG_USART_CLK RCC_APB1Periph_UART4 #define DEBUG_USART_BAUDRATE 115200 //串口波特率 #define DEBUG_USART_RX_GPIO_PORT GPIOA #define DEBUG_USART_RX_GPIO_CLK RCC_AHB1Periph_GPIOA #define DEBUG_USART_RX_PIN GPIO_Pin_1 #define DEBUG_USART_RX_AF GPIO_AF_UART4 #define DEBUG_USART_RX_SOURCE GPIO_PinSource1 #define DEBUG_USART_TX_GPIO_PORT GPIOA #define DEBUG_USART_TX_GPIO_CLK RCC_AHB1Periph_GPIOA #define DEBUG_USART_TX_PIN GPIO_Pin_0 #define DEBUG_USART_TX_AF GPIO_AF_UART4 #define DEBUG_USART_TX_SOURCE GPIO_PinSource0 #define DEBUG_R_USART_IRQHandler UART4_IRQHandler #define DEBUG_R_USART_IRQ UART4_IRQn /************************************************************/ //发送串口引脚定义 /*******************************************************/ #define DEBUG_T_USART USART1 #define DEBUG_T_USART_CLK RCC_APB2Periph_USART1 #define DEBUG_T_USART_BAUDRATE 115200 //串口波特率 #define DEBUG_T_USART_RX_GPIO_PORT GPIOA #define DEBUG_T_USART_RX_GPIO_CLK RCC_AHB1Periph_GPIOA #define DEBUG_T_USART_RX_PIN GPIO_Pin_10 #define DEBUG_T_USART_RX_AF GPIO_AF_USART1 #define DEBUG_T_USART_RX_SOURCE GPIO_PinSource10 #define DEBUG_T_USART_TX_GPIO_PORT GPIOA #define DEBUG_T_USART_TX_GPIO_CLK RCC_AHB1Periph_GPIOA #define DEBUG_T_USART_TX_PIN GPIO_Pin_9 #define DEBUG_T_USART_TX_AF GPIO_AF_USART1 #define DEBUG_T_USART_TX_SOURCE GPIO_PinSource9 #define DEBUG_T_USART_IRQHandler USART1_IRQHandler #define DEBUG_T_USART_IRQ USART1_IRQn /************************************************************/ static void NVIC_Configuration(void) //串口四的中断参数的配置 { NVIC_InitTypeDef NVIC_InitStructure; /* 嵌套向量中断控制器组选择 */ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); /* 配置UART4为中断源 */ NVIC_InitStructure.NVIC_IRQChannel = DEBUG_R_USART_IRQ; /* 抢断优先级为1 */ NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; /* 子优先级为1 */ NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; /* 使能中断 */ NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; /* 初始化配置NVIC */ NVIC_Init(&NVIC_InitStructure); } static void T_NVIC_Configuration(void) //串口一的中断参数的配置 { NVIC_InitTypeDef NVIC_InitStructure; /* 嵌套向量中断控制器组选择 */ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); /* 配置USART1为中断源 */ NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn; /* 抢断优先级为1 */ NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; /* 子优先级为1 */ NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; /* 使能中断 */ NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; /* 初始化配置NVIC */ NVIC_Init(&NVIC_InitStructure); } 、、、、、、、、有关串口的配置、、、、、、、、 void Debug_UART4_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; RCC_AHB1PeriphClockCmd(DEBUG_USART_RX_GPIO_CLK|DEBUG_USART_TX_GPIO_CLK,ENABLE); /* 使能 USART 时钟 */ RCC_APB1PeriphClockCmd(DEBUG_USART_CLK, ENABLE); /* GPIO初始化 */ GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; /* 配置Tx引脚为复用功能 */ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStructure.GPIO_Pin = DEBUG_USART_TX_PIN ; GPIO_Init(DEBUG_USART_TX_GPIO_PORT, &GPIO_InitStructure); /* 配置Rx引脚为复用功能 */ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStructure.GPIO_Pin = DEBUG_USART_RX_PIN; GPIO_Init(DEBUG_USART_RX_GPIO_PORT, &GPIO_InitStructure); /* 连接 PXx 到 USARTx_Tx*/ GPIO_PinAFConfig(DEBUG_USART_RX_GPIO_PORT,DEBUG_USART_RX_SOURCE,DEBUG_USART_RX_AF); /* 连接 PXx 到 USARTx__Rx*/ GPIO_PinAFConfig(DEBUG_USART_TX_GPIO_PORT,DEBUG_USART_TX_SOURCE,DEBUG_USART_TX_AF); /* 配置串DEBUG_USART 模式 */ /* 波特率设置:DEBUG_USART_BAUDRATE */ USART_InitStructure.USART_BaudRate = DEBUG_USART_BAUDRATE; /* 字长(数据位+校验位):8 */ USART_InitStructure.USART_WordLength = USART_WordLength_8b; /* 停止位:1个停止位 */ USART_InitStructure.USART_StopBits = USART_StopBits_1; /* 校验位选择:不使用校验 */ USART_InitStructure.USART_Parity = USART_Parity_No; /* 硬件流控制:不使用硬件流 */ USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; /* USART模式控制:同时使能接收和发送 */ USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; /* 完成USART初始化配置 */ USART_Init(DEBUG_USART, &USART_InitStructure); /* 嵌套向量中断控制器NVIC配置 */ NVIC_Configuration(); /* 使能串口接收中断 */ USART_ITConfig(DEBUG_USART, USART_IT_RXNE, ENABLE); //使能了接收中断,那么ORE中断也同时被开启了。 /* 使能串口 */ USART_Cmd(DEBUG_USART, ENABLE); } void Debug_USART1_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE); /* 使能 USART 时钟 */ RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); /* GPIO初始化 */ GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; /* 配置Tx引脚为复用功能 */ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStructure.GPIO_Pin = DEBUG_USART_TX_PIN ; GPIO_Init(DEBUG_T_USART_TX_GPIO_PORT, &GPIO_InitStructure); /* 配置Rx引脚为复用功能 */ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStructure.GPIO_Pin = DEBUG_T_USART_RX_PIN; GPIO_Init(DEBUG_T_USART_RX_GPIO_PORT, &GPIO_InitStructure); /* 连接 PXx 到 USARTx_Tx*/ GPIO_PinAFConfig(DEBUG_T_USART_RX_GPIO_PORT,DEBUG_T_USART_RX_SOURCE,DEBUG_T_USART_RX_AF); /* 连接 PXx 到 USARTx__Rx*/ GPIO_PinAFConfig(DEBUG_T_USART_TX_GPIO_PORT,DEBUG_T_USART_TX_SOURCE,DEBUG_T_USART_TX_AF); /* 配置串DEBUG_USART 模式 */ /* 波特率设置:DEBUG_USART_BAUDRATE */ USART_InitStructure.USART_BaudRate = DEBUG_T_USART_BAUDRATE; /* 字长(数据位+校验位):8 */ USART_InitStructure.USART_WordLength = USART_WordLength_8b; /* 停止位:1个停止位 */ USART_InitStructure.USART_StopBits = USART_StopBits_1; /* 校验位选择:不使用校验 */ USART_InitStructure.USART_Parity = USART_Parity_No; /* 硬件流控制:不使用硬件流 */ USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; /* USART模式控制:同时使能接收和发送 */ USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; /* 完成USART初始化配置 */ USART_Init(DEBUG_T_USART, &USART_InitStructure); /* 嵌套向量中断控制器NVIC配置 */ T_NVIC_Configuration(); /* 使能串口接收中断 */ USART_ITConfig(DEBUG_T_USART, USART_IT_RXNE, ENABLE); /* 使能串口 */ USART_Cmd(DEBUG_T_USART, ENABLE); } 未解决:串口一和串口四都可以单独收发,但是我想要实现一个串口收,另外一个串口发的功能,,,,,,,,求助啊,,,,,,试了好多可能性了

stm32串口通信问题,从电脑传汉字并存储到32中的一个数组

我下载了原子哥的串口通信历程,但是没太看懂。 就是现在我想要一个能够通过串口atkxcom从电脑把多个汉字发送到位于stm32,然后在32里能够用一个数组接受这些字存起来,并且能多次输入,依次顺序存在这个数组里,求大神指导

STM32F4DISCOVERY串口怎么打开

STLINK驱动已经正确安装,在设备管理器中串行总线设备可以中可以找到,但是这个板子的串口怎么打开?设备管理器没有显示有端口啊,应该怎么做啊,大神帮帮忙

STM32f107开发板的串口,每个引脚分别代表什么位

在做串口通信实验的时候,我用的是TTL485多功能串口模块,想知道在开发板串口端我应该接哪些引脚

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

Vue + Spring Boot 项目实战(十九):Web 项目优化解决方案

快来一起探索如何打脸我们的破项目,兄弟姐妹们把害怕打在公屏上!

你连存活到JDK8中著名的Bug都不知道,我怎么敢给你加薪

CopyOnWriteArrayList.java和ArrayList.java,这2个类的构造函数,注释中有一句话 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 public ArrayList(Collection<? ...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解!

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解! 目录 博客声明 大数据了解博主粉丝 博主的粉丝群体画像 粉丝群体性别比例、年龄分布 粉丝群体学历分布、职业分布、行业分布 国内、国外粉丝群体地域分布 博主的近期访问每日增量、粉丝每日增量 博客声明 因近期博主写专栏的文章越来越多,也越来越精细,逐步优化文章。因此,最近一段时间,订阅博主专栏的人数增长也非常快,并且专栏价

一个HashMap跟面试官扯了半个小时

一个HashMap能跟面试官扯上半个小时 关注 安琪拉的博客 1.回复面试领取面试资料 2.回复书籍领取技术电子书 3.回复交流领取技术电子书 前言 HashMap应该算是Java后端工程师面试的必问题,因为其中的知识点太多,很适合用来考察面试者的Java基础。 开场 面试官: 你先自我介绍一下吧! 安琪拉: 我是安琪拉,草丛三婊之一,最强中单(钟馗不服)!哦,不对,串场了,我是**,目...

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

记录下入职中软一个月(外包华为)

我在年前从上一家公司离职,没想到过年期间疫情爆发,我也被困在家里,在家呆着的日子让人很焦躁,于是我疯狂的投简历,看面试题,希望可以进大公司去看看。 我也有幸面试了我觉得还挺大的公司的(虽然不是bat之类的大厂,但是作为一名二本计算机专业刚毕业的大学生bat那些大厂我连投简历的勇气都没有),最后选择了中软,我知道这是一家外包公司,待遇各方面甚至不如我的上一家公司,但是对我而言这可是外包华为,能...

面试:第十六章:Java中级开发

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

培训班出来的人后来都怎么样了?(二)

接着上回说,培训班学习生涯结束了。后面每天就是无休止的背面试题,不是没有头脑的背,培训公司还是有方法的,现在回想当时背的面试题好像都用上了,也被问到了。回头找找面试题,当时都是打印下来天天看,天天背。 不理解呢也要背,面试造飞机,上班拧螺丝。班里的同学开始四处投简历面试了,很快就有面试成功的,刚开始一个,然后越来越多。不知道是什么原因,尝到胜利果实的童鞋,不满足于自己通过的公司,嫌薪水要少了,选择...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

工作八年,月薪60K,裸辞两个月,投简历投到怀疑人生!

近日,有网友在某职场社交平台吐槽,自己裸辞两个月了,但是找工作却让自己的心态都要崩溃了,全部无果,不是已查看无回音,就是已查看不符合。 “工作八年,两年一跳,裸辞两个月了,之前月薪60K,最近找工作找的心态崩了!所有招聘工具都用了,全部无果,不是已查看无回音,就是已查看不符合。进头条,滴滴之类的大厂很难吗???!!!投简历投的开始怀疑人生了!希望 可以收到大厂offer” 先来看看网...

大牛都会用的IDEA调试技巧!!!

导读 前天面试了一个985高校的实习生,问了他平时用什么开发工具,他想也没想的说IDEA,于是我抛砖引玉的问了一下IDEA的调试用过吧,你说说怎么设置断点...

都前后端分离了,咱就别做页面跳转了!统统 JSON 交互

文章目录1. 无状态登录1.1 什么是有状态1.2 什么是无状态1.3 如何实现无状态1.4 各自优缺点2. 登录交互2.1 前后端分离的数据交互2.2 登录成功2.3 登录失败3. 未认证处理方案4. 注销登录 这是本系列的第四篇,有小伙伴找不到之前文章,松哥给大家列一个索引出来: 挖一个大坑,Spring Security 开搞! 松哥手把手带你入门 Spring Security,别再问密...

97年世界黑客编程大赛冠军作品(大小仅为16KB),惊艳世界的编程巨作

这是世界编程大赛第一名作品(97年Mekka ’97 4K Intro比赛)汇编语言所写。 整个文件只有4095个字节, 大小仅仅为16KB! 不仅实现了3D动画的效果!还有一段震撼人心的背景音乐!!! 内容无法以言语形容,实在太强大! 下面是代码,具体操作看最后! @echo off more +1 %~s0|debug e100 33 f6 bf 0 20 b5 10 f3 a5...

程序员是做全栈工程师好?还是专注一个领域好?

昨天,有位大一的同学私信我,说他要做全栈工程师。 我一听,这不害了孩子么,必须制止啊。 谁知,讲到最后,更确定了他做全栈程序员的梦想。 但凡做全栈工程师的,要么很惨,要么很牛! 但凡很牛的,绝不是一开始就是做全栈的! 全栈工程师听起来好听,但绝没有你想象的那么简单。 今天听我来给你唠,记得帮我点赞哦。 一、全栈工程师的职责 如果你学习编程的目的只是玩玩,那随意,想怎么学怎么学。...

不要再到处使用 === 了

我们知道现在的开发人员都使用 === 来代替 ==,为什么呢?我在网上看到的大多数教程都认为,要预测 JavaScript 强制转换是如何工作这太复杂了,因此建议总是使用===。这些都...

什么是a站、b站、c站、d站、e站、f站、g站、h站、i站、j站、k站、l站、m站、n站?00后的世界我不懂!

A站 AcFun弹幕视频网,简称“A站”,成立于2007年6月,取意于Anime Comic Fun,是中国大陆第一家弹幕视频网站。A站以视频为载体,逐步发展出基于原生内容二次创作的完整生态,拥有高质量互动弹幕,是中国弹幕文化的发源地;拥有大量超粘性的用户群体,产生输出了金坷垃、鬼畜全明星、我的滑板鞋、小苹果等大量网络流行文化,也是中国二次元文化的发源地。 B站 全称“哔哩哔哩(bilibili...

十个摸鱼,哦,不对,是炫酷(可以玩一整天)的网站!!!

文章目录前言正文**1、Kaspersky Cyberthreat real-time map****2、Finding Home****3、Silk – Interactive Generative Art****4、Liquid Particles 3D****5、WINDOWS93****6、Staggering Beauty****7、Ostagram图片生成器网址****8、全历史网址*...

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

用了这个 IDE 插件,5分钟解决前后端联调!

点击上方蓝色“程序猿DD”,选择“设为星标”回复“资源”获取独家整理的学习资料!作者 |李海庆我是一个 Web 开发前端工程师,受到疫情影响,今天是我在家办公的第78天。开发了两周,...

大厂的 404 页面都长啥样?最后一个笑了...

每天浏览各大网站,难免会碰到404页面啊。你注意过404页面么?猿妹搜罗来了下面这些知名网站的404页面,以供大家欣赏,看看哪个网站更有创意: 正在上传…重新上传取消 腾讯 正在上传…重新上传取消 网易 淘宝 百度 新浪微博 正在上传…重新上传取消 新浪 京东 优酷 腾讯视频 搜...

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

代码注释如此沙雕,会玩还是你们程序员!

某站后端代码被“开源”,同时刷遍全网的,还有代码里的那些神注释。 我们这才知道,原来程序员个个都是段子手;这么多年来,我们也走过了他们的无数套路… 首先,产品经理,是永远永远吐槽不完的!网友的评论也非常扎心,说看这些代码就像在阅读程序员的日记,每一页都写满了对产品经理的恨。 然后,也要发出直击灵魂的质问:你是尊贵的付费大会员吗? 这不禁让人想起之前某音乐app的穷逼Vip,果然,穷逼在哪里都是...

Java14 新特性解读

Java14 已于 2020 年 3 月 17 号发布,官方特性解读在这里:https://openjdk.java.net/projects/jdk/14/以下是个人对于特性的中文式...

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

爬虫(101)爬点重口味的

小弟最近在学校无聊的很哪,浏览网页突然看到一张图片,都快流鼻血。。。然后小弟冥思苦想,得干一点有趣的事情python 爬虫库安装https://s.taobao.com/api?_ks...

工作两年简历写成这样,谁要你呀!

作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获! 一、前言 最近有伙伴问小傅哥,我的简历怎么投递了都没有反应,心里慌的很呀。 工作两年了目前的公司没有什么大项目,整天的维护别人的代码,有坑也不让重构,都烦死了。荒废我一身技能无处施展,投递的简历也没人看。我是不动物园里的猩猩,狒狒了! 我要加班,我要996,我要疯狂编码,求给我个机会… ...

相关热词 c# 局部 截图 页面 c#实现简单的文件管理器 c# where c# 取文件夹路径 c# 对比 当天 c# fir 滤波器 c# 和站 队列 c# txt 去空格 c#移除其他类事件 c# 自动截屏
立即提问