| 
 
| /*Include---------------------------*/ #include"stm32f10x_lib.h"                //包含所有的头文件
 #include<stdio.h>
 
 //----------------函数声明--------------------
 void Delay_MS(u16 dly);
 void RCC_Configuration(void);
 void GPIO_Configuration(void);
 
 
 /*******************************************************************************
 * Function Name  : main
 * Description    : Main program.
 * Input          : None
 * Output         : None
 * Return         : None
 *******************************************************************************/
 //int main(void)
 //{
 //   GPIOC->CRL=0X33;
 //   GPIOC->ODR=0x03;
 //}
 int main(void)
 {
 #ifdef DEBUG
 debug();
 #endif
 //------------初始化------------
 RCC_Configuration();
 GPIO_Configuration();
 while(1)
 {
 GPIO_SetBits(GPIOC, GPIO_Pin_1);
 Delay_MS(500);
 GPIO_ResetBits(GPIOC, GPIO_Pin_1);
 Delay_MS(500);
 }
 
 }
 
 /*******************************************************************************
 * Function Name  : Delay_Ms
 * Description    : delay 1 ms.
 * Input          : dly (ms)
 * Output         : None
 * Return         : None
 *******************************************************************************/
 void Delay_MS(u16 dly)
 {
 u16 i,j;
 for(i=0;i<dly;i++)
 for(j=1000;j>0;j--);
 }
 
 /*******************************************************************************
 * Function Name  : RCC_Configuration
 * Description    : Configures the different system clocks.
 * Input          : None
 * Output         : None
 * Return         : None
 *******************************************************************************/
 void RCC_Configuration(void)
 {
 //----------使用外部RC晶振-----------
 RCC_DeInit();                        //初始化为缺省值
 RCC_HSEConfig(RCC_HSE_ON);        //使能外部的高速时钟
 while(RCC_GetFlagStatus(RCC_FLAG_HSERDY) == RESET);        //等待外部高速时钟使能就绪
 
 FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);        //Enable Prefetch Buffer
 FLASH_SetLatency(FLASH_Latency_2);                //Flash 2 wait state
 
 RCC_HCLKConfig(RCC_SYSCLK_Div1);                //HCLK = SYSCLK
 RCC_PCLK2Config(RCC_HCLK_Div1);                        //PCLK2 =  HCLK
 RCC_PCLK1Config(RCC_HCLK_Div2);                        //PCLK1 = HCLK/2
 RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);        //PLLCLK = 8MHZ * 9 =72MHZ
 RCC_PLLCmd(ENABLE);                        //Enable PLLCLK
 
 while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);        //Wait till PLLCLK is ready
 RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);        //Select PLL as system clock
 while(RCC_GetSYSCLKSource()!=0x08);                //Wait till PLL is used as system clock source
 
 //---------打开相应外设时钟--------------------
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);        //使能APB2外设的GPIOA的时钟
 }
 
 /*******************************************************************************
 * Function Name  : GPIO_Configuration
 * Description    : 初始化GPIO外设
 * Input          : None
 * Output         : None
 * Return         : None
 *******************************************************************************/
 void GPIO_Configuration(void)
 {
 GPIO_InitTypeDef        GPIO_InitStructure;                //声明一个结构体变量
 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;         //选择PA.3
 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;         //管脚频率为50MHZ
 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;         //输出模式为推挽输出
 GPIO_Init(GPIOA,&GPIO_InitStructure);                                 //初始化GPIOA寄存器
 }
 
 
 
 | 
 
  |