STM32一些常用的参数

(1)GPIO_InitStructure

1.GPIO_Pin

GPIO_Pin_x        //x = 0~15

2.GPIO_Mode

GPIO_Mode_IN        //输入模式
GPIO_Mode_OUT        //输出模式
GPIO_Mode_AF        //复用模式
GPIO_Mode_AN        //模拟模式

3.GPIO_Speed

GPIO_Low_Speed                        GPIO_Speed_2MHz
GPIO_Medium_Speed                GPIO_Speed_25MHz
GPIO_Fast_Speed                        GPIO_Speed_50MHz
GPIO_High_Speed                        GPIO_Speed_100MHz

① USART串口,若最大波特率只需115.2k,那用2M的速度就够了,既省电也噪声小。

② I2C接口,若使用400k波特率,若想把余量留大些,可以选用10M的GPIO引脚速度。

③ SPI接口,若使用18M或9M波特率,需要选用50M的GPIO的引脚速度。

4.GPIO_OType

GPIO_OType_PP                //推挽模式
GPIO_OType_OD               //开漏模式

STM32F1中貌似没有这个,直接在Mode后面加_PP,_OD

5.GPIO_PuPd

GPIO_PuPd_NOPULL                //浮空
GPIO_PuPd_UP                            //上拉
GPIO_PuPd_DOWN                  //下拉

(2)USART_InitStructure

1.USART_BaudRate

串口通信中常用的波特率为 4800、9600、115200 等

2.USART_WordLength

USART_WordLength_8b          //无奇偶校验位                                                                                  USART_WordLength_9b        //有奇偶校验位

3.USART_StopBits

USART_StopBits_1        //一个停止位

4.USART_Parity

USART_Parity_No        //无奇偶校验

5.USART_Mode

USART_Mode_Rx                //收

USART_Mode_Tx                 //发

USART_Mode_Rx | USART_Mode_Tx            //收发    

6.USART_HardwareFlowControl

硬件流控制

USART_HardwareFlowControl_None                //无硬件数据流控制

(3)NVIC_InitStructure

1.NVIC_IRQChannel

抢占通道选择

CAN1_TX_IRQn           
CAN1_RX0_IRQn          
CAN1_RX1_IRQn          
CAN1_SCE_IRQn          
EXTI9_5_IRQn           
TIM1_BRK_TIM9_IRQn     
TIM1_UP_TIM10_IRQn     
TIM1_TRG_COM_TIM11_IRQn
TIM1_CC_IRQn           
TIM2_IRQn              
TIM3_IRQn              
TIM4_IRQn              
I2C1_EV_IRQn           
I2C1_ER_IRQn           
I2C2_EV_IRQn           
I2C2_ER_IRQn           
SPI1_IRQn              
SPI2_IRQn              
USART1_IRQn            
USART2_IRQn            
USART3_IRQn            
EXTI15_10_IRQn         
RTC_Alarm_IRQn         
OTG_FS_WKUP_IRQn       
TIM8_BRK_TIM12_IRQn    
TIM8_UP_TIM13_IRQn     
TIM8_TRG_COM_TIM14_IRQn
TIM8_CC_IRQn           
DMA1_Stream7_IRQn      
FSMC_IRQn              
SDIO_IRQn              
TIM5_IRQn              
SPI3_IRQn              
UART4_IRQn             
UART5_IRQn             
TIM6_DAC_IRQn          
TIM7_IRQn              
DMA2_Stream0_IRQn      
DMA2_Stream1_IRQn      
DMA2_Stream2_IRQn      
DMA2_Stream3_IRQn      
DMA2_Stream4_IRQn      
ETH_IRQn               
ETH_WKUP_IRQn          
CAN2_TX_IRQn           
CAN2_RX0_IRQn          
CAN2_RX1_IRQn          
CAN2_SCE_IRQn          
OTG_FS_IRQn            
DMA2_Stream5_IRQn      
DMA2_Stream6_IRQn      
DMA2_Stream7_IRQn      
USART6_IRQn            
I2C3_EV_IRQn           
I2C3_ER_IRQn           
OTG_HS_EP1_OUT_IRQn    
OTG_HS_EP1_IN_IRQn     
OTG_HS_WKUP_IRQn       
OTG_HS_IRQn            
DCMI_IRQn              
CRYP_IRQn              
HASH_RNG_IRQn          
FPU_IRQn               

2.NVIC_IRQChannelPreemptionPriority

抢占优先级

3.NVIC_IRQChannelSubPriority

子优先级

在主函数中声明优先级分组

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_x);                //x = 0~4

4.NVIC_IRQChannelCmd

ENABLE                //使能

(4)EXTI_InitStructure

1.EXTI_Line

EXTI_Linex                //x对应exti线

2.EXTI_Mode

EXTI_Mode_Interrupt                //中断模式

EXTI_Mode_Event                        //事件模式

3.EXTI_Trigger

EXTI_Trigger_Rising                //上升沿触发

EXTI_Trigger_Falling                //下降沿触发

EXTI_Trigger_Rising_Falling                //下降和上升沿触发

4.EXTI_LineCmd

ENABLE               //使能

(5)TIM_TimeBaseStructure

1.TIM_Prescaler

fractional-1                        //预分频值为fractional

2.TIM_CounterMode

TIM_CounterMode_Up                //向上计数

TIM_CounterMode_Down                //向下计数

或中央对齐计数

3.TIM_Period

auto_data-1                //自动重装值

4.TIM_ClockDivision

TIM_CKD_DIV1                        //时钟分割定位1,也就是不分频

(6)TIM_OCInitStructure

1.TIM_OCMode

选择定时器模式

TIM_OCMode_Timing                          //冻结模式
TIM_OCMode_Active                          //相等时置有效电平
TIM_OCMode_Inactive                        //相等时置无效电平
TIM_OCMode_Toggle                          //相等时电平翻转
TIM_OCMode_PWM1    
TIM_OCMode_PWM2    

2.TIM_OCPolarity

输出比较极性

TIM_OCPolarity_Low                //有效高电平

TIM_OCPolarity_High                //有效高电平

3.TIM_OutputState

ENABLE                        //输出使能

猜你喜欢

转载自blog.csdn.net/npu_noj/article/details/127624573
今日推荐