原跑马灯例子程序,只是重新修改了下控制LED的引脚,何相关的初始化程序,对应的LED灯不闪灭,搞了2天了,很简单的程序不知如何下手了,请帮帮忙。PA0好用,别的就不受控制了。
#ifndef __LED_H
#define __LED_H
#include "sys.h"
//Mini STM32开发板
//LED驱动代码
//正点原子@ALIENTEK
//2010/5/27
//LED端口定义
#define LED0 PEout(12)
#define LED1 PEout(13)
#define LED2 PEout(14)
#define LED3 PEout(15)
#define beep PAout(0)
void LED_Init(void);//初始化
#endif
#include <stm32f10x_lib.h>
#include "led.h"
//////////////////////////////////////////////////////////////////////////////////
//本程序只供学习使用,未经作者许可,不得用于其它任何用途
//Mini STM32开发板
//LED驱动代码
//正点原子@ALIENTEK
//技术论坛:www.openedv.com
//修改日期:2010/5/27
//版本:V1.0
//版权所有,盗版必究。
//Copyright(C) 正点原子 2009-2019
//All rights reserved
//////////////////////////////////////////////////////////////////////////////////
//LED IO初始化
void LED_Init(void)
{
RCC->APB2ENR|=1<<2; //使能PORTA时钟
RCC->APB2ENR|=1<<6; //使能PORTE时钟
GPIOE->CRH&=0XFFFFFFFF;
GPIOE->CRH|=0X33330000;//推挽输出
GPIOA->CRL&=0XFFFFFFF0;
GPIOA->CRL|=0X00000003;//推挽输出
GPIOE->ODR|=1<<12;
GPIOE->ODR|=1<<13;
GPIOE->ODR|=1<<14;
GPIOE->ODR|=1<<15;
}
#include <stm32f10x_lib.h>
#include "sys.h"
#include "usart.h"
#include "delay.h"
#include "led.h"
//Mini STM32开发板范例代码1
//跑马灯实验
//正点原子@ALIENTEK
//技术论坛:www.openedv.com
int main(void)
{
Stm32_Clock_Init(9); //系统时钟设置
delay_init(72); //延时初始化
LED_Init(); //初始化与LED连接的硬件接口
while(1)
{
LED0=0;
LED1=1;
beep=0;
delay_ms(300);
LED0=1;
LED1=0;
beep=1;
delay_ms(300);
}
}
|