Server HTTP/TFTP più Host USB da Freescale

Questo articolo descrive l'implementazione di un server HTTP/TFTP basato sul processore ColdFire MCF5225x con un file system USB dove risiedono le pagine web o altri file. Questo articolo spiega in dettaglio come integrare uno stack USB con un NicheTask e come accedere al file system USB attraverso un server HTTP/TFTP.

Cos’è l'MCF5225x?
La famiglia MCF5225x dispone di una serie di dispositivi altamente integrati con USB, Ethernet, CAN e funzioni di criptazione, corredate dal software completo Freescale MQX RTOS senza costi aggiuntivi. Questa soluzione è ideale per l’automazione di fabbriche, controllo di edifici ed applicazioni mediche.
L’MCF52259 è un microcontrollore a 32 bit altamente integrato basato sulla micro-architettura V2 ColdFire. Dispone di 64KB di SRAM interna, 512KB di memoria flash, un controller Ethernet molto veloce, un controller USB, un’interfaccia per bus esterni, quattro timer a 32 bit, un controller DMA a quattro canali, due moduli IIC, tre UART e una coda SPI. La famiglia MCF52259 è stata progettata per applicazioni di controllo industriali generiche.

InterNiche
Lo stack TCP/IP ColdFire è uno stack con codice "open source" realizzato per l’utilizzo con la linea di processori ColdFire. Può essere diviso in due parti: una libreria per un mini-layer TCP e una libreria per un mini-layer IP. Include inoltre un file system virtuale (VFS) che supporta sia il codice standard americano per lo scambio di informazioni (ASCII) sia dati in binario, integrati con un sistema di tasking chiamato NicheTask.

CMX USB-Lite
Il CMX USB-Lite è distribuito da Freescale e CMX per ColdFire e per i microcontrollori USB S08. Supporta un dispositivo USB, un host, e la funzionalità on-the-go (OTG) per mettere d’accordo varie esigenze di progettazione. Sono inoltre incluse una classe di driver di alto livello per tastiere, dispositivi mouse, e vari dispositivi di input (HID). Le classi di comunicazione tra dispositivi (CDC) con i trasmettitori /ricevitori asincroni universali (UART) consentono comunicazioni tra UART e USB. È possibile accedere agli stack da Freescale USB.

Implementazione del server HTTP
Architettura del Progetto
Questo progetto è stato creato con CodeWarrior 7.0 L'architettura è specificata di seguito:

Implementazione
Questo progetto è implementato basandosi su MCF52259EVB.

Integrazione di InterNiche e dello stack CMX USB-Lite
In questo progetto InterNiche è usato per gestire i protocolli di rete e lo stack CMX è utilizzato per gestire le operazioni su files basate sul file system USB. Il punto centrale di questo progetto è di combinare i due stack per lavorare simultaneamente.

Creare usb-mass-host-task.c per NicheTask
L’InterNiche fornisce inoltre un RTOS chiamato NicheTask che è uno scheduler cooperativo multi-tasking. In questa architettura ogni processo ha il proprio stack per le chiamate. Volontariamente restituisce il controllo allo scheduler principale. Il metodo integrativo è invocare le API dallo stack CMX come processi attraverso NicheTask. Questo è ottenuto da un codice sorgente usb-mass-host-task.c dove è stata creata una macchina a stati per una memoria host USB.

Invocare le API da usb-mass-host-task.c in NicheTask
Nel file usb-mass-host-task.c è stata creata una funzione chiamata create_cmx_task() per supportare NicheTask. È invocata nell’oggetto task tk_keyboard che supporta lo standard I/O in NicheTask e viene aggiunto alla tavola TCB (task control block) dopo il reset.

TK_ENTRY(tk_keyboard)
{
for (;;)
{
TK_SLEEP(1); /* make keyboard yield some time */
kbdio(); /* let Iniche menu routines poll for char */
keyboard_wakes++; /* count wakeups */
#ifdef MCF52259
if((usbmst_attach == 1)&&(usbtsk_created == 0))
{
create_cmxusb_task();
usbtsk_created = 1;
}
else if((usbmst_attach == 0)&&(usbtsk_created == 1))
{
tk_kill(to_cmxmasshosttask);
usbtsk_created = 0;
}
#endif
if (net_system_exit)
break;
}
TK_RETURN_OK();
}

Avviare il web server HTTP, la scheda di valutazione (EVB) deve essere collegata al pc attraverso una porta UART0. Il valore del baud dell’HyperTerminal deve essere impostato a 115200-8N1.

Connessione alla pagina web sulla flash USB
Dato che è stato ottenuto un indirizzo IP, il server http può essere visitato tramite Internet Explorer digitando http//10.192.221.30 nella barra degli indirizzi.

Implementazione del Server TFTP
Architettura del Software
Questa architettura è simile al web server HTTP. L'architettura include file sorgenti che supportano il protocollo TFTP invece del server di supporto HTTP.

Questo progetto è anche stato implementato basandosi sul MCF52259EVB. Il server TFTP è stato già sviluppato da InterNiche. Quel particolare modello accede ai file che si trovano nella flash interna attraverso VFS e perciò c'è una pesante limitazione sulla grandezza dei file. In questo progetto, i file sono conservati in un dispositivo USB che permette una maggiore dimensione dei file. Il punto cruciale è di far sì che il server TFTP acceda ai file USB attraverso il file system MCF52259 piuttosto che il VFS.

I server HTTP/TFTP sono implementati basandosi sui moduli FEC e USB MCF52259 che assicurano non solo grandi prestazioni ma anche una connettività flessibile. Le applicazioni basate sul MCF52259 non sono limitate ai soli server HTTP/TFTP. Se una fotocamera USB è connessa al microcontrollore invece di una flash un monitor web è disponibile con dei minimi ritocchi al server HTTP/TFTP. Sarà possibile monitorare ciò che sta avvenendo attraverso la pagina web. L'MCF52259 è ideale per applicazioni nel campo del controllo industriale. Ulteriori applicazioni su rete possono essere realizzate basandosi su quest'applicazione.

Per maggiori informazioni: HTTP/TFTP Server Plus USB Mass Storage Host

M52259DEMOKIT: Low-Cost Demonstration Board Kit for MCF5225x

Il conveniente kit di dimostrazione M52259DEMOKIT per microcontroller MCF5225x di Freescale include le schede M52259DEMOMCU e M52259DEMOCOM. La M52259DEMOMCU ha due stack di intestazione per permettere di aggiungere caratteristiche aggiuntive velocemente e in modo facile. In aggiunta all'MCF52259 MCU, la scheda possiede una USBBDM integrata, open source, e una porta USB con connettore mini-AB che supporta sia la modalità host sia la modalità Device. E' anche compreso CodeWarrior Development Studio per facilitare lo sviluppo ed il debug dell'applicazione. L'M52259DEMOCOM è una scheda di espansione connessa direttamente alla scheda M52259DEMOMCU. Comprende le comunicazioni 10/100 Ethernet, RS-232 e le funzionalità Hi-Speed CAN. I connettori montati della scheda stack supportano anche espansioni aggiuntive.

Registrati utilizzando il seguente modulo e riceverai uno sconto di 30% per questa demoboard. (solo per i primi 20)

Maggiori informazioni: M52259DEMOKIT: Low-Cost Demonstration Board Kit for MCF5225x

M52259EVB: Scheda di Valutazione per MCF5225x

La scheda di valutazione (EVB) M52259 è basata sulla famiglia dei microprocessori MCF52259 della Freescale ColdFire V2. Questa scheda è spedita con la MCF52259 saldata in basso per permettere la valutazione di tutte le funzionalità delle sue componenti. Questa scheda è stata progettata come una piattaforma di validazione e valutazione per la MCF52256 che supporta USB, Ethernet, CAN e funzioni di mini bus. Il circuito incorporato USB-BDM è avviabile per il debug e la programmazione. Supporta JTAG per i test del livello del sistema. Inoltre sulla scheda è implementata una CPLD per mostrare qualche estensione delle caratteristiche.

Registrati utilizzando il seguente modulo e riceverai uno sconto di 30% per questa evaluation board. (solo per i primi 20)

Per ulteriori informazioni: M52259EVB: Evaluation Board for MCF5225x

Introduzione alle soluzioni software di ColdFire MCF5225x & Freescale MQX

Ciao mi chiamo Max Lovedale. E sono qui con il team Cold Fire alla Freescale Software. Sono molto contento di condividere con voi una nuova soluzione riguardante le complesse esigenze che affrontate quando programmate sistemi per USB e Ethernet. Una ricerca ci mostra che i prodotti dei nostri clienti stanno diventando più interconnessi e intelligenti. E c'è un grande cambiamento nelle risorse dei nostri clienti nei confronti dello sviluppo di software. Inoltre i tempi e i fondi stanno diventando sempre più esigui. Freescale si sta riferendo a queste tendenze con un hardware completo e con soluzioni software che infine accelereranno il vostro successo.

Oggi sono qui per introdurre una nuova popolare linea di prodotti, la MCF5225X. E' un microcontroller ColdFire V2 che è destinato all'automazione di industrie, al controllo di un edificio, ad applicazioni mediche. E' un microcontroller a 32bit con alte prestazioni che vanta un ricco set di caratteristiche che indica un grande prezzo per l'obiettivo delle prestazioni. E dall'alto di questo nuovo grande prodotto, la Freescale sta accelerando il vostro successo offrendo il sistema operativo MQX in tempo reale in modo complementare al MCF5225X.
Il Freescale MQX RTOS è completamente collaudato e regolabile con un'architettura modulare che permette di scegliere solo i servizi necessari per le proprie applicazioni. Poi ottimizzare il progetto, dimensione dell'utilizzo della memoria e richiesta di velocità. E' dotato di protocollo stack per Ethernet e USB. E' inoltre dotato di una scheda per sbloccare tutte le caratteristiche del 5225x. In questo video mostrerò le piattaforme hardware nel laboratorio di creazione software MQX. Tutto questo ridurrà lo spreco di tempo nello sviluppo dell'applicazione finale.

Quindi partendo dall'hardware, il kit demo M52259 è davvero economico, semplice da usare compatto ed è alimentato direttamente da un cavo USB con il debugger integrato. La scheda ha il Microcontroller ColdFire insieme a connettori per l'USB, Ethernet, seriale e CAN e ha anche interruttori e LED. Inoltre ha una testata per l'espansione per accedere ai numerosi altri segnali. Per uno sviluppo avanzato, abbiamo il M52259EBB. E' una scheda di valutazione completamente funzionante e ha le stesse caratteristiche della scheda demo con qualche extra. Ha delle opzioni hardware configurabili con dei jumper, una testata per l'espansione pin più grande e più connettori seriali. E aggiunge anche memoria ed espandibilità sfruttando il nuovo mini flex expansion bus che è connesso ad un logic device MRAM Memory CPLD programmabile e un DVD che contiene i documenti del software, i laboratori e una veloce guida per iniziare che ti aiuta a cominciare il tuo processo di design velocemente.

Sul DVD troverai Code Word Development Studio. Code Word è un ambiente di sviluppo integrato che fornisce un completo framework per le tue applicazioni software. Per dimostrare le caratteristiche e i benefici del MQX e del 5225x, abbiamo creato diversi tutorial che ti guidano negli usi generici del sistema operativo Freescale MQX. Gli esempi emulano un semplice controller HVAC. Mostra come processi multipli possono comunicare tra di loro e accedere a molte interfacce di comunicazione sul 5225x. Nei tutorial imparerai come usare il Code Word TaskWare per il debug. Inoltre sarai guidato per l' uso del protocollo USB. il file system MFS mostra, usando comandi da linea, il protocollo TCP/IP con Telnet, FTP e un server web HTTP.

La famiglia di microcontroller MCF5225X della Freescale con software MQX offre un industria che mira alla connettività, la migliore nella flessibilità del class design e un mercato che vi porta software e supporti. E ricordate che il software MQX è incluso nel prezzo del 5225X. E' un grande vantaggio per voi. Io credo davvero che la Freescale stia scalando la classifica grazie all'introduzione di queste nuove soluzioni hardware e software. Io guardo già a tutti i prodotti innovativi che sono certo che creerete. Grazie.

RICHIESTA DI CONTATTO
Se desideri maggiori informazioni su questo prodotto Freescale, invia una richiesta ad Arrow utilizzando il seguente modulo.

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend