MegaSpeedy Schreibschutz mit Atmel
von Atarijana » Mo 16. Mär 2015, 02:21MegaSpeedy - Schreibschutz mit Atmel und vorhanden Codierschalter.
- oder ich wollte hiermit boss mal meinen Individuellen Schreibschutz zeigen…
Funktion: Wenn die rote Codierschalter- LED aus ist, also im normalen Betrieb, nach druck von ca. 3 Sekunden (Zählt bis 20000 hoch) auf diesen Schalter: Wechsel: Schreibschutz an oder aus (Einmal mit Lock). Falls eingeschaltet, wird dies mit der grünen LED signalisiert. Und da das Bit in den EEprom Bereich des ATMEL gespeichert wird, bleibt der Zustand nach aus- und wiedereinschalten der Floppy vorhanden. Eben ein kleiner Luxus, früher hab ich das auch mal mit Schalter gelöst, doch da ich zu faul war, meine neuen 1050 einen Schreibschutzschalter einzubauen
(Ne, find ich hässlich), hatte ich mir diese Lösung für die Megaspeedy entwickelt. Und da ich keine Lust hatte, mich in der Programmierung des FPGA einzufummeln (Das meine ich jetzt ernst) und ich schon den ATMEL (Die größeren) in ASM mit PWM eine 3 x 3 + (nochmal mal 3 fürs RGB) LED Matrix programmierte, samt Platine ätzen und so… -Dachte ich, dafür wäre der doch jut (Berliner) geeignet. Beim der FPGA Programmierung wenn möglich wäre, hätte ich zumindest einen 5V TTL oder CMOS Baustein benötigt um den WDC mit 5V zu schalten bzw. und oder vielleicht über extremes ausbalanciertes PullUp, was gerade meiner Fantasie und meinen drank zu Experimente darstellt….
Ne dann doch lieber den Atmel, hab davon einige hier und wollte immer schon mal meinen Universal Eprommer testen, da ich auch keine Lust hatte, den SMARTUSB oder so ähnlich heißt der Progger speziell für den ATMEL, auf dem Steckboard zu beschalten (PDFs lesen und so, keine Zeit…)
Da mein Atmel Studio 4 etwas älter ist, und ich gerade keine Lust und vor allem keine Zeit hatte mich wieder in ASM einzufriemeln, hat sich Bascom-AVR herauskristallisiert, als Demoversion macht das Programm für den nicht kommerziellen Einsatz Code bis 2 kB - das reicht (466 Bytes ist das Programm kompiliert) und die Installationsdatei ist mit 39 MB vs 812 MB !!! beim Atmel Studio 6 (Denke, da ist allerlei MS Zeug bei) und so erträglich. Und in Basic hab ich schon seit Ewigkeiten nicht mehr programmiert. Das klappte von Anfang an super, so das ich die Hardware auf einen Steckboard aufbaute und testete, nachdem im Simulator alles in Ordnung war. Den Code hab ich nicht weiter optimiert.
So! Achtung wirklich nur für Freaks! Die nicht nur mit einen Lötkolben umgehen können, sondern auch wissen wie man Schaltpläne liest und zum Beispiel wissen, wie der Reset des ATTiny13(A) abschaltet und so auch den PB5 verwenden kann (Kann auch auch einen anderen Port verwenden, ist nur bequem und sieht besser aus, auf eine Seite). Und wer weiß das Schrumpfschlauch nichts mit Schlümpfe gemeinsam hat, neben ESD, Kurzschlüssen sei auch vor explodierenden Kondensatoren gewarnt! Keine Garantie und Gewährleistung… Und auch 5V sind nicht ohne! Schon mal 5V auf der Zunge gespürt? - Ich nicht. Das meine ich wirklich erst, nur wer halbwegs mit Lötkolben umgehen kann, URI kennt, weiß warum ein 100nF Abblock- Kondensator verwendet wird, messen kann usw. soll sich da ranmachen. Aus Zeitgründen werde ich so gut wie keinen Support geben.
So ein paar Pins erklärt:
Pins auf der Display- Platine:
Pin 3 (Abfrage des Tasters) gegenüber GND (Am PullUp im offenen Zustand)
Pin 4 LED Grün + ( Auf meine Display- Platine: LED Grün vorhanden, aber ohne Funktion, da R4 fehlt. Pin 4 auch abgehend zum SV1 Pin 3, analog zum fehlenden R2 PullUp zu Pin 14 (+3.3V), wird von R17 auf der Hauptplatine übernommen!
Pin 5 LED rot +
Pin 22 GND
Nebenbei:
Fall: SV1 meinerseits nicht erwünscht.
Falls doch erwünscht, ohne R4 oder OHNE ! gebückten R4 direkt vom Ausgang des Atmel über einen R 560 Ohm am Lötpad R4 rechts zur LED Grün anlöten.
Mein vorgehen, da SV1 nicht erwünscht
- R4 einfach brücken.
- Leiterbahnen an Pin 4 mit einen Cuttermesser vorsichtig auf Vorderseite (zum FPGA gehend) und auf der Rückseite (PullUp) getrennt oder auf der Rückseite den PullUp R17 auslöten, so habs ich gemacht.
Anschluss zur Display- Platine:
Pin 3 (Abfrage des Tasters) zum Atmel Pin 5 (PB0)
Pin 4 (Zur LED Grün) über neuen R 560 Ohm zum Pin 3 (PB4) des Atmel´s
Pin 5 (Zur LED rot) zur Abfrage an des Atmel´s Pin 1 (PB5)
Vom Atmel Pin 2 (PB3) über JP3 (Der Braune wird nicht verwendet und sollte ja abgeschnitten werden) verlängert zum über den Sockel gebogenen PIN 36 (Write Protect, kein Kontakt zum Sockel mehr) des 2793 WDC.
Den Pin 8 (VCC) des Atmel 5V vom Sockel Pin 4 der MegaSpeedy versorgt und GND hab ich vom Pin 7 am JP4 der MegaSpeedy zum Pin 4 des ATTiny13 gelegt. Natürlich mit 100nF Abblockkondensator. den kleinen ATTiny hab ich gesockelt, die Sockelbeinchen umgebogen und wer will mach Ihm mit einen Tropfen Heißkleber fest.
Zusammenbau, test…. ahh alles funktioniert! Fein, sieht gut aus, endlich kein Locher mehr und der Schalter den ich mal einbauen wollte ist nun auch überflüssig…
So weit,
Gruß Patrick
- oder ich wollte hiermit boss mal meinen Individuellen Schreibschutz zeigen…
Funktion: Wenn die rote Codierschalter- LED aus ist, also im normalen Betrieb, nach druck von ca. 3 Sekunden (Zählt bis 20000 hoch) auf diesen Schalter: Wechsel: Schreibschutz an oder aus (Einmal mit Lock). Falls eingeschaltet, wird dies mit der grünen LED signalisiert. Und da das Bit in den EEprom Bereich des ATMEL gespeichert wird, bleibt der Zustand nach aus- und wiedereinschalten der Floppy vorhanden. Eben ein kleiner Luxus, früher hab ich das auch mal mit Schalter gelöst, doch da ich zu faul war, meine neuen 1050 einen Schreibschutzschalter einzubauen

Ne dann doch lieber den Atmel, hab davon einige hier und wollte immer schon mal meinen Universal Eprommer testen, da ich auch keine Lust hatte, den SMARTUSB oder so ähnlich heißt der Progger speziell für den ATMEL, auf dem Steckboard zu beschalten (PDFs lesen und so, keine Zeit…)
Da mein Atmel Studio 4 etwas älter ist, und ich gerade keine Lust und vor allem keine Zeit hatte mich wieder in ASM einzufriemeln, hat sich Bascom-AVR herauskristallisiert, als Demoversion macht das Programm für den nicht kommerziellen Einsatz Code bis 2 kB - das reicht (466 Bytes ist das Programm kompiliert) und die Installationsdatei ist mit 39 MB vs 812 MB !!! beim Atmel Studio 6 (Denke, da ist allerlei MS Zeug bei) und so erträglich. Und in Basic hab ich schon seit Ewigkeiten nicht mehr programmiert. Das klappte von Anfang an super, so das ich die Hardware auf einen Steckboard aufbaute und testete, nachdem im Simulator alles in Ordnung war. Den Code hab ich nicht weiter optimiert.
So! Achtung wirklich nur für Freaks! Die nicht nur mit einen Lötkolben umgehen können, sondern auch wissen wie man Schaltpläne liest und zum Beispiel wissen, wie der Reset des ATTiny13(A) abschaltet und so auch den PB5 verwenden kann (Kann auch auch einen anderen Port verwenden, ist nur bequem und sieht besser aus, auf eine Seite). Und wer weiß das Schrumpfschlauch nichts mit Schlümpfe gemeinsam hat, neben ESD, Kurzschlüssen sei auch vor explodierenden Kondensatoren gewarnt! Keine Garantie und Gewährleistung… Und auch 5V sind nicht ohne! Schon mal 5V auf der Zunge gespürt? - Ich nicht. Das meine ich wirklich erst, nur wer halbwegs mit Lötkolben umgehen kann, URI kennt, weiß warum ein 100nF Abblock- Kondensator verwendet wird, messen kann usw. soll sich da ranmachen. Aus Zeitgründen werde ich so gut wie keinen Support geben.
So ein paar Pins erklärt:
Pins auf der Display- Platine:
Pin 3 (Abfrage des Tasters) gegenüber GND (Am PullUp im offenen Zustand)
Pin 4 LED Grün + ( Auf meine Display- Platine: LED Grün vorhanden, aber ohne Funktion, da R4 fehlt. Pin 4 auch abgehend zum SV1 Pin 3, analog zum fehlenden R2 PullUp zu Pin 14 (+3.3V), wird von R17 auf der Hauptplatine übernommen!
Pin 5 LED rot +
Pin 22 GND
Nebenbei:
Fall: SV1 meinerseits nicht erwünscht.
Falls doch erwünscht, ohne R4 oder OHNE ! gebückten R4 direkt vom Ausgang des Atmel über einen R 560 Ohm am Lötpad R4 rechts zur LED Grün anlöten.
Mein vorgehen, da SV1 nicht erwünscht
- R4 einfach brücken.
- Leiterbahnen an Pin 4 mit einen Cuttermesser vorsichtig auf Vorderseite (zum FPGA gehend) und auf der Rückseite (PullUp) getrennt oder auf der Rückseite den PullUp R17 auslöten, so habs ich gemacht.
Anschluss zur Display- Platine:
Pin 3 (Abfrage des Tasters) zum Atmel Pin 5 (PB0)
Pin 4 (Zur LED Grün) über neuen R 560 Ohm zum Pin 3 (PB4) des Atmel´s
Pin 5 (Zur LED rot) zur Abfrage an des Atmel´s Pin 1 (PB5)
Vom Atmel Pin 2 (PB3) über JP3 (Der Braune wird nicht verwendet und sollte ja abgeschnitten werden) verlängert zum über den Sockel gebogenen PIN 36 (Write Protect, kein Kontakt zum Sockel mehr) des 2793 WDC.
Den Pin 8 (VCC) des Atmel 5V vom Sockel Pin 4 der MegaSpeedy versorgt und GND hab ich vom Pin 7 am JP4 der MegaSpeedy zum Pin 4 des ATTiny13 gelegt. Natürlich mit 100nF Abblockkondensator. den kleinen ATTiny hab ich gesockelt, die Sockelbeinchen umgebogen und wer will mach Ihm mit einen Tropfen Heißkleber fest.
Zusammenbau, test…. ahh alles funktioniert! Fein, sieht gut aus, endlich kein Locher mehr und der Schalter den ich mal einbauen wollte ist nun auch überflüssig…
- Code: Alles auswählen
$regfile = "ATTiny13A.dat"
'$crystal = 125000
$hwstack = 16
$swstack = 16
$framesize = 24
$noramclear
Taster Alias Pinb.0
Ledrot Alias Pinb.5
Ledgruen Alias Portb.4
Writeprotect Alias Portb.3
Config Taster = Input
Config Ledrot = Input
Config Ledgruen = Output
Config Writeprotect = Output
Dim Zaehler As Integer
Dim Tastenverrieglung As Bit
Dim Writeproctect_merker As Eram Byte
Zaehler = 0
Tastenverrieglung = 0
Do
If Ledrot = 1 Then
Ledgruen = 0
Elseif Writeproctect_merker = 0 Then
Writeprotect = 0
Ledgruen = 0
Else
Writeprotect = 1
Ledgruen = 1
End If
If Ledrot = 0 And Taster = 0 And Zaehler < 20000 Then
Zaehler = Zaehler + 1
End If
If Zaehler => 20000 And Tastenverrieglung = 0 Then
Tastenverrieglung = 1
Zaehler = 20000
If Writeproctect_merker = 0 Then
Writeproctect_merker = 1
Else
Writeproctect_merker = 0
End If
End If
If Tastenverrieglung = 1 And Taster = 1 Or Ledrot = 1 Then
Zaehler = 0
Tastenverrieglung = 0
End If
Loop
End
So weit,
Gruß Patrick