Willkommen! Anmelden Ein neues Profil erzeugen

Erweiterte Suche

Schreiben einer neuen pin.h datei für anfänger

geschrieben von kk24 
Schreiben einer neuen pin.h datei für anfänger
01. February 2017 08:36
Hallo liebe Community,
Falls dieser Beitrag im falschen bereich erstellt worden ist, bitte einfach richtig verschieben.
Es geht hier um ein Thema das bestimmt schon mehrfach behandelt worden ist, leider konnte ich über die Suche keine passende Lösung finden.
Kurze Erklärung zu meinem Problem:

Vor kurzem einen 3D Drucker gekauft Anet A8 lief auch ne zeit lang recht gut.
Dann Kabelbruch am Heizbett und Kurzschluß am Cotrolboard.
Bei der Ersatzteil Recherche den entschluß gefasst Den Drucker umzubauen und zu erweitern.
Ich habe mich dann für ein Trigorilla ATMega2560-16U entschieden.
Ich weiss nicht gerade die beste wahl , aber ist nun so. Bin Neuling in der Materie.
Das Problem nun ist das dieses Board nicht in Marlin gelistet ist.
Es soll auch die Konfiguration von Ramps 1.4 gehen ( zeigt mir beim Kompilieren ständig fehler an )
Beim suchen nach lösungen bin ich auf viele Infos gestossen und haben mir etwas mehr einblick gegeben.
Ein dickes DANKE an die erfahrenen Autoren

Da ich leider keinerlei Programmier Kenntnisse habe, muss ich mein Proplem etwas anderst angehen.
Ich bin darauf gekommen das es nicht funzt weil mein Pinmapping falsch ist.
Beim versuch die Datei pins.h und pins_ramp.h anzupassen hab ich nur chaos verursacht.
Dabei kamm mir die Idee eine neue Datei speziel für mein Board zu schreiben und diese zufügen so das sie unter config.h zur auswahl steht.
Das müsste doch mein Problem lösen ?

Wenn Ja , wie mach ich das ?
Wie muss ich die Datei schreiben ?
Ich habe keine Programmier kentnisse ich würde nur vorhandenen Code Übernehmen,
und ihn dann denn entsprechenten stellen umschreiben.
Wie (Name) und wo muss ich die Datei speichern
In welchen anderen Dateien muss ich was ändern ?





Das ist ein Bild von meinen Ausgängen
Re: Schreiben einer neuen pin.h datei für anfänger
01. February 2017 13:49
1. In der Datei boards.h BOARD_TRIGORILLA = bestimmte (noch freie) Zahl zuordnen
2. In der Datei pins.h entsprechende Bedingung hinzufügen
#elif MB(TRIGORILLA)
   #include "pins_TRIGORILLA.h"
3. Die Datei pins_TRIGORILLA.h mit Deinen Zuordnungen schreiben.

Wenn Du es einfacher haben willst, dann nimm MB Nr. 99, dann musst Du nur die pins_99.h anpassen.

Herzl. Grüße
Re: Schreiben einer neuen pin.h datei für anfänger
02. February 2017 03:25
Vielen herzlichen Dank für die Information
Ich mach mich dann gleich mal an die Arbeit werde das Fertige Pinmaping skribt hier dann posten
Re: Schreiben einer neuen pin.h datei für anfänger
05. February 2017 04:16
Hallo da bin ich wieder :-)

habe jetzt mal eine pin Datei geschrieben als vorlage habe ich die Datei von Ramps genommen und es auf meine Bedürfnisse angepasst ich hoffe ich habe es richtig gemacht .
were lieb wenn jemand es mal überprüfen könnte und fals ich was falsch gmacht habe mich korrigieren könnte.

/**
* Marlin 3D Printer Firmware
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see [www.gnu.org].
*
*/

/**
* Trigorilla ATMega2560-16U pin assignments
* One Board Lösung als ersatzt für Arduino AT Mega 2560 + Ramps 1.4mit CP2102 USB Chip
* Laut i-net ist es die gleiche Pinkonfiguration wie Ramps 1.4
* Ich werde hier auszugsweise die pin konfic aus 1.4 übernehmen und mit denn angaben von trigorilla anpasen
*
*/


#if !defined(__AVR_ATmega1280__) && !defined(__AVR_ATmega2560__)
#error "Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu."
#endif

#ifndef BOARD_NAME
#define BOARD_NAME "Trigorilla"
#endif

#define LARGE_FLASH true


//
// Servos
//

#define SERVO0_PIN 11
#define SERVO1_PIN 6
#define SERVO2_PIN 5
#define SERVO3_PIN 4
#define SERVO4_PIN 12

//
// Limit Switches
//

#define X_MIN_PIN 3
#define X_MAX_PIN 2
#define Y_MIN_PIN 14
#define Y_MAX_PIN 15
#define Z_MIN_PIN 18
#define Z_MAX_PIN 19



//
// Z Probe (when not Z_MIN_PIN)
//

#ifndef Z_MIN_PROBE_PIN
#define Z_MIN_PROBE_PIN 32
#endif

#define SLED_PIN -1

//
// Steppers
//

#define X_STEP_PIN 54
#define X_DIR_PIN 55
#define X_ENABLE_PIN 38
#define X_CS_PIN 53

#define Y_STEP_PIN 60
#define Y_DIR_PIN 61
#define Y_ENABLE_PIN 56
#define Y_CS_PIN 49

#define Z_STEP_PIN 46
#define Z_DIR_PIN 48
#define Z_ENABLE_PIN 62
#define Z_CS_PIN 40

#define E0_STEP_PIN 26
#define E0_DIR_PIN 28
#define E0_ENABLE_PIN 24
#define E0_CS_PIN 42

#define E1_STEP_PIN 36
#define E1_DIR_PIN 34
#define E1_ENABLE_PIN 30
#define E1_CS_PIN 44

//
// Temperature Sensors
//

#define TEMP_BED_PIN 13 // Analog Input Heizbett
#define TEMP_0_PIN 14 // Analog Input Hotent 1
#define TEMP_1_PIN 15 // Analog Input Hotend 2
#define TEMP_2_PIN 12 // Analog Input

//
// Heaters
//

#define HEATER_BED_PIN RAMPS_D8_PIN // Heizbett
#define RAMPS_D8_PIN 8
#define HEATER_0_PIN RAMPS_D10_PIN // Hotend 1
#define RAMPS_D10_PIN 10
#define HEATER_1_PIN RAMPS_D45_PIN // Hotend 2
#define RAMPS_D45_PIN 45

//
// Fan / Lüfter
//

#define FAN_PIN RAMPS_D9_PIN // Lüfter Bett
#define RAMPS_D9_PIN 9
#define FAN1_PIN RAMPS_D8_PIN // Lüfter Hotend 1
#define RAMPS_D8_PIN 8
#define FAN2_PIN RAMPS_D44_PIN // Lüfter Hotend 2
#define RAMPS_D44_PIN 44

//
// Misc. Functions
//
#define SDSS 53
#define LED_PIN 13

// Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
//#define FILWIDTH_PIN 5 // Analog Input

// define digital pin 4 for the filament runout sensor. Use the RAMPS 1.4 digital input 4 on the servos connector
//#define FIL_RUNOUT_PIN 4

#define PS_ON_PIN 12

//
// LCD / Controller
//
#if ENABLED(ULTRA_LCD)

#if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define LCD_PINS_RS 49 // CS chip select /SS chip slave select
#define LCD_PINS_ENABLE 51 // SID (MOSI)
#define LCD_PINS_D4 52 // SCK (CLK) clock
#elif ENABLED(NEWPANEL) && ENABLED(PANEL_ONE)
#define LCD_PINS_RS 40
#define LCD_PINS_ENABLE 42
#define LCD_PINS_D4 65
#define LCD_PINS_D5 66
#define LCD_PINS_D6 44
#define LCD_PINS_D7 64
#else
#define LCD_PINS_RS 16
#define LCD_PINS_ENABLE 17
#define LCD_PINS_D4 23
#define LCD_PINS_D5 25
#define LCD_PINS_D6 27
#define LCD_PINS_D7 29
#if DISABLED(NEWPANEL)
#define BEEPER_PIN 33
// Buttons are attached to a shift register
// Not wired yet
//#define SHIFT_CLK 38
//#define SHIFT_LD 42
//#define SHIFT_OUT 40
//#define SHIFT_EN 17
#endif
#endif

#if ENABLED(NEWPANEL)

#if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
#define BEEPER_PIN 37

#define BTN_EN1 31
#define BTN_EN2 33
#define BTN_ENC 35

#define SD_DETECT_PIN 49
#define KILL_PIN 41

#if ENABLED(BQ_LCD_SMART_CONTROLLER)
#define LCD_BACKLIGHT_PIN 39
#endif

#elif ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
#define BTN_EN1 64
#define BTN_EN2 59
#define BTN_ENC 63
#define SD_DETECT_PIN 42
#elif ENABLED(LCD_I2C_PANELOLU2)
#define BTN_EN1 47 // reverse if the encoder turns the wrong way.
#define BTN_EN2 43
#define BTN_ENC 32
#define LCD_SDSS 53
#define SD_DETECT_PIN -1
#define KILL_PIN 41
#elif ENABLED(LCD_I2C_VIKI)
#define BTN_EN1 22 // reverse if the encoder turns the wrong way.
#define BTN_EN2 7 // [files.panucatt.com]
// tells about 40/42.
// 22/7 are unused on RAMPS_14. 22 is unused and 7 the SERVO0_PIN on RAMPS_13.
#define BTN_ENC -1
#define LCD_SDSS 53
#define SD_DETECT_PIN 49
#elif ENABLED(VIKI2) || ENABLED(miniVIKI)
#define BEEPER_PIN 33

// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 45
#define LCD_SCREEN_ROT_180

#define BTN_EN1 22
#define BTN_EN2 7
#define BTN_ENC 39

#define SDSS 53
#define SD_DETECT_PIN -1 // Pin 49 for display sd interface, 72 for easy adapter board

#define KILL_PIN 31

#define STAT_LED_RED_PIN 32
#define STAT_LED_BLUE_PIN 35

#elif ENABLED(ELB_FULL_GRAPHIC_CONTROLLER)
#define BTN_EN1 35 // reverse if the encoder turns the wrong way.
#define BTN_EN2 37
#define BTN_ENC 31
#define SD_DETECT_PIN 49
#define LCD_SDSS 53
#define KILL_PIN 41
#define BEEPER_PIN 23
#define DOGLCD_CS 29
#define DOGLCD_A0 27
#define LCD_BACKLIGHT_PIN 33
#elif ENABLED(MINIPANEL)
#define BEEPER_PIN 42
// Pins for DOGM SPI LCD Support
#define DOGLCD_A0 44
#define DOGLCD_CS 66
#define LCD_BACKLIGHT_PIN 65 // backlight LED on A11/D65
#define SDSS 53

#define KILL_PIN 64
// GLCD features
//#define LCD_CONTRAST 190
// Uncomment screen orientation
//#define LCD_SCREEN_ROT_90
//#define LCD_SCREEN_ROT_180
//#define LCD_SCREEN_ROT_270
// The encoder and click button
#define BTN_EN1 40
#define BTN_EN2 63
#define BTN_ENC 59
// not connected to a pin
#define SD_DETECT_PIN 49

#else

// Beeper on AUX-4
#define BEEPER_PIN 33

// buttons are directly attached using AUX-2
#if ENABLED(REPRAPWORLD_KEYPAD)
#define BTN_EN1 64 // encoder
#define BTN_EN2 59 // encoder
#define BTN_ENC 63 // enter button
#define SHIFT_OUT 40 // shift register
#define SHIFT_CLK 44 // shift register
#define SHIFT_LD 42 // shift register
#elif ENABLED(PANEL_ONE)
#define BTN_EN1 59 // AUX2 PIN 3
#define BTN_EN2 63 // AUX2 PIN 4
#define BTN_ENC 49 // AUX3 PIN 7
#else
#define BTN_EN1 37
#define BTN_EN2 35
#define BTN_ENC 31 // the click
#endif

#if ENABLED(G3D_PANEL)
#define SD_DETECT_PIN 49
#define KILL_PIN 41
#else
//#define SD_DETECT_PIN -1 // Ramps doesn't use this
#endif

#endif
#endif // NEWPANEL

#endif // ULTRA_LCD
In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicke hier, um Dich einzuloggen