板子到手前就先看了关于固件库的使用,然后自己建了一个工程模板,原子的板到手后,因为电脑坏了(CPU挂了),没办法弄程序,电脑修好了以后,看着固件库里面的GPIO的说明,哈哈,把LED点亮了,
真激动啊,想当年用51把LED点亮了,也是那么的激动,用C语言在屏幕上输出“Hello World”还是那么激动!
哈哈,固件库使用的是3.0的,哈哈, 看下程序吧,用库真的太方便了。
#include "stm32f10x.h"
void delay( unsigned short cnt )
{
unsigned short i,j;
for ( i = 0; i < cnt; i++ )
{
for ( j = 0; j < 1000; j++ )
{
}
}
}
void Led_Init( void )
{
GPIO_InitTypeDef Temp;
RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA, ENABLE );
RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOD, ENABLE );
Temp.GPIO_Pin = GPIO_Pin_8;
Temp.GPIO_Speed = GPIO_Speed_50MHz;
Temp.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_DeInit( GPIOA );
GPIO_Init( GPIOA, &Temp );
GPIO_SetBits( GPIOA, GPIO_Pin_8 );
Temp.GPIO_Pin = GPIO_Pin_2;
Temp.GPIO_Speed = GPIO_Speed_50MHz;
Temp.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_DeInit( GPIOD );
GPIO_Init( GPIOD, &Temp );
GPIO_SetBits( GPIOD, GPIO_Pin_2 );
}
int main( void )
{
SystemInit();
Led_Init();
while( 1 )
{
delay( 1000 );
GPIO_SetBits( GPIOD, GPIO_Pin_2 );
GPIO_ResetBits( GPIOA, GPIO_Pin_8 );
delay( 1000 );
GPIO_SetBits( GPIOA, GPIO_Pin_8 );
GPIO_ResetBits( GPIOD, GPIO_Pin_2 );
}
}
|