OpenEdv-开源电子网

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

stm32f103c8t6 串口能发不能收,进不去中断,是精英版例程移植的,查不出来问题,请求大神帮助

[复制链接]

0

主题

5

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2019-3-30
在线时间
10 小时
发表于 2020-4-27 10:36:14 | 显示全部楼层 |阅读模式
本帖最后由 一黑二白 于 2020-4-27 11:31 编辑

void uart_init(u32 bound){

  GPIO_InitTypeDef GPIO_InitStrue;
        USART_InitTypeDef USART_InitStrue;
        NVIC_InitTypeDef NVIC_InitStrue;
        
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA ,ENABLE);
        RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2,ENABLE);
        
        GPIO_InitStrue.GPIO_Mode=GPIO_Mode_AF_PP;
        GPIO_InitStrue.GPIO_Pin=GPIO_Pin_2;
        GPIO_InitStrue.GPIO_Speed=GPIO_Speed_10MHz;
  GPIO_Init(GPIOA,&GPIO_InitStrue);//?
        
        GPIO_InitStrue.GPIO_Mode=GPIO_Mode_IN_FLOATING;
//        GPIO_InitStrue.GPIO_Mode=GPIO_Mode_IPU;
        GPIO_InitStrue.GPIO_Pin=GPIO_Pin_3;
        GPIO_InitStrue.GPIO_Speed=GPIO_Speed_10MHz;
  GPIO_Init(GPIOA,&GPIO_InitStrue);//?
        
        USART_InitStrue.USART_BaudRate=bound;
        USART_InitStrue.USART_HardwareFlowControl=USART_HardwareFlowControl_None;
        USART_InitStrue.USART_Mode=USART_Mode_Tx|USART_Mode_Rx;
        USART_InitStrue.USART_Parity=USART_Parity_No;
        USART_InitStrue.USART_StopBits=USART_StopBits_1;
        USART_InitStrue.USART_WordLength=USART_WordLength_8b;
        
        USART_Init(USART2,&USART_InitStrue);//USART2 init
        
        USART_Cmd(USART2,ENABLE);//USART2  enable
        
        USART_ITConfig(USART2,USART_IT_RXNE,ENABLE);
        
        NVIC_InitStrue.NVIC_IRQChannel=USART2_IRQn;
        NVIC_InitStrue.NVIC_IRQChannelCmd=ENABLE;
        NVIC_InitStrue.NVIC_IRQChannelPreemptionPriority=1;
        NVIC_InitStrue.NVIC_IRQChannelSubPriority=1;
        NVIC_Init(&NVIC_InitStrue);
        
        
}

void USART2_IRQHandler(void)                        //′®¿ú2ÖD¶Ï·tÎñ3ìDò
        {
        u8 Res;

        if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET)  //
                {
                Res =USART_ReceiveData(USART2);        //
                USART_SendData(USART2,Res);
                                 
     }

}
int main(void)
{               
         u16 t;       unsigned char i = 0;
        u16 len;        
        u16 times=0;
        delay_init();                     //  
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //
        uart_init(9600);         //
         LED_Init();                             

         while(1)
        {
      delay_ms(1000);
      USART_SendData(USART2,0x36);                        
        
        }         
}


电路图

电路图
22222222222222.png
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4307
金钱
4307
注册时间
2018-6-30
在线时间
808 小时
发表于 2020-4-27 16:46:44 | 显示全部楼层
估计是配置出问题了,检查下初始化
业精于勤荒于嬉;行成于思毁于随!
回复 支持 反对

使用道具 举报

0

主题

10

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2019-6-18
在线时间
13 小时
发表于 2020-5-6 11:08:34 | 显示全部楼层
这语句写的有点乱
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-28 01:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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