Various bug fixes
diff --git a/wiringpi2-class.py b/wiringpi2-class.py
new file mode 100644
index 0000000..822c18c
--- /dev/null
+++ b/wiringpi2-class.py
@@ -0,0 +1,162 @@
+%pythoncode %{
+class nes(object):
+ def setupNesJoystick(self,*args):
+ return setupNesJoystick(*args)
+ def readNesJoystick(self,*args):
+ return readNesJoystick(*args)
+
+class Serial(object):
+ device = '/dev/ttyAMA0'
+ baud = 9600
+ serial_id = 0
+ def printf(self,*args):
+ return serialPrintf(self.serial_id,*args)
+ def dataAvail(self,*args):
+ return serialDataAvail(self.serial_id,*args)
+ def getchar(self,*args):
+ return serialGetchar(self.serial_id,*args)
+ def putchar(self,*args):
+ return serialPutchar(self.serial_id,*args)
+ def puts(self,*args):
+ return serialPuts(self.serial_id,*args)
+ def __init__(self,device,baud):
+ self.device = device
+ self.baud = baud
+ self.serial_id = serialOpen(self.device,self.baud)
+ def __del__(self):
+ serialClose(self.serial_id)
+
+class GPIO(object):
+ WPI_MODE_PINS = 0
+ WPI_MODE_GPIO = 1
+ WPI_MODE_GPIO_SYS = 2
+ WPI_MODE_PHYS = 3
+ WPI_MODE_PIFACE = 4
+ WPI_MODE_UNINITIALISED = -1
+
+ INPUT = 0
+ OUTPUT = 1
+ PWM_OUTPUT = 2
+ GPIO_CLOCK = 3
+
+ LOW = 0
+ HIGH = 1
+
+ PUD_OFF = 0
+ PUD_DOWN = 1
+ PUD_UP = 2
+
+ PWM_MODE_MS = 0
+ PWM_MODE_BAL = 1
+
+ INT_EDGE_SETUP = 0
+ INT_EDGE_FALLING = 1
+ INT_EDGE_RISING = 2
+ INT_EDGE_BOTH = 3
+
+ LSBFIRST = 0
+ MSBFIRST = 1
+
+ MODE = 0
+ def __init__(self,pinmode=0):
+ self.MODE=pinmode
+ if pinmode==self.WPI_MODE_PINS:
+ wiringPiSetup()
+ if pinmode==self.WPI_MODE_GPIO:
+ wiringPiSetupGpio()
+ if pinmode==self.WPI_MODE_GPIO_SYS:
+ wiringPiSetupSys()
+ if pinmode==self.WPI_MODE_PHYS:
+ wiringPiSetupPhys()
+ if pinmode==self.WPI_MODE_PIFACE:
+ wiringPiSetupPiFace()
+
+ def delay(self,*args):
+ delay(*args)
+ def delayMicroseconds(self,*args):
+ delayMicroseconds(*args)
+ def millis(self):
+ return millis()
+ def micros(self):
+ return micros()
+
+ def piHiPri(self,*args):
+ return piHiPri(*args)
+
+ def piBoardRev(self):
+ return piBoardRev()
+ def wpiPinToGpio(self,*args):
+ return wpiPinToGpio(*args)
+ def setPadDrive(self,*args):
+ return setPadDrive(*args)
+ def getAlt(self,*args):
+ return getAlt(*args)
+ def digitalWriteByte(self,*args):
+ return digitalWriteByte(*args)
+
+ def pwmSetMode(self,*args):
+ pwmSetMode(*args)
+ def pwmSetRange(self,*args):
+ pwmSetRange(*args)
+ def pwmSetClock(self,*args):
+ pwmSetClock(*args)
+ def gpioClockSet(self,*args):
+ gpioClockSet(*args)
+ def pwmWrite(self,*args):
+ pwmWrite(*args)
+
+ def pinMode(self,*args):
+ pinMode(*args)
+
+ def digitalWrite(self,*args):
+ digitalWrite(*args)
+ def digitalRead(self,*args):
+ return digitalRead(*args)
+ def digitalWriteByte(self,*args):
+ digitalWriteByte(*args)
+
+ def analogWrite(self,*args):
+ analogWrite(*args)
+ def analogRead(self,*args):
+ return analogRead(*args)
+
+ def shiftOut(self,*args):
+ shiftOut(*args)
+ def shiftIn(self,*args):
+ return shiftIn(*args)
+
+ def pullUpDnControl(self,*args):
+ return pullUpDnControl(*args)
+
+ def waitForInterrupt(self,*args):
+ return waitForInterrupt(*args)
+ def wiringPiISR(self,*args):
+ return wiringPiISR(*args)
+
+ def softPwmCreate(self,*args):
+ return softPwmCreate(*args)
+ def softPwmWrite(self,*args):
+ return sofPwmWrite(*args)
+
+ def softToneCreate(self,*args):
+ return softToneCreate(*args)
+ def softToneWrite(self,*args):
+ return softToneWrite(*args)
+
+ def lcdHome(self,*args):
+ return lcdHome(self,*args)
+ def lcdCLear(self,*args):
+ return lcdClear(self,*args)
+ def lcdSendCommand(self,*args):
+ return lcdSendCommand(self,*args)
+ def lcdPosition(self,*args):
+ return lcdPosition(self,*args)
+ def lcdPutchar(self,*args):
+ return lcdPutchar(self,*args)
+ def lcdPuts(self,*args):
+ return lcdPuts(self,*args)
+ def lcdPrintf(self,*args):
+ return lcdPrintf(self,*args)
+ def lcdInit(self,*args):
+ return lcdInit(self,*args)
+%}