From 08e815464df555ade0bdb3e05d788b62ad1c1af4 Mon Sep 17 00:00:00 2001 From: Nephirus Date: Tue, 18 Sep 2012 22:30:56 +0200 Subject: [PATCH] old code cleanup --- ARDUINO/CNCDUINO.pde | 130 -------------- DUINOCNC.gambas | Bin 9686 -> 0 bytes FMain.class | 392 ------------------------------------------- FMain.form | 180 -------------------- Joystick.class | 62 ------- 5 files changed, 764 deletions(-) delete mode 100644 ARDUINO/CNCDUINO.pde delete mode 100755 DUINOCNC.gambas delete mode 100644 FMain.class delete mode 100644 FMain.form delete mode 100644 Joystick.class diff --git a/ARDUINO/CNCDUINO.pde b/ARDUINO/CNCDUINO.pde deleted file mode 100644 index 67dc108..0000000 --- a/ARDUINO/CNCDUINO.pde +++ /dev/null @@ -1,130 +0,0 @@ -#include -#include - - -#define STEPS 300 - -Servo myservo; - -Stepper stepperA(STEPS, 5, 3, 2, 4); -Stepper stepperB(STEPS, 9, 7, 6, 8); -Stepper stepperC(STEPS, 13, 11, 10, 12); - - -int SrvPos = 0; -int inByte = 0; - -void setup() - -{ - Serial.begin(115200); - stepperA.setSpeed(50); - stepperB.setSpeed(50); - stepperC.setSpeed(50); - myservo.attach(14); -} - -void loop() -{ - if (Serial.available() > 0) { - inByte = Serial.read(); - -if (inByte == 4){ - stepperA.step(1); -} - -if (inByte == 5){ - stepperA.step(-1); -} - -if (inByte == 6){ - stepperB.step(1); -} - -if (inByte == 7){ - stepperB.step(-1); -} - -if (inByte == 8){ - stepperC.step(1); -} - -if (inByte == 9){ - stepperC.step(-1); -} - -if ((inByte >= 20) and (inByte <= 100)){ - stepperA.setSpeed(inByte); - stepperB.setSpeed(inByte); - stepperC.setSpeed(inByte); -} - -if (inByte == 110){ - digitalWrite(2, LOW); - digitalWrite(3, LOW); - digitalWrite(4, LOW); - digitalWrite(5, LOW); - digitalWrite(6, LOW); - digitalWrite(7, LOW); - digitalWrite(8, LOW); - digitalWrite(9, LOW); - digitalWrite(10, LOW); - digitalWrite(11, LOW); - digitalWrite(12, LOW); - digitalWrite(13, LOW); - -} - -if (inByte == 111){ - - digitalWrite(2, LOW); - digitalWrite(3, LOW); - digitalWrite(4, LOW); - digitalWrite(5, LOW); - digitalWrite(6, LOW); - digitalWrite(7, LOW); - digitalWrite(8, LOW); - digitalWrite(9, LOW); - digitalWrite(10, LOW); - digitalWrite(11, LOW); - digitalWrite(12, LOW); - digitalWrite(13, LOW); - - digitalWrite(2, HIGH); - digitalWrite(6, HIGH); - digitalWrite(10, HIGH); - -} - -if (inByte == 112){ - SrvPos = SrvPos + 1; - if (SrvPos > 180) SrvPos = 180; - myservo.write(SrvPos); -} - - -if (inByte == 113){ - SrvPos = SrvPos - 1; - if (SrvPos < 1) SrvPos = 1; - myservo.write(SrvPos); -} - -if (inByte == 114){ - SrvPos = 1; - myservo.write(SrvPos); -} - -if (inByte == 115){ - SrvPos = 90; - myservo.write(SrvPos); -} - -if (inByte == 116){ - SrvPos = 180; - myservo.write(SrvPos); -} - - - } -} - diff --git a/DUINOCNC.gambas b/DUINOCNC.gambas deleted file mode 100755 index f4a9bbbf45f6bb40e50ff9f03c21cdc15b83fe29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9686 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 z 0 AND Step_IDX = TextBox3.Text THEN -Timer1.Enabled = FALSE -Step_IDX = 0 -CheckBox4.Value = FALSE -Step_WDT = FALSE - WRITE #SerialPort1, Chr$(110) -ENDIF - -TextBox4.Text = Step_IDX - -END - -PUBLIC SUB Button4_Click() - -WRITE #SerialPort1, Chr$(TextBox1.Text) - -END - -PUBLIC SUB Button5_Click() - - Timer1.Delay = TextBox2.Text - -END - -PUBLIC SUB Button6_Click() - - WRITE #SerialPort1, Chr$(110) - -END - -PUBLIC SUB Button7_Click() - - WRITE #SerialPort1, Chr$(111) - - -END - -PUBLIC SUB Button9_Click() - - Button9.Enabled = FALSE - Button8.Enabled = TRUE - Motor_A_Dir = 1 - -END - -PUBLIC SUB Button8_Click() - - Button9.Enabled = TRUE - Button8.Enabled = FALSE - Motor_A_Dir = 0 - -END - -PUBLIC SUB Button11_Click() - - Button11.Enabled = FALSE - Button10.Enabled = TRUE - Motor_B_Dir = 1 - - -END - -PUBLIC SUB Button13_Click() - - Button13.Enabled = FALSE - Button12.Enabled = TRUE - Motor_C_Dir = 1 - - -END - -PUBLIC SUB Button10_Click() - - Button11.Enabled = TRUE - Button10.Enabled = FALSE - Motor_B_Dir = 0 - - -END - -PUBLIC SUB Button12_Click() - - Button13.Enabled = TRUE - Button12.Enabled = FALSE - Motor_C_Dir = 0 - - -END - -PUBLIC SUB Button14_Click() - DIM linc AS Integer - DIM lin AS String - - DIM arr_strings AS String[] - -arr_strings = Split(File.LOAD("/home/tomsuch/set-1.cnc"), "\n") - -FOR EACH lin IN arr_strings -linc = linc + 1 - - - -TextBox6.Text = linc -' lin -TextBox5.Text = lin - - -IF Mid(lin, 1, 1) = "*" THEN -TextBox8.Text = Mid(lin, 2, 40) -ELSE - -IF lin <> "" THEN - -TextBox1.Text = Val((Mid(lin, 7, 3))) -TextBox2.Text = Val((Mid(lin, 11, 3))) -TextBox7.text = Val((Mid(lin, 1, 5))) - -Button4_Click -Button5_Click - - -TextBox3.Text = Val((Mid(lin, 22, 4))) - -IF Mid(lin, 15, 1) = 1 THEN CheckBox1.Value = TRUE -IF Mid(lin, 15, 1) = 0 THEN CheckBox1.Value = FALSE - -IF Mid(lin, 16, 1) = 1 THEN Button9_Click -IF Mid(lin, 16, 1) = 0 THEN Button8_Click - - - -IF Mid(lin, 17, 1) = 1 THEN CheckBox2.Value = TRUE -IF Mid(lin, 17, 1) = 0 THEN CheckBox2.Value = FALSE - -IF Mid(lin, 18, 1) = 1 THEN Button11_Click -IF Mid(lin, 18, 1) = 0 THEN Button10_Click - - -IF Mid(lin, 19, 1) = 1 THEN CheckBox3.Value = TRUE -IF Mid(lin, 19, 1) = 0 THEN CheckBox3.Value = FALSE - -IF Mid(lin, 20, 1) = 1 THEN Button13_Click -IF Mid(lin, 20, 1) = 0 THEN Button12_Click - - -CheckBox4.Value = TRUE -Step_WDT = TRUE -Timer1.Enabled = TRUE -WHILE Step_WDT = TRUE -WAIT -WEND -ENDIF -ENDIF - NEXT - -END - -PUBLIC SUB TextBox5_KeyPress() - - - -END - -PUBLIC SUB Timer2_Timer() - -TextBox13.Text = joy_bt_up -TextBox14.Text = joy_bt_down - - - - TextBox11.Text = joy_x - TextBox12.Text = joy_y - -IF joy_y < 0 THEN - Button12_Click - CheckBox3.Value = TRUE - TextBox3.text = 1 -'' CheckBox4.Value = TRUE -''Timer1.Enabled = TRUE -ENDIF - -IF joy_y > 0 THEN - Button13_Click - CheckBox3.Value = TRUE - TextBox3.text = 1 -'' CheckBox4.Value = TRUE -''Timer1.Enabled = TRUE -ENDIF - -IF joy_x < 0 THEN - Button10_Click - CheckBox2.Value = TRUE - TextBox3.text = 1 -'' CheckBox4.Value = TRUE -''Timer1.Enabled = TRUE -ENDIF - -IF joy_x > 0 THEN - Button11_Click - CheckBox2.Value = TRUE - TextBox3.text = 1 -'' CheckBox4.Value = TRUE -''Timer1.Enabled = TRUE -ENDIF - -IF joy_bt_up = 1 THEN - Button8_Click - CheckBox1.Value = TRUE - TextBox3.text = 1 -'' CheckBox4.Value = TRUE -''Timer1.Enabled = TRUE -ENDIF - -IF joy_bt_down = 1 THEN - Button9_Click - CheckBox1.Value = TRUE - TextBox3.text = 1 -'' CheckBox4.Value = TRUE -''Timer1.Enabled = TRUE -ENDIF - -IF joy_bt_up = 0 AND IF joy_bt_down = 0 THEN CheckBox1.Value = FALSE - - - -IF joy_x = 0 THEN CheckBox2.Value = FALSE -IF joy_y = 0 THEN CheckBox3.Value = FALSE - -IF joy_x = 0 AND joy_y = 0 AND joy_bt_down = 0 AND joy_bt_up = 0 THEN Button6_Click - -' joy_x = 0 -'joy_y = 0 - - -END - -PUBLIC SUB Button15_Click() - - Timer2.Enabled = TRUE - -END - -PUBLIC SUB Button16_Click() - - Timer2.Enabled = FALSE - -END - -PUBLIC SUB Button17_Click() - - WRITE #SerialPort1, Chr$(112) - -END - -PUBLIC SUB Button18_Click() - - WRITE #SerialPort1, Chr$(113) - -END - -PUBLIC SUB Button19_Click() - - WRITE #SerialPort1, Chr$(114) - -END - -PUBLIC SUB Button20_Click() - - WRITE #SerialPort1, Chr$(115) - -END - -PUBLIC SUB Button21_Click() - - WRITE #SerialPort1, Chr$(116) - -END diff --git a/FMain.form b/FMain.form deleted file mode 100644 index d181129..0000000 --- a/FMain.form +++ /dev/null @@ -1,180 +0,0 @@ -# Gambas Form File 2.0 - -{ Form Form - MoveScaled(0,0,114,47) - Text = ("") - { Button1 Button - MoveScaled(3,4,25,7) - Text = ("CONNECT") - } - { SerialPort1 #SerialPort - #X = 686 - #Y = 161 - } - { Timer1 #Timer - #X = 728 - #Y = 161 - Delay = 100 - } - { Button2 Button - MoveScaled(95,4,17,3) - Text = ("START") - } - { Button3 Button - MoveScaled(95,8,17,3) - Text = ("STOP") - } - { TextBox1 TextBox - MoveScaled(34,4,24,3) - Text = ("30") - } - { Button4 Button - MoveScaled(60,4,34,3) - Text = ("CAS KROKU (20-100)") - } - { TextBox2 TextBox - MoveScaled(34,8,24,3) - Text = ("15") - } - { Button5 Button - MoveScaled(60,8,34,3) - Text = ("CAS CIKLU (1-200) ") - } - { Button6 Button - MoveScaled(95,12,17,2) - Text = ("ODBRZDIT") - } - { Button7 Button - MoveScaled(95,16,17,3) - Text = ("ZABRZDIT") - } - { CheckBox1 CheckBox - MoveScaled(70,17,14,3) - Text = ("MOTOR A") - } - { CheckBox2 CheckBox - MoveScaled(70,21,14,3) - Text = ("MOTOR B") - } - { CheckBox3 CheckBox - MoveScaled(70,25,14,3) - Text = ("MOTOR C") - } - { Button8 Button - MoveScaled(60,16,8,3) - Text = ("<<<") - } - { Button9 Button - MoveScaled(85,16,9,2) - Text = (">>>") - } - { Button10 Button - MoveScaled(60,21,8,3) - Text = ("<<<") - } - { Button11 Button - MoveScaled(85,21,9,3) - Text = (">>>") - } - { Button12 Button - MoveScaled(60,26,8,3) - Text = ("<<<") - } - { Button13 Button - MoveScaled(85,26,9,3) - Text = (">>>") - } - { TextBox3 TextBox - MoveScaled(3,21,15,3) - Text = ("500") - } - { TextBox4 TextBox - MoveScaled(19,21,15,3) - Text = ("") - } - { CheckBox4 CheckBox - MoveScaled(43,22,14,2) - Text = ("STEP COUNT") - } - { Button14 Button - MoveScaled(3,26,55,3) - Text = ("OPEN + START SET") - } - { TextBox5 TextBox - MoveScaled(26,17,32,3) - Text = ("SET COMMANDS") - Alignment = Align.Center - } - { TextBox6 TextBox - MoveScaled(3,17,10,3) - Text = ("SET LINES") - Alignment = Align.Center - } - { TextBox7 TextBox - MoveScaled(14,17,11,3) - Text = ("SET STEPS") - Alignment = Align.Center - } - { TextBox8 TextBox - MoveScaled(3,13,55,3) - Text = (" -- SET INFO --") - Alignment = Align.Center - } - { TextBox9 TextBox - MoveScaled(3,30,11,3) - Text = ("TextBox9") - } - { TextBox10 TextBox - MoveScaled(15,30,11,3) - Text = ("TextBox10") - } - { TextBox11 TextBox - MoveScaled(27,30,11,3) - Text = ("TextBox11") - } - { TextBox12 TextBox - MoveScaled(39,30,11,3) - Text = ("TextBox12") - } - { Timer2 #Timer - #X = 728 - #Y = 203 - Delay = 30 - } - { Button15 Button - MoveScaled(60,30,16,3) - Text = ("JOY START") - } - { Button16 Button - MoveScaled(78,30,16,3) - Text = ("JOY STOP") - } - { TextBox13 TextBox - MoveScaled(3,34,23,3) - Text = ("TextBox13") - } - { TextBox14 TextBox - MoveScaled(27,34,23,3) - Text = ("TextBox14") - } - { Button17 Button - MoveScaled(60,35,16,3) - Text = ("SERVO +") - } - { Button18 Button - MoveScaled(78,35,16,3) - Text = ("SERVO -") - } - { Button19 Button - MoveScaled(60,40,9,3) - Text = ("Servo 0") - } - { Button20 Button - MoveScaled(71,40,11,3) - Text = ("Servo 90") - } - { Button21 Button - MoveScaled(84,40,10,3) - Text = ("Servo 180") - } -} diff --git a/Joystick.class b/Joystick.class deleted file mode 100644 index bdfe666..0000000 --- a/Joystick.class +++ /dev/null @@ -1,62 +0,0 @@ -' Gambas class file - -' Joystick.class - represents a HID game device containing -' one or more joysticks and buttons -' -' Copyright 2008 Rob Kudla, Binara, Inc. -' -' This program is free software; you can redistribute it and/or modify -' it under the terms of the GNU General Public License version 2 as -' published by the Free Software Foundation. - -PRIVATE jsdev AS Process - -PUBLIC SUB _new(OPTIONAL device AS String) - - IF device = "" THEN device = "/dev/input/js0" - ' the interpreter dies when we try to read from /dev/input/js0 as a file - ' saying "invalid argument", so we have to run cat - jsdev = EXEC ["cat", device] FOR READ AS "Device" - -END - -PUBLIC SUB Close() - - ' kill the cat process if it's still going - TRY jsdev.Kill - -END - -PUBLIC SUB Device_Read() - - DIM stamp AS Integer - DIM value AS Short - DIM myevent AS Byte - DIM number AS Byte - DIM test AS String - - ' each joystick event produces 8 bytes - READ #jsdev, stamp, 4 ' 4 bytes - READ #jsdev, value, 2 ' 2 bytes - READ #jsdev, myevent, 1 ' 1 byte - READ #jsdev, number, 1 ' 1 byte - - IF myevent AND 1 THEN ' button - IF value THEN ' pressed - PRINT "Got button press" - RAISE ButtonPress(number) - ELSE ' released - PRINT "Got button release" - RAISE ButtonRelease(number) - ENDIF - ELSE IF myevent AND 2 THEN ' joystick axis - RAISE StickMove(number, value) - ELSE - PRINT "Unhandled event: myevent is " & myevent - ENDIF - -END - -EVENT ButtonPress(ButtonNum AS Integer) -EVENT ButtonRelease(ButtonNum AS Integer) -EVENT StickMove(Axis AS Integer, Position AS Integer)