战舰V3的USERT3初始化问题,新手没有多少金币

2019-08-22 16:27发布

void chuankou_init(void){
        RCC->APB2ENR |=(1<<3);//使能PB
        RCC->APB1ENR |=(1<<18);//使能USART3
        //使用PB10  PB11
        AFIO->MAPR &=~(0x3<<4);
       
        //PB10推挽输出
        GPIOB->CRH &=~(0xF<<8);
        GPIOB->CRH |=(0xB<<8);
       
        //PB11上拉输入
        GPIOB->CRH &=~(0xF<<12);
        GPIOB->CRH |=(0x8<<12);
        GPIOB->ODR |=(1<<11);
       
       //usart3复位
        RCC->APB1RSTR |=(1<<18);
        RCC->APB1RSTR &=~(1<<18);
       


        //波特率
        USART3->BRR =(36*1000000)/(9600);
       
        //数据格式
        USART3->CR1 &=~(1<<12);
        USART3->CR2 &=~(0x3<<12);//
        USART3->CR1 |=(0x3<<2);//

        //串口使能
        USART3->CR1 |=(1<<13);
       
}

//发送数据
void usart_send_data(u8 data){
        while(!(USART3->SR & (1<<6))){}
        USART3->DR =data;
}
数据总是发不出去,麻烦帮忙看下错在哪,K1已经拨到RS232了,跳线帽拔掉了,与串口助手通信总是没有数据

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
正点原子
1楼-- · 2019-08-22 20:24
论坛搜索,早有答案。
开发板光盘扩展例程也有。GPS,蓝牙,都是用的串口3.
真是服了你们这些不搜索就提问的人啊。。。
rysefgf
2楼-- · 2019-08-22 20:42
@正点原子 原子哥帮帮忙啊
feng爸爸
3楼-- · 2019-08-22 21:07
额,是寄存器的
rysefgf
4楼-- · 2019-08-22 22:47
feng爸爸 发表于 2017-4-4 13:10
额,是寄存器的

对,刚开始学,不太明白
feng爸爸
5楼-- · 2019-08-22 22:47
 精彩回答 2  元偷偷看……
whyviking
6楼-- · 2019-08-23 01:38
你设置的多少波特率?感觉你波特率设置有问题

一周热门 更多>