Advertisement
Guest User

1

a guest
Jan 28th, 2014
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //EXPERIMENT # 2 - EXERCISE 1
  2. //BALMORI, KEVIN M. / GROUP # 4
  3. //JANUARY 27, 2014
  4. //DIFFERENT LED SEQUENCE USING SENSORS
  5.  
  6.  
  7. #include<ez8.h>
  8. #define sw1 (PBIN&0x01)
  9. #define sw2 (PBIN&0x02)
  10. #define sw3 (PBIN&0x04)
  11. #define sw4 (PBIN&0x08)
  12. void delay_ms(unsigned int delay);
  13.  
  14. void main()
  15. {
  16.     PADD = 0X00;// Data Direction=Output;
  17.     PAAF = 0X00;// Alternate Function=Normal;
  18.     PAOC = 0X00;// Output Control=Push/pull;
  19.     PAHDE = 0XFF;// High Drive Enable=15mA;
  20.    
  21.     PBDD |= 0X0F;// Data Direction=Input;
  22.     PBAF &=~0X0F;// Alternate Function=Normal;
  23.    
  24.     while(1)
  25.     {
  26.         if ((sw1==0)&&(sw2!=0)&&(sw3!=0)&&(sw4!=0))
  27.         {
  28.             PAOUT =~0xC0;delay_ms(500);
  29.             PAOUT =~0x60;delay_ms(500);
  30.             PAOUT =~0x30;delay_ms(500);
  31.             PAOUT =~0x18;delay_ms(500);
  32.             PAOUT =~0x0C;delay_ms(500);
  33.             PAOUT =~0x06;delay_ms(500);
  34.             PAOUT =~0x03;delay_ms(500);
  35.         }
  36.         else if ((sw1==0)&&(sw2!=0)&&(sw3==0)&&(sw4==0))
  37.         {
  38.             PAOUT =~0x05;delay_ms(500);
  39.             PAOUT =~0x0A;delay_ms(500);
  40.             PAOUT =~0x14;delay_ms(500);
  41.             PAOUT =~0x28;delay_ms(500);
  42.             PAOUT =~0x50;delay_ms(500);
  43.             PAOUT =~0xA0;delay_ms(500);          
  44.         }
  45.         else if ((sw1!=0)&&(sw2!=0)&&(sw3==0)&&(sw4!=0))
  46.         {
  47.             PAOUT =~0x81;delay_ms(500);
  48.             PAOUT =~0x42;delay_ms(500);
  49.             PAOUT =~0x24;delay_ms(500);
  50.             PAOUT =~0x18;delay_ms(500);
  51.         }
  52.         else if ((sw1==0)&&(sw2==0)&&(sw3==0)&&(sw4!=0))
  53.         {
  54.             PAOUT =~0x01;delay_ms(500);
  55.             PAOUT =~0x03;delay_ms(500);
  56.             PAOUT =~0x07;delay_ms(500);
  57.             PAOUT =~0x0F;delay_ms(500);
  58.             PAOUT =~0x1F;delay_ms(500);
  59.             PAOUT =~0x3F;delay_ms(500);
  60.             PAOUT =~0x7F;delay_ms(500);
  61.             PAOUT =~0xFF;delay_ms(500);
  62.         }
  63.         else
  64.             PAOUT =~0xFF;
  65.     }
  66. }
  67.    
  68. void delay_ms(unsigned int delay)
  69. {
  70.     unsigned int x,y;
  71.     for(x=0;x<=delay;x++)
  72.         for(y=0;y<=512;y++);
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement