新手上路
- 积分
- 25
- 金钱
- 25
- 注册时间
- 2017-4-4
- 在线时间
- 4 小时
|

楼主 |
发表于 2017-4-5 21:16:29
|
显示全部楼层
//3õê¼»ˉIO ′®¿ú3
//pclk1 CLK1ê±ÖóÆμÂê(Mhz)
//bound:2¨ìØÂê
void usart3_init(u32 pclk1,u32 bound)
{
RCC->APB2ENR|=1<<3; //ê1ÄüPORTB¿úê±Öó
GPIOB->CRH&=0XFFFF00FF; //IO×′ì¬éèÖÃ
GPIOB->CRH|=0X00008B00; //IO×′ì¬éèÖÃ
RCC->APB1ENR|=1<<18; //ê1Äü′®¿úê±Öó
RCC->APB1RSTR|=1<<18; //¸′λ′®¿ú3
RCC->APB1RSTR&=~(1<<18);//í£Ö1¸′λ
//2¨ìØÂêéèÖÃ
USART3->BRR=(pclk1*1000000)/(bound);// 2¨ìØÂêéèÖÃ
USART3->CR1|=0X200C; //1λí£Ö1,ÎTD£Ñéλ.
//ê1Äü½óêÕÖD¶Ï
USART3->CR1|=1<<5; //½óêÕ»o3åÇø·Ç¿ÕÖD¶Ïê1Äü
MY_NVIC_Init(0,1,USART3_IRQn,2);//×é2
TIM7_Int_Init(99,7199); //10msÖD¶Ï
TIM7->CR1&=~(1<<0); //1رն¨ê±Æ÷7
USART3_RX_STA=0; //Çåáã
}
我知道,我搜索了以前的帖子,这就是GSM的串口3的初始化,我上面写的代码应该和这个应该只差了中断,必须开中断才能初始化? |
|