{"id":32463,"date":"2019-10-31T21:47:12","date_gmt":"2019-10-31T18:47:12","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kak-i-zachem-chitat-datashity-esli-mikrokontrollery-vashe-hobbi\/"},"modified":"2019-10-31T21:47:12","modified_gmt":"2019-10-31T18:47:12","slug":"kak-i-zachem-chitat-datashity-esli-mikrokontrollery-vashe-hobbi","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/kak-i-zachem-chitat-datashity-esli-mikrokontrollery-vashe-hobbi","title":{"rendered":"Come e perch\u00e9 leggere i datasheet, se i microcontrollori sono il tuo hobby","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Come e perch\u00e9 leggere i datasheet, se i microcontrollori sono il tuo hobby\" src=\"\/wp-content\/uploads\/2019\/04\/ae2537b0263d692c4f79e7b5f7bc0797.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La microelettronica \u00e8 diventata una moda negli ultimi anni grazie al magico Arduino. Ma c'\u00e8 un problema: con un po' di interesse, \u00e8 facile superare il DigitalWrite(), ma cosa fare dopo non \u00e8 molto chiaro. Gli sviluppatori di Arduino hanno fatto un grande sforzo per abbassare la soglia d'ingresso nel loro ecosistema, ma al di fuori di esso c'\u00e8 ancora una fitta foresta di difficile elettronica, poco accessibile agli appassionati.<\/p>\n<p><\/p>\n<p>Ad esempio, i datasheet. Sembra che contengano tutto, basta prenderli e utilizzarli. Ma gli autori non sembrano avere l'obiettivo di rendere popolari i microcontrollori; a volte <em>sembra<\/em>, che abusano di termini e abbreviazioni incomprensibili per descrivere cose semplici, per confondere al massimo i neofiti. Ma non \u00e8 tutto cos\u00ec negativo, se si ha voglia il mistero si svela.<\/p>\n<p><\/p>\n<p>In questo articolo condivider\u00f2 l'esperienza di un umanista che interagisce con i datasheet per scopi hobbistici. Il testo \u00e8 destinato a coloro che sono cresciuti con Arduino e presuppone una certa conoscenza dei principi di funzionamento dei microcontrollori.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Inizio con il tradizionale<\/p>\n<p><\/p>\n<h3 id=\"migaem-svetodiodom-na-arduino\">Flickering LED su Arduino<\/h3>\n<p><\/p>\n<p>E subito il codice:<\/p>\n<p><\/p>\n<pre><code class=\"cpp\">void setup() {\nDDRB |= (1&lt;&lt;5);\n}\n\nvoid loop() {\nPINB = (1&lt;&lt;5);\nfor (volatile uint32_t k=0; k&lt;100000; k++);\n}<\/code><\/pre>\n<p><\/p>\n<p>\u00abCosa significa? \u2013 chieder\u00e0 il lettore esperto. \u2013 Perch\u00e9 scrivi qualcosa nel registro di ingresso PINB? \u00c8 solo in lettura!\u00bb In effetti, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.arduino.cc\/en\/Reference\/PortManipulation\">la documentazione di Arduino<\/a><\/noindex>, come la maggior parte degli articoli didattici su Internet, afferma che questo registro \u00e8 di sola lettura. Anche io lo pensavo, finch\u00e9 non ho riletto <noindex><a rel=\"nofollow\" href=\"http:\/\/ww1.microchip.com\/downloads\/en\/DeviceDoc\/ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061A.pdf\">datasheet<\/a><\/noindex> il datasheet dell'Atmega328p, mentre preparavo questo articolo. E l\u00ec:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Come e perch\u00e9 leggere i datasheet, se i microcontrollori sono il tuo hobby\" src=\"\/wp-content\/uploads\/2019\/04\/4c754bda59d9f18a38209cc32f0fb3a3.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Questa \u00e8 una funzionalit\u00e0 relativamente nuova, non era presente nell'Atmega8, e non tutti lo sanno o lo menzionano per motivi di retrocompatibilit\u00e0. Ma \u00e8 molto utile per dimostrare che i datasheet vanno letti, per sfruttare tutte le potenzialit\u00e0 del chip, comprese quelle poco conosciute. E questa non \u00e8 l'unica ragione.<\/p>\n<p><\/p>\n<h2 id=\"zachem-esche-chitat-datashity\">Perch\u00e9 leggere i datasheet<\/h2>\n<p><\/p>\n<p>Di solito, gli appassionati di Arduino, dopo aver giocato con i LED e l'AnalogWrite, iniziano a collegare alla scheda vari moduli e chip per i quali ci sono gi\u00e0 librerie scritte. Prima o poi, compare una libreria che non funziona come dovrebbe. A quel punto, l'hobbista inizia a modificarla per correggerla, e l\u00ec\u2026<\/p>\n<p><\/p>\n<p>E l\u00ec succede qualcosa di categoricamente incomprensibile, quindi si finisce per cercare su Google, leggere innumerevoli tutorial, prendere in prestito pezzi di codice da qualcuno e infine ottenere quello che si vuole. Questo d\u00e0 una potente sensazione di realizzazione, ma in realt\u00e0 il processo somiglia all'invenzione della bicicletta tramite il reverse engineering di una motocicletta. Inoltre, non si acquisisce comprensione su come funziona questa bicicletta. Lo so, perch\u00e9 ci ho passato abbastanza tempo.<\/p>\n<p><\/p>\n<p>Se invece di quest'attivit\u00e0 affascinante avessi dedicato un paio di giorni allo studio della documentazione dell'Atmega328, avrei risparmiato un'enorme quantit\u00e0 di tempo. Dopotutto, si tratta di un microcontrollore piuttosto semplice.<\/p>\n<p><\/p>\n<p>Pertanto, \u00e8 necessario leggere i datasheet almeno per avere un'idea di come sia strutturato un microcontrollore e cosa possa fare. E ancora:<\/p>\n<p><\/p>\n<ul>\n<li>\n<p>per controllare e ottimizzare le librerie di altri. Spesso sono scritte da appassionati che inventano la bicicletta; oppure, al contrario, gli autori includono intenzionalmente una protezione eccessiva contro l'errore. Tanto varr\u00e0 essere tre volte pi\u00f9 grandi e lenti, purch\u00e9 funzioni correttamente.<\/p>\n<p>\n<\/li>\n<li>\n<p>per poter utilizzare nel progetto chip di cui nessuno ha scritto la libreria;<\/p>\n<p>\n<\/li>\n<li>\n<p>per semplificare il compito di migrazione da una serie di MCU a un'altra;<\/p>\n<p>\n<\/li>\n<li>\n<p>per ottimizzare finalmente il mio vecchio codice che non riusciva ad adattarsi ad Arduino;<\/p>\n<p>\n<\/li>\n<li>\n<p>per imparare a gestire qualsiasi chip direttamente attraverso i suoi registri, senza dover approfondire lo studio del funzionamento delle sue librerie, se esistono.<\/p>\n<p>\n<\/li>\n<\/ul>\n<p><\/p>\n<h2 id=\"zachem-pisat-v-registry-napryamuyu-kogda-est-hal-i-ll\">Perch\u00e9 scrivere direttamente nei registri, quando esistono HAL e LL?<\/h2>\n<p><\/p>\n<p><em>Glossario<\/em><br \/>\n<em><strong>HAL, High Abstraction Layer<\/strong> \u2013 una libreria per la gestione del microcontrollore con un alto livello di astrazione. Se \u00e8 necessario utilizzare l'interfaccia SPI1, basta configurare e abilitare SPI1, senza preoccuparsi di quali registri siano responsabili di cosa.<br \/>\n<strong>LL, Low Level API<\/strong> \u2013 una libreria che contiene macro o strutture con indirizzi di registri, consentendo di accedervi per nome. DDRx, PORTx, PINx su Atmega \u2013 questi sono LL.<\/em><\/p>\n<p><\/p>\n<p>Le discussioni sul tema 'HAL, LL o registri' si verificano regolarmente nei commenti su Habr. Senza pretendere di avere accesso a conoscenze astrali, condivider\u00f2 semplicemente la mia esperienza e le mie riflessioni da dilettante.<\/p>\n<p><\/p>\n<p>Dopo aver capito a grandi linee l'Atmega e aver letto articoli sulle meraviglie dello STM32, ho acquistato mezza dozzina di schede - sia Discovery, che le 'Blue Pill', e persino semplici chip per i miei progetti fai da te. Tutti loro sono rimasti per due anni a prendere polvere in una scatola. A volte mi ripetevo: \u00abda questo fine settimana inizio a imparare STM\u00bb, aprivo CubeMX, generavo una configurazione per SPI, guardavo quella parete di testo, arricchita da copyright STM, e decidevo che era davvero troppo.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Come e perch\u00e9 leggere i datasheet, se i microcontrollori sono il tuo hobby\" src=\"\/wp-content\/uploads\/2019\/04\/d83be97ba2767121f4be20d524000afe.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Certo, \u00e8 possibile capire cosa ha scritto CubeMX. Ma \u00e8 chiaro che memorizzare tutte queste formule per poi scriverle a mano \u00e8 irreale. E debuggarle, se per caso dimentico di mettere un flag in Cube, \u00e8 davvero un bel guaio.<\/p>\n<p><\/p>\n<p>Sono passati due anni, e ancora guardo con desiderio <noindex><a rel=\"nofollow\" href=\"https:\/\/play.google.com\/store\/apps\/details?id=fr.appsolute.st&amp;hl=ru\">ST MCU Finder<\/a><\/noindex> vari chip interessanti, ma incomprensibili per me, e ho casualmente trovato <noindex><a rel=\"nofollow\" href=\"https:\/\/lujji.github.io\/blog\/bare-metal-programming-stm8\/\">un articolo fantastico<\/a><\/noindex>, anche se su STM8. E <em>improvvisamente<\/em> ho capito che per tutto questo tempo stavo bussando a una porta aperta: i registri dello STM sono strutturati come quelli di qualsiasi altro microcontrollore, e per lavorarci non hai bisogno di Cube. <em>Davvero, si poteva fare cos\u00ec?..<\/em><\/p>\n<p><\/p>\n<p>HAL e in particolare STM32CubeMX sono strumenti per ingegneri professionisti che lavorano intensamente con i chip STM32. La caratteristica principale \u00e8 l'alto livello di astrazione, che consente di migrare rapidamente da un microcontrollore a un altro e persino da un nucleo all'altro, rimanendo all'interno della famiglia STM32. Gli appassionati si trovano raramente di fronte a questo tipo di problemi: la nostra scelta di microcontrollori \u00e8 generalmente limitata all'assortimento di AliExpress, e pi\u00f9 frequentemente migriamo tra chip radicalmente diversi: passiamo da Atmega a STM, da STM a ESP, o a ci\u00f2 che i nostri amici cinesi ci propongono di nuovo. HAL qui non aiuter\u00e0, e il tempo necessario per studiarlo sar\u00e0 considerevole.<\/p>\n<p><\/p>\n<p>Rimane LL - ma da esso ai registri ci sono solo pochi passi. Personalmente, trovo utile scrivere i miei macro con gli indirizzi dei registri: studio di pi\u00f9 il datasheet, riflettendo su ci\u00f2 che mi servir\u00e0 in futuro e cosa non sar\u00e0 necessario, strutturo meglio i miei programmi e, in generale, superare questa fase aiuta la memoria.<\/p>\n<p><\/p>\n<p>Inoltre, c'\u00e8 una peculiarit\u00e0 con il popolare STM32F103: esistono due versioni LL incompatibili, una ufficiale di STM e l'altra di Leaf Labs, utilizzata nel progetto STM32duino. Se si scrive una libreria open-source (e io avevo proprio <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Ontaelio\/DMdriverSTM32F1\">questo compito<\/a><\/noindex>), \u00e8 necessario creare due versioni o contattare direttamente i registri.<\/p>\n<p><\/p>\n<p>Infine, rinunciare a LL semplifica, a mio avviso, la migrazione, soprattutto se si pianifica fin dall'inizio del progetto. Esempio eccessivo: scriviamo un blink di Arduino in Atmel Studio senza LL:<\/p>\n<p><\/p>\n<pre><code class=\"cpp\">#include &lt;stdint.h&gt;\n\n#define _REG(addr) (*(volatile uint8_t*)(addr))\n\n#define DDR_B 0x24\n#define OUT_B 0x25\n\nint main(void)\n{\n    volatile uint32_t k;\n\n    _REG(DDR_B) |= (1&lt;&lt;5);\n\n    while(1)\n    {\n        _REG(OUT_B) |= (1&lt;&lt;5);\n        for (k=0; k&lt;50000; k++);\n        _REG(OUT_B) &amp;= ~(1&lt;&lt;5);\n        for (k=0; k&lt;50000; k++);\n    } \n}<\/code><\/pre>\n<p><\/p>\n<p>Per far lampeggiare questo codice un LED su un circuito cinese con STM8 (da ST Visual Desktop), \u00e8 sufficiente cambiare due indirizzi:<\/p>\n<p><\/p>\n<pre><code class=\"cpp\">#define DDR_B 0x5007\n#define OUT_B 0x5005<\/code><\/pre>\n<p><\/p>\n<p>S\u00ec, sto utilizzando una caratteristica specifica per collegare il LED su questa scheda, lampegger\u00e0 molto lentamente, ma ci sar\u00e0!<\/p>\n<p><\/p>\n<h2 id=\"kakie-byvayut-datashity\">Quali sono i datasheet<\/h2>\n<p><\/p>\n<p>Negli articoli e nei forum, sia in russo che in inglese, con \u2018datasheet\u2019 si intende qualsiasi documentazione tecnica sui chip, e faccio lo stesso in questo testo. Formalmente, sono solo uno dei tipi di tale documentazione:<\/p>\n<p><\/p>\n<p><strong>Datasheet<\/strong> \u2013 TTX, specifiche tecniche operative. Deve essere presente per ogni componente elettronico. Informazioni di riferimento, utile averle a portata di mano, ma non c'\u00e8 molto da leggere attentamente. Tuttavia, i chip pi\u00f9 semplici spesso si limitano al datasheet per non creare documenti superflui; in questo caso <em>Manuale di Riferimento<\/em> si include qui.<\/p>\n<p><\/p>\n<p><strong>Manuale di Riferimento<\/strong> \u2013 istruzioni generali, un manuale dettagliato di oltre 1000 pagine. Descrive in dettaglio il funzionamento di tutto ci\u00f2 che \u00e8 contenuto nel chip. Il documento principale per apprendere il microcontrollore. A differenza di <em>datasheet<\/em>, le istruzioni sono scritte per una vasta gamma di MC, contenendo molte informazioni sulle periferiche che potrebbero non essere presenti nel vostro modello specifico.<\/p>\n<p><\/p>\n<p><strong>Manuale di programmazione<\/strong> o <strong>Manuale delle istruzioni<\/strong> \u2013 istruzioni per comandi unici del microcontrollore. Destinato a chi programma in Assembly. Gli autori dei compilatori lo utilizzano attivamente per ottimizzare il codice, quindi in generale non sar\u00e0 necessario. Tuttavia, \u00e8 utile dare un'occhiata qui per una comprensione generale, in particolare per comandi specifici come l'uscita da un'interruzione e durante l'uso attivo del debugger.<\/p>\n<p><\/p>\n<p><strong>Nota applicativa<\/strong> \u2013 suggerimenti utili per risolvere compiti specifici, spesso con esempi di codice.<\/p>\n<p><\/p>\n<p><strong>Foglio degli errori<\/strong> \u2013 descrizione di casi di comportamento anomalo del chip con opzioni per superare il problema, se disponibili.<\/p>\n<p><\/p>\n<h2 id=\"chto-est-v-datashitah\">Cosa \u00e8 incluso nei datasheet<\/h2>\n<p><\/p>\n<p>Direttamente nel <em>Datasheet<\/em> potremmo aver bisogno delle seguenti sezioni:<\/p>\n<p><\/p>\n<p><strong>Riepilogo del dispositivo<\/strong> \u2013 la prima pagina del datasheet offre una breve panoramica sul dispositivo. \u00c8 molto utile nelle situazioni in cui si trova un chip (lo si vede in negozio, si dissolda, si incontra una menzione) e si vuole capire di cosa si tratta.<\/p>\n<p><\/p>\n<p><strong>Descrizione Generale<\/strong> \u2013 una descrizione pi\u00f9 dettagliata delle funzionalit\u00e0 dei chip della serie.<\/p>\n<p><\/p>\n<p><strong>Pinout<\/strong> \u2013 schemi di pinout per tutti i possibili package del chip (quale pin \u00e8 su quale piedino).<\/p>\n<p><\/p>\n<p><strong>Pin Description<\/strong> \u2013 descrizione delle funzioni e delle capacit\u00e0 di ogni pin.<\/p>\n<p><\/p>\n<p><strong>Mappa di Memoria<\/strong> \u2013 la mappa degli indirizzi in memoria probabilmente non ci servir\u00e0, ma a volte include anche una tabella degli indirizzi dei registri.<\/p>\n<p><\/p>\n<p><strong>Mappa dei Registri<\/strong> \u2013 la tabella degli indirizzi dei registri \u00e8 di solito presente proprio nel datasheet, mentre nel <em>Manuale di Riferimento<\/em> \u2013 ci sono solo gli offset (<em>address offsets<\/em>).<\/p>\n<p><\/p>\n<p><strong>Caratteristiche Elettriche<\/strong> \u2013 in questa sezione ci interessa in primo luogo <strong>valori massimi assoluti<\/strong>, elencando i carichi massimi sul chip. A differenza dell'infrangibile Atmega328p, la maggior parte dei microcontrollori non permette di collegare carichi significativi ai pin, il che diventa una spiacevole sorpresa per gli appassionati di Arduino.<\/p>\n<p><\/p>\n<p><strong>Informazioni sul Package<\/strong> \u2013 disegni dei package disponibili, utili nella progettazione delle proprie schede.<\/p>\n<p><\/p>\n<p><em>Manuale di Riferimento<\/em> \u00e8 strutturato in sezioni dedicate a specifiche periferiche, indicate nei loro titoli. Ogni capitolo pu\u00f2 essere suddiviso in tre parti:<\/p>\n<p><\/p>\n<p><strong>Panoramica<\/strong>, <strong>Introduzione<\/strong>, <strong>Caratteristiche<\/strong> \u2013 panoramica delle funzionalit\u00e0 della periferica;<\/p>\n<p><\/p>\n<p><strong>Descrizione funzionale<\/strong>, <strong>Guida all'uso<\/strong> o semplicemente il blocco principale della sezione \u2013 una descrizione testuale dettagliata dei principi di funzionamento della periferica e dei modi per utilizzarla;<\/p>\n<p><\/p>\n<p><strong>Registri<\/strong> \u2013 descrizione dei registri di controllo. In casi semplici come GPIO o SPI, questo pu\u00f2 essere sufficiente per iniziare a utilizzare la periferica, ma spesso \u00e8 necessario leggere anche le parti precedenti.<\/p>\n<p><\/p>\n<h2 id=\"kak-chitat-datashity\">Come leggere i datasheet<\/h2>\n<p><\/p>\n<p>I datasheet possono intimidire per il loro volume e l'abbondanza di termini incomprensibili. In realt\u00e0, non \u00e8 cos\u00ec spaventoso se si conoscono alcuni trucchi.<\/p>\n<p><\/p>\n<p>Installa <strong>un buon lettore di PDF<\/strong>. I datasheet sono scritti secondo le antiche tradizioni delle istruzioni cartacee, \u00e8 utile stamparli, segnarli con segnalibri di plastica e rileggerli. Il hypertext in essi si osserva in quantit\u00e0 trascurabili. Per fortuna, almeno la struttura del documento \u00e8 organizzata con segnalibri, quindi un buon lettore con una navigazione comoda \u00e8 molto utile.<\/p>\n<p><\/p>\n<p>Un datasheet non \u00e8 un manuale di Stroustrup, in esso <strong>non bisogna leggere tutto a caso.<\/strong>. Se hai seguito il consiglio precedente, trova semplicemente la sezione desiderata nel pannello dei segnalibri.<\/p>\n<p><\/p>\n<p>I datasheet, in particolare <em>i manuali di riferimento<\/em>, possono descrivere le capacit\u00e0 non di un singolo chip, ma dell' <strong>intera gamma<\/strong>. Questo significa che met\u00e0, se non due terzi, delle informazioni non sono pertinenti al tuo chip. Prima di esaminare i registri TIM7, controlla se <em>Descrizione Generale<\/em>\u00e8 disponibile nel tuo modello.<\/p>\n<p><\/p>\n<p>Conoscere <strong>l'inglese<\/strong> \u00e8 sufficiente a <strong>un livello base<\/strong>. I datasheet sono composti per met\u00e0 da termini poco familiari per un parlante medio e per met\u00e0 da semplici frasi di collegamento. Ci sono anche dati cinesi ben fatti in inglese cinese, dove met\u00e0 sono termini e l'altra met\u00e0 \u00e8 un insieme casuale di parole.<\/p>\n<p><\/p>\n<p>Se incontri <strong>una parola sconosciuta<\/strong>, non cercare di tradurla con un dizionario inglese-russo. Se ti confonde <em>hysteresis<\/em>, la traduzione \u00abhisteresi\u00bb non ti porter\u00e0 a nulla di pi\u00f9 chiaro. Usa Google, Stack Overflow, Wikipedia e forum dove il concetto che ti serve sar\u00e0 <noindex><a rel=\"nofollow\" href=\"https:\/\/stackoverflow.com\/questions\/5357918\/what-does-hysteresis-mean-and-how-does-it-apply-to-computer-science-or-programmi\">spiegato in termini semplici con esempi.<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Il modo migliore per capire ci\u00f2 che hai letto \u00e8 <strong>verificare sul campo.<\/strong>. Pertanto, tieni a disposizione la scheda di debug con cui stai prendendo confidenza, o meglio ancora due, nel caso in cui ci sia qualcosa che hai frainteso e vedi un magico fumo.<\/p>\n<p><\/p>\n<p>\u00c8 una buona abitudine avere il datasheet a portata di mano quando <strong>leggi un tutorial di qualcun altro<\/strong> o studi una libreria altrui. \u00c8 probabile che in esso tu trovi una soluzione pi\u00f9 ottimale per il tuo compito. E viceversa: se dal datasheet non riesci a capire come funziona il registro, fai una ricerca su Google: molto probabilmente qualcuno ha gi\u00e0 scritto tutto in parole semplici o ha lasciato un codice comprensibile su GitHub.<\/p>\n<p><\/p>\n<h2 id=\"slovarik\">Glossario<\/h2>\n<p><\/p>\n<p>Alcune parole e simboli utili per aiutarti a prendere confidenza con i datasheet. Ci\u00f2 che mi \u00e8 venuto in mente negli ultimi giorni, integrazioni e correzioni sono benvenute.<\/p>\n<p><\/p>\n<p><em>Elettricit\u00e0<\/em><br \/>\n<strong>Vcc<\/strong>, <strong>Vdd<\/strong> \u2013 \u00abpi\u00f9\u00bb, alimentazione<br \/>\n<strong>Vss<\/strong>, <strong>Vee<\/strong> \u2013 \u00abmeno\u00bb, terra<br \/>\n<strong>current<\/strong> \u2013 corrente<br \/>\n<strong>voltage<\/strong> \u2013 tensione<br \/>\n<strong>to sink current<\/strong> \u2013 lavorare come \u00abterra\u00bb per un carico esterno<br \/>\n<strong>to source current<\/strong> \u2013 alimentare un carico esterno<br \/>\n<strong>high sink\/source pin<\/strong> \u2013 pin con maggiore \u00abtolleranza\u00bb a carico<\/p>\n<p><\/p>\n<p><em>IO<\/em><br \/>\n<strong>H, High<\/strong> \u2013 sul pin Vcc<br \/>\n<strong>L, Low<\/strong> \u2013 sul pin Vss<br \/>\n<strong>High Impedance<\/strong>, <strong>Hi-Z<\/strong>, <strong>floating<\/strong> \u2013 sul pin non c'\u00e8 nulla, \u00abalta impedenza\u00bb, \u00e8 praticamente invisibile al mondo esterno.<br \/>\n<strong>weak pull up<\/strong>, <strong>weak pull down<\/strong> \u2013 resistore pull-up\/pull-down integrato, con un valore di circa 50 k\u03a9 (vedi datasheet). Utilizzato, ad esempio, per evitare che il pin di ingresso fluttui, causando falsi triggering. <em>Debole<\/em> \u2013 perch\u00e9 \u00e8 facile \"saturarlo\".<br \/>\n<strong>push pull<\/strong> \u2013 modalit\u00e0 di uscita del pin, in cui esso commuta tra <em>Alto<\/em> e <em>Basso<\/em> \u2013 OUTPUT standard con Arduino.<br \/>\n<strong>open drain<\/strong> \u2013 Designazione della modalit\u00e0 di uscita, in cui il pin pu\u00f2 essere sia <em>Basso<\/em>, oppure <em>Alta Impedenza \/ Floating<\/em>. In questo caso, non si tratta mai di un vero drain aperto, ci sono diodi di protezione, resistori, ecc. \u00c8 semplicemente la designazione della modalit\u00e0 terra\/niente.<br \/>\n<strong>true open drain<\/strong> \u2013 e questo \u00e8 un vero open drain: il pin conduce direttamente a terra se \u00e8 attivato, o rimane in uno stato di sospensione se \u00e8 chiuso. Ci\u00f2 significa che attraverso di esso \u00e8 possibile far passare tensioni superiori a Vcc, ma il massimo \u00e8 comunque specificato nel datasheet nella sezione <em>Valori Massimi Assoluti \/ Tensione<\/em>. <\/p>\n<p><\/p>\n<p><em>Interfacce<\/em><br \/>\n<strong>in serie<\/strong> \u2013 collegati in serie<br \/>\n<strong>to chain<\/strong> \u2013 collegare i chip in una catena tramite connessione serie, aumentando il numero di uscite.<br \/>\n<strong>shift<\/strong> \u2013 shift, di solito indica uno spostamento di bit. Pertanto, <strong>to shift in<\/strong> e <strong>to shift out<\/strong> \u2013 ricevere e trasmettere dati bit a bit.<br \/>\n<strong>latch<\/strong> \u2013 valvola che copre il buffer mentre i bit vengono spostati attraverso di esso. Quando il trasferimento \u00e8 completato, la valvola si apre e i bit iniziano a funzionare.<br \/>\n<strong>per registrare<\/strong> \u2013 eseguire un trasferimento bitwise, spostare tutti i bit nei posti giusti.<br \/>\n<strong>buffer doppio<\/strong>, <strong>registro shadow<\/strong>, <strong>registro di pre-caricamento<\/strong> \u2013 designazioni della storia, quando il registro deve essere in grado di ricevere nuovi dati, ma trattenerli fino a un certo punto. Ad esempio, per un funzionamento corretto del PWM, i suoi parametri (duty cycle, frequenza) non devono cambiare finch\u00e9 non termina l'attuale ciclo, ma nuovi parametri possono gi\u00e0 essere trasmessi. Pertanto, i correnti rimangono in <em>registro shadow<\/em>, mentre i nuovi vanno in <em>registro di pre-caricamento<\/em>, essendo scritti nel registro corrispondente del chip.<\/p>\n<p><\/p>\n<p><em>Ogni tipo di<\/em><br \/>\n<strong>prescaler<\/strong> \u2013 divisore della frequenza<br \/>\n<strong>per impostare un bit<\/strong> \u2013 impostare il bit a 1<br \/>\n<strong>per azzerare\/reimpostare un bit<\/strong> \u2013 resettare il bit a 0 (<em>reset<\/em> \u2013 nota dei datasheet STM)<\/p>\n<p><\/p>\n<h3 id=\"chto-dalshe\">Cosa succede dopo<\/h3>\n<p><\/p>\n<p>In realt\u00e0, era pianificata una parte pratica con la dimostrazione di tre progetti su STM32 e STM8, realizzati appositamente per questo articolo utilizzando i datasheet, con lampadine, SPI, timer, PWM e interrupt:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Come e perch\u00e9 leggere i datasheet, se i microcontrollori sono il tuo hobby\" src=\"\/wp-content\/uploads\/2019\/04\/8929bad65dad7473a81a221281c43557.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ma il testo sta diventando piuttosto lungo, quindi i progetti saranno inviati nella seconda parte.<\/p>\n<p><\/p>\n<p>La capacit\u00e0 di leggere i datasheet pu\u00f2 aiutarti nel tuo hobby, ma difficilmente pu\u00f2 sostituire la comunicazione dal vivo con colleghi appassionati su forum e chat. Per questo \u00e8 comunque necessario migliorare prima di tutto l'inglese. Pertanto, per coloro che arrivano fino alla fine, c'\u00e8 un premio speciale: due lezioni gratuite su Skyeng al primo pagamento con il codice. <code>HABR2<\/code>.<\/p>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/skyeng\/blog\/449624\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041c\u0438\u043a\u0440\u043e\u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u0438\u043a\u0430 \u2013 \u043c\u043e\u0434\u043d\u043e\u0435 \u0443\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u043b\u0435\u0442 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0432\u043e\u043b\u0448\u0435\u0431\u043d\u043e\u043c\u0443 Arduino. \u041d\u043e \u0432\u043e\u0442 \u0431\u0435\u0434\u0430: \u043f\u0440\u0438 \u0434\u043e\u043b\u0436\u043d\u043e\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435 \u043f\u0435\u0440\u0435\u0440\u0430\u0441\u0442\u0438 DigitalWrite() \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0431\u044b\u0441\u0442\u0440\u043e, \u0430 \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435 \u2013 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u044f\u0441\u043d\u043e. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 Arduino \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u043b\u0438 \u043d\u0435\u043c\u0430\u043b\u043e \u0443\u0441\u0438\u043b\u0438\u0439 \u0434\u043b\u044f \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u0440\u043e\u0433\u0430 \u0432\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0432 \u0441\u0432\u043e\u044e \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u043d\u043e \u0437\u0430 \u0435\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u043c\u0438 \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u043b\u044b\u0448\u0435\u0442\u0441\u044f \u0442\u0435\u043c\u043d\u044b\u0439 \u043b\u0435\u0441 \u0441\u0443\u0440\u043e\u0432\u043e\u0439 \u0441\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u0438, \u043c\u0430\u043b\u043e\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0439 \u043b\u044e\u0431\u0438\u0442\u0435\u043b\u044e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u0430\u0442\u0430\u0448\u0438\u0442\u044b. \u0412\u0440\u043e\u0434\u0435 \u0431\u044b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":24267,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-32463","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-novosti-interneta"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041c\u0438\u043a\u0440\u043e\u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u0438\u043a\u0430 \u2013 \u043c\u043e\u0434\u043d\u043e\u0435 \u0443\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u043b\u0435\u0442 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0432\u043e\u043b\u0448\u0435\u0431\u043d\u043e\u043c\u0443 Arduino. \u041d\u043e \u0432\u043e\u0442 \u0431\u0435\u0434\u0430: \u043f\u0440\u0438 \u0434\u043e\u043b\u0436\u043d\u043e\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435 \u043f\u0435\u0440\u0435\u0440\u0430\u0441\u0442\u0438 DigitalWrite() \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0431\u044b\u0441\u0442\u0440\u043e, \u0430 \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435 \u2013 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u044f\u0441\u043d\u043e. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 Arduino \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u043b\u0438 \u043d\u0435\u043c\u0430\u043b\u043e \u0443\u0441\u0438\u043b\u0438\u0439 \u0434\u043b\u044f \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u0440\u043e\u0433\u0430 \u0432\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0432 \u0441\u0432\u043e\u044e \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u043d\u043e \u0437\u0430 \u0435\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u043c\u0438 \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u043b\u044b\u0448\u0435\u0442\u0441\u044f \u0442\u0435\u043c\u043d\u044b\u0439 \u043b\u0435\u0441 \u0441\u0443\u0440\u043e\u0432\u043e\u0439 \u0441\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u0438, \u043c\u0430\u043b\u043e\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0439 \u043b\u044e\u0431\u0438\u0442\u0435\u043b\u044e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u0430\u0442\u0430\u0448\u0438\u0442\u044b. \u0412\u0440\u043e\u0434\u0435 \u0431\u044b\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/kak-i-zachem-chitat-datashity-esli-mikrokontrollery-vashe-hobbi\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a \u0438 \u0437\u0430\u0447\u0435\u043c \u0447\u0438\u0442\u0430\u0442\u044c \u0434\u0430\u0442\u0430\u0448\u0438\u0442\u044b, \u0435\u0441\u043b\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b \u2013 \u0432\u0430\u0448\u0435 \u0445\u043e\u0431\u0431\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041c\u0438\u043a\u0440\u043e\u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u0438\u043a\u0430 \u2013 \u043c\u043e\u0434\u043d\u043e\u0435 \u0443\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u043b\u0435\u0442 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0432\u043e\u043b\u0448\u0435\u0431\u043d\u043e\u043c\u0443 Arduino. \u041d\u043e \u0432\u043e\u0442 \u0431\u0435\u0434\u0430: \u043f\u0440\u0438 \u0434\u043e\u043b\u0436\u043d\u043e\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435 \u043f\u0435\u0440\u0435\u0440\u0430\u0441\u0442\u0438 DigitalWrite() \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0431\u044b\u0441\u0442\u0440\u043e, \u0430 \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435 \u2013 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u044f\u0441\u043d\u043e. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 Arduino \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u043b\u0438 \u043d\u0435\u043c\u0430\u043b\u043e \u0443\u0441\u0438\u043b\u0438\u0439 \u0434\u043b\u044f \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u0440\u043e\u0433\u0430 \u0432\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0432 \u0441\u0432\u043e\u044e \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u043d\u043e \u0437\u0430 \u0435\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u043c\u0438 \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u043b\u044b\u0448\u0435\u0442\u0441\u044f \u0442\u0435\u043c\u043d\u044b\u0439 \u043b\u0435\u0441 \u0441\u0443\u0440\u043e\u0432\u043e\u0439 \u0441\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u0438, \u043c\u0430\u043b\u043e\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0439 \u043b\u044e\u0431\u0438\u0442\u0435\u043b\u044e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u0430\u0442\u0430\u0448\u0438\u0442\u044b. \u0412\u0440\u043e\u0434\u0435 \u0431\u044b\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/kak-i-zachem-chitat-datashity-esli-mikrokontrollery-vashe-hobbi\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:47:12+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:47:12+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Come e perch\u00e9 leggere i datasheet, se i microcontrollori sono il tuo hobby | ProHoster","description":"La microelettronica \u00e8 diventato un hobby alla moda degli ultimi anni grazie al magico Arduino. Ma c'\u00e8 un problema: con un giusto interesse, \u00e8 facile superare DigitalWrite(), ma cosa fare dopo non \u00e8 del tutto chiaro. Gli sviluppatori di Arduino hanno fatto molti sforzi per abbassare la soglia di ingresso nel loro ecosistema, ma al di fuori di esso si estende ancora una fitta foresta di schemi complessi, inaccessibile all'hobbista. Ad esempio, i datasheet. A prima vista,","canonical_url":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/kak-i-zachem-chitat-datashity-esli-mikrokontrollery-vashe-hobbi","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a \u0438 \u0437\u0430\u0447\u0435\u043c \u0447\u0438\u0442\u0430\u0442\u044c \u0434\u0430\u0442\u0430\u0448\u0438\u0442\u044b, \u0435\u0441\u043b\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b \u2013 \u0432\u0430\u0448\u0435 \u0445\u043e\u0431\u0431\u0438 | ProHoster","og:description":"\u041c\u0438\u043a\u0440\u043e\u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u0438\u043a\u0430 \u2013 \u043c\u043e\u0434\u043d\u043e\u0435 \u0443\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u043b\u0435\u0442 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0432\u043e\u043b\u0448\u0435\u0431\u043d\u043e\u043c\u0443 Arduino. \u041d\u043e \u0432\u043e\u0442 \u0431\u0435\u0434\u0430: \u043f\u0440\u0438 \u0434\u043e\u043b\u0436\u043d\u043e\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435 \u043f\u0435\u0440\u0435\u0440\u0430\u0441\u0442\u0438 DigitalWrite() \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0431\u044b\u0441\u0442\u0440\u043e, \u0430 \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435 \u2013 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u044f\u0441\u043d\u043e. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 Arduino \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u043b\u0438 \u043d\u0435\u043c\u0430\u043b\u043e \u0443\u0441\u0438\u043b\u0438\u0439 \u0434\u043b\u044f \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u0440\u043e\u0433\u0430 \u0432\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0432 \u0441\u0432\u043e\u044e \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u043d\u043e \u0437\u0430 \u0435\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u043c\u0438 \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u043a\u043e\u043b\u044b\u0448\u0435\u0442\u0441\u044f \u0442\u0435\u043c\u043d\u044b\u0439 \u043b\u0435\u0441 \u0441\u0443\u0440\u043e\u0432\u043e\u0439 \u0441\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u0438, \u043c\u0430\u043b\u043e\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0439 \u043b\u044e\u0431\u0438\u0442\u0435\u043b\u044e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u0430\u0442\u0430\u0448\u0438\u0442\u044b. \u0412\u0440\u043e\u0434\u0435 \u0431\u044b","og:url":"https:\/\/prohoster.info\/it\/blog\/novosti-interneta\/kak-i-zachem-chitat-datashity-esli-mikrokontrollery-vashe-hobbi","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:47:12+00:00","article:modified_time":"2019-10-31T18:47:12+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"32463","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 11:00:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:58:24","updated":"2026-01-21 11:00:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/32463","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=32463"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/32463\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/24267"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=32463"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=32463"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=32463"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}