你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32f411re串口通信问题

[复制链接]
℡无氧旅途 提问时间:2016-1-30 19:32 /
首先F4勾选了microl lib选项,串口调试助手显示没有收到数据,但是
  1. #include "bsp_usart.h"
  2. void NVIC_USART1_Config(void)
  3. {
  4.         NVIC_InitTypeDef NVIC_InitStructure;
  5.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
  6.         
  7.         NVIC_InitStructure.NVIC_IRQChannel=USART1_IRQn;
  8.         NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0x00;
  9.         NVIC_InitStructure.NVIC_IRQChannelSubPriority=0x02;
  10.         NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;
  11.         NVIC_Init(&NVIC_InitStructure);
  12. }

  13. void USART1_Config(void)
  14. {
  15.         GPIO_InitTypeDef GPIO_InitStructure;
  16.         USART_InitTypeDef USART_InitStructure;
  17.         
  18.         
  19.         RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA , ENABLE);
  20.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);
  21.         //串口1对应引脚复用映射
  22.         GPIO_PinAFConfig(GPIOA, GPIO_PinSource9, GPIO_AF_USART1);
  23.         GPIO_PinAFConfig(GPIOA, GPIO_PinSource10, GPIO_AF_USART1);
  24.         
  25.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_10;
  26.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
  27.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  28.         GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  29.         GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
  30.         GPIO_Init(GPIOA, &GPIO_InitStructure);            
  31.                         
  32.         NVIC_USART1_Config();

  33.         USART_InitStructure.USART_BaudRate=115200;
  34.         USART_InitStructure.USART_WordLength=USART_WordLength_8b;
  35.         USART_InitStructure.USART_StopBits=USART_StopBits_1;
  36.         USART_InitStructure.USART_Parity=USART_Parity_No;
  37.         USART_InitStructure.USART_HardwareFlowControl=USART_HardwareFlowControl_None;
  38.         USART_InitStructure.USART_Mode=USART_Mode_Rx|USART_Mode_Tx;
  39.         
  40.         USART_Init(USART1,&USART_InitStructure);
  41.         
  42.         USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);
  43.         
  44.         USART_Cmd(USART1,ENABLE);        
  45. }
  46. /// 重定向c库函数printf到USART1
  47. int fputc(int ch, FILE *f)
  48. {
  49.                 /* 发送一个字节数据到USART1 */
  50.                 USART_SendData(USART1, (uint8_t) ch);
  51.                
  52.                 /* 等待发送完毕 */
  53.                 while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);               
  54.         
  55.                 return (ch);
  56. }

  57. /// 重定向c库函数scanf到USART1
  58. int fgetc(FILE *f)
  59. {
  60.                 /* 等待串口1输入数据 */
  61.                 while (USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET);

  62.                 return (int)USART_ReceiveData(USART1);
  63. }
  64. /*********************************************END OF FILE**********************/




  65. void USART1_IRQHandler(void)
  66. {
  67.         char c;
  68.         if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)
  69.         {
  70.                 c=USART_ReceiveData(USART1);
  71.                 USART_SendData(USART1,c);
  72.         }
  73. }
复制代码

将板子TX,RX短接后收发显示正常,用别人的成功例程也是这样的问题,求助这是什么原因???
收藏 评论1 发布时间:2016-1-30 19:32

举报

1个回答
℡无氧旅途 回答时间:2016-1-30 19:33:30
刚开始学,求助

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版