打印

关于串口通信的

[复制链接]
211|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
スモモ|  楼主 | 2019-11-1 15:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void gpio_usart_config(void){
        GPIO_InitTypeDef goip_usart1;
        USART_InitTypeDef usart_1;
        
        //初始化TX
        goip_usart1.GPIO_Pin = GPIO_Pin_9;
        goip_usart1.GPIO_Mode = GPIO_Mode_AF_PP;
        goip_usart1.GPIO_Speed = GPIO_Speed_50MHz;
        
        GPIO_Init(GPIOA, &goip_usart1);
        
        //初始化RX
        goip_usart1.GPIO_Pin = GPIO_Pin_10;
        goip_usart1.GPIO_Mode = GPIO_Mode_IN_FLOATING;
        
        GPIO_Init(GPIOA, &goip_usart1);
        
        //打开时钟
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
        
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);
        
        
        /*  初始化串口通信  */
        
        usart_1.USART_BaudRate = 115200;
        usart_1.USART_HardwareFlowControl = USART_HardwareFlowControl_None ;
        usart_1.USART_Mode =  USART_Mode_Tx;
        usart_1.USART_Parity = USART_Parity_No;
        usart_1.USART_StopBits = USART_StopBits_1;
        usart_1.USART_WordLength = USART_WordLength_8b;

        USART_Init(USART1, &usart_1);

}


void senddata_1(USART_TypeDef* pUSARTx, uint8_t data){
        USART_SendData(pUSARTx, data);
        while(USART_GetFlagStatus(pUSARTx, USART_FLAG_TXE) == RESET);
}

int main(void)
{
        gpio_usart_config();        
        USART_Cmd(USART1, ENABLE);
        senddata_1(USART1,100);
        
        
        while(1){
        //无限循环
        }
        
}


void USART1_IRQHandler(void){

}



如上初始化了串口,可是烧到板里,怎么reset电脑都收不到东西。
对照视频的代码看了几遍了,还是找不到问题。请问哪里出错了
我使用usb下载程序的。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

458

主题

484

帖子

1

粉丝