#include "system.h"
#include "altera_avalon_pio_regs.h"
#include "alt_types.h"
#include "altera_avalon_timer_regs.h"
alt_u8 led = 0;
static void timer_interrupts(void* context, alt_u32 id)
{
IOWR_ALTERA_AVALON_TIMER_STATUS(TIMER_BASE, 0);
if(led==7) led=0;
else led=led+1;
}
int main ()
{
alt_irq_register(TIMER_IRQ, (void*) &led, timer_interrupts);
(上面这句报错,在building的时候,其实我也没完全理解这句的意思,能帮我解释一下最好)
IOWR_ALTERA_AVALON_TIMER_PERIODL(TIMER_BASE, 0x20);
IOWR_ALTERA_AVALON_TIMER_PERIODH(TIMER_BASE, 0xBE);
IOWR_ALTERA_AVALON_TIMER_CONTROL(TIMER_BASE, 7);
while (1)
{
switch(led)
{
case 0: IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, 0x01);
case 1: IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, 0x02);
case 2: IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, 0x04);
case 3: IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, 0x08);
case 4: IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, 0x10);
case 5: IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, 0x20);
case 6: IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, 0x40);
case 7: IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, 0x80);
default: IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE, 0x01);
}
}
return 0;
}
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |