{"id":457,"date":"2021-01-11T22:23:23","date_gmt":"2021-01-11T21:23:23","guid":{"rendered":"https:\/\/www.ik0dwj.it\/ardf\/?page_id=457"},"modified":"2022-04-14T21:27:34","modified_gmt":"2022-04-14T19:27:34","slug":"arduino-uno-stand_alone-come-programmatore-isp","status":"publish","type":"page","link":"https:\/\/www.ik0dwj.it\/ardf\/arduino-uno-stand_alone-come-programmatore-isp\/","title":{"rendered":"Arduino UNO stand-alone come programmatore ISP"},"content":{"rendered":"<p><span style=\"font-weight: bold; font-size: 16px\">Presentazione<\/span><\/p>\n<p style=\"text-align: justify;\">\nCon <a href=\"https:\/\/store.arduino.cc\/arduino-uno-rev3\" title=\"Clicca qui!\"><strong>Arduino UNO<\/strong><\/a> &#8220;stand-alone&#8221; si intende una disposizione di componenti minimale in un circuito compatibile che possa permettere di scrivere sul microcontrollore <span style=\"cursor: help;color: red;\" title=\"Processore a 8 bit in un pacchetto DIP a 28 pin che utilizza una tensione operativa da 1,8 V a 5 V. Il dispositivo necessita solo di un cristallo o risonatore esterno da 16 MHz, un'alimentazione a 5 V e una connessione seriale per iniziare a lavorare con l'IDE di Arduino. Funziona fino a 20 MHz con un cristallo esterno e pu\u00f2 essere programmato in circuito fornendo una soluzione flessibile a qualsiasi progetto.\"><strong>ATMEGA328P-PU<\/strong><\/span> (il cuore della scheda ufficiale Arduino UNO), il codice nel linguaggio di programmazione Arduino utilizzando l&#8217;ambiente di sviluppo Arduino.<br \/>\nCon un adattatore da USB a seriale FTDI, la programmazione e la messa a punto del microcontrollore si consegue con il solo uso del computer e di un software chiamato <a href=\"https:\/\/it.wikipedia.org\/wiki\/Arduino_IDE\" title=\"Clicca qui per una maggiore informazione.\"><strong>Arduino IDE<\/strong><\/a>. Come vedremo tutto questo \u00e8 reso possibile perch\u00e9 la linea <a href=\"https:\/\/it.wikipedia.org\/wiki\/Atmel_AVR\" title=\"Clicca qui per una maggiore informazione.\"><strong>AVR<\/strong><\/a> dei microcontrollori prodotti da Atmel come la serie ATmega sono dispositivi che supportano <a href=\"https:\/\/it.wikipedia.org\/wiki\/In-System_Programming\" title=\"Clicca qui per una maggiore informazione.\"><strong>ISP<\/strong><\/a>.<br \/>\nIn questa configurazione i programmi sviluppati per Arduino denominati sketch, non potrebbero essere caricati sul microcontrollore se non vi fosse gi\u00e0 scritto il bootloader Arduino UNO 16MHz. Il bootloader abilita l\u2019uso del codice Arduino in un progetto integrato personalizzato senza la necessit\u00e0 di utilizzare una scheda ufficiale.<br \/>\nIl compito del microcontrollore  \u00e8 memorizzare ed eseguire le funzioni imposte dallo sketch le quali attivano, in un circuito asservito, le azioni prefissate. Questo sistema offre possibilit\u00e0 importanti che facilitano lo sviluppo di progetti elettronici attinenti alla tematica di questo sito. Per esempio, con un unico microcontrollore, abbinato ad un hardware minimale, si ha la possibilit\u00e0 di realizzare il controllo temporizzato del PTT di un trasmettitore FM (denominato in gergo &#8220;volpe&#8221;), modularne la portante con il codice morse e stabilire una tempistica di funzionamento sincronizzato con altre &#8220;volpi&#8221;.<br \/>\nLa scelta di voler usare la piattaforma Arduino rispetto  ad altri sistemi pu\u00f2 essere spiegata per alcune ragioni di metodo. Il sistema hardware e software \u00e8 open-source e non un sistema &#8220;privativo&#8221;, il software Arduino IDE \u00e8 amichevole e corredato da una collezione di esempi progressivi di sketch, da una vasta raccolta di librerie di funzioni e variabili globali, di schemi hardware liberamente fruibili, ed infine, non meno importante, offre la possibilit\u00e0 di arrivare agli scopi prefissati anche se non si \u00e8 degli esperti creatori di codice.<br \/>\nSenza un microcontrollore dove trasferire le funzioni idealizzate nell&#8217;IDE (IDE \u00e8 l&#8217;acronimo di Integrated Development Environment che significa Ambiente di Sviluppo Integrato), queste non si potrebbero realizzare;  viceversa il microcontrollore, che identifica nell&#8217;IDE il campo d&#8217;azione, senza programmazione sarebbe inutile. Il microcontrollore e Arduino sono dunque due componenti complementari, visti nell&#8217;insieme come fossero un tutt&#8217;uno.<br \/>\nSul mercato possiamo trovare sia ATMEGA328P-PU vergini che dotati di bootloader. Acquistare microcontrollori vergini \u00e8 la soluzione preferenziale perch\u00e9 costano circa la met\u00e0 di quelli che ne sono invece gi\u00e0 dotati; l&#8217;unico inconveniente \u00e8 che dobbiamo poi scriverci il bootloader, ma non \u00e8 un motivo di preoccupazione.<br \/>\nPer la soluzione qui presentata, sar\u00e0 necessario utilizzare due ATmega328. Il primo, denominato &#8220;microcontrollore 1&#8221;, dovr\u00e0 essere acquistato con il bootloader, servir\u00e0 per caricarci mediante Arduino IDE lo sketch ArduinoISP, pertanto diventer\u00e0 abilitato come programmatore ISP (si \u00e8 gi\u00e0 detto che gli ATmega supportano ISP e possono comunicare con il programmatore attraverso un protocollo seriale); l&#8217;altro invece, denominato &#8220;microcontrollore 2&#8221;, sar\u00e0 uno dei numerosi altri ATmega328 vergini su cui dovr\u00e0 essere scritto il bootloader.<br \/>\nLo schema elettrico essenziale che permette tutto questo \u00e8 stato realizzato su breadboard ed \u00e8 completo in se, nel senso che svolger\u00e0 una doppia funzione, sia di programmatore ISP per scrivere il booloader, sia la funzione normale di caricare gli sketch Arduino.<\/p>\n<p><strong>Ecco lo schema:<\/strong><br \/>\n(come vedasi il sistema di comunicazione previsto utilizza una porta seriale FTDI)<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/arduino-uno_stand-alone_come-programmatore-isp.png\" alt=\"\" width=\"764\" height=\"1046\" class=\"alignnone size-full wp-image-611\" \/><\/p>\n<p><strong>Questo \u00e8 il relativo circuito su breadboard:<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/breadboard-per-scrivere-il-bootloader-di-arduino-uno.png\" alt=\"\" width=\"1024\" height=\"371\" class=\"alignnone size-full wp-image-461\" \/><\/p>\n<p><strong>Come si collega la breadboard al computer:<\/strong><\/p>\n<p style=\"text-align: justify;\">\nL&#8217;adattatore da USB a seriale FTDI va inserito sulla connessione strip FTDI della breadboard e collegato ad una porta USB del computer<sup><strong>(1)<\/strong><\/sup>, come nella foto seguente, rispettando sulla connessione strip la sequenza numerica dei 6 pin da sx verso dx: (1)<b>GND<\/b>, (2)CTS, (3)<b>+5V<\/b>, (4)<b>TXD<\/b>, (5)<b>RXD<\/b>, (6)<b>DTR<\/b> e la rispettiva marcatura. A tal proposito vedi la compatibilit\u00e0 con Arduino degli adattatori nella sezione &#8220;Equipaggiamento hardware utilizzato&#8221;.<\/p>\n<p style=\"text-align: justify;\"><sup><strong>(1)<\/strong><\/sup><br \/>\nIl nome al dispositivo verr\u00e0 associato automaticamente dal s.o. Linux, in quanto il supporto agli adattatori da USB a Seriale \u00e8 compreso nel kernel.<br \/>\nVerificare eventualmente con la utility &#8220;lsusb&#8221; da riga di comando. Per esempio il mio \u00e8 un adattatore originale Arduino e questo \u00e8 il suo output:<br \/>\n<span style=\"color: #808080;\">$ lsusb|grep Arduino<br \/>\nBus 001 Device 004: ID 2341:003b Arduino SA Serial Adapter (CDC ACM)<\/span>\n<\/p>\n<p><strong>NB<\/strong>:<\/p>\n<ul>\n<li style=\"text-align: justify\";>Il pin (2)CTS non \u00e8 collegato.<\/li>\n<li style=\"text-align: justify\";>L&#8217;adattatore e la breadboard sono entrambi alimentati dai 5V del VBUS della presa USB 2 tipo A del computer, alla quale il relativo connettore dell&#8217;adattatore \u00e8 collegata, pertanto la breadboard non ha bisogno di essere alimentata separatamente.<\/li>\n<\/ul>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/adattatore-usb_seriale-sul-connettore-strip-ftdi.jpg\" alt=\"\" width=\"2560\" height=\"1445\" class=\"size-full wp-image-735\" srcset=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/adattatore-usb_seriale-sul-connettore-strip-ftdi.jpg 2560w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/adattatore-usb_seriale-sul-connettore-strip-ftdi-300x169.jpg 300w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/adattatore-usb_seriale-sul-connettore-strip-ftdi-1024x578.jpg 1024w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/adattatore-usb_seriale-sul-connettore-strip-ftdi-768x434.jpg 768w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/adattatore-usb_seriale-sul-connettore-strip-ftdi-1536x867.jpg 1536w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/adattatore-usb_seriale-sul-connettore-strip-ftdi-2048x1156.jpg 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/>\n<p><\/p>\n<div style=\"text-align: justify;\">\n<span style=\"font-weight: bold; font-size: 16px\">Adesso, attraverso le immagini dello schermo di Arduino IDE, verr\u00e0 spiegata in 6 passi la procedura per poter scrivere il bootloader sul secondo microcontrollore.<\/span>\n<\/div>\n<\/p>\n<p><b>Passo 1:<\/b><br \/>\nCon il computer avviare il programma Arduino IDE e selezionare sulla barra del menu a discesa il device corretto (nella mia configurazione risulta essere &#8220;\/dev\/ttyACM0&#8221;):<br \/>\nStrumenti &#8211;> Porta &#8211;> \/dev\/ttyACM0<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-porta.png\" alt=\"\" width=\"639\" height=\"576\" class=\"alignnone size-full wp-image-789\" srcset=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-porta.png 639w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-porta-300x270.png 300w\" sizes=\"auto, (max-width: 639px) 100vw, 639px\" \/><\/p>\n<hr>\n<p><b>Passo 2:<\/b><br \/>\nScelto correttamente il dispositivo, aprire lo sketch &#8220;ArduinoISP&#8221;. Per ottenere questo selezionare sulla barra del menu a discesa:<br \/>\nFile &#8211;> Esempi &#8211;> ArduinoISP<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/file-esempi-arduinoisp.png\" alt=\"\" width=\"595\" height=\"487\" class=\"alignnone size-full wp-image-469\" srcset=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/file-esempi-arduinoisp.png 595w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/file-esempi-arduinoisp-300x246.png 300w\" sizes=\"auto, (max-width: 595px) 100vw, 595px\" \/><\/p>\n<hr>\n<p><b>Passo 3:<\/b><br \/>\nSulla nuova finestra di Arduino IDE, dove \u00e8 stato aperto lo sketch ArduinoISP, selezionare il tipo di scheda sulla barra del menu a discesa:<br \/>\nStrumenti &#8211;> Scheda &#8211;> Arduino UNO<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-scheda-arduino_uno.png\" alt=\"\" width=\"768\" height=\"570\" class=\"alignnone size-full wp-image-739\" srcset=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-scheda-arduino_uno.png 768w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-scheda-arduino_uno-300x223.png 300w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/p>\n<hr>\n<p><b>Passo 4:<\/b><br \/>\nScelto il tipo di scheda, compilare e caricare lo sketch ArduinoISP sul microcontrollore 1 (quello acquistato con il bootloader) in unica azione, selezionando sulla barra del menu a discesa:<br \/>\nSketch &#8211;> Carica<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/sketch-carica.png\" alt=\"\" width=\"610\" height=\"552\" class=\"alignnone size-full wp-image-620\" srcset=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/sketch-carica.png 610w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/sketch-carica-300x271.png 300w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/arduinoisp_caricamento-completato.png\" alt=\"\" width=\"609\" height=\"552\" class=\"alignnone size-full wp-image-621\" srcset=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/arduinoisp_caricamento-completato.png 609w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/arduinoisp_caricamento-completato-300x272.png 300w\" sizes=\"auto, (max-width: 609px) 100vw, 609px\" \/><\/p>\n<hr>\n<p><b>Passo 5:<\/b><br \/>\nCompletato il caricamento di ArduinoISP sul microcontrollore 1, impostare l&#8217;IDE di Arduino come programmatore ISP. Per ottenere questo selezionare sulla barra del menu a discesa:<br \/>\nStrumenti &#8211;> Programmatore &#8211;> Arduino as ISP<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-programmatore-arduino_as_isp.png\" alt=\"\" \/><\/p>\n<hr>\n<p><b>Passo 6:<\/b><br \/>\nInfine, dopo aver impostato Arduino come programmatore ISP, non rimane che scrivere il bootloader sul secondo ATmega vergine:<br \/>\nStrumenti &#8211;> Scrivi il bootloader<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-scrivi_il_bootloader.png\" alt=\"\" width=\"523\" height=\"574\" class=\"alignnone size-full wp-image-745\" srcset=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-scrivi_il_bootloader.png 523w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/strumenti-scrivi_il_bootloader-273x300.png 273w\" sizes=\"auto, (max-width: 523px) 100vw, 523px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/scrittura-bootloader-completata.png\" alt=\"\" width=\"609\" height=\"552\" class=\"alignnone size-full wp-image-622\" srcset=\"https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/scrittura-bootloader-completata.png 609w, https:\/\/www.ik0dwj.it\/ardf\/wp-content\/uploads\/2021\/01\/scrittura-bootloader-completata-300x272.png 300w\" sizes=\"auto, (max-width: 609px) 100vw, 609px\" \/><\/p>\n<hr>\n<p><span style=\"font-size: 16px;font-weight: bold\">Scelte finali:<\/span><\/p>\n<p style=\"text-align: justify;\">\nConsiderando la posizione dei microcontrollori 1 e 2 sulla breadboard, con il passo 6 \u00e8 stata eseguita la scrittura del bootloader sul &#8220;microncontrollore 2&#8221; vergine.<br \/>\nSe ora si volesse programmarlo con uno sketch, andrebbe tolto il microcontrollore 1 e inserito qui il microcontrollore 2 su cui \u00e8 stato appena caricato il bootloader. Se invece si volesse continuare a scrivere il bootloader su altri ATmega328 vergini, ripetere solo il passo 6 dopo aver sostituito il microcontrollore 2 con un altro vergine.<br \/>\nIl circuito su breadboard qui presentato, come si \u00e8 visto, \u00e8 idoneo sia come programmatore ISP per scrivere il bootloader, sia per caricare gli sketch Arduino.<\/p>\n<p style=\"font-size: 16px;font-weight: bold\">Note finali:<\/p>\n<ul>\n<li>\n<p style=\"text-align: justify;\">Per facilitare queste operazioni di sostituzione degli ATMEGA328P-PU senza effettuare errori di riposizionamento nel punto esatto sulla breadboard, si consiglia di utilizzare zoccoli IC da 28 poli. Lasciando ogni volta lo zoccolo sulla breadborad la giusta posizione sar\u00e0 sempre assicurata.<\/p>\n<\/li>\n<li>\n<p style=\"text-align: justify;\">Per l&#8217;adattatore da USB a seriale FTDI, vedi la sezione &#8220;Equipaggiamento hardware utilizzato&#8221;.<\/p>\n<\/li>\n<\/ul>\n<hr>\n<p><span style=\"font-size: 16px;font-weight: bold\">Elenco componenti<\/span><\/p>\n<p>Attivi:<br \/>\n-n.1 ATMEGA328P-PU (IC1) con precaricato il bootloader dell&#8217;Arduino UNO;<br \/>\n-n.1 ATMEGA328P-PU (IC2) vergine;<\/p>\n<p>Passivi:<br \/>\n-n.2 quarzi (Q1 e Q2) standard 16 MHz<br \/>\n-n.2 resistenze (R1 e R2) &frac14; W 10k;<br \/>\n-n.1 condensatore poliestere radiale (C1) 100n;<br \/>\n-n.4 condensatori ceramici multistrato (C2, C3, C4, C5) 22p;<br \/>\n-n.1 connettore strip maschio tagliato (FTDI) per 6 pin;<br \/>\n-n.2 zoccoli IC del passo di 2.54 mm, da 7.62 mm 28 poli;<br \/>\n-n.1 breadboard 830 punti;<br \/>\n-vari ponticelli maschio\/maschio di diverse lunghezze e colori.<\/p>\n<p><span style=\"font-size: 16px;font-weight: bold\">Equipaggiamento hardware utilizzato<\/span><\/p>\n<p>Computer:<br \/>\n-Laptop Panasonic CF-19.<\/p>\n<p style=\"text-align: justify;\">\nSchede esterne:<br \/>\n-n.1 adattatore &#8220;Arduino USB 2 Serial Micro&#8221;.<br \/>\nQuesto adattatore \u00e8 dotato di un Atmega16U2 programmato come convertitore da USB a seriale, lo stesso chip che si trova sulla scheda ufficiale Arduino Uno. Ha un polifusibile integrato che limita la corrente a 500 mA e protegge il controller host USB del computer dai cortocircuiti.<br \/>\n<strong>NB<\/strong>: Purtroppo &#8220;Arduino USB 2 Serial Micro&#8221; non \u00e8 pi\u00f9 costruito, tuttavia le piedinature sul connettore strip FTDI sono compatibili con gli adattatori USB-Serial <a href=\"https:\/\/www.adafruit.com\/product\/3309\"><strong>Adafruit<\/strong><\/a> e <a href=\"https:\/\/www.sparkfun.com\/products\/13263\"><strong>Sparkfun<\/strong><\/a> che, come l&#8217;originale Arduino, offrono il ripristino automatico per le schede Arduino\/ATmega328, quindi niente ponticelli con i pin e niente modifiche sullo schema per i pulsanti di ripristino. Si consiglia pertanto di utilizzare questi adattatori come alternativa per un funzionamento sicuro.<\/p>\n<p><span style=\"font-size: 16px;font-weight: bold\">Equipaggiamento software utilizzato<\/span><\/p>\n<p>Sistema operativo:<br \/>\n-Debian GNU\/Linux ramo testing, ma vanno bene anche s.o. di altre distribuzioni Linux correnti.<\/p>\n<p>Programmi:<br \/>\n<a href=\"https:\/\/www.arduino.cc\/en\/software\" title=\"Clicca qui per il download.\"><strong>Arduino IDE<\/strong><\/a>.<\/p>\n<hr>\n<p>Buon divertimento.<\/p>\n<p>73 de IK\u00d8DWJ<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Presentazione Con Arduino UNO &#8220;stand-alone&#8221; si intende una disposizione di componenti minimale in un circuito compatibile che possa permettere di scrivere sul microcontrollore ATMEGA328P-PU (il cuore della scheda ufficiale Arduino UNO), il codice nel linguaggio di programmazione Arduino utilizzando l&#8217;ambiente&hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-457","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.ik0dwj.it\/ardf\/wp-json\/wp\/v2\/pages\/457","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ik0dwj.it\/ardf\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.ik0dwj.it\/ardf\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.ik0dwj.it\/ardf\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ik0dwj.it\/ardf\/wp-json\/wp\/v2\/comments?post=457"}],"version-history":[{"count":331,"href":"https:\/\/www.ik0dwj.it\/ardf\/wp-json\/wp\/v2\/pages\/457\/revisions"}],"predecessor-version":[{"id":827,"href":"https:\/\/www.ik0dwj.it\/ardf\/wp-json\/wp\/v2\/pages\/457\/revisions\/827"}],"wp:attachment":[{"href":"https:\/\/www.ik0dwj.it\/ardf\/wp-json\/wp\/v2\/media?parent=457"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}