Register
Log in
Create new paste
Archive
Trending Pastes
ledx8module.c
BY:
a guest
|
SYNTAX:
C#
|
POSTED:
2012-02-08 21:18:50
|
EXPIRES:
Never
|
EXPOSURE:
Public
HITS:
61
Short URL:
|
DOWNLOAD
|
REPORT ABUSE
|
/* * ledx8module.c * * Created on: Feb 8, 2012 * Author: meltwater * * Provided "as is" free for use and modification, provided credit is given. */ #include "ledx8module.h" #include "hwmap_ledx8module.h" //Setup the GPIO ports for the ledX8module void ledx8moduleHwInit(void) { setHW_DIR(); setHW_OUT(); } void ledx8moduleAll(unsigned int LEDon) { ledx8moduleLED(LED_ALL,LEDon); //Set all } void ledx8moduleLED(unsigned int mask,unsigned int LEDon) { if(LEDon == LED_ON) { HW_OUT |= mask; //Set masked on } else { HW_OUT &= ~mask; //Set masked off } } void ledx8moduleLEDwait(unsigned int mask,unsigned int LEDon, unsigned int ms) { ledx8moduleLED(mask,LEDon); ledx8moduleWait(ms); } void ledx8moduleRampLED(unsigned int LEDside, unsigned int speed) { if(LEDside == LED_RT) { ledx8moduleAll(LED_OFF); //Turn each on ledx8moduleLEDwait(LED_R1R,LED_ON,speed); ledx8moduleLEDwait(LED_R2R,LED_ON,speed); ledx8moduleLEDwait(LED_YR,LED_ON,speed); ledx8moduleLEDwait(LED_GR,LED_ON,speed); //Turn each off ledx8moduleLEDwait(LED_GR,LED_OFF,speed); ledx8moduleLEDwait(LED_YR,LED_OFF,speed); ledx8moduleLEDwait(LED_R2R,LED_OFF,speed); ledx8moduleLEDwait(LED_R1R,LED_OFF,speed); } else if (LEDside == LED_LT) { //Turn each on ledx8moduleLEDwait(LED_R1L,LED_ON,speed); ledx8moduleLEDwait(LED_R2L,LED_ON,speed); ledx8moduleLEDwait(LED_YL,LED_ON,speed); ledx8moduleLEDwait(LED_GL,LED_ON,speed); //Turn each off ledx8moduleLEDwait(LED_GL,LED_OFF,speed); ledx8moduleLEDwait(LED_YL,LED_OFF,speed); ledx8moduleLEDwait(LED_R2L,LED_OFF,speed); ledx8moduleLEDwait(LED_R1L,LED_OFF,speed); } else { //Turn each on ledx8moduleLEDwait(LED_R1,LED_ON,speed); ledx8moduleLEDwait(LED_R2,LED_ON,speed); ledx8moduleLEDwait(LED_Y,LED_ON,speed); ledx8moduleLEDwait(LED_G,LED_ON,speed); //Turn each off ledx8moduleLEDwait(LED_G,LED_OFF,speed); ledx8moduleLEDwait(LED_Y,LED_OFF,speed); ledx8moduleLEDwait(LED_R2,LED_OFF,speed); ledx8moduleLEDwait(LED_R1,LED_OFF,speed); } ledx8moduleAll(LED_OFF); } //Cause a wait of ms (milliseconds) void ledx8moduleWait(volatile unsigned int ms) { volatile unsigned int i; for (ms ;ms>1;ms--) { for (i=0;i<=110;i++); } }
create a
new version
of this paste