ATtiny2313 Serial

Odpovědět
Ludek
Příspěvky: 289
Registrován: 02 pro 2019, 08:14
Reputation: 0
Bydliště: České Budějovice

ATtiny2313 Serial

Příspěvek od Ludek » 16 pro 2019, 11:15

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

AstroMiK
Příspěvky: 592
Registrován: 08 pro 2017, 19:05
Reputation: 0

Re: ATtiny2313 Serial

Příspěvek od AstroMiK » 16 pro 2019, 12:52

To snížení rychlosti je na 99% způsobené zapnutím bitu "CKDIV8" v LowFuse bajtu.
http://www.engbedded.com/fusecalc/

Ludek
Příspěvky: 289
Registrován: 02 pro 2019, 08:14
Reputation: 0
Bydliště: České Budějovice

Re: ATtiny2313 Serial

Příspěvek od Ludek » 16 pro 2019, 13:32

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 :-(

AstroMiK
Příspěvky: 592
Registrován: 08 pro 2017, 19:05
Reputation: 0

Re: ATtiny2313 Serial

Příspěvek od AstroMiK » 16 pro 2019, 14:22

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

Ludek
Příspěvky: 289
Registrován: 02 pro 2019, 08:14
Reputation: 0
Bydliště: České Budějovice

Re: ATtiny2313 Serial

Příspěvek od Ludek » 16 pro 2019, 15:26

Díky !!!! to je ono :-) Píšu Velké Plus

Ludek
Příspěvky: 289
Registrován: 02 pro 2019, 08:14
Reputation: 0
Bydliště: České Budějovice

Re: ATtiny2313 Serial

Příspěvek od Ludek » 16 pro 2019, 19:32

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...

AstroMiK
Příspěvky: 592
Registrován: 08 pro 2017, 19:05
Reputation: 0

Re: ATtiny2313 Serial

Příspěvek od AstroMiK » 16 pro 2019, 20:13

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/

Ludek
Příspěvky: 289
Registrován: 02 pro 2019, 08:14
Reputation: 0
Bydliště: České Budějovice

Re: ATtiny2313 Serial

Příspěvek od Ludek » 17 pro 2019, 11:52

Calibrace pomohla, ta ATtiny2313 dávala místo 490 Hz asi 519 Hz :-)
Už to šlape. Díky

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 16 hostů