Mahlzeit, nachdem hier die Bastelumgebung endlich Fehlerfrei und präzise funktioniert (nochmal ein großes DANKE an Pluto25) kann gebastelt werden.
Wie der Titel erahnen lässt geht es um RC-Basteleien, in diesem Fall wurde bei einer Futaba beim öffnen des Gehäuse ein 5ter nicht angeschlossener Kanal entdeckt . O.K. den kann man gebrauchen und etwas basteln, z.B. ein Tastenfeld welches feste Werte bei Tastendruck liefert. Damit Ungenauigkeiten der Bauteile, RC-Anlage... nicht zum tragen kommen habe ich mich für 8 Tasten entschieden, die Futaba liefert auf dem Kanal 5 mit einem 10k Poti Werte von ca. 93 - 214 was doch schon brauchbar ist. Also ran ans Werk und mit 8 470Ohm Widerständen 8 Tastern und einem 2k5 Poti für die Mittelstellung ein Modul für den Sender gebastelt, dann noch ein Attiny44 der am Empfänger die Signale auswertet und etwas schaltet...
Der Stromlaufplan für das Sender-Modul ist so einfach das er im Programm mit Zeichen dargestellt werden kann :-), der Attiny44 macht nix besonderes nur eine LED an wenn ein Signal kommt. Im Moment gibt es 1 RC-Modell bei dem eine Taste eine Hupe ansteuert und eine Taste einen DFPlayer ein/aus schaltet, mal sehen was mir sonst noch so einfällt.
Programm um die Werte zu ermitteln:
Alles anzeigen
Programm für das Attiny44 Empfänger-Modul:
Alles anzeigen
8 Tasten Sender-Modul::
Tasten-Modul.jpg
Empfänger-Modul mit 9 LEDs:
Empfänger-Modul mit LEDs.jpg
Grüßle, Naubadd
Wie der Titel erahnen lässt geht es um RC-Basteleien, in diesem Fall wurde bei einer Futaba beim öffnen des Gehäuse ein 5ter nicht angeschlossener Kanal entdeckt . O.K. den kann man gebrauchen und etwas basteln, z.B. ein Tastenfeld welches feste Werte bei Tastendruck liefert. Damit Ungenauigkeiten der Bauteile, RC-Anlage... nicht zum tragen kommen habe ich mich für 8 Tasten entschieden, die Futaba liefert auf dem Kanal 5 mit einem 10k Poti Werte von ca. 93 - 214 was doch schon brauchbar ist. Also ran ans Werk und mit 8 470Ohm Widerständen 8 Tastern und einem 2k5 Poti für die Mittelstellung ein Modul für den Sender gebastelt, dann noch ein Attiny44 der am Empfänger die Signale auswertet und etwas schaltet...
Der Stromlaufplan für das Sender-Modul ist so einfach das er im Programm mit Zeichen dargestellt werden kann :-), der Attiny44 macht nix besonderes nur eine LED an wenn ein Signal kommt. Im Moment gibt es 1 RC-Modell bei dem eine Taste eine Hupe ansteuert und eine Taste einen DFPlayer ein/aus schaltet, mal sehen was mir sonst noch so einfällt.
Programm um die Werte zu ermitteln:
BASCOM-Quellcode
- ' Compiler: Bascom 2.0.7.5
- ' Dateiname: RC-Signal-Tester A44.avr
- ' Funktion: mit einem ATtiny44 die Werte eines RC-Kanal auf einem Display anzeigen
- ' Datum: Start 02.02.2020, Stand 03.02.2020
- ' Von: Naubaddi
- ' --- Mikrocontroler Daten... ----------------------------------------------------------------------------------
- $regfile = "attiny44.dat"
- $crystal = 8000000
- $hwstack = 30
- $swstack = 30
- $framesize = 30
- ' &HFF, &H62, &HDF, &HFF ' 1MHz
- $PROG &HFF, &HE2, &HDF, &HFF ' 8MHz
- ' --- Deklarationen... -----------------------------------------------------------------------------------------
- config lcdpin = pin , Db4 = porta.2 , Db5 = porta.3 , Db6 = porta.4 , Db7 = porta.5 , E = porta.0 , Rs = porta.1
- config lcd = 16 * 2
- config porta = output
- cursor off
- cls
- config pina.6 = input
- ' --- Variablen... ---------------------------------------------------------------------------------------------
- dim Signal as byte
- dim Signal_alt as byte
- ' --- Vorbelegung der Variablen... -----------------------------------------------------------------------------
- Signal = 0
- Signal_alt = 0
- locate 1,1
- lcd "Signal: 0"
- ' --- Programm Anfang ------------------------------------------------------------------------------------------
- do
- pulsein Signal , pina , 6 , 1 ' Signal vom RC- Empfänger auslesen
- if Signal <> Signal_alt then
- Signal_alt = Signal
- locate 1,9
- lcd Signal ; " " ' den Signal-Wert auf dem Display anzeigen
- endif
- loop
- ' --- Programm Ende --------------------------------------------------------------------------------------------
- end
- ' --------------------------------------------------------------------------------------------------------------
Programm für das Attiny44 Empfänger-Modul:
BASCOM-Quellcode
- ' Compiler: Bascom 2.0.7.5
- ' Dateiname: 8 Taster Futaba.avr
- ' Funktion: mit einem ATtiny44 die Werte eines RC-Kanal auswerten und etwas schalten
- ' Datum: Start 10.12.2019, Stand 02.03.2020 (10.12.2019 für PICAXE 14M2, 02.03.2020 für Attiny44)
- ' Von: Naubaddi
- '
- ' ATtiny44 (B.3 RESET)
- '
- ' +----v----+
- ' VCC | 1 14| GND
- ' PCINT8/XTAL1 B.0 | 2 13| A.0 ADC0/AREF/PCINT0
- ' PCINT9/XTAL2 B.1 | 3 12| A.1 ADC1/AIN0/PCINT1
- ' PCINT11/RESET/dW B.3 | 4 11| A.2 ADC2/AIN2/PCINT2
- ' PCINT10/INT0/OC0A/CKOUT B.2 | 5 10| A.3 ADC3/T0/PCINT3
- ' PCINT7/ICP/OC0B/ADC7 A.7 | 6 9| A.4 ADC4/USCK/SCL/T1/PCINT4
- ' PCINT6/OC1A/SDA/MOSI/ADC6 A.6 | 7 8| A.5 ADC5/DO/MISO/OC1B/PCINT5
- ' +---------+
- '
- '
- ' Tastenmodul für den RC-Kanal 5 der Futaba
- '
- ' ----------470-------470-------470-------470------> schwarz/links
- ' | | | | |
- ' | Taster Taster Taster Taster
- ' | | | | |
- ' Poti 2K5-----------------------------------------------> rot/Mitte
- ' | | | | |
- ' | Taster Taster Taster Taster
- ' | | | | |
- ' ----------470-------470-------470-------470------> orange/rechts
- '
- ' --- Mikrocontroler Daten... ----------------------------------------------------------------------------------
- $regfile = "attiny44.dat"
- $crystal = 8000000
- $hwstack = 30
- $swstack = 30
- $framesize = 30
- ' &HFF, &H62, &HDF, &HFF ' 1MHz
- $PROG &HFF, &HE2, &HDF, &HFF ' 8MHz
- ' --- Deklarationen... -----------------------------------------------------------------------------------------
- config pinb.2 = input ' Eingang für das RC-Signal
- config portb.1 = output ' Ausgang für Taste 1
- config portb.0 = output ' Ausgang für Taste 2
- config porta = output ' Ausgang für Taste 3 - 8 und keine Taste
- ' --- Variablen, Alias -----------------------------------------------------------------------------------------
- dim Signal as byte
- dim Signal_alt as byte
- Ausgang_1 alias portb.1
- Ausgang_2 alias portb.0
- Ausgang_3 alias porta.0
- Ausgang_4 alias porta.1
- Mitte alias porta.7
- Ausgang_5 alias porta.2
- Ausgang_6 alias porta.3
- Ausgang_7 alias porta.4
- Ausgang_8 alias porta.5
- ' --- Vorbelegung der Variablen und Alias ----------------------------------------------------------------------
- Signal = 0
- Signal_alt = 0
- ' --- Programm Anfang ------------------------------------------------------------------------------------------
- do
- pulsein Signal , pina , 6 , 1 ' Signal vom RC- Empfänger abfragen
- if Signal <> Signal_alt then ' nur wenn ein neues Signal anliegt auswerten
- Mitte = 0
- Select case Signal
- case 109 to 113
- Ausgang_1 = 1
- case 121 to 125
- Ausgang_2 = 1
- case 128 to 132
- Ausgang_3 = 1
- case 134 to 138
- Ausgang_4 = 1
- case 148 to 152
- Mitte = 1
- Ausgang_1 = 0
- Ausgang_2 = 0
- Ausgang_3 = 0
- Ausgang_4 = 0
- Ausgang_5 = 0
- Ausgang_6 = 0
- Ausgang_7 = 0
- Ausgang_8 = 0
- case 157 to 161
- Ausgang_5 = 1
- case 165 to 169
- Ausgang_6 = 1
- case 176 to 180
- Ausgang_7 = 1
- case 191 to 195
- Ausgang_8 = 1
- end select
- Signal_alt = Signal
- endif
- loop
- ' --- Programm Ende --------------------------------------------------------------------------------------------
- end
- ' --- Prozeduren, Funktionen... --------------------------------------------------------------------------------
- ' --- Data Reihen... -------------------------------------------------------------------------------------------
- ' --------------------------------------------------------------------------------------------------------------
8 Tasten Sender-Modul::
Tasten-Modul.jpg
Empfänger-Modul mit 9 LEDs:
Empfänger-Modul mit LEDs.jpg
Grüßle, Naubadd