2009-02-18 16 views

risposta

14

Una volta eseguito tutto, è principalmente la programmazione linux. Se inizi con una scheda di valutazione, credo che tu abbia già molti strumenti. Ad ogni modo, potresti trovare utili i seguenti collegamenti.

Toolchain: cross-compilation. Puoi andare nel modo più semplice, ovvero scaricare una toolchain predefinita da code sourcery. Oppure puoi andare nel modo più duro e costruire la tua catena di strumenti. Il modo più difficile è tuttavia reso più facile se si utilizza lo strumento giusto. Croostool-ng è un progetto sucha con una mailing list molto reattiva.

Kernel: bene, architettura ARM è stato in linea principale per un po ', tuttavia, se avete qualche domanda specifica ARM, si dovrebbe sicuramente chiedere loro there

Userspace: Una volta che il kernel si sta avviando, è necessario un userspace per eseguire, cioè alcuni filesystem, shell, libreria C, processo di inizializzazione ecc ... Per costruire tali strumenti, ci sono molte opzioni. Uno è fare tutto da solo. Si inizia con busybox, quindi si continua con i vari strumenti necessari. Oppure puoi andare con strumenti automatizzati e configurabili. La mia preferenza va a ptxdist, perché ha il giusto livello di complessità (per il mio uso). Un'altra opzione è buildroot che non conosco. E se ritieni di aver bisogno di qualcosa di più potente forse puoi dare un'occhiata a OpenEmbedded.

Mi sono imbattuto in alcuni libri relativi allo sviluppo integrato, ma era più simile a script documentati. Costruire un sistema embedded completo è difficile, e penso che troverete più informazioni negli strumenti e nella mailing list che nei libri.

0

Se si dispone di una scheda della serie TS-7000, è possibile abbonarsi allo TS-7XXX mailing list.

+0

L'ho fatto. Ho anche trovato che il loro kit di sviluppo è molto utile per un principiante. – yrcjaya

0

Penso che dipenda dal tipo di applicazioni che si svilupperanno.

Per Linux (non Android) e le applicazioni nulla di speciale per il dispositivo ARM, non penso che sia necessaria alcuna conoscenza specifica per ARM tranne che per la catena di strumenti di build. Distribuzioni come Ubuntu e Arch hanno versioni basate su ARM, quasi tutti i pacchetti relativi agli sviluppatori nei loro repository possono funzionare con ARM.

Per applicazioni che utilizzano dispositivi come fotocamera, accelerometro e altri, se hanno un driver su Linux, niente di cui preoccuparsi.

Ciò di cui si ha veramente bisogno di preoccuparsi sono i componenti hardware che non hanno driver o driver molto semplici su Linux, in tal caso, è necessario comunicare direttamente con il dispositivo. O devi lavorare all'interno del kernel o usare l'interfaccia di ioctl like. Quindi la gestione della memoria ARM, la gestione degli I/O (mappatura, sondaggio, ecc.), La programmazione degli interrupt sono ciò che devi imparare.Basta trovare il manuale per la tua CPU sul sito del venditore, come trovare il manuale di sviluppo Intel x86 o x64.

Problemi correlati