|
#include<AT91SAM7S64.h>
/*-----------------*/
/* Leds Definition */
/*-----------------*/
/* PIO Flash PA PB PIN */
#define LED1 (1<<0) /* PA0 / PGMEN0 & PWM0 TIOA0 48 */
#define LED2 (1<<1) /* PA1 / PGMEN1 & PWM1 TIOB0 47 */
#define LED3 (1<<2) /* PA2 & PWM2 SCK0 44 */
#define LED4 (1<<3) /* PA3 & TWD NPCS3 43 */
#define NB_LEB 4
#define LED_MASK (LED1|LED2|LED3|LED4)
/*-------------------------*/
/* Push Buttons Definition */
/*-------------------------*/
/* PIO Flash PA PB PIN */
#define SW1_MASK (1<<17)
#define SW2_MASK (1<<18)
#define SW3_MASK (1<<19) /* PA19 / PGMD7 & RK FIQ 13 */
#define SW4_MASK (1<<23)
#define SW_MASK (SW1_MASK|SW2_MASK|SW3_MASK|SW4_MASK)
#define SW1 (1<<17) // PA17
#define SW2 (1<<18) // PA18
#define SW3 (1<<19) // PA19
#define SW4 (1<<23) // PA23
const int led_mask[8]= {LED1, LED2, LED3, LED4};
const int sw_mask[4]= {SW1_MASK, SW2_MASK, SW3_MASK, SW4_MASK};
void delay(unsigned int a)
{
unsigned int x,y;
for(x=a;x>0;x--)
for(y=1000;y>0;y--);
}
void main(void)
{
AT91C_BASE_PIOA->PIO_PER = LED_MASK; //使能IO功能
AT91C_BASE_PIOA->PIO_OER = LED_MASK; //GPIOA输出使能
AT91C_BASE_PIOA->PIO_OWER = LED_MASK; //使能同步输出功能
for (;;)
{
AT91C_BASE_PIOA->PIO_SODR = LED1;
delay(1000);
AT91C_BASE_PIOA->PIO_CODR = LED1;
delay(1000);
AT91C_BASE_PIOA->PIO_SODR = LED2;
delay(1000);
AT91C_BASE_PIOA->PIO_CODR = LED2;
delay(1000);
AT91C_BASE_PIOA->PIO_SODR = LED3;
delay(1000);
AT91C_BASE_PIOA->PIO_CODR = LED3;
delay(1000);
AT91C_BASE_PIOA->PIO_SODR = LED4;
delay(1000);
AT91C_BASE_PIOA->PIO_CODR = LED4;
delay(1000);
}// End for
}
这是我的第一个小程序,刚学,大家别见笑
我的问题就是:为啥我软擦除擦除不了?在哪里设置或者需要写一些什么额外的代码?
我感觉我的hex代码是直接写到flash中了,大家指点一下
每次必须硬件擦除才好使,郁闷啊 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。
|