"Leave me alone Box" oder auch "the most useless Maschine ever!"
|
"Ich habe viel Zeit mit vollkommen nutzlosen Dingen verbracht", resümierte Shannon als alter Herr heiter und ohne Reue. Vergnügt ließ er etwa in die Bibliothek seines Hauses eine Tür einbauen, die nirgendwohin führte. |
Hier seht ihr meinen Nachbau einer von Claude Elwood Shannon erfundenen Maschine. Der Mann war ein Genie, mit einem wunderbarem Sinn für Humor! Wie sonst sollte man auf die Idee kommen eine Maschine zu erfinden die sich selbst ausschaltet? ![]() Als ich Anfang Dezember das erste mal dieses Video sah, wär ich vor lachen beinahe vom Stuhl gefallen! Ich wusste, so ein Teil will ich auch haben! Soweit ich weiß, kann man so ein Teil nicht im Handel kaufen, man muss es sich also selbst bauen Das Problem war nur, ich hatte vorher noch nie etwas mit Microprozessoren gemacht, ich musste mich also erstmal einige Tage lang durch allerlei Foren lesen... Bei www.leavemealonebox.com gibt es zwar eine Anleitung, dessen schematischer Schaltkreis auch sehr hilfreich ist, der dazugehörige Code ist jedoch in Assembler geschrieben und damit konnte ich absolut nix anfangen. |
Nun musste ein weiteres Problem gelöst werden: Wie bekomm ich den Code in den Attiny?? Im Netz gibt es allerlei Anleitungen für Programmieradapter, je nach Geschmack und Geldbeutel... Da ich es aber so günstig wie möglich haben wollte, entschied ich mich für den SP12, der braucht lediglich ein paar Widerstände und nen Kondensator; Das konnte sogar ich zusammen löten

Hier mal ein paar Bilder meiner Arbeit:
Und hier ist der BASCOM Quellcode:
$regfile = "ATtiny13.DAT"
$crystal = 113000
Config Portb.1 = Output
Config Pinb.3 = Input
Portb.1 = 0
Stop Adc
Stop Ac
Const openarm = 1600
Const closearm = 100
'--- Main ---
goto mainloop
mainloop:
if Pinb.3 = 1 then
goto mainloop
else
Waitms 1500
goto switchoff
endif
switchoff:
Pulseout Portb , 1 , openarm
Waitms 400
Pulseout Portb , 1 , closearm
Waitms 900
if Pinb.3 = 1 then
goto mainloop
else
goto switchoff
endif
END
$crystal = 113000
Config Portb.1 = Output
Config Pinb.3 = Input
Portb.1 = 0
Stop Adc
Stop Ac
Const openarm = 1600
Const closearm = 100
'--- Main ---
goto mainloop
mainloop:
if Pinb.3 = 1 then
goto mainloop
else
Waitms 1500
goto switchoff
endif
switchoff:
Pulseout Portb , 1 , openarm
Waitms 400
Pulseout Portb , 1 , closearm
Waitms 900
if Pinb.3 = 1 then
goto mainloop
else
goto switchoff
endif
END
Kommentare
Noch keine Kommentare vorhanden, sei der Erste!

