建STM32工程注意事项

来源:互联网 发布:中国单晶叶片 知乎 编辑:程序博客网 时间:2024/05/16 16:23

如何添加一个新功能:

1例如加入can,先将can.c添加到工程里。main.c中需要包含#include “can.h”。

2. stm32f10x_conf.h需要将//#include "stm32f10x_can.h"前面的反斜杠去掉,就是将其包含进来。

3在中断函数stm32f10x_it.c里,需要添加原先can自己的中断函数void USB_LP_CAN1_RX0_IRQHandler(void)。

4然后再配置管脚、时钟、中断向量表。

5对于用内部时钟的管脚配置:usart1使用内部时钟的管脚配置。

   时钟配置:

    void RCC_Configuration(void)

   {

    RCC_HSICmd(ENABLE);//使能内部高速晶振 ;
    RCC_SYSCLKConfig(RCC_SYSCLKSource_HSI);//选择内部高速时钟作为系统时钟SYSCLOCK=8MHZ 
    RCC_HCLKConfig(RCC_SYSCLK_Div1);//选择HCLK时钟源为系统时钟SYYSCLOCK
   /* Enable GPIO clock */
   RCC_APB2PeriphClockCmd(USARTy_GPIO_CLK | USARTz_GPIO_CLK | RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOB, ENABLE);

   #ifndef USE_STM3210C_EVAL
       /* Enable USARTy Clock */
       RCC_APB2PeriphClockCmd(USARTy_CLK, ENABLE); 
  #else
       /* Enable USARTy Clock */
       RCC_APB1PeriphClockCmd(USARTy_CLK, ENABLE); 
 #endif
      /* Enable USARTz Clock */
      RCC_APB1PeriphClockCmd(USARTz_CLK, ENABLE);  
//  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB , ENABLE);//使能APB2外设GPIOB时钟

  }

管脚配置,中断向量表配置跟外部时钟一样配。

0 0
原创粉丝点击