Hallo! Habe mir einen ATTiny26 stillgelegt weil ich vor lauter Eifer an den CKSEL3...0-Bits rumgespielt habe und am Ende auf logisch 0000 (external Clock) eingestell und Ruhe wars. Laut Handbuch braucht der Tiny26 jetzt einen externen Taktgeber an XTAL1 (irgend ein Chip?). Kann man mit einfachen Mitteln, Kondensator, Widerstand, Transistor, einen Taktgeber, wenn auch nicht schnell, basteln um den internen Oscilator im Tiny26 wieder zu aktivieren? Kennt da jemand ne einfache Möglichkeit? Vielen Dank im Voraus! Gruß Andi
Irgendein Schmitt-Trigger-Inverter (z.B. 74HC14) ein R (4,7k) und ein C (100pF). R zwischen Eingang und Ausgang, C am Eingang gegen GND, Ausgang an XTAL1 und fertig. Peter
Habe ein NE555 zu Hause und irgend wo habe ich mal gelesen, man kann den als Taktgeber konfigurieren. Hat irgend jemand ne Idee? Wollte eigentlich Teile hernehmen, die ich habe und nicht irgend was kaufen. Gruß Andi
Eine andere recht einfache Möglichkeit einen Takt zu erzeugen ist einen zweiten AVR zu nehmen und ihn so zu programmieren dass er einen Pin möglichst schnell hin und her schaltet. Den Pin verbindest du dann mit dem Takt Eingang des ATTiny26. Bei mir hat die Methode jedenfalls funktioniert (AT90S4433 mit 8MHZ -> AT90S2343).
Hallo Andi, Du kannst beruhigt den NE555 nehmen. Ich hab mir letztens einen Tiny26 verkonfiguriert und auf externe Taktquelle gestellt. Leider wollte der Quarz nicht laufen, aber der NE555 tuts dafür wirklich gut, vor allem um verschiedene Taktraten zu testen.
Vielen Dank für eure Hinweise! Habe mir gerade was mit dem NE555 aufgebaut mit + über R10K an Pin 7, von Pin 7 einen R10K und eine Diode an Pin 2, von Pin 6 zu Pin 2 und einen C4,7µF an Pin2/6. Rechnerisch ergibt sich ein Takt von 15,3KHz. Aber leider kann Pony Prog die Fuse-Bits nicht lesen. Sind 15KHz für Programmer zu wenig? Ich hatte statt dem C4,7µF schon einen mit 100nF drin, rechnerisch ca. 720KHz. aber mit dem gleichen Ergebnis. Die Diode von Pin 2 nach Pin 6 habe ich dazugemacht weil dadurch ein Tastverhältnis von 50% sein soll, also ein Zeitgleiches Laden und Entladen des Kondensators an Pin 6/2. Ansonsten nehme ich die Diode raus und probiers noch mal. @Marcus: Mit welchen Teilen hattest Du Deinen NE555-Tacktgeber aufgebaut? Gruß Andi
555 ist ja auch ne Krücke, viel zu langsam. Ich weiß nicht, ob man den Pony Prog soweit runter tackten kann. Es sollten schon >1Mhz sein und das schafft der 555 nicht, deshalb ja mein Tip mit dem 74HC14. Außerdem schafft ein bipolar-555 noch nicht mal den nötigen High-Pegel. Ein 2.AVR bei >6Mhz ginge natürlich auch. Peter
Mit dem nötigen High-Pegel muß ich Dir leider zustimmen, jetzt, wo Du´s erwähnst. Wo ich die NE555 als Timer eingesetzt hatte, hatte ich auch feststellen müssen, das bei einer Betriebsspannung von 12V nur 10,5V beim Triggern an Out anliegen. Bei 5V sind´s dann wohl nur 4V an Out und 4,5V sind für den AVR nötig als High-Pegel akzeptiert zu werden so weit ich das verstanden habe. Ich kann ja mal versuchen, den Out über einen NPN auf 5V zu bringen ob´s dann geht. Ne Frage zu dem external Clock Signal des ATTiny26: Muss das an XTAL1 ein Wechsel von 5V-0V oder 5V-GND sein? Gruß Andi
Hallo, ich hatte das Problem auch gerade, und hab mir mit einem rumliegenden Quarzoszillator geholfen (ca. 6 Mhz). 5V anschliessen und den Takt abgreifen, fertig. Der Pegel muss nicht unbedingt genau TTL sein. Einziger Nachteil: wer keinen ausgeschlachteten hat, die Dinger kosten bei Reichelt 1,9 EUR (z.B. OSZI 4.000000 ) Dann ist die Lösung von Peter günstiger. @Andi: Der Takt muss gegen die Betriebsspannungs Masse gehen. Ciao, Klaus http://www.mikrocontroller-projekte.de
HURRRRAAAA! Läuft wieder! Habe das mit meinem zweiten Tiny26 erledigt. Hätt ich gleich so machen sollen. War ein Zeitaufwand von 20 Minuten. Da ich auf meinem Testboard von vornherein Sockelleisten neben den Pins links und rechts daneben gelötet habe wars auch kein Problem hukepack ne kleine Platine mit VCC, GND und PB4 (XTAL1) draufzustecken. Hier das Miniprog zum Takt geben für den Takt-AVR: .include "tn26def.inc" main: ldi r16,0b00010000 ;PB4 als Ausgang out ddrb,r16 ldi r16,0b11101111 ;Nur der Form halber die Pullups out portb,r16 ;an den Input-Pins aktivieren in r16,portb ;PortB lesen ldi r17,0b00010000 ;XOR-Bit an PB4 Takt: eor r16,r17 ;PB4 umschalten von H auf L out portb,r16 ;oder L auf H rjmp Takt ;Endlosschleife Die Taktschleife ist für einen Wechsel von H auf L oder L auf H 4 Taktzyklen lang. Ein Takt benötigt beide Pegeländerungen also 8 Takte. Macht bei 1MHz ca. 125KHz. Habe den Takt-AVR allerdings auf 8MHz eingestellt und dadurch eine Frequenz an PB4 von 1MHz. Vielen Dank noch mal an alle für eure Hilfe! Gruß Andi
wie muss ich den tiny26 die fuse bits konfigurieren um von intern 1mhz auf extern 10mhz zu kommen ich hab den seklbstgebauten prog siehe anhang und das neue ponyprog mir gerade gezogen ich wollte mit dem timer0 ein signal generieren werte von 50-200 sollen ein signal der länge 1-2ms liefern also 50 solte dann 1ms und 200 2ms sein das heist dann doch 1/150=0,00666 0,000006ms je wert frequenz 1/0,000006666=160kHz mit 10Mhz takt und prescaler von 8 könnte ich da hinkommen bitte um hilfe blutiger anfänfer im timer bereich nutze zur zeit nur normale schaltungen mit µc timer0 =8bit timer1=8bit deswegen timer0 in use
Lothar Sammel wrote: > wie muss ich den tiny26 die fuse bits konfigurieren um von intern 1mhz > auf extern 10mhz zu kommen Das steht im Datenblatt. Ist aber zugegeben nicht ganz einfach alles zu finden. Seite 27 Werte für CKSEL3..1 notieren Seite 28 Werte für CKSEL0 und SUT1..0 notieren. Nach meiner Überlegung müssten für dich alle Bits '1' sein. Wichtig: Manche Programmer scheinen die Bits inventiert darzustellen. Also vorher überprüfen. > ich wollte mit dem timer0 ein signal generieren werte von 50-200 sollen > ein signal der länge 1-2ms liefern > also 50 solte dann 1ms und 200 2ms sein Meine Glaskugel zeigt dass du versuchst einen Servo anzusteuern, liegt die da richtig? Wenn ja, dafür gibt es fertigen Code in der CodeSammlung. > nutze zur zeit nur normale schaltungen mit µc Bei 'normale schaltungen' versagt leider meine Glaskugel.
die glaskugel musst du mir mal leihen vieleicht bekomm ich dann den durchblick kann ich diese cksel clock selektbits auch per PROGRAMM ändern CKSEL=&b0100 '8Mhz mode geht das rigendwie fehlt da noch der durchblick im stk500 ging das alles per avrstudio 4.0 der chip tiny26 geht da nicht drauf deswegen die dummen fragen JA servo is toll aber es geht ja ums prinzip ein servotester analog kostet 5euronen der µc das gleiche einfach rumspielen mit timer und adc ist mein ziehl messen steuern regeln auf dem servo sitzt ein potenziometer der ein lm317 steuert welches an einem adc hängt und auf ZURUF von ausen via port b mir dann feste spannungswerte 1.5-5V liefern soll verrückt aber ein gedanke und nun die tat wozu brauch ich das für NIX echt war
1. Für die Zukunft: falls dir das nochmal passiert und du ein Oszi zuhause hast (bei meinem geht's jedenfalls), den Tastkopf-Einstellausgang auf 100kHz stellen und an XTAL1 legen. ISP-Frequenz < 25kHz einstellen, fertig! 2. Pony-Prog hat wohl immer noch keinerlei hinweise darauf, dass die ISP-Frequenz max. 1/4 des Systemtaktes sein darf. Auch kann man die ISP-Frequenz nur schwer einstellen. Kann nur zum AVRISP raten, ist um Längen übersichtlicher und zuverlässiger!
> kann ich diese cksel clock selektbits auch per PROGRAMM ändern > CKSEL=&b0100 '8Mhz mode > geht das Nein, geht nur mit dem Programmer.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.