lunedì 10 ottobre 2011

Rilasciato .NET Micro Framework 4.2 RTM, a breve il nuovo netduino SDK



La settimana scorsa è stata ufficialmente rilasciata da Microsoft l’ultima versione del Micro Framework .NET SDK: la 4.2 RTM (Release To Manufacturing).
Le nuove funzionalità aggiunte sono le seguenti :
  • Remote Firmware Update : possibilità di aggiornamento remoto del firmware dall’SDK e dal PK;
  • Complete Cryptographic Object Model (PKCS#11) : supportati quasi tutti i tipi e gli algoritmi del .Net Framework (desktop);
  • 1-Wire, PWM e A/D Object Model : supporto per connessione 1-Wire, PWM e A/D attraverso un ben definito Object Model;
  • SNTP e FTP (Client e Server) : implementazioni client e server per SNTP e FTP;
  • StringBuilder e Regex : aggiunte tali classi come nel .Net Framework;
  • VB.Net : possibilità di sviluppare le applicazioni anche in VB.Net oltre che in C#;
  • Supporto per device con Cortex M3 : aggiunto tale supporto per la famiglia di processori STM32;
  • PKStudio : implementato il nuovo strumento PKStudio che prende il posto del Solution Wizard per la creazione di nuove soluzioni nell’ambito del Porting Kit;
Lo Staff Secret Labs ha comunicato sul proprio forum che a breve sarà disponibile l’ultima versione del firmware netduino per sfruttare al meglio il nuovo framework. Qui il post da seguire per gli aggiornamenti in merito.

l’SDK ed il Porting Kit e tutti i codici sorgenti del nuovo .Net Micro Framework sono scaricabili sul sito Codeplex.

venerdì 7 ottobre 2011

Creare un progetto per scheda Netduino (2/2)


Per il nostro primo progetto seguiremo la “starting guide” scaricabile da qui.
In questo semplice test faremo lampeggiare il led blu a bordo della scheda…

Creazione nuovo progetto in Visual C# express

Apriamo Visual C# Express 2010 e creiamo un nuovo progetto partendo dal modello Micro Framework. Il tipo di progetto da creare dipende dalla scheda che abbiamo; se siamo in possesso della scheda Netduino Plus (scheda identica alla Netduino base ma con l’aggiunta della porta ethernet e di un lettore di schedine microSD) ovviamente selezioneremo Netduino Plus Application.



Una volta creato il nuovo progetto andare in “Esplora Soluzioni” e aprire il file Program.cs.



Questo file contiene il codice di avvio del progetto ed è qui che scriveremo la parte di programma che comanderà il led della scheda.




Ora scriviamo quanto segue sotto il commento “// write your code here”:

OutputPort outPort = new OutputPort (Pins.ONBOARD_LED, false);

Questa prima riga di codice crea un OutputPort. Un OutputPort permette di controllare il livello di tensione su un’uscita qualsiasi della scheda Netduino (o in questo caso sul LED a bordo della scheda). Pins.ONBOARD_LED è una scorciatoia che definisce quale “PIN” della scheda vogliamo controllare mentre il secondo parametro (false) mette il LED in un stato iniziale di OFF (false).
Ora noi vogliamo far lampeggiare il LED ripetutamente. Un modo semplice per creare un'azione che si ripete in continuazione è quello di metterlo all'interno di un ciclo senza fine. Per fare questo ci basta aggiungere il  seguente codice al progetto:

while(true)
{
}
Ora, creiamo il codice LED lampeggiante. All’interno del ciclo while inseriamo le seguenti quattro righe di codice:


led.Write (true); / / accendere il LED
Thread.Sleep (250); / / dormire per 250ms
led.Write (false); / / spegnere il LED
Thread.Sleep (250); / / dormire per 250ms

Il programma finale apparirà così:
public static void Main()
{
// write your code here
OutputPort led = new OutputPort(Pins.ONBOARD_LED, false);
while (true)
{
led.Write(true); // turn on the LED
Thread.Sleep(250); // sleep for 250ms
led.Write(false); // turn off the LED
Thread.Sleep(250); // sleep for 250ms
}
}

Esecuzione del programma

Ora, distribuiremo l'Applicazione sulla scheda Netduino e la faremo partire.
Per impostazione predefinita, Visual Studio gestisce i progetti in un emulatore. Questo permette agli sviluppatori di software di creare e testare la logica di programmazione prima ancora di fare il “deploy” sull’hardware definitvo. Noi non useremo l'emulatore per cui diremo a Visual C# Express 2010 di fare direttamente il deploy sulla scheda Netduino.
Fare clic sul menu Progetto e selezionare le proprietà del progetto.



Quando appare la finestra delle proprietà del progetto fare clic sul pulsante “.NET Micro Framework” presente sul lato sinistro.



A questo punto andiamo a collegare, tramite il cavo micro USB, la scheda al PC. Dopo la procedura automatica di installazione dei drivers e riconoscimento da parte del PC della scheda cambieremo la voce Transport da “Emulator” a “USB”. Fatto questo dobbiamo assicurarci che la casella Device mostri la voce “Netduino”. Se nell’elenco a discesa non è presente la voce “Netduino” (o “Netduino Plus” o “Netduino Mini”) scollegare e ricollegare la scheda al PC.
Ora, faremo eseguire il progetto. Quando si esegue il progetto, il codice viene distribuito alla scheda Netduino e quindi automaticamente avviato. In questo caso ci limiteremo a guardare il programma funzionare facendo lampeggiare ogni 250ms il led blu della scheda ma, quando si inizia a costruire applicazioni più complesse,  è possibile eseguire il debug, impostare punti di interruzione, analizzare il valore delle variabili, ecc.

Creare un progetto per scheda Netduino (1/2)


La prossima serie di articoli tratterà la creazione e lo sviluppo di un semplice progetto sfruttando la scheda open source, basta su .NET Micro Framework, netduino.

Netduino è una scheda elettronica prototipo totalmente open source, basata su componenti e software facilmente recuperabili e integrabili con ogni sorta di sensori, luci e attuatori meccanici.
Il progetto è nato dall'unione della piattaforma Arduino con .NET Micro Framework e permette di utilizzare una scheda elettronica basata su .NET.

In questo primo articolo tratteremo la configurazione dell’ambiente necessario allo sviluppo di un progetto demo.

Configurare l’ambiente


Per il nostro progetto demo e in generale, per iniziare nello sviluppo di un proprio progetto, è necessario dotarsi di:
  • Scheda Netduino (o Netduino Plus se si desidera avere già disponibile la connessione ethernet).
  • Cavo micro USB per l'alimentazione e il collegamento al PC.
  • Visual Studio 2010 o Visual C# Express 2010.
  • .NET Micro Framework SDK.
  • Netduino SDK (in base al proprio sistema a 32 o 64 bit).

Download dei pacchetti necessari

Scaricare ed installare (rispettando l’ordine con il quale sono elencati) i seguenti pacchetti:

  1. Microsoft Visual c# Express 2010
  2. .NET Micro Framework SDK v4.1
  3. Netduino SDK v4.1.0 (32-bit) o Netduino SDK v4.1.0 (64-bit)
L’installazione dei pacchetti è molto semplice e non richiede nessuna configurazione particolare. E’ sufficiente cliccare su “Avanti…” fino al termine dell’installazione.

Verifica ambiente

Per verificare se tutto è stato installato correttamente lanciare Visual C# Express 2010 e scegliere “Nuovo progetto…” nella pagina iniziale.



Nella parte sinistra della finestra che comparirà, tra i “modelli installati”, deve essere visibile la voce Micro Framework. Selezionando questo modello, nella parte centrale della finestra, saranno elencati i tipi di progetti che potremo creare.



giovedì 6 ottobre 2011

Ciao Steve!

Noi che ci occupiamo di tecnologia e amiamo l'innovazione non possiamo che dedicare un breve pensiero alla scomparsa di uno fra più geniali artisti del nostro secolo: Steve Jobs.
Geniale perché ha saputo precorrere i tempi.
Artista perché ha lasciato un impronta del suo modo di essere nei prodotti che negli ultimi anni hanno portato la Apple ad essere una suporpotenza mondiale.
Ha cambiato il modo con il quale utilizziamo il telefono.
Ha introdotto un nuovo dispositivo che ha rivoluzionato il mondo del business mobile.
Ha permesso di avvicinare al mondo della tecnologia anche l'universo femminile attraverso prodotti funzionali e esteticamente accattivanti.
Noi non abbiamo avuto la fortuna di conoscerlo personalmente ma abbiamo invidiato: il suo modo di pensare, la sua tenacia e la sua "lucida follia", questo perché viviamo in un paese, l'Italia, in cui poter innovare è una sfida che si combatte ogni giorno e molto spesso si perde.
Grazie "zio Steve" ci mancherai.