www.pudn.com > hello_led_0.rar > Test.c


 
#include "basic_io.h" 
#include "LCD.h" 
#include "Open_I2C.h" 
#include "Test.h" 
 
//------------------------------------------------------------------------- 
void handle_button_interrupts() 
{ 
  outport(LED_GREEN_BASE,get_pio_edge_cap(BUTTON_PIO_BASE)*get_pio_edge_cap(BUTTON_PIO_BASE)); 
  set_pio_edge_cap(BUTTON_PIO_BASE,0x0); 
  usleep(BUTTON_STOP_TIME); 
  outport(LED_GREEN_BASE,LED_GREEN_VALUE); 
} 
//------------------------------------------------------------------------- 
void init_button_irq() 
{ 
  /* Enable all 4 button interrupts. */ 
  set_pio_irq_mask(BUTTON_PIO_BASE, BUTTON_INT_MASK); 
  /* Reset the edge capture register. */ 
  set_pio_edge_cap(BUTTON_PIO_BASE, 0x0); 
  /* Register the interrupt handler. */ 
  alt_irq_register( BUTTON_PIO_IRQ, NULL, (void*)handle_button_interrupts );  
} 
//------------------------------------------------------------------------- 
void basic_test() 
{ 
    //  Show LCD Test Text 
  LCD_Test(); 
   
  //  Refresh LED 
  outport(LED_GREEN_BASE,LED_GREEN_VALUE); 
  outport(LED_RED_BASE,LED_RED_VALUE); 
  //  Refresh SEG7 
  seg7_show(SEG7_DISPLAY_BASE,SEG7_VALUE); 
   
  //  I2C Core Initial & Set Freq = 100 Khz 
  I2C_Init(10000000/I2C_FREQ-1); 
   
  //  Check Video Encoder on I2C Bus, Address = 0x40 
  if(I2C_Send(0x40,1,1)) 
  printf("\nFind Video Encoder on I2C Bus, Address = 0x40.\n"); 
  else 
  printf("\nCan't Find Video Encoder on I2C Bus.\n"); 
   
  //  Check Audio CODEC on I2C Bus, Address = 0x34 
  if(I2C_Send(0x34,1,1)) 
  printf("\nFind Audio CODEC on I2C Bus, Address = 0x34.\n"); 
  else 
  printf("\nCan't Find Audio CODEC on I2C Bus.\n"); 
 
  //  Set Button PIO Interrupts 
  init_button_irq(); 
} 
//-------------------------------------------------------------------------