Stránka 1 z 1

ATtiny2313 Serial

Napsal: 16 pro 2019, 11:15
od Ludek
Zdravím, prosím o pomoc.
Potřebuji do ATTiny 2313 (lepší by byl 24 či 45) jen pár řádek kodu. Na Uno mi to funguje, ale když to dám do samostatného brouka, tak né.
Jde o toto: A když jsem udělal jen blikání LED, je 8x pomalejší to delay :-(
Otázka : proč je Delay pomalé a jak to řešit - při nahrávání, mám zvoleno 8MHz interní.
A drujá, lze použítz klasický Serial, anebo třeba i SoftwareSerial?

.

Kód: Vybrat vše

void setup ()
{
  Serial.begin (9600); 
}  // end of setup

void loop ()
{
  if (Serial.available()) { 
   kod1 = Serial.read(); kod2 = Serial.read();
    if (( kod1 == '*' ) and (kod2 == 'H' ))
        { Serial.print ("To je H") ; }
    if (( kod1 == '*' ) and (kod2 == 'E' ))
        { Serial.print ("To je E") ; } }
    delay(100);   
 }  // end of loop

Re: ATtiny2313 Serial

Napsal: 16 pro 2019, 12:52
od AstroMiK
To snížení rychlosti je na 99% způsobené zapnutím bitu "CKDIV8" v LowFuse bajtu.
http://www.engbedded.com/fusecalc/

Re: ATtiny2313 Serial

Napsal: 16 pro 2019, 13:32
od Ludek
Ahoj Astro, to je pro mne Španělská vesnice, jak to udělat,
když to do něj programuju z prostředí Arduina IDE 1.8.1 :-(

Re: ATtiny2313 Serial

Napsal: 16 pro 2019, 14:22
od AstroMiK
Přímo s ATtiny2313 jsem nikdy nedělal, takže to nemůžu potvrdit, ale mělo by stačit zvolit v menu položku "Vypálit zavaděč".
Jinak je možné to nastavit přes program AVRDUDE (DOS) nebo přes nějakou grafickou nadstavbu (AVRDUDESS).

Postup přenastavení CKDIV8 bitu pro ATtiny85 jsme probírali tady:
https://arduino-forum.cz/viewtopic.php?f=48&t=519

Re: ATtiny2313 Serial

Napsal: 16 pro 2019, 15:26
od Ludek
Díky !!!! to je ono :-) Píšu Velké Plus

Re: ATtiny2313 Serial

Napsal: 16 pro 2019, 19:32
od Ludek
Tak ještě jednou píšu...
Funguje to krásně, jak Serial, tak i SoftwareSerial. Ale má to háček...

ATtiny45 šlape jak švýcary, ale ATtiny2313 fiksluje, protože třeba 9600Bd je ve skutečnosti 10000.
Ještě někdy zkusím další kusy, ale zatím mi stačí ta 45...

Kdyby někdo věděl, jak 2313 "domluvit" budu rád...

Re: ATtiny2313 Serial

Napsal: 16 pro 2019, 20:13
od AstroMiK
Píšeš, že používáš vnitřní RC oscilátor. Ten je dost nepřesný a hodně závislý na teplotě.
Výrobce garantuje +/- 10%

Možná by se to dalo trochu doladit pomocí registru OSCCAL.

Příklad pro nastavování toho registru je třeba tady:
https://www.instructables.com/id/ATtiny ... libration/

Re: ATtiny2313 Serial

Napsal: 17 pro 2019, 11:52
od Ludek
Calibrace pomohla, ta ATtiny2313 dávala místo 490 Hz asi 519 Hz :-)
Už to šlape. Díky