Sisukord:
- Samm: materjalid ja tööriistad
- Samm: valmistage ette ATTINY85
- 3. samm: näitajate kokkupanek
- Samm 4: Peavooluahela kokkupanek
- Samm: testimine
- 6. samm: järgmised sammud
Video: IOT123 - I2C HEARTBEAT BRICK: 6 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
IOT123 BRICKS on isetehtud moodulüksused, mida saab teiste IOT123 BRICKS -ga kokku segada, et lisada sõlmele või kantavale funktsionaalsust. Nende aluseks on tolli ruudukujulised kahepoolsed protoplaadid, mis on omavahel ühendatud aukudega.
Arvatakse, et paljud neist tellistest asuvad saidil mitmes sõlmes (peamised MCU -d - ESP8266 või ATTINY84). MCU ei vaja eelteadmisi andurite otstarbest ega tarkvara vajadustest. See otsib I2C sõlme ja taotleb seejärel igalt orjalt atribuudi väljavõtet (anduri andmed). Need tellised tarnivad 5,0 V, 3,3 V ja teist AUX -liini, mida saab kohandada.
See I2C HEARTBEAT BRICK näitab, kas ATTINY alam on elus, samuti I2C liiklus ja sellel on üks omadus:
OLEK ("ELUS")
PB1 (valge) näitab ATTINY tervist.
PB3 (kollane) lülitub kapteni I2C päringutega.
PB4 (oranž) lülitub I2C vastuvõtmisega kaptenilt.
ATTINY85-ga külgnevad augud on jäetud kasutamata, et võimaldada pogo-tihvtidega programmeerimist, kui DIP8 on trükkplaadile joodetud. Edasine väljatöötamine, BRICKIDE pakkimine väikestesse silindritesse, mis ühendatakse D1M WIFI BLOCK jaoturiga, pumpades väärtused MQTT serverisse.
Samm: materjalid ja tööriistad
Materjalide ja allikate nimekiri on täielik.
- Paberist trükkplaat (7 x 7 auku)
- LEDid (punane, roheline, sinine)
- Takistid (3 off 1K)
- ATTINY85 20PU (1)
- 1 "kahepoolne protoboard (1)
- Isane päis 90º (3P, 3P)
- Isane päis (2P, 2P)
- Jumper Shunt (1)
- Ühendusjuhe (~ 7)
- Jootmine ja triikraud (1)
Samm: valmistage ette ATTINY85
MÄRKUS. Kui kavatsete Croutoni integreerida, kasutage siit raamatukogu ja kasutage näidet "attiny_heartbeat"
Vajalik on juhatuse liige AttinyCore. Põletage alglaadur "EEPROM Retained", "8mHZ Internal" (kõik konfiguratsioonid on näidatud ülal).
Koodide hoidla leiate siit.
Raamatukogu ZIP -i leiate siit.
Siit leiate juhised "ZIP -kogu importimiseks".
Kui kogu on installitud, saate avada näite "attiny_heartbeat".
Püsivara ATTINY85 -sse üleslaadimiseks leiate lisateavet järgmistest juhenditest:
www.instructables.com/id/Programming-the-….
www.instructables.com/id/How-to-Program-A…
www.instructables.com/id/Programming-the-…
www.instructables.com/id/How-to-Program-A…
www.instructables.com/id/Programming-the-…
Enne jätkamist on parem testida leivalaua kaudu.
Kui teil on olemasolevaid ASSIMILATE SENSORS, siis veenduge, et SENSOR/MCU Host kombinatsioonis on alam -aadress erinev, nt. kõikidel relees osalejatel võib olla sama aadress, kui teil on MCU/sõlmes ainult üks releenäitleja.
3. samm: näitajate kokkupanek
Näitajad peavad olema täielikult kohandatavad. Südamelöökidena peetakse peavoolu sündmussignaale. Selle ehituse jaoks kasutame LED -indikaatoreid; teie ehitis võib kasutada releesid (jah, VCC on katki) või mõnda muud visuaalsel/signaalil põhinevat indikaatorit. Takisti väärtused sõltuvad isiklikest eelistustest, kui heledaid soovite.
- Sisestage ülaosas sinine valgusdiood punastesse (+) ja mustadesse (G) ning jootke alla.
- Altpoolt painutage RED1 juhet nii, et see puudutaks SILVER8 vaskpadja ja trimmiks.
- Altpoolt lõigake juhe jootmise kohal olevast mustast mustast1.
- Sisestage ülaosas roheline valgusdiood punastesse (+) ja mustadesse (G) ning jootke alla.
- Altpoolt painutage RED2 juhet nii, et see puudutaks SILVER9 vaskpadja ja trimmi.
- Altpoolt lõigake juhe jootmise kohal olevast mustast mustast2.
- Sisestage ülaosas punane LED valgusdioodidesse RED3 (+) ja BLACK3 (G) ning jootke alla.
- Altpoolt painutage RED3 juhet nii, et see puudutaks SILVER10 vaskpadja ja trimmi.
- Altpoolt trimmige juhe BLACK3 joote kohal.
- Sisestage ülaosas 1K takisti läbivatesse aukudesse SILVER1 ja SILVER4.
- Altpoolt jälgige, viimistlege ja jootke juhet SILVER1 -lt mustale1.
- Sisestage ülaosas 1K takisti läbivatesse aukudesse SILVER2 ja SILVER4.
- Altpoolt jälgige, viimistlege ja jootke juhet SILVER2 -st mustadeks.
- Sisestage ülaosas 1K takisti läbivatesse aukudesse SILVER3 ja SILVER4.
- Altpoolt jälgige, viimistlege ja jootke juhet SILVER3 -st mustanahale 3.
- Altpoolt jootke SILVER4 juhtmed ja lõigake umbes 5 mm ulatuses.
- Altpoolt jootke must traat SILVER4 peale.
- Altpoolt jootke valge traat SILVER5 -sse, tagades RED1 juhtimise järjepidevuse.
- Altpoolt jootke kollane traat hõbedasse 6, tagades RED2 juhtimise järjepidevuse.
- Altpoolt jootke oranž traat hõbedasse 7, tagades RED3 juhtimise järjepidevuse.
Samm 4: Peavooluahela kokkupanek
Kokkupanek:
- Esipaneelil sisestage komponendid ATTINY85 (1), 3P 90 kraadi isased päised (2) (3), 3P isased päised (4) (5) ja jootke tagaküljele.
- Tagaküljel jälgige kollast traati YELLOW1 kuni YELLOW2 ja jootke.
- Tagaküljel jälgige oranži juhet ORANGE1 kuni ORANGE2 ja jootke.
- Tagaküljel jälgige sinist juhet BLUE1 kuni BLUE2 ja jootke.
- Tagaküljel jälgige rohelist traati GREEN1 kuni GREEN2 ja jootke.
- Tagaküljel jälgige valget traati WHITE1 kuni WHITE2 ja jootke.
- Tagaküljel jälgige musta juhet BLACK1 kuni BLACK2 ja jootet.
- Tagaküljel jälgige musta juhet BLACK3 kuni BLACK4 ja jootet.
- Tagaküljel jälgige punast traati RED1 kuni RED2 ja jootke.
- Tagaküljel jälgige paljast traati RED3 -lt RED4 -le ja jootke.
- Tagaküljel jälgige paljast traati SILVER1 kuni SILVER2 ja jootet.
- Lisage 5V või 3V3 liinile hüppaja.
Kui kasutate ülaltoodud indikaatoreid (vt pinout diagrammi):
- Tagaküljel jootke valge traat PB1 -sse.
- Tagaküljel jootke kollane traat PB3 -sse.
- Tagaküljel jootke oranž traat PB4 -sse.
- Tagaküljel jootke must traat GND -sse.
Samm: testimine
Arvatakse, et paljud neist tellistest asuvad keskkonnas mitmes sõlmes (MCU -d - ESP8266 või ATTINY84). See on üksuse test: saadab UNO -lt I2C käsud ATTINY -le, mis lülitab vastuvõtu LED -i. LED ATTINY ALIVE jääb põlema.
Oleme varem Arduino jaoks ehitanud I2C SHIELDi.
Kui soovite selle asemel leiba panna, toimige järgmiselt
- Ühendage UNO 5,0 V BRICKi VCC -ga.
- Ühendage UNO GND ja BRICK GND.
- Ühendage A5 UNO -l BRICK -i SCL -iga.
- Ühendage A4 UNO -l ja BRICK SDA.
- Ühendage tõmbetakistus 4K7 SDA-st VCC-ga.
- Ühendage tõmbetakistus 4K7 SCL-st VCC-ga.
Testi läbiviimine
- Ühendage UNO oma USB -seadmega arvutiga.
- Laadige kood UNO -sse.
- Avage Arduino konsool.
- Valige 9600 baud (taaskäivitage UNO ja vajadusel avage konsool uuesti).
- Alam aadress trükitakse konsoolile.
- Kui sisestate saatekasti 2 1 (seega 16 2 1) ja vastuvõtu LED süttib.
- Kui sisestate saatekasti 2 0 (seega 16 2 0) ja vastuvõtu LED kustub.
I2C BRICK adhoc käsud orjade jaoks UNO isandalt
#kaasake |
const bait _num_chars = 32; |
süsi _saanud_süklid [_arv_süsi]; // massiiv vastuvõetud andmete salvestamiseks |
boolean _has_new_data = vale; |
voidsetup () { |
Seriaalne algus (9600); |
Serial.println (); |
Serial. |
Serial.println ("veenduge, et konsooliaknas oleks valitud uus rida"); |
Serial.println (); |
Serial.println ("AADRESS 1 KINNITA METADATAHETUSE N/A (M2M jaoks)"); |
Serial.println ("AADRESS 2 ACTOR COMMAND"); |
Serial.println (); |
Serial.println ("AADRESSID BUSSIL:"); |
scan_i2c_addresses (); |
Serial.println (); |
Serial.println (""); |
} |
voidscan_i2c_addresses () { |
int seadme_arv = 0; |
jaoks (bait -aadress = 8; aadress <127; aadress ++) |
{ |
Wire.beginTransmission (aadress); |
const baidi viga = Wire.endTransmission (); |
kui (viga == 0) |
{ |
Serial.println (aadress); |
} |
} |
} |
voidloop () { |
recv_with_end_marker (); |
send_to_i2c (); |
} |
voidrecv_with_end_marker () { |
staatiline bait ndx = 0; |
char end_marker = '\ n'; |
char rc; |
samas (Serial.available ()> 0 && _has_new_data == false) { |
rc = Serial.read (); |
if (rc! = end_marker) { |
_laekunud_karbid [ndx] = rc; |
ndx ++; |
kui (ndx> = _numbrite arv) { |
ndx = _arvude_arv - 1; |
} |
} |
muu { |
_received_chars [ndx] = '\ 0'; // lõpetada string |
ndx = 0; |
_has_new_data = tõsi; |
} |
} |
} |
voidsend_to_i2c () { |
char param_buf [16]; |
const String vastuvõetud_string = String (_saadatud_märgid); |
if (_ has_new_data == true) { |
int idx1 = vastuvõetud_string.indexOf (''); |
Stringi aadress = vastuvõetud_string.alamstring (0, idx1); |
int address_int = aadress.toInt (); |
kui (aadress_int <8 || aadress_int> 127) { |
Serial.println ("INVALID ADDRESS INPUT:"); |
Serial.println (aadress); |
tagasipöördumine; |
} |
int idx2 = saanud_string.indexOf ('', idx1+1); |
String kood; |
kui (idx2 == -1) { |
kood = vastuvõetud_string.alamstring (idx1+1); |
} muud { |
kood = vastuvõetud_string.alamstring (idx1+1, idx2+1); |
} |
int kood_int = kood.toInt (); |
kui (kood_int <0 || kood_int> 5) { |
Serial.println ("VÄÄRATUD KOODISISEND:"); |
Serial.println (kood); |
tagasipöördumine; |
} |
bool has_parameter = idx2> -1; |
String parameeter; |
if (has_parameter) { |
parameeter = vastuvõetud_string.alamstring (idx2 + 1, idx2 + 17); // max 16 märki |
kui (parameeter.pikkus () <1) { |
Serial.println ("PARTAMETER MIN. LENGTH 1"); |
_has_new_data = vale; |
tagasipöördumine; |
} |
} muud { |
kui (kood_int> 1) { |
Serial.println ("PARAMETER ON VAJALIK!"); |
_has_new_data = vale; |
tagasipöördumine; |
} |
} |
Serial.println (); |
Serial.print ("sisend orig ="); |
Seeria.println (saadud_string); |
Serial.print ("aadress ="); |
Serial.println (aadress); |
Serial.print ("kood ="); |
Serial.println (kood); |
Serial.print ("parameeter ="); |
Serial.println (parameeter); |
// SAADA I2C kaudu |
Wire.beginTransmission (aadress_int); |
Wire.write (kood_int); |
if (has_parameter) { |
parameeter.trim (); |
strcpy (param_buf, parameeter.c_str ()); |
Wire.write (param_buf); |
} |
Wire.endTransmission (); |
Serial.println (); |
Serial.println ("SAATIS I2C VIA!"); |
Serial.println (); |
Serial.println (""); |
_has_new_data = vale; |
} |
} |
vaata rawuno_i2c_command_input.ino, mille hostiks on GitHub ❤
6. samm: järgmised sammud
Järelkontroll ASSIMILATE ACTOR: HEARTBEAT, mis kasutab seda tellist, on Croutoni jaoks automaatselt konfigureeritud, kasutades siin juba ATTINY85-sse installitud metaandmeid. Croutonile saadetud JSON -pakett saadetakse ICOS10 uusima püsivara kaudu. Saate teha tõestuskontseptsiooni tavalise ESP8266-ga, kui ehitamine on praegu liiga palju.
Testimisel kasutatud UNO visandil on funktsioon uue alam -aadressi salvestamiseks ATTINY85 EEPROM -i, kui teie sihtmärgi I2C siinil on kokkupõrge.
Soovitan:
Heartbeat Game-Projekt: 4 sammu
Heartbeat Game-Projekt: Täna, nagu me kõik teame, on 20. mai. Sellest on juba saanud traditsiooniline hiina sõbrapäev. (520 hiina keeles tähendab, et ma armastan sind). Nüüd teeme paaride vaikiva arusaamise kontrollimiseks interaktiivse seadme, mida nimetatakse südamelöögilaboriks. See on test
Makey Makey jaoks klõpsake Brick Switch: 4 sammu (piltidega)
Makey Makey jaoks klõpsake Brick Switch: See 3D -prinditud lüliti võimaldab kasutajal muuta Makey Makey " sõrmeslaidiks " " klõps " mängudes või esitluste sirvimiseks paremale/vasakule nooled. Parema ja vasaku klemmikinnituse lisamine
Heartbeat❤ Peariba: 7 sammu
Peapael: projekti idee leidsin Makezine'ist: https://makezine.com/projects/make-29/beating-hear … See on kantav seade, millel on LED-süda, mis vilgub südamelöögile ❤
IOT123 - 3.3V POWER BRICK: 4 sammu
IOT123 - 3.3V POWER BRICK: IOT123 BRICKS on isetehtud modulaarsed seadmed, mida saab teiste IOT123 BRICKS -ga kokku segada, et lisada sõlmele või kantavale funktsionaalsust. Need põhinevad tolli ruudul, kahepoolsed protoboards, mis on omavahel ühendatud aukudega. Kuigi juhend
IOT123 - 5PIN ATTINY85 NRF24L01 BRICK: 4 sammu
IOT123 - 5PIN ATTINY85 NRF24L01 BRICK: UPDATE: See seadistus on suures osas akadeemiline või tarkvara/toiteallika testimise alus. Isegi kui PB5 on nullimisel keelatud, ei loe see väärtusi täpselt, kasutades analogRead: andurite näitude peamine kasutusviis. Uurib ATTINY84 seadistust