Stránka 1 z 1

ATtiny85

Napsal: 11 říj 2023, 13:54
od Ludek
Ahoj vespolek,
zase otravuju. Potřebuji na ATtiny85 pustit Dalas čidlo a Software serial. To šlape jako hodinky.
Ale přidal jsem tam modul, co chce i2c a to přestane fungovat. Zkusil jsem to i bez Dallasu.
Takže otázka :
ATtiny neumí současně i2c a Software serial? Má někdo řešení? Díky

Re: ATtiny85

Napsal: 11 říj 2023, 15:23
od Caster
Dej sem kód a napiš, jaké HW komponenty používáš včetně desky ATtiny (předpokládám, že neprogramuješ holý chip). ATtiny85 nemá UART, je emulován softwarem. Pokud tam přidáš i2c, je možné, že se software serial a i2c už nevejde do paměti nebo na to ATtiny85 nemá dostatek zdrojů. Musel by jsi pak použít např. ATtiny402 má HW UART a I2C (a programovat ho holý v C++ v MPLAB X IDE + SNAP programátor) či použít nějakou běžnou Arduino desku 8-) .

Re: ATtiny85

Napsal: 11 říj 2023, 17:28
od Ludek
:-)
Žádné schema není třeba.
a) programuji přímo samotný čip - klasika - pomocí UNO - bez problému
b) piny P0 a P2 jdou jako i2c - není třeba řešit
c) jakýkoli pin P1, P3 nebo P4 lze použít jako Tx do MAX485 (pouze transmit)
d) Dalas DS18B20 jsem odpojil.

přenos po RS485 anebo rovnou do Rx UNO funguje, dokud nepřidám knihovnu Wire, nebo TinyWire.
mám dojem, že tento brouk oboje současně neumí....
Jasně že mohu použít i jiné brouky, ale bohužel DPS je na DIL8 a jiný nemá 8kB.
:-(

Re: ATtiny85

Napsal: 11 říj 2023, 17:35
od kiRRow
Ludek píše:
11 říj 2023, 17:28
Jasně že mohu použít i jiné brouky, ale bohužel DPS je na DIL8 a jiný nemá 8kB.
tak vždycky se dá zprasit redukce

Re: ATtiny85

Napsal: 11 říj 2023, 21:58
od peterple
Myslím si že problém bude s SRAM, ktorej je iba 512 byte. No a potom Arduinisti sú majstri v plýtvaní s SRAM. Keďže I2C tam je hw implementovaná tak si trúfam povedať že keby som to všetko napísal vlastné a nebudem lepiť dohromady knižnice ktoré boli robené hlavne na UNO (2048 byte SRAM), tak to pobeží. V najhoršom prípade sa prepnem do ASM a tam to urobím. Ale za poholdné umetené cestičky sa platí. Najjednoduchšia cesta je nájsť si lepší procesor. (Asi to nebude AVR)

Re: ATtiny85

Napsal: 12 říj 2023, 13:06
od ondraN
Ludek píše:
11 říj 2023, 17:28
....
Jasně že mohu použít i jiné brouky, ale bohužel DPS je na DIL8 a jiný nemá 8kB.
Obvykle se postupuje od bastleného prototypu k produkci na DPS. Když se ta prototypová část vypustí, tak to holt občas bolí.

Re: ATtiny85

Napsal: 14 říj 2023, 16:06
od Caster
Zkusil jsem vygenerovat program s UARTem (Dallas) a I2C (v MPLAB X IDE a MCC Melody, C++). V pohodě se to vejde do 4 kB ATtiny402 8-) . Adaptér SOIC8 na DIL8 lze koupit např. zde

Re: ATtiny85

Napsal: 16 říj 2023, 06:55
od Ludek
Díky :-)
ale už je to v koši. 4kB je málo. A tak zpátky na strom. Nakonec jsem to udělal na ATmega 328.
a je po problémech :-)

Re: ATtiny85

Napsal: 21 říj 2023, 02:53
od Caster
Tak jsem Dallas vyzkoušel v ATtiny202 (2 kB), kde zabírá 1 382 bytů, používá HW UART. Vešlo by se tam asi i I2C. Pro 2 UARTY (1x Dallas, 1x HW serial) by šlo použít ATtiny424 (4 kB) 8-) . Program jsem upravil z příkladu pro ATtiny 817.

Čidlo program našel a přečetl teplotu 0x1AA což odpovídá 26,63°C ;) .

Obrázek

Re: ATtiny85

Napsal: 23 říj 2023, 15:17
od Caster
Pro zajímavost obrázek, jak 1-Wire vypadá na ATtiny202 (2 KB Flash, 128B SRAM) 8-) .

Obrázek