Scrierea MULTI MCU plataforms FIRMWARE

E

eltonjohn

Guest
Sunt rescrierea acest firmware-ul pe care am scris mult timp în urmă pentru un design bazat 8051. Şi am împrospătat desigm Pentru ca in acele zile am fost utilizând o EPLD să serialize de date, la 4 MHz şi pentru că am nevoie de memorie RAM externă. Aceasta zi tot ceea ce poate fi realizat pe un MCU numai .. Care??.Ei bine cele mai multe dintre cele noi. Apoi, tot de la brusc un design foarte scump pe care am făcut-o. Poate fi manufacured pentru alune acum.Am decis să-şi vândă meu "FIRMWARE de produs". Şi rescrie o ca pe un multipltaform.
Asa ca am decis primul care a folosit doar un brand de compilatoare.IAR pot face
C51.ARM, AVR, şi MSP430. Eu mai târziu se va extinde si la alte KEIL, etc
Deci, orice organism aici care ar putea da-mi niste sfaturi despre cum să o faci într-o formă elegantă.Am văzut unele abordări, în unele proiecte care sunt oribile
Cod plin de # în cazul în care sunt definite şi complet inreadable. Vreau să menţină întregului proiect şi să păstreze la adăugarea de funcţionalitate.
Cred ca o modalitate este să utilizaţi # include "file.c" pentru fiecare familie. Dar unele compilatoare nu va accepta includerea de cod C, cu clauzele incluse pe ea.

un alt mod este de a face doar proiecte şi adăugaţi fişierele necesare.
Orice suggestions?

 
Bine, nimeni nu MULTI plataform aplicatii embedded??
Aceasta este cel mai bun mod de a cunoaşte mai multe MCUs în acelaşi timp, precum şi compilatoare

Ei bine eu sunt stisfied acum.Eu ieri ok structurat cererea mea ca aceasta

1) O C principale dosar cu toate funcţiile meu MCU independente şi a variabilelor
2) de mai multe MCU fişiere specifice C (câte unul pentru fiecare MCU) aici am iniţializa cererii
Specificul MCU şi întrerupe gestionari de

Pe principalele dosar există o prima includ cu configuraţia aplicaţiei.
Aceasta defineşte pe care MCU I'm using şi să includă toate specificul compilator MCU pentru că arhitectura

file-atunci toate restul include pentru aplicarea principal
-acum, toate declaraţia de variabile şi funcţii pentru aplicarea
-Aceasta sectiune este în cazul în care voi ruta toate c MCU fişierele necesare pentru această arhitectură a construi. Această secţiune este în principiu, un
# în cazul în care sunt definite MCU = x
# include "XC"
# else în cazul în care sunt definite MCU = y
# include "yc"
endif # ...

, acum, toate codul principale care apelurile rutine care sunt MCU specifice, dar deja avalaible de la ultima secţiune ..

Prin face-o asa. Am doar pentru a copia toate x orice .. şi alte fişiere şi să facă modificări astfel încât acestea să acces la hardware-ul echivalent în MCU diferite arhitecturi

Doing it acest fel este mult mai elegant. Pentru ca am nevoie doar de a face cu fişierele pentru care MCU particuliar şi de aplicare generală. Este foarte simplu de a citi, pentru că nu există # ifdef fiecare în cazul în care doar unul bloc de la început.

în interiorul fiecărui fişier Xc pentru fiecare particuliar MCU i a putea acum ruta sematics potrivit pentru un producător de compilator particuliar
Fişierul principal de cererea nu ştiu despre toate că rahatul .. º i i se poate concentra în principal algoritmul ..

Până în prezent, eu am compilat cererea mea în conformitate cu Keil C51.Crossworks braţ şi Iar AVR
toate-şi compilează bine

 

Welcome to EDABoard.com

Sponsor

Back
Top