<?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>Tutorial Netduino Archives</title>
	<atom:link href="https://logicaprogrammabile.it/category/tutorial-netduino-italiano/feed/" rel="self" type="application/rss+xml" />
	<link>https://logicaprogrammabile.it/category/tutorial-netduino-italiano/</link>
	<description>Tutorial in italiano per imparare a programmare usando Arduino, Raspberry PI, Netduino</description>
	<lastBuildDate>Mon, 13 Feb 2017 19:07:04 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>

<image>
	<url>https://logicaprogrammabile.it/wp-content/uploads/2017/11/cropped-logicaprogrammabile-logo-02-32x32.png</url>
	<title>Tutorial Netduino Archives</title>
	<link>https://logicaprogrammabile.it/category/tutorial-netduino-italiano/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Netduino, NETMF 4.3 R2 Beta e Visual Studio 2013 Comunity Edition</title>
		<link>https://logicaprogrammabile.it/netduino-netmf-43-sdk-r2-beta-visual-studio-2013-comunity-edition/</link>
					<comments>https://logicaprogrammabile.it/netduino-netmf-43-sdk-r2-beta-visual-studio-2013-comunity-edition/#comments</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Wed, 10 Dec 2014 08:24:43 +0000</pubDate>
				<category><![CDATA[Tutorial Netduino]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=4530</guid>

					<description><![CDATA[<p>Aggiornare il sistema di sviluppo Netduino. Nonostante i pochi aggiornamenti, il progetto .Net Micro framework è ancora vivo e secondo i progettisti nel prossimo futuro avremmo importanti sviluppi della piattaforma, soprattutto considerando l&#8217;impegno di Microsoft sul fronte IoT. Personalmente mi fa piacere avere degli aggiornamenti...</p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-netmf-43-sdk-r2-beta-visual-studio-2013-comunity-edition/">Netduino, NETMF 4.3 R2 Beta e Visual Studio 2013 Comunity Edition</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Aggiornare il sistema di sviluppo Netduino.</h3>
<p>Nonostante i pochi aggiornamenti, il progetto <strong>.Net Micro framework</strong> è ancora vivo e secondo i progettisti nel prossimo futuro avremmo importanti sviluppi della piattaforma, soprattutto considerando l&#8217;impegno di <strong>Microsoft</strong> sul fronte <strong>IoT</strong>.</p>
<p>Personalmente mi fa piacere avere degli aggiornamenti per questa piattaforma che reputo, nonostante le performance non esaltanti, molto semplice e versatile. Gli ultimi aggiornamenti riguardano la possibilità (finalmente) di utilizzare, come sistema di sviluppo, <strong>Visual Studio 2013</strong>.<br />
Inoltre <strong>Microsoft</strong> ha recentemente rilasciato la versione Comunity che rende disponibile una serie di strumenti per lo sviluppo di diverse tipologie di applicazioni, comprese le app per Windows Phone e quelle per la piattaforma Azure.<br />
L&#8217;edizione Comunity porta anche la possibilità di installare plug-in, opzione preclusa per le precedenti versioni Express.</p>
<p><span id="more-4530"></span></p>
<p>Le versioni che andremo ad installare sono attualmente in versione beta. Scarichiamo la versione <strong>4.3 R2 Beta</strong> del .Net MF direttamente dalla pagina del <a href="https://netmf.codeplex.com/releases/view/133285" target="_blank">progetto su Codeplex</a>. Eseguiamo l&#8217;installazione del pacchetto avendo cura di disinstallare le vecchie versioni:</p>
<div class="post-content-gallery justify columns3" data-justify="180">
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/microsdk01.png" data-rel="lightcase:gallery-zFCpPe" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/microsdk01.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/microsdk02.png" data-rel="lightcase:gallery-zFCpPe" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/microsdk02.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/microsdk03.png" data-rel="lightcase:gallery-zFCpPe" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/microsdk03.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/microsdk04.png" data-rel="lightcase:gallery-zFCpPe" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/microsdk04.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div></div>
<p>Dopo l&#8217;installazione del Micro Framework, andiamo ad installare il Netduino SDK 4.3.1 (November 2014)</p>
<div class="post-content-gallery justify columns3" data-justify="180">
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk01.png" data-rel="lightcase:gallery-hoimH1" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk01.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk02.png" data-rel="lightcase:gallery-hoimH1" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk02.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk03.png" data-rel="lightcase:gallery-hoimH1" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk03.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk04.png" data-rel="lightcase:gallery-hoimH1" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk04.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk05.png" data-rel="lightcase:gallery-hoimH1" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk05.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk06.png" data-rel="lightcase:gallery-hoimH1" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/nsdk06.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div></div>
<p>Ora installiamo il plug-in per configurare <strong>Visual Studio 2013 Comunity Edition</strong>. Il plug lo potete trovare nel file zip relativo al .Net MF scaricato precedentemente. Dovete solamente eseguire un doppio clic sul file <strong>netmfvs2013.vsix</strong> per avviare l&#8217;installazione:</p>
<div class="post-content-gallery justify columns3" data-justify="180">
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/Immagine01.png" data-rel="lightcase:gallery-rwylSX" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/Immagine01.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/Immagine02.png" data-rel="lightcase:gallery-rwylSX" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/Immagine02.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/Immagine03.png" data-rel="lightcase:gallery-rwylSX" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/Immagine03.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div></div>
<p>dopo qualche istante il vostro ambiente è configurato.</p>
<p>Avviamo VS 2013 Comunity e creiamo un nuovo progetto Micro Framework:</p>
<p><a href="https://logicaprogrammabile.it/wp-content/uploads/2014/12/NewPro.png"><img fetchpriority="high" decoding="async" class="aligncenter size-full wp-image-4549" src="https://logicaprogrammabile.it/wp-content/uploads/2014/12/NewPro.png" alt="NewPro" width="710" height="555" srcset="https://logicaprogrammabile.it/wp-content/uploads/2014/12/NewPro.png 710w, https://logicaprogrammabile.it/wp-content/uploads/2014/12/NewPro-300x234.png 300w" sizes="(max-width: 710px) 100vw, 710px" /></a></p>
<p>Ora tutto è pronto per scrivere applicazioni per <strong>Netduino</strong> con il nuovo sistema di sviluppo.</p>
<p>Vi ricordo che è necessario installare anche l&#8217;ultima versione del firmware sul vostro <strong>Netduino</strong>:</p>
<p><a href="https://logicaprogrammabile.it/netduino-plus-2-aggiornare-netmf-431/" target="_blank">netduino plus 2 aggiornare al netmf 4.3.1</a></p>
<p>&nbsp;</p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-netmf-43-sdk-r2-beta-visual-studio-2013-comunity-edition/">Netduino, NETMF 4.3 R2 Beta e Visual Studio 2013 Comunity Edition</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/netduino-netmf-43-sdk-r2-beta-visual-studio-2013-comunity-edition/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Netduino Plus 2 aggiornare al .NetMF 4.3.1</title>
		<link>https://logicaprogrammabile.it/netduino-plus-2-aggiornare-netmf-431/</link>
					<comments>https://logicaprogrammabile.it/netduino-plus-2-aggiornare-netmf-431/#respond</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Mon, 10 Mar 2014 10:55:55 +0000</pubDate>
				<category><![CDATA[Tutorial Netduino]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=4091</guid>

					<description><![CDATA[<p>Aggiornare la scheda Netduino Plus 2 al firmware 4.3.1 Dopo un lungo periodo di sviluppo e di attesa è stata rilasciata la versione 4.3 QFE1 del .Net micro Framework e in contemporanea la versione 4.3.1 del Netduino SDK. Per sfruttare le nuove versioni è necessario...</p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-plus-2-aggiornare-netmf-431/">Netduino Plus 2 aggiornare al .NetMF 4.3.1</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Aggiornare la scheda Netduino Plus 2 al firmware 4.3.1</h3>
<p>Dopo un lungo periodo di sviluppo e di attesa è stata rilasciata la versione 4.3 QFE1 del .Net micro Framework e in contemporanea la versione 4.3.1 del Netduino SDK. Per sfruttare le nuove versioni è necessario aggiornare il firmware della scheda portandolo appunto alla versione 4.3.1.</p>
<p>L&#8217;operazione risulta semplice e questo tutorial vuole solo essere un aiuto per le persone che non hanno mai eseguito questa procedura.</p>
<p>Per prima cosa scarichiamo:</p>
<ul>
<li><a href="http://www.netduino.com/downloads/MicroFrameworkSDK_NETMF43_QFE1.msi">.Net Micro Framework disponibile sul sito Netduino.com</a></li>
<li><a href="http://www.netduino.com/downloads/netduinosdk_NETMF43.exe">l&#8217;ultima versione del Netduino SDK attualmente la  4.3.1</a></li>
<li><a href="http://forums.netduino.com/index.php?app=core&amp;module=attach&amp;section=attach&amp;attach_id=3167">Il firmware 4.3.1 per la scheda Netduino PLUS 2</a></li>
</ul>
<blockquote><p>Per chi ha la scheda <strong>Netduino 2</strong> deve scaricare il firmware appropriato disponibile sul sito Netduino.com. Invece i possessori della <strong>Netduino</strong> e <strong>Netduino Plus</strong> non potranno aggiornare alla versione 4.3.1 ma solo alla 4.2.0.1 <a href="https://logicaprogrammabile.it/2012/aggiornare-netduino-versione-42-net-micro-framework/" target="_blank">seguendo i vecchi tutorial</a></p></blockquote>
<p>Di seguito vengono riportate le schermate che portano all&#8217;installazione del .Net Micro Framework ed del Netduino SDK tramite le relative procedure guidate:</p>
<p><span id="more-4091"></span></p>
<div class="post-content-gallery justify columns3" data-justify="180">
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine21.png" data-rel="lightcase:gallery-O8g9oP" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine21.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine22.png" data-rel="lightcase:gallery-O8g9oP" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine22.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine23.png" data-rel="lightcase:gallery-O8g9oP" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine23.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine24.png" data-rel="lightcase:gallery-O8g9oP" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine24.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine25.png" data-rel="lightcase:gallery-O8g9oP" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine25.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine26.png" data-rel="lightcase:gallery-O8g9oP" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine26.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div></div>
<div class="post-content-gallery justify columns3" data-justify="180">
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine01.png" data-rel="lightcase:gallery-7vf8uy" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine01.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine02.png" data-rel="lightcase:gallery-7vf8uy" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine02.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine03.png" data-rel="lightcase:gallery-7vf8uy" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine03.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine04.png" data-rel="lightcase:gallery-7vf8uy" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine04.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div></div>
<p>Il passo successivo è quello di collegare la scheda Netduino plus 2 al pc e caricare i relativi driver.</p>
<h3>Caricare il nuovo firmware</h3>
<p>Per caricare il nuovo firmware è necessario porre la scheda in modalità bootloader, per far cio è sufficiente scollegare la scheda dalla porta usb, tenere premuto il pulsante BTN della scheda e contemporaneamente ricollegarla alla porta usb.<br />
Windows avvierà la procedura automatica per il caricamento dei driver relativi al micro STM32:</p>
<div class="post-content-gallery justify columns3" data-justify="180">
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine11.png" data-rel="lightcase:gallery-3NG7qY" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine11.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine12.png" data-rel="lightcase:gallery-3NG7qY" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine12.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div></div>
<p>la scheda è in modalità bootloader quando il diodo LED blu sulla scheda rimane acceso.</p>
<p>Ora tutto è pronto per caricare il nuovo firmware. Tramite la nuova utility presente nel file zip del firmware, scaricato precedentemente, sarà possibile aggiornare la scheda:</p>
<div class="post-content-gallery justify columns3" data-justify="180">
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine16.png" data-rel="lightcase:gallery-NdGEyA" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine16.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine17.png" data-rel="lightcase:gallery-NdGEyA" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine17.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine18.png" data-rel="lightcase:gallery-NdGEyA" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine18.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine19.png" data-rel="lightcase:gallery-NdGEyA" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine19.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div>
            <div class="post-content-gallery-item">
                <a href="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine20.png" data-rel="lightcase:gallery-NdGEyA" data-lc-title="">
                    <img decoding="async" src="https://logicaprogrammabile.it/wp-content/uploads/2014/03/Immagine20.png" alt="" />
                    <div class="post-content-gallery-item-caption"></div>
                </a>
            </div></div>
<p>è sufficiente selezionare la scheda corretta e cliccare sul pulsante upgrade.</p>
<p>una volta terminato il caricamento del nuovo firmware, dobbiamo scollegare e ricollegare la scheda alla porta usb.</p>
<p>Tramite l&#8217;utility MFDeploy, verifichiamo la versione del firmware presente sulla scheda dal menu <strong>Target-&gt;Device Capabilities;</strong> verifichiamo che nelle voci SolutionReleaseInfo.solutionVersion, SolutionReleaseInfo.solutionVendorInfo sia presente la versione 4.3.0.1.</p>
<p>L&#8217;ultima operazione è quella di utilizzare MFDeploy per inserire il mac address (visibile nell&#8217;adesivo posto sotto la scheda) tramite il tool disponibile dal menu <strong>Target-&gt;Configuration-&gt;Network</strong></p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-plus-2-aggiornare-netmf-431/">Netduino Plus 2 aggiornare al .NetMF 4.3.1</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/netduino-plus-2-aggiornare-netmf-431/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Netduino, utilizzare il PCF8574AP</title>
		<link>https://logicaprogrammabile.it/netduino-utilizzare-pcf8574ap-port-expander/</link>
					<comments>https://logicaprogrammabile.it/netduino-utilizzare-pcf8574ap-port-expander/#comments</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Thu, 23 Jan 2014 17:51:12 +0000</pubDate>
				<category><![CDATA[Tutorial Netduino]]></category>
		<category><![CDATA[I2C]]></category>
		<category><![CDATA[InputPort]]></category>
		<category><![CDATA[OutputPort]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=4049</guid>

					<description><![CDATA[<p>Come espandere le porte IO del Netduino tramite PCF8574AP Nel precedente articolo abbiamo visto come utilizzare l&#8217;integrato PCF8574AP per espandere le porte IO di Arduino. Lo stesso circuito può essere adattato anche alla scheda Netduino. Dato che ho utilizzato Arduino Leonardo, i pin SCL e...</p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-utilizzare-pcf8574ap-port-expander/">Netduino, utilizzare il PCF8574AP</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Come espandere le porte IO del Netduino tramite PCF8574AP</h3>
<p>Nel <a title="PCF8574AP come espandere porte IO" href="https://logicaprogrammabile.it/2014/pcf8574ap-espandere-porte-io/">precedente articolo</a> abbiamo visto come utilizzare l&#8217;integrato <strong>PCF8574AP</strong> per espandere le <strong>porte IO</strong> di Arduino. Lo stesso circuito può essere adattato anche alla scheda Netduino. Dato che ho utilizzato Arduino Leonardo, i pin <strong>SCL</strong> e <strong>SDA</strong>, relativi al bus I2C, sono dedicati, mentre <strong>Netduino</strong> rispecchia la pin function della Arduino UNO e quindi i pin SDA e SCL sono disponibili rispettivamente sui pin analogico 4 e pin analogico 5.</p>
<p>In definitiva, per far funzionare il circuito, dobbiamo collegare i pin secondo la tabella seguente</p>
<table align="center">
<tbody>
<tr>
<td style="text-align: center;"><strong>PCF8574AP</strong></td>
<td style="text-align: center;"><strong>Netduino</strong></td>
</tr>
<tr>
<td>PIN 14 SCL</td>
<td style="text-align: left;">Analog PIN 5 SCL</td>
</tr>
<tr>
<td>PIN 15 SDA</td>
<td>Analog PIN 4 SDA</td>
</tr>
</tbody>
</table>
<p><a href="https://logicaprogrammabile.it/wp-content/uploads/2014/01/WP_20140123_11_21_31_Pro.jpg"><img decoding="async" class="aligncenter size-full wp-image-4052" alt="Netduino e PCF8574AP" src="https://logicaprogrammabile.it/wp-content/uploads/2014/01/WP_20140123_11_21_31_Pro.jpg" width="444" height="250" srcset="https://logicaprogrammabile.it/wp-content/uploads/2014/01/WP_20140123_11_21_31_Pro.jpg 444w, https://logicaprogrammabile.it/wp-content/uploads/2014/01/WP_20140123_11_21_31_Pro-300x168.jpg 300w" sizes="(max-width: 444px) 100vw, 444px" /></a></p>
<p><span id="more-4049"></span></p>
<p>Per quanto riguarda il codice sorgente possiamo osservare il listato seguente che permette di accendere e spegnere i led collegati alle porte del <strong>PCF8574AP</strong></p>
<p>[csharp]<br />
//buffer per memoriaazare indirizzi<br />
//e dati<br />
Byte[] tx_write = new Byte[1];<br />
Byte[] tx_read = new Byte[1];</p>
<p>//Configurazione contenente l&#8217;indirizzo del PCF8574AP<br />
//e la frequenza del bus i2c<br />
I2CDevice.Configuration cnf = new I2CDevice.Configuration(0x38, 100);</p>
<p>//Creo un oggetto per eseguire le richieste di lettura e scrittura<br />
I2CDevice expanderPCF8574 = new I2CDevice(cnf);</p>
<p>//creo un oggetto I2CReadTransaction che viene associato al buffer tx_read<br />
//il buffer viene utilizzato per verificare lo stato delle porte del PCF8574AP<br />
I2CDevice.I2CReadTransaction[] rt_data = new<br />
I2CDevice.I2CReadTransaction[] { I2CDevice.CreateReadTransaction(tx_read) };</p>
<p>//creo un oggetto I2CWriteTransaction che viene associato al buffere tx_write<br />
//il buffer tx viene utilizzato per spedire lo stato delle porte del PCF8574AP<br />
I2CDevice.I2CWriteTransaction[] wt_write = new<br />
I2CDevice.I2CWriteTransaction[] { I2CDevice.CreateWriteTransaction(tx_write) };</p>
<p>while (true)<br />
{<br />
  //imposto tutte le porte a livello logico basso<br />
  tx_write[0] = (Byte)(0x00);<br />
  //eseguo il comando<br />
  expanderPCF8574.Execute(wt_write, 10);</p>
<p>  Thread.Sleep(1000);</p>
<p>  //imposto tutte le porte a livello logico alto<br />
  tx_write[0] = (Byte)(0xFF);<br />
  //eseguo il comando<br />
  expanderPCF8574.Execute(wt_write, 10);</p>
<p>  Thread.Sleep(1000);<br />
}<br />
[/csharp]</p>
<h3>Leggere lo stato delle porte</h3>
<p>la lettura dello stato delle porte del PCF8574AP avviene eseguendo il comando relativo all&#8217;oggetto i2creadtransaction:</p>
<p>[csharp]<br />
while (true)<br />
{<br />
  //eseguo il comando<br />
  expanderPCF8574.Execute(rt_data, 10);</p>
<p>  Debug.Print(tx_read[0].ToString());</p>
<p>  Thread.Sleep(1000);<br />
}<br />
[/csharp]</p>
<p>Anche utilizzando <strong>Netduino</strong> i comandi da eseguire per utilizzare il <strong>PCF8574AP</strong> sono molto semplici ed intuitivi.</p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-utilizzare-pcf8574ap-port-expander/">Netduino, utilizzare il PCF8574AP</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/netduino-utilizzare-pcf8574ap-port-expander/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>Netduino impiegare la memoria 24LC256</title>
		<link>https://logicaprogrammabile.it/netduino-impiegare-la-memoria-24lc256/</link>
					<comments>https://logicaprogrammabile.it/netduino-impiegare-la-memoria-24lc256/#respond</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Thu, 16 Jan 2014 12:49:22 +0000</pubDate>
				<category><![CDATA[Tutorial Netduino]]></category>
		<category><![CDATA[bus]]></category>
		<category><![CDATA[I2C]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=4010</guid>

					<description><![CDATA[<p>Come usare la memoria 24LC256 con Netduino dopo aver scritto l&#8217;articolo sull&#8217;utilizzo della memoria 24LC256 utilizzando una scheda Arduino ho realizzato questo piccolo tutorial per tutti gli utenti che possiedono una scheda Netduino. La parte teorica e lo schema elettrico del circuito rimangono invariati, l&#8217;unica...</p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-impiegare-la-memoria-24lc256/">Netduino impiegare la memoria 24LC256</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Come usare la memoria 24LC256 con Netduino</h3>
<p>dopo aver scritto<a title="24LC256 utilizzare una memoria seriale su bus I2C" href="https://logicaprogrammabile.it/2014/utilizzare-una-memoria-seriale-24lc256/"> l&#8217;articolo sull&#8217;utilizzo della memoria 24LC256</a> utilizzando una scheda <strong>Arduino</strong> ho realizzato questo piccolo tutorial per tutti gli utenti che possiedono una scheda <strong>Netduino</strong>.<br />
La parte teorica e lo schema elettrico del circuito rimangono invariati, l&#8217;unica ovvia differenza è la scrittura del codice che in questo caso si basa sul <strong>linguaggio C#</strong>.</p>
<p><span id="more-4010"></span></p>
<p>Questo è il codice:</p>
<p>[csharp]<br />
//buffer per memorizzare indirizzi<br />
//e dati<br />
Byte[] tx_write = new Byte[3];<br />
Byte[] tx_read = new Byte[2];<br />
Byte[] rx_data = new Byte[1];</p>
<p>Int16 indirizzo = 0;<br />
Byte data = 0;<br />
Int32 ciclo = 0;</p>
<p>//creo un oggetto per usare il led onboard<br />
OutputPort led = new OutputPort(Pins.ONBOARD_LED, false);</p>
<p>//accendo il led onboard<br />
led.Write(true);</p>
<p>//Configurazione contenente l&#8217;indirizzo della memoria 24LC256<br />
//e la frequenza del bus i2c<br />
I2CDevice.Configuration cnf = new I2CDevice.Configuration(0x50, 100);</p>
<p>//Creo un oggetto per eseguire le richieste di lettura e scrittura<br />
I2CDevice mem24LC256 = new I2CDevice(cnf);</p>
<p>//creo un oggetto I2CReadTransaction che viene associato al buffer rx_data<br />
//il buffer tx viene utilizzato per contenere i dati letti dalla memoria 24LC256<br />
I2CDevice.I2CReadTransaction[] rt_data = new<br />
    I2CDevice.I2CReadTransaction[] { I2CDevice.CreateReadTransaction(rx_data) };</p>
<p>//creo un oggetto I2CWriteTransaction che viene associato al buffere tx_write<br />
//il buffer tx viene utilizzato per spedire i due byte dell&#8217;indirizzo della<br />
//locazione di memoria che vogliamo utilizzare e il byte contenente il dato<br />
//da memorizzare nella memoria<br />
I2CDevice.I2CWriteTransaction[] wt_write = new<br />
    I2CDevice.I2CWriteTransaction[] { I2CDevice.CreateWriteTransaction(tx_write) };</p>
<p>//creo un oggetto I2CWriteTransaction che viene associato al buffere tx_read<br />
//il buffer tx_read viene utilizzato per selezionare la locazione di memoria<br />
//da cui vogliamo leggere il contenuto<br />
I2CDevice.I2CWriteTransaction[] wt_read = new<br />
    I2CDevice.I2CWriteTransaction[] { I2CDevice.CreateWriteTransaction(tx_read) };</p>
<p>//info di debug<br />
Debug.Print(&quot;START Scrittura&quot;);</p>
<p>//eseguo un ciclo per memorizzare dati in tutti e 32KB<br />
for(ciclo = 0; ciclo &lt; 32000; ciclo++)<br />
{<br />
    //compongo il buffer con l&#8217;indirizzo di memoria<br />
    //che voglio utilizzare ed il dato che voglio<br />
    //scrivere al suo interno<br />
    tx_write[0] = (Byte)((indirizzo &gt;&gt; 8) &amp; 0xff);<br />
    tx_write[1] = (Byte)(indirizzo &amp; 0xff);<br />
    tx_write[2] = data;</p>
<p>    //eseguo il comando<br />
    mem24LC256.Execute(wt_write, 10);</p>
<p>    //incremento il valore di data e lo resetto<br />
    //quando raggiunge il valore 255<br />
    data++;</p>
<p>    if (data == 255)<br />
        data = 0;</p>
<p>    //incremento il valore della<br />
    //locazione di memoria da usare<br />
    indirizzo++;</p>
<p>}</p>
<p>Debug.Print(&quot;Fine Scrittura&quot;);</p>
<p>//attendo 1 secondo<br />
Thread.Sleep(1000);</p>
<p>Debug.Print(&quot;Inizio lettura&quot;);</p>
<p>//resetto il valore dell&#8217;indirizzo<br />
indirizzo = 0;</p>
<p>for (ciclo = 0; ciclo &lt; 32000; ciclo++)<br />
{<br />
    //utilizzo il buffer tx_read per caricare<br />
    //l&#8217;indirizzo della locazione di memoria da dove<br />
    //leggere i dati<br />
    tx_read[0] = (Byte)((indirizzo &gt;&gt; 8) &amp; 0xff);<br />
    tx_read[1] = (Byte)(indirizzo &amp; 0xff);</p>
<p>    //eseguo il comando<br />
    mem24LC256.Execute(wt_read, 10);</p>
<p>    //attendo 5 ms<br />
    Thread.Sleep(5);</p>
<p>    //ora eseguo il comando per leggere i dati dalla<br />
    //locazione di memoria precedentemente selezionata<br />
    //il dato letto viene memorizzato nelbuffer rx_data<br />
    mem24LC256.Execute(rt_data, 10);</p>
<p>    //printo l&#8217;indirizzo della locazione di memoria corrente<br />
    //ed il suo contenuto<br />
    Debug.Print(indirizzo.ToString() + &quot;:&quot; + rx_data[0].ToString());</p>
<p>    //incremento il valore della<br />
    //locazione di memoria da usare<br />
    indirizzo++;<br />
}</p>
<p>Debug.Print(&quot;Fine lettura&quot;);</p>
<p>//spengo il led onboard a fine lettura<br />
led.Write(false);</p>
<p>[/csharp]</p>
<p>Il codice è ricco di commenti che spiegano cosa eseguono le istruzioni!</p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-impiegare-la-memoria-24lc256/">Netduino impiegare la memoria 24LC256</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/netduino-impiegare-la-memoria-24lc256/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Netduino Plus 2 Speed Test</title>
		<link>https://logicaprogrammabile.it/netduino-plus-2-speed-test/</link>
					<comments>https://logicaprogrammabile.it/netduino-plus-2-speed-test/#respond</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Thu, 17 Jan 2013 11:29:23 +0000</pubDate>
				<category><![CDATA[Tutorial Netduino]]></category>
		<category><![CDATA[.Net micro framework]]></category>
		<category><![CDATA[Speed Test]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=3249</guid>

					<description><![CDATA[<p>Velocità di commutazione del nuovo Netduino Plus 2 Eccoci nuovamente al mio classico speed test per misurare la frequenza massima ottenibile dalla commutazione continua di un singolo pin. La scheda in esame è il nuovo Netduino Plus 2 basato sulla cpu STmicro STM32F4 operante a...</p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-plus-2-speed-test/">Netduino Plus 2 Speed Test</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Velocità di commutazione del nuovo Netduino Plus 2</h3>
<p>Eccoci nuovamente al mio classico speed test per misurare la frequenza massima ottenibile dalla commutazione continua di un singolo pin.</p>
<p><img decoding="async" class="aligncenter size-full wp-image-3255" src="https://logicaprogrammabile.it/wp-content/uploads/2013/01/Netduino_Plus_2.png" alt="Netduino Plus 2" width="225" height="168" /><span id="more-3249"></span></p>
<p>La scheda in esame è il nuovo <strong>Netduino Plus 2</strong> basato sulla cpu <strong>STmicro STM32F4</strong> operante a <strong>168Mhz</strong>. Sicuramente l&#8217;incremento di frequenza ha permesso maggiori prestazioni ma il risultato è ben lontano dai 125KHz ottenuti dall&#8217;<strong>Arduino UNO,</strong> infatti la frequenza misurata è di <strong>44.27 KHz,</strong> che paragonata alla prima versione della scheda (quella basata sulla cpu AT91SAM7 operante a 48MHz), è comunque un ottimo risultato che fa ben sperare in evoluzioni future e miglioramenti prestazionali nell&#8217;archittetura <strong>.Net micro framework</strong>.</p>
<p>Di seguito la tabella aggiornata degli speed test delle board che ho provato</p>
<table>
<tbody>
<tr>
<td><strong>Tipo Scheda</strong></td>
<td><strong>Frequenza di commutazione</strong></td>
</tr>
<tr>
<td>Arduino UNO</td>
<td>125 KHz</td>
</tr>
<tr>
<td>Arduino LEONARDO</td>
<td>106 KHz</td>
</tr>
<tr>
<td>FEZ Panda II</td>
<td>12.7 KHz</td>
</tr>
<tr>
<td>Netduino Plus 2</td>
<td>44.27 KHz</td>
</tr>
<tr>
<td>Netduino</td>
<td>8.4 KHz</td>
</tr>
</tbody>
</table>
<p>Questo invece lo screen shot della schermata dell&#8217;oscilloscopio</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-3259" src="https://logicaprogrammabile.it/wp-content/uploads/2013/01/TEK00010.png" alt="Netduino Plus 2 Test toggle pin" width="640" height="480" srcset="https://logicaprogrammabile.it/wp-content/uploads/2013/01/TEK00010.png 640w, https://logicaprogrammabile.it/wp-content/uploads/2013/01/TEK00010-300x225.png 300w" sizes="auto, (max-width: 640px) 100vw, 640px" /></p>
<p>The post <a href="https://logicaprogrammabile.it/netduino-plus-2-speed-test/">Netduino Plus 2 Speed Test</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/netduino-plus-2-speed-test/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>FEZ Cobra esperienze e considerazioni</title>
		<link>https://logicaprogrammabile.it/fez-cobra-esperienze-considerazioni/</link>
					<comments>https://logicaprogrammabile.it/fez-cobra-esperienze-considerazioni/#comments</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Tue, 04 Sep 2012 12:21:41 +0000</pubDate>
				<category><![CDATA[Tutorial Netduino]]></category>
		<category><![CDATA[.Net micro framework]]></category>
		<category><![CDATA[FEZ]]></category>
		<category><![CDATA[FEZ Cobra]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=3040</guid>

					<description><![CDATA[<p>Esperienze personali con la FEZ Cobra Circa 5 mesi fà ho realizzato un lettore badge basato sulla FEZ Cobra prodotta da GHI Electronics. Il prodotto è costituito da un display lcd, una tastiera numerica e un lettore rfid, ed è parte di un controllo accessi...</p>
<p>The post <a href="https://logicaprogrammabile.it/fez-cobra-esperienze-considerazioni/">FEZ Cobra esperienze e considerazioni</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Esperienze personali con la FEZ Cobra</h3>
<p><img loading="lazy" decoding="async" class="aligncenter size-medium wp-image-3043" title="FEZ Cobra" src="https://logicaprogrammabile.it/wp-content/uploads/2012/09/FEZCobra-300x247.jpg" alt="ghi fez cobra" width="300" height="247" srcset="https://logicaprogrammabile.it/wp-content/uploads/2012/09/FEZCobra-300x247.jpg 300w, https://logicaprogrammabile.it/wp-content/uploads/2012/09/FEZCobra.jpg 800w" sizes="auto, (max-width: 300px) 100vw, 300px" /></p>
<p>Circa 5 mesi fà ho realizzato un lettore badge basato sulla<a href="http://www.ghielectronics.com/catalog/product/131#" target="_blank"> <strong>FEZ Cobra</strong></a> prodotta da GHI Electronics. Il prodotto è costituito da un display lcd, una tastiera numerica e un lettore rfid, ed è parte di un controllo accessi funzionante 24 ore su 24 7 giorni su 7.<br />
Prima della sua messa in opera, ho seguito alcuni test &#8220;indoor&#8221; per verificarne la stabilità, e non ho avuto nessun tipo di problema sennonché il microprocessore della <strong>Cobra</strong> riscalda parecchio, nonostante il programma non esegua compiti gravosi.<br />
Questo fatto mi ha preoccupato in quanto il lettore è posizionato in un passaggio carrabile ed è esposto ai raggi solari per quasi tutto il giorno, e visto che la scheda è racchiusa in un involucro a tenuta stagna e non avendo la possibilità di inserire un sistema di raffreddamento che mi permettesse di abbassare la temperatura interna, temevo ad un malfunzionamento del dispositivo.</p>
<p>Anche l&#8217;estate non è stata clemente, qui in Sardegna abbiamo raggiunto temperature di 38-40° all&#8217;ombra, di conseguenza la Cobra è stata sottoposta a temperature di lavoro quasi estreme e sinceramente mi aspettavo da un giorno all&#8217;altro la sua rottura.</p>
<p>Invece con mia grande sorpresa la <strong>FEZ Cobra</strong> sta ancora funzionando perfettamente dopo circa 3500 ore di lavoro continuo senza aver mai dato problemi di nessun tipo.</p>
<p>Certamente un solo pezzo non è sufficiente per fare una valutazione completa di questo prodotto ma viste le estreme condizioni a cui ho sottoposto la Cobra devo dire che ne sono rimasto davvero soddisfatto. Questo mi rende anche più fiducioso nel realizzare dei prodotti basati sul .Net micro framework vista la stabilità software che ho ottenuto in questo progetto.</p>
<p>The post <a href="https://logicaprogrammabile.it/fez-cobra-esperienze-considerazioni/">FEZ Cobra esperienze e considerazioni</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/fez-cobra-esperienze-considerazioni/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Caricare nuovo firmware 4.2 sul Netduino</title>
		<link>https://logicaprogrammabile.it/caricare-nuovo-firmware-42-netduino/</link>
					<comments>https://logicaprogrammabile.it/caricare-nuovo-firmware-42-netduino/#respond</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Wed, 29 Aug 2012 07:40:33 +0000</pubDate>
				<category><![CDATA[Tutorial Netduino]]></category>
		<category><![CDATA[.Net micro framework]]></category>
		<category><![CDATA[Firmware]]></category>
		<category><![CDATA[Netduino]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=3002</guid>

					<description><![CDATA[<p>Come uploadare il firmware compatibile con il .Net micro framework 4.2 sul Netduino Dopo aver caricato il nuovo bootloader sul nostro Netduino non ci resta che caricare il firmware 4.2 per rendere la scheda operativa. Questa operazione deve essere eseguita utilizzando il tools MFdeploy contenuto...</p>
<p>The post <a href="https://logicaprogrammabile.it/caricare-nuovo-firmware-42-netduino/">Caricare nuovo firmware 4.2 sul Netduino</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Come uploadare il firmware compatibile con il .Net micro framework 4.2 sul Netduino</h3>
<p>Dopo aver caricato il <a title="Aggiornare le schede Netduino alla versione 4.2 del .Net MF" href="https://logicaprogrammabile.it/aggiornare-netduino-versione-42-net-micro-framework/">nuovo bootloader sul nostro Netduino</a> non ci resta che caricare il <strong>firmware 4.2</strong> per rendere la scheda operativa. Questa operazione deve essere eseguita utilizzando il tools<strong> MFdeploy</strong> contenuto nella cartella di installazione del <strong>.Net Micro framework 4.2</strong> (che dovete installare precedentemente).<br />
L&#8217;utility si trova, se avete fatto l&#8217;installazione standard, nella cartella C:\Program Files\Microsoft .NET Micro Framework\v4.2\Tools</p>
<p>Una volta avviato MFdeploy, tramite il blocco <strong>Device</strong>, dobbiamo selezionare il Netduino (precedentemente collegato alla porta USB del PC), utilizzando come canale di collegamento la voce USB. Automaticamente otterremmo nella casella di testo adiacente la voce<strong> Netduino_Netduino</strong>. Verifichiamo, utilizzando il pulsante <strong>Ping</strong>, che la comunicazione tra PC e Netduino sia attiva e funzionante.</p>
<p><span id="more-3002"></span></p>
<p>Nel blocco<strong> Image File</strong> clicchiamo sul pulsante<strong> Browse&#8230;</strong> per selezionare sul nostro disco locale, il due file che compongono il firmware (ER_CONFIG, ER_FLASH) da scrivere sul Netduino.<br />
Cliccando sul pulsante <strong>Deploy</strong> avvieremmo la scrittura, l&#8217;operazione richiede qualche minuto.</p>
<p><span style="text-decoration: underline;">Al termine scolleghiamo il Netduino dalla porta USB e ricolleghiamolo dopo qualche istante.</span></p>
<p>Verifichiamo le informazioni del nuovo firmware tramite il menu <strong>Target-&gt;Device Capabilities</strong>, sempre tramite MFdeploy, per accertarci chel&#8217;operazione sia stata eseguita correttamente.</p>
<p>Le immagini seguenti mostrano tutte le fasi descritte precedentemente</p>
<div class="post-content-gallery justify columns3" data-justify="180"></div>
<p>The post <a href="https://logicaprogrammabile.it/caricare-nuovo-firmware-42-netduino/">Caricare nuovo firmware 4.2 sul Netduino</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/caricare-nuovo-firmware-42-netduino/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Aggiornare le schede Netduino alla versione 4.2 del .Net MF</title>
		<link>https://logicaprogrammabile.it/aggiornare-netduino-versione-42-net-micro-framework/</link>
					<comments>https://logicaprogrammabile.it/aggiornare-netduino-versione-42-net-micro-framework/#comments</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Tue, 28 Aug 2012 13:44:43 +0000</pubDate>
				<category><![CDATA[Tutorial Netduino]]></category>
		<category><![CDATA[.Net micro framework]]></category>
		<category><![CDATA[Netduino]]></category>
		<category><![CDATA[SAM-BA]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=2938</guid>

					<description><![CDATA[<p>Come caricare il bootloader e il firmware sul Netduino Con il rilascio della nuova versione del .Net micro framework 4.2 (QFE2) la Secret Labs ha rilasciato un nuovo bootloader e un nuovo firmware per le board Netduino, Netduino Plus e Netduino Mini. Viste le molte...</p>
<p>The post <a href="https://logicaprogrammabile.it/aggiornare-netduino-versione-42-net-micro-framework/">Aggiornare le schede Netduino alla versione 4.2 del .Net MF</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Come caricare il bootloader e il firmware sul Netduino</h3>
<p>Con il rilascio della nuova versione del <a href="http://netmf.codeplex.com/releases/view/91594" target="_blank">.Net micro framework 4.2 (QFE2)</a> la <strong>Secret Labs</strong> ha rilasciato un nuovo bootloader e un nuovo firmware per le board <strong>Netduino</strong>, <strong>Netduino Plus</strong> e <strong>Netduino Mini</strong>. Viste le molte novità e migliorie della versione 4.2 consiglio vivamente l&#8217;upgrade delle board.</p>
<p>Le procedure principali sono le seguenti</p>
<ol>
<li>Ricaricare il nuovo bootloader</li>
<li>Ricaricare il nuovo firmware</li>
</ol>
<p>Prima di iniziare dobbiamo scaricare i seguenti software</p>
<ul>
<li><a href="http://forums.netduino.com/index.php?/topic/5115-netduino-firmware-v420/" target="_blank">Firmware 4.2 del Netduino</a> (Contenente anche il nuovo bootloader)</li>
<li><a href="http://forums.netduino.com/index.php?/topic/4-netduino-drivers/" target="_blank">Driver Netduino</a> (Necessario per installare la scheda dop aver caricato il bootloader)</li>
<li><a href="http://netmf.codeplex.com/releases/view/91594" target="_blank">.Net Micro Framework 4.2</a></li>
<li><a href="http://www.atmel.com/tools/ATMELSAM-BAIN-SYSTEMPROGRAMMER.aspx" target="_blank">Atmel SAM-BA versione 2.12 o superiore</a> (Contiene il software ed il driver del chip AT91SAM7X512-ex)</li>
</ul>
<p><span id="more-2938"></span></p>
<p>Installiamo il software<strong> SAM-BA</strong> che useremmo per caricare il bootloader. Di seguito alcuni screen shot dell&#8217;installazione</p>
<div class="post-content-gallery justify columns3" data-justify="180"></div>
<p>Scarichiamo il pacchetto zip contenente il firmware ed il bootloader. Teniamo da parte il file <strong>TinyBooterDecompressor.bin</strong> che caricheremo sul microcontrollore.</p>
<p>Eseguiamo la cancellazione del firmware e del bootloader del <strong>Netduino</strong> utilizzando un filo elettrico che, dal pin 3.3V andrà collegato al piccolo quadrato dorato vicino al pin0.<br />
Alimentiamo per qualche istante il Netduino (tramite USB o alimentazione esterna) tenendo sempre collegato filo sul pad dorato. Togliamo alimentazione. Il nostro dispositivo è ora privo di firmware e di bootloader.</p>
<p>Ricollegando Il Netduino verrà avviata la ricerca <strong>Nuovo Hardware</strong>, annulliamo questa operazione per caricare manualmente i driver del microcontrolloare AT91SAM7X512-ek.</p>
<p>Le seguenti figure mostrano il processo di installazione della scheda</p>
<div class="post-content-gallery justify columns3" data-justify="180"></div>
<p>Una volta che il dispositivo è stato riconosciuto da Windows 7  possiamo caricare il nuovo bootloader.</p>
<p>Clicchiamo sull&#8217;icona SAM-BA v2.12. Nella prima schermata dobbiamo selezionare, alla voce <strong>Select the connection</strong> la porta <strong>COM</strong> dove è collegato il dispositivo, alla voce<strong> Select your board</strong> selezioniamo il chip<strong> AT91SAM7X512-ek</strong>. Clicchiamo sul pulsante <strong>connect</strong>.<br />
Caricata la finestra principale del programma SAM-BA, bisogna, per prima, eseguire due script. Selezioniamo nel blocco <strong>Script</strong> la voce<strong> Boot from flash (GPNVM2)</strong>, clicchiamo sul pulsante <strong>Execute</strong>, successivamente selezioniamo lo script <strong>Enable Flash Access,</strong> clicchiamo sempre su <strong>Execute</strong>.</p>
<p>Ora nel blocco <strong>Download/Upload file</strong>, selezioniamo dalla casella<strong> Send file Name</strong> il file <strong>TinyBooterDecompressor.bin</strong> precedentemente messo da parte sul nostro PC, clicchiamo sul pulsante <strong>Send File</strong>. Dopo qualche istante apparirà una finestra popup per richiedere il <strong>Lock Region</strong>, clicchiamo sul pulsante <strong>NO</strong>.</p>
<p>Se non si verificano errori il bootloader è stato scritto correttamente sul microcontrollore.</p>
<p>Le immagini seguenti mostrano il processo:</p>
<div class="post-content-gallery justify columns3" data-justify="180"></div>
<p>A questo punto scolleghiamo la scheda dalla porta usb per poi ricollegarla dopo qualche istante. Nuovamente verrà avviata l&#8217;installazione nuovo hardware relativa alla scheda Netduino. Seguiamo i passi rappresentati nelle seguenti figure per installare i driver della scheda Netduino:</p>
<div class="post-content-gallery justify columns3" data-justify="180"></div>
<p>Nel prossimo articolo vedremmo come caricare il nuovo firmware.</p>
<p>The post <a href="https://logicaprogrammabile.it/aggiornare-netduino-versione-42-net-micro-framework/">Aggiornare le schede Netduino alla versione 4.2 del .Net MF</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/aggiornare-netduino-versione-42-net-micro-framework/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Controllo accessi rfid con Netduino</title>
		<link>https://logicaprogrammabile.it/controllo-accessi-rfid-netduino/</link>
					<comments>https://logicaprogrammabile.it/controllo-accessi-rfid-netduino/#comments</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Wed, 13 Jun 2012 13:04:09 +0000</pubDate>
				<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Tutorial Netduino]]></category>
		<category><![CDATA[Controllo Accessi]]></category>
		<category><![CDATA[ID-12]]></category>
		<category><![CDATA[RFID]]></category>
		<category><![CDATA[Tag]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=2837</guid>

					<description><![CDATA[<p>Realizzare un semplice apri porta utilizzando tag rfid La realizzazione di sistemi basati sulla tecnologia rfid è oggi alla portata di tutti vista la disponibilità di componenti a basso costo necessaria alla produzione di un prodotto completo. Il prototipo che ho realizzato per questo articolo...</p>
<p>The post <a href="https://logicaprogrammabile.it/controllo-accessi-rfid-netduino/">Controllo accessi rfid con Netduino</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Realizzare un semplice apri porta utilizzando tag rfid</h3>
<p>La realizzazione di sistemi basati sulla <strong>tecnologia rfid</strong> è oggi alla portata di tutti vista la disponibilità di componenti a basso costo necessaria alla produzione di un prodotto completo. Il prototipo che ho realizzato per questo articolo si basa principalmente su un Netduino, versione standard, e sul lettore rfid<strong> ID-12</strong> della <strong>Innovations</strong>, utilizzato in un <a title="Netduino gestire lettore RFID ID-12" href="https://logicaprogrammabile.it/netduino-gestire-lettore-rfid-id-12/">precedente articolo</a>.</p>
<p>Lo scopo del progetto è quello di permettere l&#8217;accesso controllato in una particolare area utilizzando unicamente il <strong>Netduino</strong> per memorizzare una lista di utenti autorizzati. In caso di riconoscimento il circuito azionare un classico relè che potrebbe essere collegato ad un apri porta elettromeccanico tipico dei sistemi citofonici.</p>
<p><span id="more-2837"></span></p>
<p>Il circuito è il seguente:</p>
<p style="text-align: center;"><a href="https://logicaprogrammabile.it/controllo-accessi-rfid-netduino/apriportasalaapp_bb-2/" rel="attachment wp-att-2844"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-2844" title="ApriportaSalaApp_bb" src="https://logicaprogrammabile.it/wp-content/uploads/2012/06/ApriportaSalaApp_bb1.png" alt="" width="478" height="492" srcset="https://logicaprogrammabile.it/wp-content/uploads/2012/06/ApriportaSalaApp_bb1.png 478w, https://logicaprogrammabile.it/wp-content/uploads/2012/06/ApriportaSalaApp_bb1-291x300.png 291w" sizes="auto, (max-width: 478px) 100vw, 478px" /></a></p>
<p>Per quanto riguarda il codice caricato sul Netduino osserviamo che i codici dei tag rfid sono memorizzati in un array di stringhe. Questi valori vengono confrontati con il codice ottenuto dal lettore ID-12 e quando si verifica un&#8217;uguaglianza viene attivato il relè che andrà a comandare l&#8217;apri porta.<br />
Nel codice è presente anche il calcolo del crc che permette di ottenere una maggiore sicurezza nella lettura ed interpretazione del codice del tag.</p>
<p>[csharp]<br />
public static Byte ConvHexToByte(String Value)<br />
{<br />
  if (Value.Length == 2)<br />
  {<br />
    String str1 = Value.Substring(0, 1);<br />
    String str2 = Value.Substring(1, 1);</p>
<p>    if (str1.ToUpper() == &quot;A&quot;)<br />
      str1 = &quot;10&quot;;</p>
<p>    if (str1.ToUpper() == &quot;B&quot;)<br />
      str1 = &quot;11&quot;;</p>
<p>    if (str1.ToUpper() == &quot;C&quot;)<br />
      str1 = &quot;12&quot;;</p>
<p>    if (str1.ToUpper() == &quot;D&quot;)<br />
      str1 = &quot;13&quot;;</p>
<p>    if (str1.ToUpper() == &quot;E&quot;)<br />
      str1 = &quot;14&quot;;</p>
<p>    if (str1.ToUpper() == &quot;F&quot;)<br />
      str1 = &quot;15&quot;;</p>
<p>    //###########################<br />
    if (str2.ToUpper() == &quot;A&quot;)<br />
      str2 = &quot;10&quot;;</p>
<p>    if (str2.ToUpper() == &quot;B&quot;)<br />
      str2 = &quot;11&quot;;</p>
<p>    if (str2.ToUpper() == &quot;C&quot;)<br />
      str2 = &quot;12&quot;;</p>
<p>    if (str2.ToUpper() == &quot;D&quot;)<br />
      str2 = &quot;13&quot;;</p>
<p>    if (str2.ToUpper() == &quot;E&quot;)<br />
      str2 = &quot;14&quot;;</p>
<p>    if (str2.ToUpper() == &quot;F&quot;)<br />
      str2 = &quot;15&quot;;</p>
<p>    //converto i singoli caratteri in valori byte<br />
    Byte b1 = Byte.Parse(str1);<br />
    Byte b2 = Byte.Parse(str2);<br />
    //onverto i duebyte in un valore hex<br />
    Byte cv = (Byte)(b1 * 16 + b2);</p>
<p>    //Debug.Print(cv.ToString());<br />
    return cv;</p>
<p>  }</p>
<p>  return 0;</p>
<p>}</p>
<p>public static void Main()<br />
{</p>
<p>  String[] Codice = { &quot;06003906B1&quot;,<br />
                      &quot;060030EF42&quot;,<br />
                      &quot;060039EF42&quot;,<br />
                      &quot;060038EF42&quot;,<br />
                      &quot;060037EF42&quot;,<br />
                      &quot;060036EF42&quot;,<br />
                      &quot;060035EF42&quot;,<br />
                      &quot;060034EF42&quot;,<br />
                      &quot;060033EF42&quot;,<br />
                      &quot;060032EF42&quot;,<br />
                      &quot;060031EF42&quot;,<br />
                      &quot;060038EF02&quot;,<br />
                      &quot;060038EF92&quot;,<br />
                      &quot;060038EF82&quot;,<br />
                      &quot;060038EF72&quot;,<br />
                    };</p>
<p>  //Creao un oggetto per lavorare con<br />
  //la porta seriale<br />
  SerialPort sp = new SerialPort(&quot;COM1&quot;, 9600, Parity.None, 8, StopBits.One);<br />
  OutputPort led = new OutputPort(Pins.ONBOARD_LED, false);<br />
  OutputPort Porta = new OutputPort(Pins.GPIO_PIN_D7, false);<br />
  OutputPort LedAut = new OutputPort(Pins.GPIO_PIN_D8, false);<br />
  OutputPort LedNoAut = new OutputPort(Pins.GPIO_PIN_D9, false);</p>
<p>  //Apro la porta<br />
  sp.Open();</p>
<p>  while (true)<br />
  {<br />
    //Attesa di 200 millisecondi<br />
    Thread.Sleep(200);</p>
<p>    //aspetto la lettura di tutti i 16 byte<br />
    if (sp.BytesToRead == 16)<br />
    {<br />
      led.Write(true);<br />
      //creo un buffer di 16 byte<br />
      Byte[] b = new Byte[sp.BytesToRead];<br />
      Byte[] crcTag = new Byte[2];<br />
      Byte[] tag = new Byte[10];<br />
      Byte Hex01, Hex02, Hex03, Hex04, Hex05, crcRfid, crc;</p>
<p>      //leggo dalla seriale i dati inviati dall&#8217;ID-12<br />
      sp.Read(b, 0, b.Length);</p>
<p>      //copio i 10 byte dell&#8217;ID del tag in un array dedicato<br />
      Array.Copy(b, 1, tag, 0, 10);<br />
      Array.Copy(b, 11, crcTag, 0, 2);</p>
<p>      //converto i byte in una stringa ASCII<br />
      String ValoriAsc = new String(UTF8Encoding.UTF8.GetChars(tag));<br />
      String ValoreCrc = new String(UTF8Encoding.UTF8.GetChars(crcTag));</p>
<p>      //ottengo i valori esadecimali dalla coppia di byte Ascii<br />
      Hex01 = ConvHexToByte(ValoriAsc.Substring(0, 2));<br />
      Hex02 = ConvHexToByte(ValoriAsc.Substring(2, 2));<br />
      Hex03 = ConvHexToByte(ValoriAsc.Substring(4, 2));<br />
      Hex04 = ConvHexToByte(ValoriAsc.Substring(6, 2));<br />
      Hex05 = ConvHexToByte(ValoriAsc.Substring(8, 2));<br />
      crcRfid = ConvHexToByte(ValoreCrc.Substring(0, 2));</p>
<p>      //calcolo il crc mettendo in xor i valori hex<br />
      crc = (byte)(Hex01 ^ Hex02 ^ Hex03 ^ Hex04 ^ Hex05);</p>
<p>      //printo il valore di crc<br />
      Debug.Print(crcRfid.ToString());<br />
      Debug.Print(crc.ToString());</p>
<p>      if (crcRfid == crc)<br />
      {<br />
        //eseguo un ciclo che mi printa tutti i singoli<br />
        //byte del buffer<br />
        Int32 strNumber;<br />
        Int32 strIndex = 0;<br />
        Boolean Acc = false;</p>
<p>        for (strNumber = 0; strNumber &lt; Codice.Length; strNumber++)<br />
        {<br />
          strIndex = Codice[strNumber].IndexOf(ValoriAsc);<br />
          if (strIndex &gt;= 0)<br />
          {<br />
            Porta.Write(true);<br />
            Thread.Sleep(100);<br />
            Porta.Write(false);</p>
<p>            LedAut.Write(true);<br />
            Thread.Sleep(200);<br />
            LedAut.Write(false);</p>
<p>            Acc = true;</p>
<p>            break;</p>
<p>          }<br />
        }</p>
<p>        if (Acc == false)<br />
        {<br />
          LedNoAut.Write(true);<br />
          Thread.Sleep(200);<br />
          LedNoAut.Write(false);<br />
        }</p>
<p>      }<br />
      Debug.Print(ValoriAsc);</p>
<p>      Thread.Sleep(150);<br />
      led.Write(false);<br />
    }<br />
  }<br />
}</p>
<p>[/csharp]</p>
<p>Il codice per far funzionare il sistema è molto semplice. Con poco hardware è con una spesa inferiore ai 100€ possiamo costruire veramente prodotti basati su tecnologia rfid. Sostituendo il Netduino con il fratello maggiore (Netduino Plus) potremmo dotare il sistema di una memoria SD per il log degli accessi ed un webserver per leggere i file di log.</p>
<p>The post <a href="https://logicaprogrammabile.it/controllo-accessi-rfid-netduino/">Controllo accessi rfid con Netduino</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/controllo-accessi-rfid-netduino/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Calcolare il checksum del tag tramite lettore RFID ID-12 (versione vb.net)</title>
		<link>https://logicaprogrammabile.it/calcolare-il-checksum-tag-lettore-rfid-id12/</link>
					<comments>https://logicaprogrammabile.it/calcolare-il-checksum-tag-lettore-rfid-id12/#respond</comments>
		
		<dc:creator><![CDATA[Marco Lai]]></dc:creator>
		<pubDate>Tue, 25 Oct 2011 10:29:38 +0000</pubDate>
				<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Tutorial Netduino]]></category>
		<category><![CDATA[Controllo Accessi]]></category>
		<category><![CDATA[Netduino]]></category>
		<category><![CDATA[RFID]]></category>
		<guid isPermaLink="false">https://logicaprogrammabile.it/?p=2150</guid>

					<description><![CDATA[<p>Programmare il Netduino con codice vb.net per calcolare il checksum del tag RFID Per chi lavora con vb.net vi allego il codice scritto da Alberto De Luca che gentilmente mi ha concesso per condividerlo con voi. Il listato seguente esegue il calcolo del checksum del...</p>
<p>The post <a href="https://logicaprogrammabile.it/calcolare-il-checksum-tag-lettore-rfid-id12/">Calcolare il checksum del tag tramite lettore RFID ID-12 (versione vb.net)</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h1>Programmare il Netduino con codice vb.net per calcolare il checksum del tag RFID</h1>
<p><a href="https://logicaprogrammabile.it/wp-content/uploads/2011/04/TagRfid.jpg"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1029" title="TagRfid" src="https://logicaprogrammabile.it/wp-content/uploads/2011/04/TagRfid.jpg" alt="" width="181" height="185" /></a></p>
<p>Per chi lavora con <strong>vb.net</strong> vi allego il codice scritto da <strong>Alberto De Luca</strong> che gentilmente mi ha concesso per condividerlo con voi. Il listato seguente esegue il calcolo del checksum<br />
del tag acquisito con il lettore RFID ID-12 come <a href="https://logicaprogrammabile.it/calcolare-il-crc-tag-netduino-lettore-rfid-id12/" target="_blank">spiegato nell&#8217;articolo precedente</a>.</p>
<p><span id="more-2150"></span></p>
<pre class="lang:vbnet decode:true ">Public Shared Function VerifyCheckSum(b As Byte()) As Boolean

Dim RetValue As Boolean
Dim tag As [Byte]() = New [Byte](9) {}
Dim Hex01 As [Byte], Hex02 As [Byte], Hex03 As [Byte],
Hex04 As [Byte], Hex05 As [Byte], crc As [Byte]

Array.Copy(b, 1, tag, 0, 10)

Dim ValoriAsc As New [String](UTF8Encoding.UTF8.GetChars(tag))

Hex01 = ConvHexToByte(ValoriAsc.Substring(0, 2))
Hex02 = ConvHexToByte(ValoriAsc.Substring(2, 2))
Hex03 = ConvHexToByte(ValoriAsc.Substring(4, 2))
Hex04 = ConvHexToByte(ValoriAsc.Substring(6, 2))
Hex05 = ConvHexToByte(ValoriAsc.Substring(8, 2))

crc = CByte(Hex01 Xor Hex02 Xor Hex03 Xor Hex04 Xor Hex05)

Debug.Print(crc.ToString())

RetValue = (b(0) = &amp;H2 AndAlso b(13) = &amp;HD AndAlso b(14) = &amp;HA AndAlso b(15) = &amp;H3)

Return RetValue

End Function

Private Shared Function ConvHexToByte(Value As String) As Byte

If Value.Length = 2 Then
Dim str1 As [String] = Value.Substring(0, 1)
Dim str2 As [String] = Value.Substring(1, 1)

If str1.ToUpper() = "A" Then
str1 = "10"
End If

If str1.ToUpper() = "B" Then
str1 = "11"
End If

If str1.ToUpper() = "C" Then
str1 = "12"
End If

If str1.ToUpper() = "D" Then
str1 = "13"
End If

If str1.ToUpper() = "E" Then
str1 = "14"
End If

If str1.ToUpper() = "F" Then
str1 = "15"
End If

If str2.ToUpper() = "A" Then
str2 = "10"
End If

If str2.ToUpper() = "B" Then
str2 = "11"
End If

If str2.ToUpper() = "C" Then
str2 = "12"
End If

If str2.ToUpper() = "D" Then
str2 = "13"
End If

If str2.ToUpper() = "E" Then
str2 = "14"
End If

If str2.ToUpper() = "F" Then
str2 = "15"
End If

Dim b1 As [Byte] = [Byte].Parse(str1)
Dim b2 As [Byte] = [Byte].Parse(str2)
Dim cv As [Byte] = CByte(b1 * 16 + b2)

Return cv

End If

Return 0

End Function</pre>
<p>&nbsp;</p>
<p>Potete visitare il blog di <a href="http://community.dotnetwork.it/alberto/Default.aspx" target="_blank">Alberto</a> ed il suo progetto di <a href="http://community.dotnetwork.it/alberto/archive/2011/10/20/netduino-plus-rilevazione-presenze-con-rfid.aspx" target="_blank">Rivelatore presenze con RFID</a>.</p>
<p>The post <a href="https://logicaprogrammabile.it/calcolare-il-checksum-tag-lettore-rfid-id12/">Calcolare il checksum del tag tramite lettore RFID ID-12 (versione vb.net)</a> appeared first on <a href="https://logicaprogrammabile.it">Esperimenti con logiche programmabili</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://logicaprogrammabile.it/calcolare-il-checksum-tag-lettore-rfid-id12/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
