<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Carmine Noviello</title>
	<atom:link href="http://www.carminenoviello.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.carminenoviello.com</link>
	<description>ilnovi&#039;s corner</description>
	<lastBuildDate>Sun, 06 May 2012 18:09:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Analizzatore di stati logici Zeroplus LAP-C</title>
		<link>http://www.carminenoviello.com/2012/05/06/analizzatore-di-stati-logici-zeroplus-lap-c/</link>
		<comments>http://www.carminenoviello.com/2012/05/06/analizzatore-di-stati-logici-zeroplus-lap-c/#comments</comments>
		<pubDate>Sun, 06 May 2012 15:22:50 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Elettronica]]></category>
		<category><![CDATA[16064]]></category>
		<category><![CDATA[analizzatore di stati logici]]></category>
		<category><![CDATA[i2c]]></category>
		<category><![CDATA[lap-c]]></category>
		<category><![CDATA[spi]]></category>
		<category><![CDATA[zeroplus]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=428</guid>
		<description><![CDATA[L&#39;analizzatore di stati logici &#232; uno strumento che non pu&#242; mancare nel laboratorio di chi si occupa di elettronica digitale. Forse, per gli &#34;elettronici digitali&#34; l&#39;analizzatore di stati logici &#232; pi&#249; importante dell&#39;oscilloscopio, e spesso &#232; l&#39;unico strumento che permette di capire cosa sta succedendo ad un dato dispositivo. La sua utilit&#224; massima si manifesta [...]]]></description>
			<content:encoded><![CDATA[<p>L&#39;analizzatore di stati logici &egrave; uno strumento che non pu&ograve; mancare nel laboratorio di chi si occupa di elettronica digitale. Forse, per gli &quot;elettronici digitali&quot; l&#39;analizzatore di stati logici &egrave; pi&ugrave; importante dell&#39;oscilloscopio, e spesso &egrave; l&#39;unico strumento che permette di capire cosa sta succedendo ad un dato dispositivo. La sua utilit&agrave; massima si manifesta quando si comincia a lavorare con un nuovo IC: anche se i datasheet forniti dai costruttori sono super completi, prima di capire realmente come interfacciarsi con un dispositivo bisogna stare li ad impazzire per ore e ore (a volte anche per giorni, fidatevi), cercando di scoprire come dialogarci e quali sequenze esatte di comandi inviare. E questo anche se i dispositivi usano protocolli che dovrebbero essere standard come l&#39;<a href="http://it.wikipedia.org/wiki/I%C2%B2C">I&sup2;C</a>&nbsp;o l&#39;<a href="http://it.wikipedia.org/wiki/Serial_Peripheral_Interface">SPI</a>:&nbsp;l&#39;interpretazione del protocollo e delle sue temporizzazioni possono mettere a dura prova anche il programmatore pi&ugrave; smaliziato. Un analizzatore di stati logici semplifica tremendamente il processo di debugging, ed &egrave; un investimento che si ripaga nel giro di qualche ora. Io stesso ho comprato per disperazione l&#39;analizzatore di cui vi parlo in questo post dopo aver passato 7 giorni nel tentativo vano di mettere a punto il firmware pilota del convertitore analogico digitale <a href="http://www.ti.com/product/ads1247">ADS1247</a> di Texas Instruments. E grazie all&#39;analizzatore in una giornata ho capito gli errori che commettevo ed ho finalizzato il lavoro.&nbsp;<br />
	Tuttavia il budget necessario per acquistare un analizzatore a s&eacute; stante delle marche pi&ugrave; blasonate &egrave; molto alto, certamente non alla portata di un hobbista ma anche di alcune aziende che non necessariamente si occupano di sviluppo di elettronica come core business principale. Ed ecco che una soluzione come quello dello Zeroplus LAP-C pu&ograve; essere una vera e propria manna caduta dal cielo, ad prezzo che sicuramente lo rendono un prodotto accessibile al grande pubblico.&nbsp;</p>
<p><span id="more-428"></span></p>
<h3>Che cos&#39;&egrave; un analizzatore di stati logici e a cosa serve?</h3>
<p>Se siete giunti su questo blog probabilmente gi&agrave; conoscete a cosa serve esattamente un analizzatore di stati logici e siete interessati solo a capire come funziona il modello oggetto di questa recensione. In questo caso, saltate tranquillamente questo paragrafo molto introduttivo.</p>
<p>Un analizzatore di stati logici &egrave; uno strumento elettronico di acquisizione che si occupa di tracciare la variazione di stato di un dato dispositivo in un intervallo temporale. Cos&igrave; come un oscilloscopio permette di visualizzare su di un grafico bidimensionale la variazione nel tempo di un segnale elettrico e fare misure quantitative, un analizzatore di stati permette di tracciare le variazioni di stato di un dispositivo digitale &#8211; assumo che sia abbastanza chiaro che i dispositivi digitali possono essere visti come macchine a stati finiti che durante la loro attivit&agrave; variano per l&#39;appunto il loro stato, e lo fanno attraverso la variazione del livello di segnale entro determinati intervalli che permettono di associare uno &quot;0&quot; logico allo stato basso e un &quot;1&quot; logico allo stato alto. Lo stato logico pu&ograve; essere interno al dispositivo (ad esempio lo stato di una delle migliaia di porte logiche contenuto in un microcontrollore), cos&igrave; come &quot;esterno&quot;. Quest&#39;ultimo &egrave; il caso pi&ugrave; interessante ai fini dell&#39;uso di un analizzatore di stati. Infatti, i dispositivi digitali dialogano con altri dispositivi digitali per mezzo di protocolli (come l&#39;I&sup2;C&nbsp;e l&#39;SPI), e i segnali trasmessi ad una data frequenza tra questi dispositivi, e la loro variazione di stato, delineano il funzionamento del protocollo e del dispositivo stesso.&nbsp;</p>
<p>Facciamo un esempio concreto. Consideriamo il protocollo&nbsp;I&sup2;C che &egrave; un protocollo di comunicazione seriale a due fili (si parla per l&#39;appunto di Two Wire Interface &#8211; <em>TWI</em>): il canale SDA &egrave; addetto alla trasmissione dei dati, mentre il canale SCL &egrave; addetto alla distribuzione del clock, che serve per sincronizzare lo scambio dati tra i due dispositivi (tenete a mente che in elettronica l&#39;asincronia la fa da padrona, e il clock &egrave; l&#39;unico elemento di sincronizzazione efficiente per assicurarsi che i dispositivi scambiano correttamente dati).&nbsp;<br />
	Il protocollo&nbsp;I&sup2;C prevede che ogni comando con i relativi parametri sia preceduto da una condizione di START e terminato da una di STOP. La condizione di&nbsp;START&nbsp;si ottiene portando il canale SDA al livello logico 0 mentre il clock si trova alto (livello logico 1), mentre la condizione di STOP si ottiene portando il canale SDA al livello logico alto mentre il clock si trova alto.</p>
<p>&nbsp;</p>
<p style="text-align: center; "><a href="http://www.carminenoviello.com/wp-content/uploads/2012/05/Start-stop-iic.png" target="_blank"><img align="middle" alt="" height="202" src="http://www.carminenoviello.com/wp-content/uploads/2012/05/Start-stop-iic.png" width="400" /></a></p>
<p>L&#39;analizzatore di stati logici permette di tacciare simultaneamente un certo numero di canali e plottare su un grafico temporale la variazione di stato di questi canali. Ad esempio, nel caso del&nbsp;I&sup2;C, permette di analizzare in contemporanea i canali SDA e SCL e risalire quindi al messaggio che i dispositivi si stanno scambiando. Inoltre, gli analizzatori logici hanno funzioni software che permettono di analizzare il protocollo specifico e non solo visualizzare la variazione degli stati.</p>
<p>&nbsp;</p>
<p style="text-align: center; "><a href="http://www.carminenoviello.com/wp-content/uploads/2012/05/IIC_EN001.jpg" target="_blank"><img alt="" height="300" src="http://www.carminenoviello.com/wp-content/uploads/2012/05/IIC_EN001.jpg" width="400" /></a></p>
<p>&nbsp;</p>
<p>Dato che il protocollo di per s&eacute; non dice nulla su poi come il dispositivo vuole essere effettivamente usato (i comandi, le temporizzazioni, ecc). Ad esempio, una EEPROM della serie 24L ha il suo protocollo costruito sull&#39;I&sup2;C, gli analizzatori pi&ugrave; evoluti hanno degli specifici analizzatori di protocollo che permettono con estrema facilit&agrave; di tracciare il comportamento specifico di quel particolare dispositivo.<br />
	Capite come, quindi, un analizzatore sia uno strumento utilissimo nel tenere traccia delle variazioni di stato durante la comunicazione fra dispositivi digitali, e quale sia il suo aiuto effettivo nel debuggare un circuito o una parte di esso.</p>
<p>&nbsp;</p>
<h3>Zeroplus LAP-C 16064</h3>
<p>L&#39;analizzatore di stati logici di cui vi parlo &egrave; prodotto dalla taiwanese <a href="http://www.zeroplus.com.tw/logic-analyzer_en/">Zeroplus</a>&nbsp;ed &egrave; un analizzatore del tipo PC-Based, ossia non &egrave; uno strumento autonomo ma richiede l&#39;uso di un PC e di un software dedicato (che purtroppo gira solo su Windows) per analizzare i dati acquisiti dal dispositivo. Nello specifico, io ho acquistato il modello<a href="http://www.zeroplus.com.tw/logic-analyzer_en/products.php?pdn=1&amp;product_id=252"> LAP-C 16064</a>, dotato di 16 canali di acquisizione e 64Kbit per canale di memoria,e con una frequenza di campionamento massima con clock esterno di 75Mhz. I prodotti Zeroplus in Italia sono commercializzati da <a href="http://www.robot-italy.com/advanced_search_result.php?search_in_description=1&amp;keywords=zeroplus&amp;sort=3a&amp;page=2">Robot-Italy.com</a> e il modello in oggetto viene venduto per meno di 190&euro;.<br />
	Diciamo subito che, per chi vuole un giudizio immediato sul prodotto senza attendere oltre, sicuramente fa il suo lavoro e vale tutti i soldi che costa, e probabilmente anche di pi&ugrave;. Quindi se siete in dubbio sull&#39;acquisto, procedete senza esitazioni. Ma andiamo nel dettaglio.</p>
<p style="text-align: center; "><a href="http://www.carminenoviello.com/wp-content/uploads/2012/05/lap-c16064-logic-analyser.jpg" target="_blank"><img alt="" height="400" src="http://www.carminenoviello.com/wp-content/uploads/2012/05/lap-c16064-logic-analyser.jpg" width="400" /></a></p>
<p>L&#39;analizzatore viene fornito in una pratica custodia semirigida, con tutti i probe necessari per acquisire dai 16 canali, i cavi di connessione ai probe, i cavi e i probe di grounding e un cavo USB. Presenti, inoltre, CD e manuale di istruzioni, anche se vi consiglio di scaricare gratuitamente il software pi&ugrave; aggiornato dal sito web della Zeroplus. &nbsp;L&#39;analizzatore si presenta sotto forma di scatola, dove da un lato abbiamo la porta USB per la connessione al PC e dall&#39;altro tutte le uscite per collegare i probe. La qualit&agrave; dei materiali &egrave; alta, e sicuramente non &egrave; un prodotto &quot;artigianale&quot;, ma si presenta piuttosto bene e con rifiniture professionali. Se proprio vogliamo essere pignoli, la qualit&agrave; dei probe non &egrave; eccelsa, e la punta tende a rovinarsi molto facilmente. &nbsp;</p>
<p>Il funzionamento dell&#39;analizzatore in quanto tale &egrave; molto semplice: si collegano i probe e i cavi di grounding, e a loro volta si collegano alla massa del dispositivo da debuggare; allo stesso modo si collegano i probe ai canali da tenere sotto traccia. Fatto ci&ograve;, tutto il lavoro si svolge esclusivamente dal software sul PC.</p>
<p>Il software della Zeroplus sulle prime pu&ograve; dare problemi, trattandosi di un prodotto molto complesso e che si adatta a tutta la gamma degli strumenti prodotti da Zeroplus. Sicuramente si rimane spiaziati d&#39;avanti alla mole di pulsanti e opzioni disponibili. Per cominciare esistono in rete alcune guide. &nbsp;Robot-Italy pubblica un <a href="http://www.robot-italy.com/manufacturer.php?manufacturers_id=55=Zeroplus">tutorial</a> in italiano, mentre su Youtube la Zeroplus ha caricato dei <a href="http://www.youtube.com/user/LAZeroplus">video</a> di esempio molto utili. Tuttavia, concedetevi un po&#39; di tempo per capire a pieno lo strumento, soprattutto se non avete mai lavorato prima con un analizzatore di stati logici.</p>
<p>Come dicevo nel precedente paragrafo, un analizzatore deve essere in grado di fornire anche l&#39;analisi del protocollo specifico, altrimenti un buon oscilloscopio pu&ograve; svolgere (quasi) lo stesso compito. Il software di Zeroplus permette di analizzare i protocolli per mezzo di plug-in che si acquistano a parte. Ne sono disponibili una quantit&agrave; enorme: circa 70. Nel modello LAP-C 16064 escono gratis i seguenti protocolli:&nbsp;I&sup2;C, UART, SPI e 7-Segment LCD. La buona notizia &egrave; che c&#39;&egrave; un offerta praticamente &quot;permanente&quot; che vi permette di scegliere dopo l&#39;acquisto gratis fino a 30 protocolli, e con 30 protocolli si copre praticamente tutto. Si acquista, invece, a parte il <a href="http://www.robot-italy.com/product_info.php?cPath=165&amp;products_id=1678">protocol analyzer trigger</a>, che vi permette di impostare dei trigger quando si verifica un certo evento collegato al protocollo (ad esempio viene inviato un dato comando). Costa 43&euro;, anche se io ad oggi una reale esigenza non l&#39;ho avuta e non l&#39;ho comprato.</p>
<p>Come detto in precedenza, il modello LAP-C 16064 ha 16 canali con 64Kbit di acquisizione per canale. Il mio consiglio, se avete la possibilit&agrave; di spendere qualcosina in pi&ugrave;, &egrave; di prendere il modello con 128Kbit di memoria per canale. E vi spiego perch&eacute;. L&#39;analizzatore ha due modalit&agrave; di acquisizione dati: una senza compressione e una con compressione. Nella modalit&agrave; senza compressione, l&#39;analizzatore acquisisce i dati dividendo la memoria disponibile per la frequenza di campionamento, che deve essere almeno 4 volte superiore a quella a cui opera il dispositivo che state analizzando. Quindi, a prescindere se c&#39;&egrave; o meno una variazione di stato, l&#39;analizzatore acquisisce sempre una volta scaduto l&#39;intervallo di campionamento (ad esempio, 100kHz significano 100.000 campionature al secondo). Nella modalit&agrave; compressa, invece, l&#39;analizzatore memorizza soltanto quando c&#39;&egrave; una variazione di stato del canale, e oltre alla variazione registra l&#39;offset temporale. Con questa modalit&agrave; si possono acquisire fino a 256 volte i dati che si otterrebbero nella modalit&agrave; normale. Tuttavia, la mia esperienza &egrave; che la modalit&agrave; con compressione non &egrave; molto precisa e possono esserci problemi soprattutto quando il clock non ha una generazione precisissima. Mi spiego meglio. Mi &egrave; capitato di dover adoperare un dispositivo su I&sup2;C interfacciato da un micro che non gestisce in hardware il protocollo I&sup2;C. La tecnica adoperata in questo caso &egrave; quella del <a href="http://en.wikipedia.org/wiki/Bit_banging">bit-banging</a>, e&nbsp;usando l&#39;acquisizione con compressione succedeva che l&#39;analizzatore del protocollo non riusciva a decodificare correttamente il protocollo, cosa che non accadeva con la modalit&agrave; normale. Il motivo &egrave; da ricercare nel fatto che il clock, generato con dei busy wait (delay) nel firmware, non aveva un&#39;oscillazione fissa, ma delle variazioni di qualche &micro;s che impattavano sull&#39;analizzatore del protocollo. Quindi, potendo, comprate il modello con 128Kbit di memoria. In caso negativo, il 64Kbit funzioner&agrave; egregiamente, ma vi preannuncio che potrete scontrarvi col problema che vi ho segnalato.</p>
<p>&nbsp;</p>
<h3>Conclusioni</h3>
<p>Meno di 200&euro; per uno strumento che pu&ograve; tornare molto utile in tantissime occasioni, far risparmiare tempo e magari denaro, &egrave; una cosa che fino a qualche anno fa si poteva fare solo nei sogni. Il LAP-C 16064 &egrave; uno strumento che fa il suo dovere e d&agrave; ad una platea vastissima la possibilit&agrave; di avere un analizzatore di stati logici. Certo non ha le comodit&agrave; di un analizzatore autonomo ma richiede un PC e un software dedicato, ma sinceramente non si muore per questo. E poi, scusate se mi ripeto, oggi come oggi con meno di 200&euro; vorrei capire cosa ci si aspetta di comprare. Unico suggerimento: se potete spendere di pi&ugrave;, comprate la versione con 128Kbit di memoria per canale.&nbsp;</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2012/05/06/analizzatore-di-stati-logici-zeroplus-lap-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La guerra degli ARM</title>
		<link>http://www.carminenoviello.com/2012/05/01/la-guerra-degli-arm/</link>
		<comments>http://www.carminenoviello.com/2012/05/01/la-guerra-degli-arm/#comments</comments>
		<pubDate>Tue, 01 May 2012 19:58:10 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Elettronica]]></category>
		<category><![CDATA[Informatica]]></category>
		<category><![CDATA[MCU]]></category>
		<category><![CDATA[ARM]]></category>
		<category><![CDATA[beaglebone]]></category>
		<category><![CDATA[low-cost]]></category>
		<category><![CDATA[mini2440]]></category>
		<category><![CDATA[pico-SAM9G45]]></category>
		<category><![CDATA[Raspberry PI]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=384</guid>
		<description><![CDATA[Per chi non se ne fosse ancora accorto (ma dubito che tra gli addetti ai lavori ci sia qualcuno), viviamo in un&#39;epoca in cui il processore cool&#160;come volume di mercato, motore di sviluppo informatico, ubiquit&#224; e appetibilit&#224; per evoluzioni e sviluppi futuri &#232; basato su un core ARM. I microcontrollori (perch&#233; stiamo pure sempre parlando [...]]]></description>
			<content:encoded><![CDATA[<p>Per chi non se ne fosse ancora accorto (ma dubito che tra gli addetti ai lavori ci sia qualcuno), viviamo in un&#39;epoca in cui il processore <em>cool</em>&nbsp;come volume di mercato, motore di sviluppo informatico, ubiquit&agrave; e appetibilit&agrave; per evoluzioni e sviluppi futuri &egrave; basato su un core <a href="http://it.wikipedia.org/wiki/Architettura_ARM">ARM</a>. I microcontrollori (perch&eacute; stiamo pure sempre parlando di micro anche se molto avanzati) con core ARM sono ormai ovunque: nello smartphone che vi sta accanto quasi sicuramente c&#39;&egrave; una CPU ARM based, nel tablet, nell&#39;ultimissima TV LCD, sempre in molti pi&ugrave; router, in un crescente numero di elettrodomestici &quot;advanced&quot; e ormai anche in PC e netbook di fascia bassa.</p>
<p><span id="more-384"></span></p>
<p>I motivi di un successo sempre pi&ugrave; crescente sono molti. Ne provo rapidamente a sintetizzare qualcuno dei pi&ugrave; rilevanti.</p>
<ul>
<li><strong>Ampia disponibilit&agrave; di produttori e varianti</strong>: praticamente sono rimasti fuori da questo segmento di mercato pochissimi produttori di microchip, tra cui ad esempio Intel (che se ne pentir&agrave;) e qualche altro. Atmel, Samsung, Freescale, Texas, NXP, ST, Broadcom, Marvel, Cirrus Logic sono solo alcuni dei pi&ugrave; importanti produttori di chip con core ARM, e per ognuno di questi produttori esistono a catalogo decine di varianti con le funzionalit&agrave; pi&ugrave; disparate (supporto di rete, gestione I/O digitali, video, grafica 3D, audio, crittografia, ecc).<br />
		&nbsp;</li>
<li><strong>Vasta disponibilit&agrave; di software</strong>: in realt&agrave; basterebbe citare un solo nome, <em>Android</em>. Solo il nome del pi&ugrave; diffuso sistema operativo per dispositivi embedded interattivi sarebbe sufficiente a far capire il perch&eacute; del successo commerciale di questa piattaforma. Sarebbe tuttavia riduttivo limitarsi alla pi&ugrave; famosa variante fortemente customizzata di Linux. Infatti, &egrave; stato proprio il porting di Linux e di migliaia di librerie e applicazioni che hanno consentito lo sviluppo di questa piattaforma. Basterebbe citare le distribuzioni pi&ugrave; dedicate come&nbsp;Angstrom, oppure i porting di quelle pi&ugrave; general purpose quali Debian, Fedora e di recente anche Ubuntu. A dirla tutta, proprio da poco Microsoft ha <a href="http://www.marketwatch.com/story/microsoft-says-arm-based-windows-8-pcs-on-track-2012-02-09">annunciato</a> che una speciale versione di Windows 8 girer&agrave; su ARM.<br />
		&nbsp;</li>
<li><strong>Costi sempre pi&ugrave; bassi</strong>: questa piattaforma non sfugge alle leggi di mercato dell&#39;elettronica, e grazie all&#39;aumento della concorrenza tra i produttori, l&#39;ammortamento di stabilimenti e tecnologie, i volumi che crescono di anno in anno, ormai si cominciano a trovare chip con core ARM anche intorno ai 5$ per 1000pz. Francamente, per progetti nuovi, che richiedono funzionalit&agrave; avanzate, scartare un chip ARM non ha alcun senso, a meno di non avere requisiti ben precisi che spingono verso piattaforme di microcontrollori pi&ugrave; propriamente dette (PIC, AVR, ecc).</li>
</ul>
<h2>&nbsp;</h2>
<h2>Schede di sviluppo ARM</h2>
<p>Quando si parla di CPU ARM dal punto di vista dei programmatori e di molti progettisti, in realt&agrave;, &egrave; pi&ugrave; opportuno parlare di schede di sviluppo a tecnologia ARM. La complessit&agrave; della tecnologia ARM, infatti, comporta che per piccoli progetti o per bassi volumi previsti di vendita, sia quasi impossibile e certamente antieconomico realizzarsi una scheda ad hoc basata su core ARM. E questo essenzialmente per i seguenti motivi:</p>
<ul>
<li><strong>Costi</strong>: per piccoli volumi di vendita, i costi supererebbero di gran lunga quelli della pi&ugrave; costosa delle decine di schede che si trovano in giro, sia per la progettazione, sia per la realizzazione dei prototipi.<br />
		&nbsp;</li>
<li><strong>Complessit&agrave;</strong>: anche mettere su un progetto minimale significa tirarsi dietro delle complessit&agrave; che con micro di fascia pi&ugrave; bassa non esistono proprio. Ad esempio, nel 99% dei casi si ha bisogno almeno di un sbroglio a 4 layer del PCB per rientrare nei parametri EMI richiesti dalle memorie DDR, DDR2 e DDR3 che molti di questi micro supportano.<br />
		&nbsp;</li>
<li><strong>Attrezzature</strong>: questo punto riguarda soprattutto gli hobbisti o chi ama curarsi anche la fase di montaggio. Il 95% dei micro ARM sono a tecnologia produttiva BGA e derivati, il che rende praticamente impossibile montarsi a mano una scheda o fare delle preserie.&nbsp;</li>
</ul>
<p>Questi e molti altri sono i motivi che hanno portato alla proliferazione sul mercato di decine di schede ARM based. E la guerra commerciale non riguarda pi&ugrave; soltanto i produttori di chip, ma anche i produttori di schede basate su SoC ARM.&nbsp;<br />
	Seguo questo mercato da quando ho cominciato a lavorarci nel 2009, ed ho avuto modo di lavorare e sperimentare con alcune di queste schede. Dato che ormai si comincia a parlare di schede che costano meno di 25$, non tratter&ograve; quei prodotti che nel 2012 sono ostinatamente venduti ancora oltre i 200$, rendendoli nei fatti non idonei per nuovi progetti (a meno di requisiti veramente forti). Ovviamente, questa non vuole essere una trattazione esaustiva, ma pi&ugrave; che altro voglio riportare la mia esperienza e soprattutto le novit&agrave; pi&ugrave; recenti in fatto di prezzi bassi.</p>
<p>&nbsp;</p>
<h3>Beagle board e derivati</h3>
<p><img alt="" border="1" height="143" src="http://www.carminenoviello.com/wp-content/uploads/2012/05/MFG_Beagle_Board_v3.jpg" style="float:left; margin-right:1em" width="200" />La <a href="http://beagleboard.org/">BeagleBoard</a> &egrave; stata sicuramente la prima scheda con core ARM che ha visto la nascita della pi&ugrave; grossa comunit&agrave; open source. Con un grosso produttore alle spalle quale Texas Instruments, si &egrave; affacciata sul mercato con la prima versione nel 2008, con piena disponibilit&agrave; mondiale verso la fine del 2008 &#8211; inizi del 2009, ad un prezzo che all&#39;epoca era definibile &quot;molto aggressivo&quot; di $149. La prima <a href="http://beagleboard.org/hardware">release</a> era basata su un OMAP 3530 @700 mhz, con ben 256Mb di flash e altrettanti di RAM. Dotata di funzionalit&agrave; video HD, audio, uscite digitali, ethernet, USB, era per l&#39;epoca sicuramente un prodotto validissimo, molto completo e che ha permesso lo sviluppo di molti porting di Linux che oggi sono disponibili anche per altre piattaforme (sulla BB ci girano senza problemi Angstrom, Ubuntu, Fedora, Android e Windows CE 5 e 6). Negli anni il prodotto si &egrave; sviluppato molto, fino a giungere all&#39;ultimissima versione <a href="http://beagleboard.org/hardware-xM">xM</a>&nbsp;che vanta una CPU con core ARM Cortex A8, con ben 1Ghz e 512Mb di RAM.</p>
<p>Bench&eacute; la beagleboard sia nata come prodotto &quot;educational&quot; e di sviluppo, la sua diffusione &egrave; stata tale che &egrave; stata impiegata per molti progetti custom commerciali, e solo io ne ho visto una decina di applicazioni anche in progetti da oltre 10k pezzi all&#39;anno. La sua diffusione &egrave; stata tale che sono nate moltissime varianti tra cui la <a href="http://beagleboard.org/bone">BeagleBone</a>, una variante pi&ugrave; economica e con meno funzionalit&agrave; realizzata su un form-factory simile ad Arduino, e venduta ad un prezzo suggerito di 89$. Ma i cloni della BeagleBoard si sono diffusi anche nel &quot;far east&quot;, con molti produttori che si sono cimentati tra cui il pi&ugrave; famoso &egrave; <a href="http://www.armkits.com/product/productmain.asp">Embest</a>. Io stesso ho avuto modo di provare il loro DevKit 8000, clone della BB, che anche se in apparenza viene venduto ad un prezzo maggiore della BB, in realt&agrave; vi basta avere un quantitativo di acquisto minimo per spuntare prezzi nettamente migliori.</p>
<p>&nbsp;</p>
<h3>Mini2440 e derivati</h3>
<p><img alt="" border="1" height="177" src="http://www.carminenoviello.com/wp-content/uploads/2012/05/mini2440.jpg" style="float:left; margin-right:1em" width="200" />La <a href="http://www.friendlyarm.net/products/mini2440">mini2440</a>&nbsp;&egrave; un&#39;altro SBC che ha avuto uno sviluppo straordinario, soprattutto per il proliferare di cloni prodotti da aziende cinesi. Nata con scopo educativo per diffondere le tecnologie embedded soprattutto in Cina, &egrave; per l&#39;appunto un progetto 100% made in China ma che ha avuto uno sviluppo internazionale per il fatto che per meno di 100$ si trovava in giro completa di display touch screen. Basata su un SoC ARM9 di Samsung a 400Mhz, viene venduta con diversi step di memoria flash (64/128/256/512/1Gb) ma purtroppo (causa limite della CPU) con soli 64Mb di RAM. La comunit&agrave; che si &egrave; sviluppata ha una discreta dimensione, ed &egrave; abbastanza facile reperire il software anche se c&#39;&egrave; da lavorare per districarsi.&nbsp;<br />
	Come dicevo, innumerevoli sono i cloni: solo io ne ho contati pi&ugrave; di 20, e si va da prodotti abbastanza acerbi e poco affidabili, fino a quelli discretamente assemblati ed usabili anche in contesti commerciali pi&ugrave; spinti. Vi suggerisco di dare uno sguardo a <a href="http://www.arm9board.net/sel/default.aspx">questo produttore</a>, che realizza schede di ottima qualit&agrave; a prezzi molto aggressivi. Sul fronte software, sappiate che &egrave; meglio essere pronti da s&eacute;, perch&eacute; come gran parte di queste aziende cinesi che vendono schede SBC, sanno anche lavorare bene sull&#39;hardware, ma hanno scarse competenze e molto empiriche per quando riguarda il software e spesso non rilasciano i sorgenti dei kernel (nonostante la licenza GPL li obblighi a farlo). &nbsp;&nbsp;</p>
<p>&nbsp;</p>
<h3>PortuxG20</h3>
<p><img alt="" border="1" height="137" src="http://www.carminenoviello.com/wp-content/uploads/2012/05/portuxg20.jpg" style="float:left; margin-right:1em" width="200" />Ho lavorato con il <a href="http://www.taskit.de/en/products/portuxg20/index.htm">PortuxG20</a> e con il suo predecessore <a href="http://www.taskit.de/en/products/portux/index.htm">Portux920T</a> per oltre 2 anni. Prodotta dalla tedesca Taskit, &egrave; sicuramente un&#39;ottima board basata sul diffusissimo micro &nbsp;AT91SAM9G20 di Atmel, CPU a 400Mhz con 128Mb di RAM e 512Mb di flash. Il Portux &egrave; certamente un ottimo prodotto, ben supportato dalla casa madre e con una discreta <a href="http://www.armbedded.eu/">comunit&agrave;</a> prevalentemente europea. Il sistema operativo supportato in prevalenza &egrave; Angstrom, e con un minimo di lavoro si riesce a configurare tutto in poco tempo. Questa scheda aveva dalla sua una serie di vantaggi che la rendevano appetibile, tra cui un elevato numero di uscite digitali, la presenza di una RS-232 che in ambito industriale fa sempre comodo, 2 porte USB, una porta Ethernet 10/100 e soprattutto un layout basato sul formato half eurocard, che permette di trovare con relativa facilit&agrave; scatole plastiche in grado di contenerla e fresabili a CNC. Purtroppo, il prezzo di vendita di ben &euro;179 la rendono ormai una seconda se non una terza scelta, visto che si trovano in giro prodotti migliori a prezzi nettamente pi&ugrave; bassi.&nbsp;</p>
<p>&nbsp;</p>
<h3>pico-SAM9G45</h3>
<p><img alt="" border="1" height="170" src="http://www.carminenoviello.com/wp-content/uploads/2012/05/pico-SAM9G45-b.jpg" style="float:left; margin-right:1em" width="200" />Con questa scheda si entra ufficialmente nella zona &quot;guerra aperta&quot;. La <a href="http://www.mini-box.com/pico-SAM9G45-X">pico-SAM9G45</a> &egrave; una board SBC prodotta dall&#39;americana&nbsp;Ituner Networks e venduta ad un prezzo molto aggressivo: soli $69! Basata su un SoC Atmel&nbsp;SAM9G45 a 400Mhz, fornisce di serie ben 256Mb di DDR2, 4 porte USB, un&#39;Ethernet 10/100, due slot SD card (di cui una di tipo micro-SD bootabile), slot mini-PCI, alloggiamento per sim card, uscita video con zoccolo ZIF da 40 pin su cui installare i pi&ugrave; diffusi display LCD e uno zoccolo per supportare i display touch screen capacitivi. Sto lavorando con questa scheda da oltre 2 mesi, e al momento ne posso parlare solo bene. Trattandosi di un prodotto americano, ha un supporto sul fronte software veramente eccellente. In soli 5 minuti di orologio (e non sto esagerando) potete decidere di installare a scelta Angstrom, Android 2.3.x o 4.x e Debian, e la notizia buona &egrave; che funzionano da subito e bene, senza dover ricorrere necessariamente a ricompilazioni del kernel o altro.<br />
	A voler essere pignoli, i punti a sfavore sono la mancanza di una flash (il boot si effettua solo tramite SD card), il formato un po&#39; strano (la posizione delle porte rende molto difficile adattare case plastici da catalogo RS per capirci), la mancanza di una porta console (bisogna derivarla dalle uscite TTL presenti sugli I/0), e il fatto che la comunit&agrave; al momento &egrave; molto piccola (di iscritti ne siamo una trentina). Chiaramente, soprattutto questo ultimo punto, potrebbe minare il futuro di questa scheda, ma a conti fatti, oggi come oggi per &euro;60 portate a casa una scheda che &egrave; veramente completa di tutto e, a costo di ripetermi, molto ben supportata sul fronte software.</p>
<p>&nbsp;</p>
<h3>OLinuXino</h3>
<p><img alt="" border="1" height="148" src="http://www.carminenoviello.com/wp-content/uploads/2012/05/iMX233-OLinuXino-Maxi-3.jpg" style="float:left; margin-right:1em" width="200" />Annunciata di recente e disponibile sul mercato nel momento in cui vi scrivo, l&#39;<a href="http://www.olimex.com/dev/imx233-olinuxino-maxi.html">OLinuXino</a> vuole essere un progetto di Olimex che mira a calcare le orme di Arduino. Infatti, Olimex distribuisce i suoi <a href="https://github.com/OLIMEX/OLINUXINO">sorgenti</a> (schemi, sbroglio e sorgenti software) con una policy 100% Open Source, e nella progettazione &egrave; stata tenuta in forte considerazione la possibilit&agrave; per l&#39;utente di potersi replicare lo sviluppo e la realizzazione da s&eacute;. Basata sul processore iMX233 a 545Mhz di Freescale, ha dalla sua di offrire molte funzionalit&agrave; tra cui un&#39;uscita video e la piena compatibilit&agrave; con le schede di espansione <a href="http://www.olimex.com/dev/OTHER/UEXT.pdf">UEXT</a> di Olimex. &Egrave; una delle pochissime schede (o forse l&#39;unica) ad essere basata su di un micro non BGA, anche se questa feature pone una pesante limitazione: la versione in formato TFQP dell&#39;iMX233 pu&ograve; supportare al massimo 64Mb di memoria RAM, il che per una scheda di recentissima progettazione &egrave; una limitazione molto forte. Venduta in due versioni: una Mini senza Ethernet ad un prezzo di &euro;30 e una Maxi con Ethernet a &euro;45, con buone scontistiche per quantit&agrave; superiori. Sicuramente un prodotto interessante se quei 64Mb non sono un limite per il vostro progetto.</p>
<p>&nbsp;</p>
<h3>Raspberry Pi</h3>
<p><img alt="" border="1" height="127" src="http://www.carminenoviello.com/wp-content/uploads/2012/05/350px-Raspberry_Pi_Beta_Board.jpg" style="float:left; margin-right:1em" width="200" />Quando un prodotto di nicchia e tecnico come una scheda SBC conquista una paginata di Repubblica e del Corriere della Sera, dire che ha fatto il botto &egrave; riduttivo. Sicuramente la scheda embedded del momento, la <a href="http://www.raspberrypi.org/">Raspberry PI</a> &egrave; in assoluto la scheda SBC pi&ugrave; economica che ci sia. Basata su un SoC Broadcom&nbsp;BCM2835 a 700Mhz con core ARM11, viene venduta in due versioni: il modello A venduto a 25$ che monta 256Mb di RAM, un&#39;uscita HDMI, uscita audio, porte digitali e USB, e un modello B venduto a 35$ che ha in pi&ugrave; un&#39;ulteriore uscita USB e la porta Ethernet 10/100. Commercializzata da RS e Farnell, al momento in Europa &egrave; una chimera, visto che il successo mondiale ha fatto letteralmente scomparire dal mercato le prime 200.000 schede vendute negli USA. Insomma, si annuncia un prodotto di massa che credo potremo provare a pieno in Europa non prima delle ferie estive, forse anche settembre. Questa scheda ha dalla sua il grande vantaggio del prezzo, tuttavia ad un costo non banale: il micro &egrave; venduto da Broadcom solo su grandi volumi e soprattutto, visto che Broadcom lavora molto in ambiti militari, con una documentazione scarna e sicuramente non sufficiente a capire a pieno l&#39;uso e le funzionalit&agrave; del micro. Insomma, &egrave; un prodotto a scatola chiusa. Allo stato attuale ci gira ufficialmente Fedora, ma gi&agrave; stanno lavorando al porting di <a href="http://blogs.distant-earth.com/wp/?m=201204">Angstrom</a>. Non so se sar&agrave; l&#39;equivalente di Arduino nel mondo embedded Linux, ma sicuramente sar&agrave; un prodotto con cui confrontarsi nel futuro.</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2012/05/01/la-guerra-degli-arm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Primi passi con l&#8217;elettronica: da dove cominciare?</title>
		<link>http://www.carminenoviello.com/2011/06/06/primi-passi-con-lelettronica-da-dove-cominciare/</link>
		<comments>http://www.carminenoviello.com/2011/06/06/primi-passi-con-lelettronica-da-dove-cominciare/#comments</comments>
		<pubDate>Mon, 06 Jun 2011 06:00:08 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Elettronica]]></category>
		<category><![CDATA[libri elettronica]]></category>
		<category><![CDATA[practical electronics for inventors]]></category>
		<category><![CDATA[recensione]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=315</guid>
		<description><![CDATA[Da quanto &#232; nato il filone &#34;elettronico&#34; di questo blog ho ricevuto diverse richieste via mail, Facebook e dal vivo da informatici &#34;pentiti&#34;&#160; &#8211; come me &#8211; che mi hanno chiesto da dove cominciare per studiare seriamente l&#39;argomento, senza sacrificare la praticit&#224; e la fruibilit&#224; immediata delle cose apprese. Quasi un anno fa avevo gi&#224; [...]]]></description>
			<content:encoded><![CDATA[<p>Da quanto &egrave; nato il filone &quot;elettronico&quot; di questo blog ho ricevuto diverse richieste via mail, Facebook e dal vivo da informatici &quot;pentiti&quot;&nbsp; &#8211; come me &#8211; che mi hanno chiesto da dove cominciare per studiare seriamente l&#39;argomento, senza sacrificare la praticit&agrave; e la fruibilit&agrave; immediata delle cose apprese.<br />
	Quasi un anno fa avevo gi&agrave; <a href="http://www.carminenoviello.com/2010/07/10/mcu-programming-come-cominciare/">trattato l&#39;argomento</a>, focalizzando l&#39;attenzione in particolar modo sullo sviluppo firmware con i microcontrollori, nello specifico gli 8051 e derivati, proponendo dei libri di testo da cui poter attingere informazioni. Tuttavia, da quella carrellata di testi e link mancano, sostanzialmente, fonti da cui attingere le basi dell&#39;elettronica. E la ragione &egrave; da ricercarsi nel fatto che con l&#39;elettronica digitale ultramoderna, fatta di IC e micro superintelligenti, con decine di funzioni, librerie pronte all&#39;uso, IDE potentissimi, ecc, si riescono a sviluppare soluzioni complete senza dover necessariamente sapere cosa succede in una giunzione p-n o, addirittura, la pi&ugrave; elementare legge di Ohm. Anzi, alcune piattaforme molto famose (facciamo i nomi: Arduino) hanno proprio come marchio distintivo l&#39;offrire un API talmente di alto livello e completa da rendere pressoch&eacute; superfluo conoscere le basi di alcun che, almeno agli inizi. <br />
	Quando le cose cominciano a complicarsi, o quando si vuole acquisire un&#39;autonomia che permetta di spaziare e svilupparsi solide certezze, beh le basi ci vogliono e come, ed &egrave; importante studiare con disciplina ed estraniarsi un minimo dalle feature ultra astratte offerte dai produttori. Nel seguito, la mia ricetta sperimentata in prima persona.</p>
<p><span id="more-315"></span>A mio modo di vedere, per rendere il pi&ugrave; efficace possibile lo studio &egrave; necessario sempre rimanere &quot;con i piedi per terra&quot;. Questa affermazione ha un duplice significato:</p>
<ul>
<li><em><strong>praticit&agrave;</strong></em>: &egrave; necessario procedere con lo studio di nuovi argomenti solo dopo che si comprende sia l&#39;aspetto teorico di un concetto sia la sua ricaduta pratica (in sostanza, ponetevi sempre la domanda: a che serve?);</li>
<li><em><strong>credibilit&agrave;</strong></em>: allo stesso tempo &egrave; opportuno porsi degli obiettivi credibili. &Egrave; perfettamente inutile procedere come un treno sugli argomenti se non si ha la totale certezza di averne colto tutti gli aspetti, soprattutto quelli pratici. La teoria &egrave; fondamentale, ma la teoria senza pratica non porta da nessuna parte. Infine, pensare di poter esaurire tutto lo scibile relativo ad un dato concetto &egrave; pressoch&eacute; impossibile, anche perch&eacute; molti punti si scoprono solo con la pratica e l&#39;esperienza.</li>
</ul>
<p>&nbsp;</p>
<p><img src="http://www.carminenoviello.com/wp-content/uploads/2011/06/make-electronics-e1307010876788.jpg" style="float: left; margin-right: 3px;" /></p>
<p>Se siete totalmente a digiuno di elettronica, e magari avete bisogno di acquisire manualit&agrave; anche con strumenti come saldatori, ecc, consiglio l&#39;acquisto di un libro 90/10, ossia un libro con il 90% di pura pratica e il 10% di teoria. Io ho avuto modo di leggere un libro dedicato all&#39;elettronica della serie <a href="http://makezine.com/"><em>Make</em></a> di O&#39;Reilly. L&#39;autore &egrave; Charles Platt, ed il classico libro del tipo &quot;<em>Teach yourself something in&#8230;&#8230;..</em>&quot;. Insomma, il libro &egrave; praticamente sola pratica ed &egrave; fortemente incentrato all&#39;acquisizione di skill per usare la componentistica di base. La teoria riportata &egrave; largamente insufficiente per costruirsi delle solide basi, per&ograve; &egrave; un ottimo testo per incominciare e per intervallare sessioni pratiche a sessioni pi&ugrave; teoriche.<br />
	I temi trattati sono quelli di base: nei primi capitoli si introducono i concetti fondanti dell&#39;elettrotecnica e sono presentati gli strumenti minimi che non possono mancare nel corredo di chi vuole cominciare a fare elettronica. Si passa poi allo studio di alcuni componenti analogici (come il timer 555) e i loro usi. C&#39;&egrave; poi una seconda parte del libro in cui vengono presentati tanti altri possibili usi della componentistica elettronica (c&#39;&egrave; anche un cenno al digitale), ma secondo me &egrave; appena sufficiente per farsi un&#39;idea. Poi bisogna andare su altro. Ripeto: ottimo per chi &egrave; totalmente a digiuno.</p>
<p><img src="http://www.carminenoviello.com/wp-content/uploads/2011/06/practical-electronics-for-inventors-paul-scherz-paperback-cover-art-e1307011491815.jpg" style="float: left; margin-right: 3px;" /></p>
<p>Se si &egrave; alla ricerca di un libro che non presenta l&#39;elettronica esclusivamente da un punto di vista teorico, ma che invece usa un approccio pi&ugrave; vicino all&#39;uso pratico, e al tempo stesso offre una panoramica ampia, allora secondo me la seconda edizione di<em> <a href="http://www.amazon.it/Practical-Electronics-Inventors-Paul-Scherz/dp/product-description/0071452818">Practical Electronics for Inventors</a></em> di Paul Scherz &egrave; quello che fa per voi. Il titolo non deve assolutamente tranne in inganno: quel &quot;Practical&quot; non lo rende affatto un libro come <em>Make: Electronics</em> di cui vi ho parlato prima. Anzi, se non si seguono delle accortezze nella sua lettura rischia di essere un libro teorico e molto difficile per giunta. <br />
	Si perch&eacute; il libro va letto &quot;saltando&quot; tra i capitoli, come vi spiegher&ograve; a breve. Per capire bene il trucco che vi dir&ograve;, &egrave; molto importante leggere la prefazione dell&#39;autore, e seguire attentamente le indicazioni che d&agrave;. Questo libro, infatti, ha un secondo capitolo (dopo il primo di pura prefazione al testo) immenso, di oltre 260 pagine, dedicato esclusivamente alla teoria e dove sono presentati gran parte dei concetti per fare elettronica analogica. Tuttavia, condensare tutta la teoria in appena 260 pagine, significa per forza di cosa dover &quot;omettere&quot; molti passaggi che in altri testi si trovano espansi su molti capitoli (ad esempio, la parte di fisica della materia che riguarda i semiconduttori &egrave; trattata molto superficialmente, e non vi nascondo che se non avessi studiato quegli argomenti all&#39;universit&agrave; in un paio di esami dedicati forse non ne avrei ricavato alcun che). Tutto questo per dire che non dovrete assolutamente leggere il secondo capitolo tutto in un colpo perch&eacute;, altrimenti, finirete per abbandonare l&#39;intero testo dopo un po&#39;. Il consiglio &egrave; quello di partire dai concetti base, che sono rinvenibili nelle prime 80-90 pagine, e poi saltare ai capitoli 3 e 4 dove sono presentati nella pratica i componenti passivi che &quot;implementano&quot; quei concetti e dove vedrete che molti aspetti teorici riportati nel secondo capitolo saranno ripresi e calati nel contesto pratico. Quando si capir&agrave; come leggere questo libro, scoprirete che &egrave; una vera e propria miniera di informazioni, che permette di costruirsi delle basi di partenza per muoversi in autonomia. L&#39;intero volume sfiora le 1000 pagine, quindi potete ben capire la mole delle informazioni riportate.<br />
	Tuttavia c&#39;&egrave; un problema non di poco conto: questo libro &egrave; pieno zeppo di errori in molti esempi, soprattutto nella parte teorica. E purtroppo non c&#39;&egrave; un&#39;errata corrige ufficiale distribuita dall&#39;editore e/o dall&#39;autore. In rete di trovano degli errata sheet di terzi. Il pi&ugrave; completo &egrave; reperibile <a href="http://www.eg.bucknell.edu/physics/ph235/errata.pdf">qui</a>, e vi consiglio di tenerlo costantemente sotto mano perch&eacute; vi servir&agrave; tantissimo. Nonostante tutto, reputo comunque questo libro un ottimo testo per chi vuole addentrarsi seriamente nel mondo dell&#39;elettronica.</p>
<p>Contemporaneamente allo studio di questo libro, consiglio anche di studiare i concetti di base della teoria dei circuiti da un libro di elettrotecnica, perch&eacute; su questo punto forse <em>Practical Electronics for Inventors</em> &egrave; un po&#39; troppo carente. O meglio, affronta l&#39;argomento con eccessiva rapidit&agrave;. Su consiglio del mio capo, che mi ha anche materialmente prestato la prima edizione del libro, ho preso a riferimento il libro <em>Elettrotecnica generale</em> di Mario Pezzi. La prima edizione &egrave; datata 1968, ma si trova in commercio da Zanichelli ancora<a href="http://www.libreriauniversitaria.it/elettrotecnica-generale-ist-tecnici-industriali/libro/9788808025722"> la seconda edizione</a>. &Egrave; un libro che consiglio vivamente, fatto molto bene e scritto con una chiarezza disarmante (si perch&eacute; purtroppo pi&ugrave; si va avanti e pi&ugrave; piace complicare le cose agli &quot;scienziati&quot; moderni&#8230;..). La prima edizione la troverete anche &quot;simpatica&quot;, visto il linguaggio che potremmo definire &quot;aulico&quot; se paragonato ai tempi d&#39;oggi (non so, ma leggere destrogiro e sinistrogiro invece di orario e antiorario a me fa ridere <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ).</p>
<p>Infine, quando ci si vuole cimentare nella realizzazione dei circuiti&nbsp; (ma anche durante lo studio), pu&ograve; essere molto utile ricorrere ad un simulatore. Io sto usando con relativa soddisfazione <a href="http://www.ni.com/multisim/i/">Multisim</a> della National Instruments, strumento molto potente che va ben oltre la semplice simulazione dei circuiti (copre l&#39;intero ciclo di sviluppo e produzione). Segnalo anche che sulla rivista <a href="http://www.elettronicain.it/Index.asp"><em>Elettronica In</em></a> &egrave; in pubblicazione un corso a puntate su Multisim. Tuttavia, ricordate sempre che un simulatore &egrave; un simulatore, ed &egrave; sempre meglio sporcarsi le mani con una millefori e il saldatore e, magari, bruciare qualche componente: come dice lo slogan di<em> Make: Electronics</em> &quot;<em>that&#39;s how you learn</em>&quot;.</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2011/06/06/primi-passi-con-lelettronica-da-dove-cominciare/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Alimentatore da banco Caltek PSM3/2A</title>
		<link>http://www.carminenoviello.com/2011/05/30/alimentatore-da-banco-caltek-psm32a/</link>
		<comments>http://www.carminenoviello.com/2011/05/30/alimentatore-da-banco-caltek-psm32a/#comments</comments>
		<pubDate>Mon, 30 May 2011 08:26:19 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Elettronica]]></category>
		<category><![CDATA[alimentatori da banco]]></category>
		<category><![CDATA[caltek]]></category>
		<category><![CDATA[PSM3/2A]]></category>
		<category><![CDATA[psu]]></category>
		<category><![CDATA[recensione]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=291</guid>
		<description><![CDATA[Quando si lavora e soprattutto si sperimenta con i circuiti elettronici, la prima esigenza che si avverte per chiunque &#232; quella di avere una tensione di ingresso che sia vicina (o addirittura esattamente quella) alla tensione d&#39;esercizio del circuito, stabile e la pi&#249; precisa possibile. Inoltre, si cerca spesso anche la praticit&#224; di poter rapidamente [...]]]></description>
			<content:encoded><![CDATA[<p>Quando si lavora e soprattutto si sperimenta con i circuiti elettronici, la prima esigenza che si avverte per chiunque &egrave; quella di avere una tensione di ingresso che sia vicina (o addirittura esattamente quella) alla tensione d&#39;esercizio del circuito, stabile e la pi&ugrave; precisa possibile. Inoltre, si cerca spesso anche la praticit&agrave; di poter rapidamente spegnere/accendere l&#39;alimentazione, regolarla altrettanto velocemente e, cosa non banale, avere pi&ugrave; ingressi magari con differenti tensioni.</p>
<p>Per i motivi di cui sopra, dopo una serie di sbattimenti iniziali nell&#39;adoperare i classici alimentatori da cineserie che &egrave; possibile reperire ovunque, ho deciso di acquistare un alimentatore da banco. I requisiti erano molto semplici:</p>
<ul>
<li>Basso costo <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </li>
<li>Almeno 2 uscite regolabili</li>
</ul>
<p><span id="more-291"></span>Ovviamente il primo punto ha condizionato pesantemente la platea di prodotti da cui attingere, spingendo la mia attenzione su prodotti del<em> far east</em> dal basso costo. Dopo tanto girare, alla fine la mia attenzione &egrave; caduta su un PSU prodotto dalla Caltek, dotato di ben 3 uscite indipendenti di cui una fissa. Per esattezza il modello &egrave; il PSU3/2A, ed ha le seguenti caratteristiche:</p>
<ul>
<li>N&deg;2 uscite a tensione variabile 0-30V 2A max</li>
<li>N&deg;1 uscita a tensione fissa 5V 3A max</li>
<li>Intervalli di regolazione di 0.1V</li>
<li>Possibilit&agrave; di definire il &quot;modello di individuazione dei corti&quot; tra le varie uscite (serie, parallelo, indipendente)</li>
</ul>
<p>Diciamo subito che di questa stessa linea di prodotti esistono diverse varianti, che cambiano per il numero di uscite e soprattutto per le correnti massime di output. Io ho preso quello con 3 uscite e con la corrente di output pi&ugrave; bassa perch&eacute; non credo che avr&ograve; esigenze specifiche su grandi assorbimenti per i circuiti digitali che realizzer&ograve; (e poi perch&eacute; incombeva il punto 1 di cui sopra <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  ).</p>
<p>Passiamo ad una recensione rapida. Non ho ancora avuto modo di provarlo veramente a fondo perch&eacute; in questo periodo sono molto preso da altri problemi, ma diciamo subito che il prodotto si presenta molto bene per quanto riguarda la fattura. Tutti i comandi sono ben realizzati, la qualit&agrave; degli assemblaggi &egrave; ottima ed &egrave; molto silenzioso. La ventola di raffreddamento posteriore nelle poche volte che l&#39;ho usato non &egrave; mai andata in funzione. A voler essere pignoli, pecca un po&#39; per quanto riguarda la regolazione di fino dei selettori di voltaggio ed amperaggio, perch&eacute; il potenziometro si presenta non eccezionalmente fluido e trovare la regolazione di fino non &egrave; proprio rapido. Non ultimo, ho notato che la precisione di uscita non &egrave; proprio il massimo per step di 0.1V (diciamo un errore di circa l&#39;8%), il che deve far riflettere chi ha esigenze specifiche in quanto a questo punto. Consiglio, in generale, di farsi una sorta di calibrazione del dispositivo adoperando un buon tester, anche se un strumento non correttamente tarato potrebbe generare errori non riproducibili soprattutto sotto carico e dopo ore d&#39;uso. Tuttavia, <em>cheap is cheap</em>, quindi per quello che costa (intorno ai 190&euro;) c&#39;&egrave; poco da lamentarsi.<br />
	Anche se non &egrave; menzionato da nessuna parte, nella scatola troverete 3 serie di connettori a coccodrillo, che non sono proprio il massimo in quanto a qualit&agrave;, ma che permettono sicuramente di lavorare da subito. Troverete anche uno scarno manuale d&#39;uso e il cavo di alimentazione. Occhio, infine, che la regolazione per la tensione di rete (110V-220V) non &egrave; fatta in automatico: sul retro in prossimit&agrave; della presa di alimentazione c&#39;&egrave; uno switch apposito. Io l&#39;ho gi&agrave; trovato su 220V (credo che Farnell faccia dei controlli a riguardo), per&ograve; buttate eventualmente lo sguardo prima di accenderlo.</p>
<p>In Italia si pu&ograve; facilmente acquistare su <a href="http://it.farnell.com/jsp/search/productdetail.jsp?SKU=1270466">Farnell</a> al prezzo di circa 190&euro;, euro pi&ugrave; euro meno. Si trova sicuramente a meno comprandolo direttamente dalla Cina sui vari mercati on-line specializzati, per&ograve; dovete mettere in conto la dogana, i tempi di spedizione, la garanzia.</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2011/05/30/alimentatore-da-banco-caltek-psm32a/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Adium, MSN e quel maledetto &#8220;Sei connesso da un&#8217;altra postazione&#8221;</title>
		<link>http://www.carminenoviello.com/2011/04/29/adium-msn-e-quel-maledetto-sei-connesso-da-unaltra-postazione/</link>
		<comments>http://www.carminenoviello.com/2011/04/29/adium-msn-e-quel-maledetto-sei-connesso-da-unaltra-postazione/#comments</comments>
		<pubDate>Fri, 29 Apr 2011 17:54:26 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Informatica]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[adium]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[msn]]></category>
		<category><![CDATA[sei connesso da un'altra postazione]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=284</guid>
		<description><![CDATA[Se siete tra coloro che sono costretti ad usare il peggior protocollo di messaggistica istantanea esistente, ossia MSN, e se siete possessori di Mac ed adoperate Adium, e da qualche tempo siete totalmente impossibilitati a collegarvi alla rete MSN perch&#233; ogni volta che provate a connettervi vi appare la fatidica scritta &#34;Siete connessi da un&#39;altra [...]]]></description>
			<content:encoded><![CDATA[<p>Se siete tra coloro che sono costretti ad usare il peggior protocollo di messaggistica istantanea esistente, ossia MSN, e se siete possessori di Mac ed adoperate Adium, e da qualche tempo siete totalmente impossibilitati a collegarvi alla rete MSN perch&eacute; ogni volta che provate a connettervi vi appare la fatidica scritta &quot;Siete connessi da un&#39;altra postazione&quot;, beh sappiate che finalmente c&#39;&egrave; una soluzione.</p>
<p>La beta di <a href="http://adiumx.cachefly.net/Adium_1.4.2b1.dmg">Adium 1.4.2</a> aggiorna <em>libpurple</em> (il sottosistema usato da Adium per gestire i vari protocolli di messaggistica) che nella sua ultima versione gestisce il &quot;Multiple Points of Presence&quot; (MPOP) per MSN, ossia la possibilit&agrave; di collegarvi contemporaneamente da pi&ugrave; postazioni, cos&igrave; come annunciato nella stessa <a href="http://adium.im/beta/">beta</a>.</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2011/04/29/adium-msn-e-quel-maledetto-sei-connesso-da-unaltra-postazione/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>E infine venne Arduino</title>
		<link>http://www.carminenoviello.com/2011/04/26/e-infine-venne-arduino/</link>
		<comments>http://www.carminenoviello.com/2011/04/26/e-infine-venne-arduino/#comments</comments>
		<pubDate>Tue, 26 Apr 2011 07:12:58 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Elettronica]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[domotica]]></category>
		<category><![CDATA[microcontroller]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=274</guid>
		<description><![CDATA[L&#39;universo dei microcontroller mi ha ormai stregato, e non riesco a farne pi&#249; a meno Tanto che ho deciso di automatizzare e remotizzare alcune funzioni di casa mia. Insomma, devo sviluppare la classica applicazione di domotica, dove &#232; necessario attuare qualche rel&#233; e controllare dispositivi attivi, possibilmente da remoto. Ora, per fare questa operazione sicuramente [...]]]></description>
			<content:encoded><![CDATA[<p>L&#39;universo dei microcontroller mi ha ormai stregato, e non riesco a farne pi&ugrave; a meno <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Tanto che ho deciso di automatizzare e remotizzare alcune funzioni di casa mia. Insomma, devo sviluppare la classica applicazione di domotica, dove &egrave; necessario attuare qualche rel&eacute; e controllare dispositivi attivi, possibilmente da remoto.</p>
<p>Ora, per fare questa operazione sicuramente non posso scegliere la piattaforma di Texas di cui vi ho parlato <a href="http://www.carminenoviello.com/2010/07/01/mai-dire-mai/">tempo fa</a> e che ormai, causa lavoro, conosco come le mie tasche: questo mi richiederebbe uno sbroglio ad hoc del circuito che mi serve, e la conseguente realizzazione (cosa che per uno che non si occupa di elettronica <em>tout court </em>non &egrave; proprio immediato e soprattutto a buon mercato). A questo punto era necessario acquistare una board pronta all&#39;uso, e secondo me la scelta non poteva che essere <a href="http://arduino.cc/en/">Arduino</a>, visto che nutro curiosit&agrave; per questa piattaforma, in realt&agrave; molto semplice, ma che ha una comunit&agrave; sterminata che permette di realizzare tutto con estrema facilit&agrave;. A volerla dire tutta, &egrave; proprio questo ultimo punto che fa storcere un po&#39; il naso quando si parla di Arduino (soprattutto come piattaforma per entrare nell&#39;universo della microprogrammazione). Infatti, la sua API molto semplice, che ha contribuito a renderlo famoso, toglie un po&#39; il gusto di quel non so che di &quot;nerd&quot; che gira attorno a questo mondo. Inoltre, mi mancher&agrave; un po&#39; il supporto integrato all&#39;RF presente nei micro CC111X, che vi assicuro alla fine &egrave; una vera e propria droga (si lo so che per Arduino c&#39;&egrave; la shield XBee, per&ograve; vuoi mettere un micro che &egrave; anche tranceiver!?!?).</p>
<p>Mi riprometto che appena arriva nelle mie mani (ossia domani <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  ) ne riparler&ograve;.</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2011/04/26/e-infine-venne-arduino/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mai dire mai, atto secondo</title>
		<link>http://www.carminenoviello.com/2011/02/16/mai-dire-mai-atto-secondo/</link>
		<comments>http://www.carminenoviello.com/2011/02/16/mai-dire-mai-atto-secondo/#comments</comments>
		<pubDate>Wed, 16 Feb 2011 22:14:40 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Elettronica]]></category>
		<category><![CDATA[AirQ Networks]]></category>
		<category><![CDATA[catena del freddo]]></category>
		<category><![CDATA[sensori]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=257</guid>
		<description><![CDATA[&#200; passato un bel po&#39; di tempo da quando vi avevo parlato del fatto che stessi affrontando una nuova avventura in un settore informatico totalmente diverso da quello mio storico di appartenenza. Vi avevo anche promesso che avrei successivamente rilevato dove questi miei studi sarebbero sfociati, per&#242; poi come sempre gli eventi &#34;travolgono&#34; e non [...]]]></description>
			<content:encoded><![CDATA[<p>&Egrave; passato un bel po&#39; di tempo da quando vi <a href="http://www.carminenoviello.com/2010/07/01/mai-dire-mai/">avevo parlato</a> del fatto che stessi affrontando una nuova avventura in un settore informatico totalmente diverso da quello mio storico di appartenenza. Vi avevo anche promesso che avrei successivamente rilevato dove questi miei studi sarebbero sfociati, per&ograve; poi come sempre gli eventi &quot;travolgono&quot; e non ho avuto pi&ugrave; alcun modo di approfondire tra le righe di questo blog.</p>
<p>Ebbene, nel frattempo di cose ne sono accadute. Siamo andati molto avanti nello sviluppo della piattaforma hardware, realizzando un&#39;intera gamma di prodotti per l&#39;identificazione attiva e passiva e la tracciabilit&agrave; della catena del freddo. Ben 9 differenti dispositivi attivi che supportano un&#39;architettura di rete che abbiamo chiamato <a href="http://www.airqnetworks.com/solutions/snet">sNET</a>, che nelle applicazioni che stiamo realizzando si sta dimostrando molto flessibile e facilmente adattabile dalle piccolissime reti di sensori (2-3 elementi) fino ad arrivare a reti con una struttura topologica molto complessa e con centinaia di nodi. Inoltre, la piattaforma si completa di tre differenti modelli di nodi di accentramento, dispositivi embedded per l&#39;acquisizione dati, un software per l&#39;analisi dei dati raccolti e il tracciamento e un SDK completo per integrare la piattaforma in altri ambienti di programmazione. Gi&agrave; perch&eacute; abbiamo deciso anche a breve di lanciare sul mercato un kit di sviluppo completo da vendere ad altri integratori.</p>
<p><span id="more-257"></span></p>
<p><img align="left" alt="" height="100" src="http://www.airqnetworks.com/sites/default/files/images/150x100-Sapore-Frigus-ITA.gif" style="padding-left: 1em; padding-bottom: 1em;" width="150" />Come avrete abbondantemente capito, tutto ci&ograve; ha gi&agrave; superato la fase di laboratorio e da alcuni mesi siamo sul mercato con una societ&agrave; strutturata: si chiama <a href="http://www.airqnetworks.com">AirQ Networks</a> e per la prima volta saremo alla fiera di Rimini in occasione della fiera Sapore 2011 dedicata all&#39;alimentare e suddivisa in sezioni tematiche. Noi saremo nella sottosezione Frigus, dedicata ai surgelati e attrezzature per il ciclo e il monitoraggio del freddo, e nello specifico nel padiglione <strong>C7</strong> stand <strong>9</strong>. Nell&#39;occasione, presenteremo l&#39;intera gamma di prodotti per il monitoraggio della catena del freddo.</p>
<p>Torner&ograve; presto a parlare dei prodotti realizzati, scendendo nel dettaglio delle caratteristiche tecniche e delle possibilit&agrave; offerte da tutta la piattaforma.</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2011/02/16/mai-dire-mai-atto-secondo/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>MCU programming: come cominciare</title>
		<link>http://www.carminenoviello.com/2010/07/10/mcu-programming-come-cominciare/</link>
		<comments>http://www.carminenoviello.com/2010/07/10/mcu-programming-come-cominciare/#comments</comments>
		<pubDate>Sat, 10 Jul 2010 10:28:06 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Elettronica]]></category>
		<category><![CDATA[8051]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[microcontroller]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=217</guid>
		<description><![CDATA[Dopo la pubblicazione del mio articolo precedente, ho ricevuto alcune richieste in merito a consigli su quale percorso seguire per avventurarsi nel mondo dei microcontroller, la programmazione firmware e l&#39;interfacciamento con componenti elettroniche. Diciamo subito che la cosa non &#232; facile, specie se non si ha avuto la possibilit&#224; in precedenza di poter sperimentare con [...]]]></description>
			<content:encoded><![CDATA[<p>Dopo la pubblicazione del mio <a href="http://www.carminenoviello.com/2010/07/01/mai-dire-mai/">articolo precedente</a>, ho ricevuto alcune richieste in merito a consigli su quale percorso seguire per avventurarsi nel mondo dei microcontroller, la programmazione firmware e l&#39;interfacciamento con componenti elettroniche. Diciamo subito che la cosa non &egrave; facile, specie se non si ha avuto la possibilit&agrave; in precedenza di poter sperimentare con tematiche di questo tipo e se, soprattutto, magari avete avuto la sfortuna all&#39;Universit&agrave; di studiare per l&#39;esame di elettronica il moto degli elettroni, le equazioni di Schr&ouml;dinger, il principio di esclusione di Pauli e tutte queste amenit&agrave; senza che vi abbiano mai spiegato, e dico mai, poi praticamente e concretamente quei concetti come si applicano. Tuttavia, mai scoraggiarsi, soprattutto considerando che oggi come oggi grazie ad internet si ha la possibilit&agrave; di accedere a una miniera di informazioni in tempo zero, partecipare a community, porre domande in giro.</p>
<p><span id="more-217"></span>Diciamo subito che condizione necessaria per intraprendere questo viaggio &egrave; avere un minimo di rudimenti di architettura degli elaboratori: un po&#39; di basi di circuiti logici, come &egrave; strutturato un processore, programmazione assembler, ecc, serve. In assenza di conoscenze di questo tipo, vi esorto a farvi una rapida lettura su qualche testo di architettura degli elaboratori. Se ne trovano diversi in giro: io all&#39;universit&agrave; ho studiato sul libro &quot;Introduzione all&#39;architettura degli elaboratori&quot;, di Daniel P. Bovet, edito da Zanichelli.</p>
<p style="text-align: center;"><img alt="" src="http://www.carminenoviello.com/wp-content/uploads/2010/07/coverBovet.jpg" style="width: 210px; height: 288px;" /></p>
<p>In alternativa potete scegliere un qualunque altro testo. Non &egrave; fondamentale entrare proprio nel dettaglio delle moderne architetture, per&ograve; conoscere delle cose vi risparmier&agrave; tempo e soprattutto mal di testa.</p>
<p>Fatta questa premessa, passiamo poi agli aspetti pi&ugrave; concreti. Innanzitutto, per cominciare vi dovete scegliere un&#39;architettura di microcontroller. Ne esistono una vera e proprio caterva, anche se spesso architetture in apparenza differenti poi sono in realt&agrave; molto simili. Non ne parliamo poi di produttori: se solo ci limitiamo ai principali, c&#39;&egrave; ne sono almeno una decina da citare (Atmel, Microchip, Silicon Lab, ecc). Diciamo anche che forse per fini autodidattici, la piattaforma pi&ugrave; completa &egrave; rappresentata da un famoso prodotto 100% Open e per giunta Made in Italy: <a href="http://www.arduino.cc/">Arduino</a>. &Egrave; anche vero, per&ograve;, che su puntate a &quot;ricadute di mercato&quot;, forse scegliere architetture pi&ugrave; commerciali &egrave; meglio.</p>
<p>Per quanto mi riguarda, dato che i chip della famiglia CC1110-F32 di Texas Instruments hanno un core basato sul celebre (e ancora &quot;leader di mercato&quot;) <a href="http://en.wikipedia.org/wiki/Intel_8051">8051 di Intel</a> (o meglio, Intel MCS51), ho dovuto concentrare gli sforzi su questa piattaforma, e i riferimenti che vi dar&ograve; sono prevalentemente basati su di essa.<br />
	Scelta l&#39;architettura, dovete comprarvi uno starter kit, detto anche developer kit, che in genere &egrave; formato dal MCU che scegliete (in genere oggi ad archiettura <a href="http://it.wikipedia.org/wiki/Surface_mounting_device">SMD</a>) montato su una board che vi permette di poter facilmente interagire con il chip sia dal punto di vista fisico che di programmazione. Queste board come minimo forniscono un&#39;interfaccia RS-232, ma alcune recenti anche una USB o una Ethernet, la piedinatura completa del chip su connettori facilmente manipolabili, una porta di debugging (basata sulla JTAG o altre interfacce proprietarie). Spesso, molte di queste board hanno anche una parte di prototipizzazione per poter fare esperimenti con altri componenti. Per quanto riguarda poi il kit da scegliere, anche qui &egrave; una vera e propria giungla. Si va da prodotti semi-didattici a finire a prodotti per ambiti industriali, e nell&#39;ambito dello stesso produttore siate preparati a dover scegliere fra una decina di diversi modelli di MCU e di kit di sviluppo. Io ho tagliato la testa al toro, ed ho scelto per cominciare uno dei tanti kit base prodotti da Silicon Lab, nello specifico uno della famiglia <a href="http://www.silabs.com/products/mcu/smallmcu/Pages/C8051F31x.aspx">C8051F31X</a>, il C8051F310, che vedete fotografato si seguito.</p>
<p style="text-align: center;"><img alt="" src="http://www.carminenoviello.com/wp-content/uploads/2010/07/C8051F310DK.jpg" style="width: 307px; height: 307px;" /></p>
<p>&nbsp;</p>
<p>Il kit si pu&ograve; acquistare su <a href="http://search.digikey.com/scripts/DkSearch/dksus.dll?Cat=2621773&amp;k=C8051F310DK">DigiKey</a> ad un prezzo veramente irrisorio (circa 56 euro) e vi arriva in circa 3gg lavorativi dagli USA, ed &egrave; completo di tutto quello che vi serve per cominciare (debugger, alimentatore, IDE e&nbsp; compilatori free, documentazione, esempi, area di prototipizzazione). Purtroppo devo anche darvi una brutta notizia: tutto quello che gira attorno alla programmazione MCU implica l&#39;esistenza di Windows. Mettetevi l&#39;animo in pace ma purtroppo &egrave; cos&igrave;. Per quanto mi riguarda, un&#39;istanza di Parallels ad hoc con Windows mi ha permesso di poter usare comunque i miei Mac senza alcun problema (occhio che per funzionare bene, il debugger di Silicon Lab richiede Parallels 5).</p>
<p>Se per voi il budget non &egrave; un problema e siete interessati a lavorare direttamente con MCU con funzionalit&agrave; Wireless come il CC1110-F32, allora potete acquistare un kit gi&agrave; con queste funzionalit&agrave;. Silicon ne ha un paio a catalogo e non costano molto, ma date uno sguardo a Microchip. <a href="http://focus.ti.com/docs/toolsw/folders/print/cc1110-cc1111dk.html">Quello Texas</a> &egrave; veramente qualcosa di formidabile, ed esce completo di mouduli per sviluppare a 315, 433 e 868 Mhz, oppure c&#39;&egrave; il kit a 2.4Ghz. Il kit comprende due board completissime, e i moduli necessari, mentre tutta la parte software si scarica on-line. Purtroppo per la parte IDE Texas si affida a IAR, che &egrave; a pagamento, ma per qualunque cosa bussate pure <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .</p>
<p>&nbsp;</p>
<p style="text-align: center;"><img alt="" height="352" src="http://www.carminenoviello.com/wp-content/uploads/2010/07/R6264036-06.jpg" width="444" /></p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">Gli unici due problemi sono: il costo, 650$ direttamente dal sito Texas; il fatto che manca una vera e propria area di prototipizzazione. Ma per il resto, quanto di pi&ugrave; completo esista. Un consiglio? Se non avete requisiti specifici e immediata voglia di partire con la parte di RF, allora cominciate con un kit pi&ugrave; economico con il Silicon di cui sopra.</p>
<p style="text-align: justify;">Passiamo ora alla parte letteraria.</p>
<table border="0" cellpadding="2" cellspacing="2" style="height: auto; width: auto;" valign="top">
<tbody>
<tr>
<td style="vertical-align: top;">
<p style="text-align: center;"><img align="bottom" alt="" src="http://www.carminenoviello.com/wp-content/uploads/2010/07/51XMEGEE0QL._SL160_.jpg" /></p>
</td>
<td style="vertical-align: top;">Ci sono dei libri che sono fondamentali e molto istruttivi. Innanzitutto, &egrave; importante farsi le ossa con l&#39;architettura dell&#39;8051. Un testo che io ho trovato ottimo &egrave; <a href="http://www.amazon.co.uk/8051-Microcontroller-Embedded-Systems/dp/0138610223/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1278707043&amp;sr=1-1"><em>The 8051 Microcontroller and Embedded Systems</em></a>, di Muhammad Ali Mazidi. &Egrave; un libro che illustra l&#39;architettura del microcontroller, dalla parte fisica fino alla programmazione in C, passando per quella in Assembler. Illustra, inoltre, varie tecniche di programmazione per interfacciarsi con l&#39;hardware esterno, i timer, la gestione degli interrupt, ecc. Nei capitoli finali, inoltre, c&#39;&egrave; anche una parte dedicata all&#39;uso dei convertitori analogico/digitali, di DAC, di sensori, oltre che ci sono esempi per interfacciare il microcontroller con altre componenti esterne come motori DC, stepper e altro. Infine, questo libro pu&ograve; anche rappresentare un ottimo libro di introduzione proprio all&#39;architettura degli elaboratori, ovviamente focalizzato sulle architetture Harvard quali i microcontroller.</td>
</tr>
<tr>
<td style="vertical-align: top;"><img alt="" src="http://www.carminenoviello.com/wp-content/uploads/2010/07/1206612827_1201_FT0_clipboard02bf1.jpg" style="width: 119px; height: 161px;" /></td>
<td style="vertical-align: top;">Un libro veramente molto utile &egrave; <em><a href="http://www.amazon.com/Embedded-C-Michael-J-Pont/dp/020179523X">Embedded C</a></em> di Michael J. Pont. &Egrave; un libro che focalizza l&#39;attenzione esclusivamente sulla programmazione C dell&#39;8051, e astrae quasi totalmente da aspetti connessi con l&#39;hardware (&egrave; un obiettivo dichiarato del libro), ma certamente &egrave; un ottimo punto per cominciare a programmare con queste architetture. Si comincia con cose molto semplici, come piccoli esempi per interfacciarsi con semplici led o interruttori di varia natura, e si finisce man mano con il gettare le basi di un piccolo sistema operativo real-time. Vengono, quindi, illustrati molti aspetti connessi con i timer di sistema, gli oscillatori esterni, il clock, ecc. I concetti espressi nella maggior parte del libro sono una vera e propria miniera formativa, che gettano luce su molti aspetti che oggi come oggi sono totalmente nascosti dai sistemi operativi general purpose. Si finisce poi con trattare aspetti connessi con la gestione delle UART (tipo RS-232), e con la modellazione software di un sistema di sorveglianza. <br />
				Un libro da non perdere, secondo me.</td>
</tr>
<tr>
<td style="vertical-align: top;"><img alt="" src="http://www.carminenoviello.com/wp-content/uploads/2010/07/pttes-cover.jpg" style="width: 123px; height: 150px;" /></td>
<td style="vertical-align: top;">Sempre dallo stesso autore del libro di prima, c&#39;&egrave; un vero e proprio catalogo di pattern per la programmazione con microcontroller 8051. <em><a href="http://www.tte-systems.com/books/pttes">Patterns for Time-Triggered Embedded Systems</a></em> &egrave; addirittura un libro liberamente scaricabile on-line, con oltre 1000 pagine di esempi, casi d&#39;uso e software. In realt&agrave; la parte software &egrave; globalmente quella presente nel libro Embedded C, e forse pecca anche un pelo di &quot;didattica&quot;. Invece, questo libro &egrave; il completamento di quello precedente per quanto riguarda la parte hardware, con esempi, consigli di configurazioni, soluzioni a problematiche tipiche di integrazione. Un ottimo testo di riferimento, soprattutto se si considera che &egrave; gratis.</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p>Veniamo, infine, alla parte on-line. Googlando troverete una vera e propria miniera di informazioni sparse per la rete. Ci sono, inoltre, diverse community attive, dove troverete materiale didattico, esempi finiti, oltre che spesso e volentieri forum e chat con cui interagire con le persone. Il pi&ugrave; completo che ho trovato finora &egrave; <a href="http://www.8051projects.net/">www.8051projects.net</a>, ricchissimo di tutorial oltre che con un forum dove ci sono molti esperti che sapranno eventualmente darvi consigli. Un altro sito altrettanto buono &egrave; <a href="http://www.8052.com/">www.8052.com</a> (oggi si parla di 8051 per indicare in realt&agrave; derivati dell&#39;8052). Anche qui troverete materiale e spunti per applicazioni. Per quanto riguarda la parte Texas Instruments, la <a href="http://e2e.ti.com/support/low_power_rf/f/155.aspx">community sul sito di Texas</a> &egrave; molto ricca di esempi, documentazione, librerie. Inoltre, nel forum spesso e volentieri troverete risposte direttamente dai progettisti Texas: penso sia la fonte pi&ugrave; autorevole <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>
	Che dire: penso di aver detto tutto. Giusto per completezza, se non ne avete una, pensate di fare l&#39;acquisto di una stazione saldante con controllo di temperatura. Su ebay ne trovate molte intorno ai 50&euro;: sono degli ottimi prodotti tutto sommato, di cui avrete sicuramente bisogno quando vorrete fare delle prove. Su Youtube poi si trovano decine di video di esempio su come saldare al meglio: addirittura c&#39;&egrave; chi salda chip SMD, e presto ci prover&ograve; anche io. Per qualunque cosa, non esitate a chiedere <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2010/07/10/mcu-programming-come-cominciare/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Mai dire mai</title>
		<link>http://www.carminenoviello.com/2010/07/01/mai-dire-mai/</link>
		<comments>http://www.carminenoviello.com/2010/07/01/mai-dire-mai/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 18:43:11 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Elettronica]]></category>
		<category><![CDATA[8051]]></category>
		<category><![CDATA[cc1110f-32]]></category>
		<category><![CDATA[microcontroller]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=203</guid>
		<description><![CDATA[Sembra un modo di dire scontato e che spesso interpreta anche le vicissitudini della vita. Ma io a 31 anni suonati ancora devo imparare a non escludere nulla nella vita, anche se ho avuto modo spesso e volentieri di ricredermi, soprattutto di me stesso. Insomma, mai dire mai! Gi&#224;, perch&#233; se c&#39;era una certezza fissa [...]]]></description>
			<content:encoded><![CDATA[<p>Sembra un modo di dire scontato e che spesso interpreta anche le vicissitudini della vita. Ma io a 31 anni suonati ancora devo imparare a non escludere nulla nella vita, anche se ho avuto modo spesso e volentieri di ricredermi, soprattutto di me stesso. Insomma, mai dire mai!</p>
<p>
	Gi&agrave;, perch&eacute; se c&#39;era una certezza fissa nella mia lunga carriera di informatico, una sorta di punto fisso, &egrave; che io non mi sarei mai, e dico mai, occupato di aspetti connessi con il mondo dell&#39;elettronica: di hardware, microcontroller, firmware e robe di questo tipo. E ancora una volta sono stato smentito. Per una serie di motivi che sarebbe troppo lungo spiegare, mi trovo oggi a vivere un&#39;avventura che mi sta facendo ritornare ragazzino, quando passavo intere giornate a capire aspetti totalmente nuovi, ad esplorare nuove strade, a perdermi nei libri e nella documentazione.</p>
<p><span id="more-203"></span><br />
	Da un po&#39; di tempo sto lavorando, infatti, con diversi microcontroller, tutti di derivazione Intel 8051, e soprattutto con MCU dotati di funzionalit&agrave; di RF. Nello specifico, sto lavorando con la famiglia di prodotti ChipCon CC111X-FXX, oggi divenuti Texas Instruments, che consistono in dei <em>System on Chip</em> (SoC) che oltre alla parte di MCU integrano anche al loro interno un modulo tranceiver che permette di sviluppare software per comunicazioni in radio frequenza. E nonostante sia ormai un po&#39; di tempo che ci lavoro, devo dire che ancora non mi sono abituato all&#39;idea che un integrato di appena 6x6mm possa contenete un numero cos&igrave; elevato di funzionalit&agrave; al suo interno, e al tempo stesso costare meno di 4 dollari.<br />
	A rischio di sembrare provincialotto, vi allego il diagramma a blocchi di questa specie di mostro:</p>
<p style="text-align: center;"><img align="middle" alt="" height="549" src="http://www.carminenoviello.com/wp-content/uploads/2010/07/cc1110.jpeg" width="442" /></p>
<p>Dite quello che volete, ma per me &egrave; imbarazzante constatare solo nel 2010 dove sia arrivata la microelettronica.</p>
<p>	Il campo di applicazione per cui sto sviluppando su questa piattaforma hardware/software (si, perch&eacute; Texas distribuisce gratis e in Open Source una montagna di librerie, tra cui SimpliciTI, uno stack di rete niente male) &egrave; quello della tracciabilit&agrave; di filiera. E nonostante ci siano altre soluzioni che teoricamente sembrano vincenti (leggasi ZigBee e derivati), il loro costo non ne ha permesso ancora una diffusione adeguata, e secondo me un prodotto come questo di Texas pu&ograve; minare anche il loro mercato.</p>
<p>A questo punto la domanda sorge spontanea: come mai un programmatore che da anni si occupa esclusivamente di web e gestione documentale finisce per occuparsi di aspetti connessi con l&#39;hardware? La domanda &egrave; lecita. I motivi sono diversi, provo a sintetizzarli:</p>
<ul>
<li>Personalmente non credo di essere una persona in grado di poter fare lo stesso lavoro per tutta la vita usando le solite trite e ritrite tecnologie. Il mio motto &egrave;: cambiare per restare giovani <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .</li>
<li>Quello che sto facendo mi diverte tantissimo (corollario del punto di cui prima).</li>
<li>Il campo di applicazione per cui stiamo lavorando ha ricadute commerciali molto vaste, e la conoscenza approfondita della gestione documentale permette di esplorare segmenti di mercato che altri difficilmente esplorano, perch&eacute; o focalizzati sul software (web e altro) o solo hardware (provate a parlare con uno che si occupa di elettronica: esistono solo i bit!).</li>
<li>Infine, la tracciabilit&agrave; di filiera &egrave; ancora oggi un territorio vergine, popolato solo di colossi che fanno pezzi hardware ma che non hanno interesse all&#39;integrazione e ai campi di applicazione reali; al tempo stesso, ci sono molti potenziali clienti in diversi settori che aspettano solo che qualcuno bussi alla loro porta per fare l&#39;investimento.</li>
</ul>
<p>Che sviluppi avr&agrave; questa mia nuova &quot;ricerca&quot;? Beh, e ancora prestino per rivelarlo, ma non mancher&agrave; molto che ci saranno importanti novit&agrave;. E ho intenzione di approfondire anche gli aspetti tecnici su questo blog. Stay tuned <img src='http://www.carminenoviello.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2010/07/01/mai-dire-mai/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The Moment It Clicks</title>
		<link>http://www.carminenoviello.com/2009/11/28/the-moment-it-clicks/</link>
		<comments>http://www.carminenoviello.com/2009/11/28/the-moment-it-clicks/#comments</comments>
		<pubDate>Sat, 28 Nov 2009 13:51:15 +0000</pubDate>
		<dc:creator>Carmine Noviello</dc:creator>
				<category><![CDATA[Libri]]></category>
		<category><![CDATA[fotografia]]></category>
		<category><![CDATA[libro]]></category>
		<category><![CDATA[recensione]]></category>

		<guid isPermaLink="false">http://www.carminenoviello.com/?p=167</guid>
		<description><![CDATA[Joe McNally &#232; un fotografo che ai pi&#249; non necessita di alcuna presentazione. Sicuramente &#232; uno tra i pi&#249; autorevoli fotografi del panorama attuale, che ha collaborato in oltre 30 anni di carriera con importanti riviste americane come LIFE e National Geographic e che probabilmente ha raggiunto l&#39;apice del successo con un lavoro di reportage [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.joemcnally.com/">Joe McNally</a> &egrave; un fotografo che ai pi&ugrave; non necessita di alcuna presentazione. Sicuramente &egrave; uno tra i pi&ugrave; autorevoli fotografi del panorama attuale, che ha collaborato in oltre 30 anni di carriera con importanti riviste americane come LIFE e National Geographic e che probabilmente ha raggiunto l&#39;apice del successo con un lavoro di reportage molto complesso e durato tantissimo tempo: <a href="http://www.amazon.com/Faces-Ground-Zero-Portraits-September/dp/0316523704">Faces of Ground Zero</a>, un reportage fatto tra quelle persone che hanno lavorato nelle macerie delle torri gemelle dopo l&#39;11 settembre.<br />
	Ma Joe McNally, prima ancora di essere un grande fotografo di reportage, &egrave; colui che ha reso l&#39;uso del flash un&#39;arte vera e propria, diventando <a href="http://strobist.blogspot.com/"><em>strobista</em></a> per eccellenza come oggi si usa dire. La sua innata capacit&agrave; di gestire flash di qualsiasi natura, partendo da grandi flash da studio e finendo con utilizzare contemporaneamente e creativamente diversi flash portatili da slitta, lo ha reso molto famoso e sicuramente la fonte pi&ugrave; autorevole in materia. Inoltre, l&#39;unione di queste doti tecniche con la capacit&agrave; di saper costruire attimi che raccontano storie fa si che ogni sua foto sia in grado di attirare l&#39;attenzione dell&#39;osservatore, a volte per ore, coinvolgendolo emotivamente e attivamente alla storia.</p>
<p><span id="more-167"></span></p>
<p><a href="http://www.amazon.com/Moment-Clicks-Photography-secrets-shooters/dp/0321544080">The Moment it Clicks</a> &egrave; il libro che condensa il McNally pensiero. Il testo, come lo stesso autore dice, &egrave; costruito attorno ad un&#39;idea ben precisa: provare a riportare la struttura dei corsi fotografici di Joe sotto forma di libro. Il libro consta di 4 capitoli principali che in realt&agrave; sono pi&ugrave; che altro un raggruppamento logico di circa 200 &quot;paragrafi&quot;. Ogni paragrafo &egrave; formato da due facciate contigue, un titolo che rappresenta un concetto che Joe vuole comunicare, una foto che sintetizza e rappresenta il concetto del paragrafo e del testo che descrive l&#39;argomento. Spesso, inoltre, nel paragrafo si trova anche un sottoparagrafo che descrive come &egrave; stata scattata quella foto.</p>
<p style="text-align: center;"><img align="middle" alt="" height="250" src="http://www.carminenoviello.com/wp-content/uploads/2009/11/Immagine-1.png" width="500" /></p>
<p>Tuttavia, il libro di Joe non &egrave; un libro di tecnica fotografica. L&#39;idea &egrave; quella di sollecitare il lettore rispetto a dei temi, siano essi concreti come quelli inerenti aspetti di illuminazione o scelta della location, siano essi connessi con questioni pi&ugrave; generali come gli approcci al soggetto o alla capacit&agrave; di sfruttare la luce per modellare la scena. Ma di tecnica, aspetti relativi all&#39;attrezzatura, how-to o schemi di illuminazione non c&#39;&egrave; alcuna traccia.<br />
	Tutto questo si traduce in un libro molto affascinante, soprattutto per i contenuti fotografici, ma anche complesso e lungo da vivere: non &egrave; un libro &quot;point and shot&quot;, ma un libro che richiede al lettore un&#39;attenta riflessione sui temi trattati, una lunga fase di reverse engineering sulla foto ottenuta &#8211; e voluta &#8211; dall&#39;autore, con il risultato che spesso si ritorna a rileggere diversi punti o addirittura rileggerlo daccapo, come &egrave; gi&agrave; successo a me pi&ugrave; volte.</p>
<p>Si potrebbe obiettare che il libro &egrave; incentrato principalmente attorno alla fotografia di ritratto commerciale. E in effetti &egrave; cos&igrave; se ci si limita soprattutto alla tipologia di contenuto, perch&eacute; Jo&egrave; &egrave; soprattutto un fotografo &quot;istituzionale&quot;. Ma &egrave; necessario anche osservare che i suoi risultati vanno ben oltre nel ritrarre le persone su di un sensore o sulla pellicola, e che si basano soprattutto sul saper cogliere in tempi spesso brevissimi (in alcune foto lui racconta di aver avuto poco pi&ugrave; di una manciata di secondi per decidere cosa e come fotografare) l&#39;anima dei suoi soggetti, per l&#39;appunto il <em>momento</em>, con una grandissima capacit&agrave; di controllo della luce e della scena. Inoltre, il libro &egrave; anche pervaso da una profonda vena ironica (Joe &egrave; proprio caratterialmente cos&igrave;, se si vedono i tantissimi video in rete), che coinvolge molto il lettore, aiutandolo anche a capire che uno delle doti principali dei grandi fotografi &egrave; soprattutto mettersi in discussione con se stessi e sapersi porre con gli altri.</p>
<p>A voler essere pignoli, va detto che questo libro per un non madre lingua (perch&eacute; il libro &egrave; in inglese) &egrave; molto difficile da leggere. Joe scrive in slang puro, e i periodi sono ricchi di modi dire e citazioni culturali di un paese che non ci appartiene. Questo spesso rende complicata la lettura, e non &egrave; sempre facile afferrare il messaggio che si vuole comunicare. Probabilmente, questo &egrave; un altro motivo che obbliga a rileggere il libro almeno un paio di volte, ma tutto sommato credo che sia un testo di cui non si possa fare a meno. Soprattutto se la ritrattistica &egrave; il vostro genere preferito.</p>
<p>&nbsp;</p>
<p style="text-align: center;"><img align="middle" alt="" height="500" src="http://www.carminenoviello.com/wp-content/uploads/2009/11/big0321544080.jpg" width="500" /></p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.carminenoviello.com/2009/11/28/the-moment-it-clicks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

