摘要:
stm32串口功能比较强大,但仅仅使用串口来说,是很简单的我们要做的事1.使能串口时钟2.复位串口3.设置串口波特率4.设置数据长度,停止位5.收发使能6.串口使能 1 int main() 2 { 3 u8 buf; 4 sysclk_init(9); 5 6 RCC->APB2ENR|=1APB2RSTR|=1APB2RSTR&=~(1BRR=0x1D4C;//设置波特率11 USART1->CR1|=0x200c;//停止位在USART->CR2中,默认为1位停止位12 //13 14 while(1)15 {16 ... 阅读全文
摘要:
1 void SPIx_Init(void) 2 { 3 RCC->APB2ENR|=1APB2ENR|=1CRL&=0X000FFFFF; 8 GPIOA->CRL|=0XBBB00000;//PA5.6.7复用推挽输出 9 //GPIOA->ODR|=0X7CR1&=~(1CR1&=~(1CR1&=~(1CR1|=0CR1|=0CR1|=1CR1|=1CR1|=0CR1|=0CR1|=1CR1|=1CR1|=1CR1|=1<<6; //1:开启SPI 0:关闭SPI24 } 阅读全文
摘要:
DMA可以认为连接两个“地址”数据通道。DMA共享系统总线,不占用CPU,所以可以实现快速数据传输。这里以DMA连接存储器(数组)和串口(USART1->DR)为例。 1 void DMA_init(void) 2 { 4 RCC->AHBENR|=1CPAR=(u32)&USART1->DR;//读外设串口数据寄存器 8 DMA1_Channel4->CMAR=(u32)tbuff;//存储器地址为temp地址 9 DMA1_Channel4->CNDTR=10;//一次接收字节数DMA_BUFF_SIZE11 //DNA->CCR配置12 DMA 阅读全文