一个很简单的小程序
stm32初学,很多都不太理解,希望大家给与指点
以下是程序,没用固件库
#include "stm32f10x.h"
void delay_ms(u8 ms);
int main(void){
RCC->CR = 0x01010000;
RCC->CFGR = 0x061c3000;
RCC->APB2ENR = 0x00000080; //enable GPIOF Clock
GPIOF->CRL=(u32)0X33000000;
GPIOF->CRH=(u32)0X00000033;//配置神舟III号LED灯使用的GPIOF6.7.8.9管脚模式
while(1)
{
GPIOF->ODR |= 0x000003C0;//灯灭
delay_ms(200);
GPIOF->ODR &= ~0x000003C0;//灯亮
delay_ms(200);
}
}
//延时函数
void delay_ms(u8 ms){
u16 i;
for(i=0;i<2000;i++)
{
for(;ms>1;ms--){}
}
}
试过很多大大小小延时函数的两个参数,弄了一下午,有时候灯一直亮,有时候灯一直灭,用软件仿真,全速事进入延时函数就出不来了
这是怎么回事呀
此帖出自
小平头技术问答
一周热门 更多>