dico bridge manuale d’uso e manutenzione ethernetcan … · pt1+ pt1-sw1 sw2 dbg ebe sp9 20b brd...
TRANSCRIPT
Codice ordine:Data: Rev:04/2014 - 1.2
1902101002
Manualed’uso e manutenzione
DICO
BRIDGE
ETHERNET CAN
SERIALE
Sommario1. Introduzione..............................................................................32. Specifiche tecniche.................................................................3
2.1 Jumpers.......................................................................42.2 LEDS..............................................................................42.3 CONNESSIONI.................................................................5
3. MON-EX Firmware......................................................................53.1 Cosa fa MON-EX...........................................................53.2 Le porte di comunicazione di MON-EX......................63.3 Le segnalazioni luminose di MON-EX........................73.4 Le E2Prom seriali.........................................................73.5 Configurazione di memoria per gli applicativi.........7
pag. �
Bridge ethernet Can Seriale
CodiCe ordine 1902101002aprile 2014 - rev. 1.2
Storico Revisioni PagineRev. 1.0 Stesura 9Rev. 1.1 ModificaTabella2.2 9Rev. 1.2 AggiuntoFigura2.1.2 9
SYSTEM s.p.a. Div. ElectronicsviaGhiarolaVecchia,7341042Fiorano(MO)-Italytel.0536/836111-fax0536/830901www.system-group.ite-mail:[email protected]
Questoprodottosoddisfairequisitidiprote-zioneEMCdelladirettiva2004/108/CE.
SYSTEM s.p.a. Div. Electronics siriservaildirittodiapportarevariazionediqualunquetipoallespecifichetecnicheinqualunquemomentoesenzaalcunpreavviso.Le informazioni contenute in questa documentazionesono ritenute corrette e attendibili. La riproduzioneancheseparziale,delcontenutodiquestocatalogo,èpermessasolodietroautorizzazionediSYSTEMs.p.a.Div.Electronics.
pag. �
Bridge ethernet Can Seriale
CodiCe ordine 1902101002aprile 2014 - rev. 1.2
1. IntroduzioneIl Bridge EthernetCANSeriale della famigliaDICOèunprodottoingradodiinterfacciaredispositiviCANoEthernetadispositiviseriali(232,422o485).Consentedi estendere lemoderne architetture di supervisioneEtherneteCANversoipiùconsolidatibusseriali.
Figura 1.1
2. Specifiche tecniche• Microprocessore DSTni-EX120MHzx86compati-bileconcapacitàdiindirizzamentoa20e24bits
• 1porta ETHERNET 10/100Mbps• 1interfaccia full CAN 2.0Ae2.0B• 2interfacce RS232/RS422/RS485 configurabili
aSW• Memoria RAM volatile2MBDRAM• Memoria FLASH 2MB• Memoria EEPROM seriale1KBx2• Alimentazione 24Vdc0.3A• Watch-Dog• Possibilitàdiprogrammazione inlinguaggio"C"• Temperatura di lavoro: 0…60°C• Umidità: UR85%(senzacondensa)• Dimensioni: 195×80×50mm• Montaggio: subarraDINEN50035
Tabella 2.1
Figura 2.2 Connettori
Mappa di memoria (hw layout con 2MB flash/2MB RAM)Addr20 Size(KB) 20-bits 24-bits00000 256 On-chip RAM On-chip RAM40000
256 DRAMDRAM
Sector SA0Sector SA1
Sector SA7…
64
Sector SA8Sector SA9Sector SA10Sector SA11
Sector SA8Sector SA9Sector SA10Sector SA11
64
Sector SA12Sector SA13Sector SA14Sector SA15
Sector SA12Sector SA13Sector SA14
Sector SA15DSTni-EXBootstrap
Sector SA16Sector SA17
…Sector SA30Sector SA31Sector SA32Sector SA33DSTni-EXBootstrap
6464
646464
48
16
80000
FC000
Size(KB)256
1792
6464
64…
64
64
6464…643288
16
6464
646464
Addr24000000040000
E00000E10000
E70000…
E80000E90000EA0000EB0000EC0000ED0000EE0000EF0000
F00000F10000…
FE0000FF0000FF8000FFA000
FFC000
7FFFF
90000A0000B0000C0000D0000E0000F0000
1FFFFF
64
4
5
6
7
8
9
10
11
12
13
1
2
3
14
15
16
17
18
19
XP21CAN
XP2CAN
XP4SER_2
XP3SER_1
XPETH1ETHERNET
XP1PWR
pag. �
Bridge ethernet Can Seriale
CodiCe ordine 1902101002aprile 2014 - rev. 1.2
Iparametridibaseperl'avviodelmoduloeletermi-nazioni/polarizzazionideivaribussonoimpostabiliviajumper/dip switch. La configurazione del protocolloserialeèimpostabileviasoftwareesonodisponibilial-cunileddistatoperindicarechiaramenteiltipodiportaimplementatoel'attivitàincorso.
Tabella 2.2
2.1 Jumpers
Figura 2.1.1
Configurazione del DSTni-EX BootloaderDBG = EnabledebugmessageEBE = EnablebootfromEthernetSP9 = SetSP960020B = 20bitmodeBRD = BootfromparallelFlashSPI = EnablebootfromSPI
Configurazione di CAN ed EthernetSW1, SW2 = veditabella3.1.1SLOPE = SlopeControlCANTERM = TerminazioneLineaCAN
TERMSLOPE
PR2+
PR2-
PT2+
PT2-
TERM
_RX2
TERM
_TX2
TERM
_TX1
TERM
_RX1
PR1+
PR1-
PT1+
PT1-
SW1 SW2
DBG
EBE
SP9
20B
BRD
SPI
Esempi di configurazione
Figura 2.1.2
2.2 LEDS
Figura 2.2.1
LINK = LinkstabilitoACT = SegnalazionetrafficoSPEED = Velocitàconnessione10/100DUPLEX = HalfDuplex/FullDuplex
+5V = Presenza5V+3.3V = Presenza3.3V
TXCAN
STATUSSER2
RX2TX2
STATUSSER1
RX1TX1 LD1
LD2
LD3
LD4
LD5
+3.3V+5V
LIN
KAC
TSP
EED
DU
PLEX
STATUS LEDS1 2 3
232 OFF ON ON485 OFF ON OFF
422 PP OFF OFF ON422 MP ON OFF ON
I/F disabilitata OFF OFF OFF
232 Nessun jumper485 Polarizzazione
(opzionale e solo inun punto della rete)
Terminazione(necessaria per idue nodi estremidella rete)
PT(n)- PT(n)+ PR(n)- PR(n)+
TERM_TX(n) TERM_RX(n)
422 Polarizzazione(opzionale e solo inun punto della rete)
Terminazione(necessaria per idue nodi estremidella rete)
PT(n)- PT(n)+
TERM_TX(n)
PR(n)-
TERM_RX(n)
Linea TX Linea RX
PR(n)+
pag. �
Bridge ethernet Can Seriale
CodiCe ordine 1902101002aprile 2014 - rev. 1.2
LD1 = GeneralpurposeLD2 = GeneralpurposeLD3 = GeneralpurposeLD4 = GeneralpurposeLD5 = Generalpurpose
TX1 = Trasmissionesuportaseriale1RX1 = Ricezionesuportaseriale1STATUS SER1 = Tipodiserialeimplementata
TX2 = Trasmissionesuportaseriale2RX2 = Ricezionesuportaseriale2STATUS SER2 = Tipodiserialeimplementata
TX CAN = AttivitàportaCAN
2.3 CONNESSIONIXP1 Connettore alimentazione Pin1=+24Vdc Pin2=GND Pin3=PE
XP2 CAN Bus porta 0 Pin14=CANH Pin15=CANL Pin16=REF
XP21 CAN Bus porta 0 Pin17=CANH Pin18=CANL Pin19=REF
XP3 Seriale SP1 RS232 RS485 RS422Pin4 = TX B(Data-) TX-Pin5 = RTS A(Data+) TX+Pin6 = GND GND GNDPin7 = CTS NC RX-Pin8 = RXD NC RX+
XP4 Seriale SP2 RS232 RS485 RS422Pin9 = TX B(Data-) TX-Pin10 = RTS A(Data+) TX+Pin11 = GND GND GNDPin12 = CTS NC RX-Pin13 = RXD NC RX+
3. MON-EX FirmwareMON-EXèilfirmwarestandardchevienebruciatonellaFLASHparalleladiBridgeEthernetCANSerialedurantelaproduzioneinSYSTEMElectronics.Piùprecisamente,laFLASHparallelacontienesialaversionea24-bitchelaversionea20-bitdiMON-EX,comeevidenziatonelleappositetabellecontenentilemappedimemoria.MON-EXvienelanciatodalbootstrapon-chipe,asuavolta,puòfarepartireunaltroapplicativoutenteresi-denteadunindirizzofissoinFLASHparallelaoscaricatoinRAMviaprotocolloBOOTP/TFTP.SYSTEMElectronicsfornisceapposititoolschepossonovenireusatipercomunicarecolfirmwareMON-EXat-traversoleporteSP0,CANbus0eleporteEthernet,seattive.QuestitoolspermettonodiconoscerelaversionedifirmwareMON-EXchestagirando,diinvalidareun'ap-plicazioneesistente,scaricarneunanuovaevalidarla.Inoltre,sonofornitiglistrumentiperutilizzarelasecondaEEPROMseriale,l'utilizzodelRealTimeClock,lalettura/scritturadegliI/Oelaletturadizonedimemoria.IncasosivogliainserireinunaHMIdedicatailnucleodiquestitools,sipossonorichiedereaSYSTEMElectronicsidettaglirelativiaiprotocolliperCANbuseperEther-net/Seriale.MON-EXcontieneancheunWebServerchepermettediinterfacciarsitramiteunbrowserstandard(InternetExplorer,MozillaFirefox,ecc…)perreperireinformazio-ni,impostareIPeNetmaskdasalvareinmemorianonvolatile,scaricareapplicativi,validarliedinvalidarli.
3.1 Cosa fa MON-EXLaprimissimaazionediMON-EXèleggereunregistroincuilalogicahardwaredellaschedahamemorizzatolacausadiresetdellaCPU(power-up,watch-dogoaltro)escriverequestainformazioneinunareafissadime-moria(Monitor Exchange Memory)doveunprogrammaapplicativolapossainseguitoreperire.Quindi,MON-EXlegge idip-switchesSW1eSW2persaperecomeprocedere.
Tabella 3.1.1
Loswitchpiùdiscriminanteè,senzadubbio,SW2_1.QuandoèON,SW2_1diceaMON-EXdiignorarequa-lunqueprogrammaapplicativoeventualmenteresidenteinFLASHparallelaediprocedereaprendouninsiemedi
SW1_1 SW1_2 SW1_3 SW1_4 SW1_5 SW1_6 SW1_7 SW1_8CANbus 0 User defined
Off = Port used bymonitor
IP ModeOff Off = Class C
Off On = E2PromOn Off = DHCPOn On = BOOTP
(192.168.1.x)or ARP trick
CANbus baudrateOff Off Off = 1 MbpsOff Off On = 800 KbpsOff On Off = 500 KbpsOff On On = 250 KbpsOn Off Off = 125 KbpsOn Off On = 50 KbpsOn On Off = 20 KbpsOn On On = 10 Kbps
SW2_1 SW2_2 SW2_3 SW2_4 SW2_5 SW2_6 SW2_7 SW2_8ON = Ignoreapplicationprogram
Node ID (CANopen NId or LSB of Class C IP)Off Off Off Off Off Off Off = 0 (No IP; ARP trick enabled)Off Off Off Off Off Off On = 1 (Class C IP = 192.168.1.1)Off Off Off Off Off On Off = 2 (Class C IP = 192.168.1.2)… … ………………On On On On On On On = 127 (Class C IP = 192.168.1.127)
CANbus 0ON = Port is under
TCPtoCANGateway
User defined
User defined (when CANbus 0 is gateway port)
pag. �
Bridge ethernet Can Seriale
CodiCe ordine 1902101002aprile 2014 - rev. 1.2
portedicomunicazioneattraversocuiriceverecomandidalmondoesterno.QuandoSW2_1èOFF,MON-EXleggelaE2Promserialein cerca di patternsmagici ed altre informazioni cheindichino la presenza di un applicativo utente validonellaFLASHparallela(adunindirizzofissodipendentedellamodalitàdiindirizzamentoa20/24bits)edeven-tualmentelolancia.Peridettaglirelativiagli indirizzifissi,sifacciariferimentoalletabelleconleopportunemappedimemoria.È altamente consigliabile che l'applicativo usi i dip-switchesrelativiaNodeIDebaudratedelCANbusnelmedesimomododiMON-EXechel'applicativoimple-mentiinqualchemodolafunzionalitàdiinvalidazionedi se stesso (inmodo taledapoter essere indotto asuicidarsiefarripartireMON-EXalsuccessivoreset).
Tabella 3.1.2
Tabella 3.1.3
Mappa di memoria di MON-EX-20
Addr20 Size(KB) 20-bits Usage
00000
On-chip RAM256
Interrupt vectorsReserved00400
Monitor Exchange Memory0070000800 Monitor Data
(available to Application)40000
254SDRAM
Monitor Free Memory
7F800 280000 64 Flash SA8
Application code90000A0000B0000
6464
Flash SA9Flash SA10
64 Flash SA11C0000 64
Flash SA13 Monitor Code
MON-EX-20
FC000 16 On-chip ROM DSTni-EX Bootstrap
Not used by Monitor
D0000 64E0000 64F0000 48
Flash SA12
Flash SA15Flash SA14
MappadimemoriadiMON-EX-24(2MBFlash/2MBRAM)
Addr24 Size(KB) 24-bits Usage
000000
On-chip RAM256
Interrupt vectorsReserved000400
Monitor Exchange Memory000700000800
Monitor Free Memory040000
1278
SDRAM
7FFFFF
E00000 64 Flash SA0
Available to ApplicationE10000...
E70000
64...
Flash SA1...
64 Flash SA7E80000 64
... ...FB0000 64
Flash SA8-SA27(1280 KB)
Application Code(started by MON-EX-24)
FC000064
FlashSA31-SA33Monitor Code
MON-EX-24
FFC000 16 On-chip ROM DSTni-EX Bootstrap
Monitor Data(available to Application)
64FE0000
32FF00008FF80008FFA000
17F800514 Not used by Monitor
3.2 Le porte di comunicazione di MON-EX
QuandoMON-EXignorauneventualeprogrammaap-plicativo,iniziaafarlampeggiareLed5edaprealcuneportedicomunicazionesucuiattenderecomandidal-l'esterno.
3.2.1 La porta seriale SP0 (RS232)Laporta seriale SP0vieneapertaa"38400,N81"indi-pendentementedalsettaggiodegliswitches.
3.2.2 La porta CAN0SeloswitchSW1_1èOFFedinNodeIDèdiversodazero(switchesSW2_2-SW2_8), laportaCANbus 0vieneapertaconlabaudrateimpostatadagliswitchesSW1_6-SW1_8.SegliswitchesSW2_2-SW2_8sonotuttiOFF,ilNodeIDvieneautomaticamenteportatoda0a1.L'impostazionedifabbricaperilNodeIDè1;quellaperlabaudrateè500Kbps.SeSW1_1èON,laportaCANbus0puòvenireusatacomegatewaytraTCPeCANbus.Dettaglisulprotocollodigatewaysonodisponibilipergliinteressati.
3.2.3 La porta ETH0Le porte Ethernet dei dispositivi SYSTEM ElectronicshannoMACdeltipo00-11-63-xx-xx-xx.
Seriescearecuperareinqualchemodo(dipendente-mentedallaposizionediSW1_4-SW1_5)unIPedunaNetMask,MON-EXapreanchelaportaEthernet 0.Ilsettaggiodi fabbricaper IP_ModeèClass C: l'IPè"192.168.1.1" (Node ID, come abbiamo già visto, èimpostatoad1)eNetMaskè"255.255.255.0".Un node ID pari a 0 attiva il cosiddetto "ARP trick",chepermettediassegnareunIPtemporaneousandoicomandistandardARPePING.Indettaglio,sitrattadiaggiungeretemporaneamenteunavocestaticaallatabellaARPdelproprioPCe,successivamente,diusareilcomandoPINGperassegnaretemporaneamentel'IPdesideratoallaportaETH0;adesempio,sesivuoleas-segnaretemporaneamentel'IP10.11.12.13allaportaETH0aventeMACaddress001163-000100,sidevonodigitaresulproprioPCiseguenticomandi: arp -s 10.11.12.13 00-11-63-00-01-00 ping 10.11.12.13Aquestopunto,finoalprossimospegnimentoilBridgeEthernetCANSerialediventaraggiungibile(adesempio,conunbrowser)attraversol'IPfissato.Usandounbrowser,IPeNetMaskperlaportaEthernet0possonoesseremodificatiesalvatisuE2Promseriale,inmodocheMON-EXpossadalìleggerliincasoIP_ModevengapostoadE2Prom.
SeIP_ModeèimpostatoaDHCP,l'IPelaNetMaskperlaportaEthernet0puòessereottenutadaunserverDHCP;intalcasoSYSTEMElectronicssuggeriscecheil
pag. �
Bridge ethernet Can Seriale
CodiCe ordine 1902101002aprile 2014 - rev. 1.2
serverDHCPvengaconfiguratoperusareilMACaddresscomechiaveperl'assegnazionediIPeNetMask.
SeIP_ModeèimpostatoaBOOTP,unappositoserverdeveassegnareIPeNetMaskallaportaEthernet0e,quindi,scaricareunapplicativoutentenellaRAMdelBri-dgeEthernetCANSeriale(sivedaMonitor Free Memorynelletabelledellemappedimemoria).
3.3 Le segnalazioni luminose di MON-EX
3.3.1 Led 5Comegiàaccennato,seMON-EXnondevefarripartireuneventualeprogrammaapplicativo,iniziaafarlam-peggiareLed5primadiprocedere.Siconsiglia,dunque,agliapplicatori,dinonusarequelledneiprogrammi,inmodotalechesianochiaramentedistinguibiliall'esecu-zionedelMonitorequelladiunapplicativo.
3.3.2 Led 4SeIP_ModeèimpostatoadE2PromoaDHCPeMON-EXnonriesceadottenereunIPedunaNetMaskvalidi,essocessaqualunqueattivitàedentrainunloopinfinitofacendolampeggiareLed4allafrequenzadi1Hz.SeIP_ModeèimpostatoaBOOTPeMON-EXvainti-meoutsull'attesadiconnettersiadunserverapposito,essoripetecontinuamentelaricercadelserverfacendolampeggiarebrevementeLed4adognitentativo.SeIP_ModeèimpostatoaClass Cinmodotaledaatti-varel'ARP trick,MON-EXattendel'arrivodelcomandoPINGfacendolampeggiareLed4allafrequenzadicirca2Hz.
3.3.3 Led 3DurantelacopiaturadaRAMaFlashdiunprogrammaapplicativoinqualchemodoscaricato,MON-EXaccendeLed3peruntempo(breve)chedipendedallalunghezzadell'applicativo.
3.4 Le E2Prom serialiBridgeEthernetCANSerialemonta2chipsdimemoriaE2Promseriale.Nel primo di questi chip, protetto contro qualunquetentatvodiscrittura,sonostatimemorizzatialcunidatidi fabbricacome ilMACaddressdellaportaEthernetedaltro.Nelsecondochip,opportunamentescrivibile,possonoinvecevenirmemorizzatidati come l'indirizzo IPe larelativaNetMask,ivalidatorideglieventualiprogrammiapplicativiresidentiinFlashparallelanonchèunmassi-modi32bytesutente,cuil'applicativopuòassegnareilsignificatodesiderato.
3.5 Configurazione di memoria per gli applicativi
SYSTEMElectronicsmetteadisposizionedegliutilizzatoridiBridgeEthernetCANSerialenonsololelibrerieneces-sarieacostruireunapplicativo,maancheunesempiodiprogettocontenenteiltargetMON-EX(completodisorgenti)edalcunialtritargetchefannofunzionareunpiccoloapplicativoinvariemodalità.
Le note seguenti presuppongono la conoscenza del-l'ambiente di sviluppo software Paradigm C/C++ e dei tools messi a disposizione da Lantronix (produttore del chip DSTni-EX).
SenzavoleresauriretuttelepossibilitàoffertedalchipDSTni-EXedalsuobootstrapinterno,nelseguitover-ranno presentate le varie configurazioni dimemoriapreviste nel file APPL001.CFG; ad ognuna di esse èassociatounparticolarestyle sheetnelfilediprogettoAPPLICATION.PDL.Alcune di queste configurazioni tengono conto dellaeventualepresenzadiunMonitor(a20oa24bits)che,necessariamente,utilizzaalcunedellerisorsedimemoriadisponibili;permaggioridettagli,sifacciariferimentoalletabelle3.1.2e3.1.3delmanuale.Le risorse impegnate dal Monitor sono attualmentelargamente sovrabbondanti rispetto alle sue effettiveesigenze(vediTabella3.5.1)e,dunque,nonsipreve-dechesue futureversionipossanocompromettere ilfunzionamentodi applicativi sviluppati tenendocontodeivincoliattuali.
Tabella 3.5.1
SinotichelospaziodiramusatodalMonitorpuò,ovvia-mente,essereriutilizzatodall'applicativoutentelanciatodalMonitorstesso.SinotiinfinecheMonitorgestisceun'areadiscambiocongliapplicativichemandainesecuzione;taleareainiziaall'indirizzofisico0x00700edoccupa256bytes,cosìsuddivisi:
Tabella 3.5.2
Tutteleconfigurazionidescrittenelseguitoprevedonodunquecheiprimi2KBdellospaziodimemoriasianoriservati:1KBservonoper latabelladeivettoridi in-terrupt,768bytesper lo stackdiPDREM(in casodidebugging)e256bytesperl'areadiscambiotraMonitoregliapplicativi.
Monitor Dimens. Codice Flash impegnata Dimens. Dati Ram impegnata20 bits ~ 160 KB 240 KB ~ 162 KB 254 KB24 bits ~ 160 KB 240 KB ~ 162 KB 254 KB
0x00700 - 0x007010x00702 - 0x007070x00708 - 0x007090x0070A - 0x0070B0x0070C - 0x007FF
iRestartReasonszMonitorReleaseiCANbus0BaudrateiCANbus0NodeIdReserved
pag. �
Bridge ethernet Can Seriale
CodiCe ordine 1902101002aprile 2014 - rev. 1.2
3.5.1 Programma in debuggingSe,nell'ambientedi sviluppoParadigm,siassociaaduntarget lostyle sheet"DICODebug",vienedefinitoilsimbolo__PDREMOTE__;intalcaso,iltooldirilocazione(Locator)vieneistruitodaAPPL001.CFGaconsiderareimpegnatelezonedimemoriaon-chipdedicataaPDREMquandoquestovienescaricatoalbootstrapattraversolaportaserialeSP0(da0x00800a0x03FFFeda0x3F000a0x3FFFF).Se possibile, si consiglia di usare per l'applicativo lamedesimazonadimemoriadatichesihaintenzionediusareperilsistemafinito.
3.5.2 Programma residente in flash lanciabile dal Bootstrap (esecuzione in flash)Lostyle sheet "DICOFLASHstored&executed"defi-nisceilsimbolo__IN_FLASH__checostringeillocatoragenerareunfileinformatoHexIntel(FLASH20.HEXoFLASH24.HEX)chedovràpoiessereprocessatonuo-vamentedaDSTMKBIN32perottenereilfileFLASH20.SPB (oFLASH24.SPB);questofiledeve infineesserescaricatosultargetmedianteDSTniLoader.L'indirizzoinizialedelcodicedeverispettarelespecifichedelbootstrapon-chip,chericercal'intestazionediunap-plicativoinflashagliindirizzimultiplidi64KB(partendodalpiùaltoesinoall'iniziodell'uppermemory).
3.5.3 Programma residente in flash lanciabile da Bootstrap dopo essere stato copiato in ram o lanciabile da Bootstrap dopo averlo ricevuto at-traverso la seriale SP0 (esecuzione in ram on-chip)Lostyle sheet "DICOFLASHstored,RAMexecuted"de-finisceilsimbolo__FLASH_TO_RAM__;ilfileHexIntelgeneratodal locator (RAM20.HEXoRAM24.HEX)puòessereprocessatodaDTMKBIN32induediversimodiegenerare i files (DTMKBIN32 induediversimodi egenerareifilesRAM20.SPBeRAM24.SPB(oppure,even-tualmente,ifilesSERIAL20.SDBeSERIAL24.SDB).Ifiles.SPBdevonoesserescaricatisultargetmedianteDSTniLoaderevengonogestitidaBootstrapcheprovve-deacopiarliinramon-chipprimadellaesecuzione.Ifiles.SDBdevonoesserescaricatisultargetmediantelaportaserialeSP0evengonoricevutidaBootstrapchelicopiainramon-chipepoilimetteinesecuzione.Inentrambiicasi,l'indirizzodiiniziodell'applicativodeveessereobbligatoriamente0x00800el'interoapplicativo(codicepiùdatiiniziali)nondeveoltrepassareilconfinecostituitodall'indirizzo0x3BFFF(max238KB);questolimiteèdovutoall'utilizzodell'ultimaporzionediramon-chipdapartedelBootstrape,soprattutto,alfattocheBootstrapprogrammairegistridichipselectinmodotaledaaccederesoloallaramon-chip.
3.5.4 Programma residente in flash lanciabile da Monitor (esecuzione in ram)Lo style sheet "DICO FLASH stored, RAM executed"puòanchecostringereillocatoragenerare,oltrealfileHexInteldicuisièdettoalpuntoprecedente,ancheunfilebinarioRBYMON20.BINoRBYMON24.BIN.QuestofiledeveesserescaricatoinflashalMonitorattraversola porta 1100 omediante ilWebServer integrato nelMonitorstesso.Dopoiltrasferimentoinflash,occorreeseguire l'operazione di validazione dell'applicativo,indicando un indirizzo iniziale non necessariamenteugualea0x00800.Monitorprovvedeacopiarel'applicativoinramprimadell'esecuzione.A differenza dei due casi precedenti, avendo Monitor già sistemato opportunamente i registri che governano i chip select delle memorie, l'applicativo non è limitato ad utilizzare la sola ram on-chip,mapuòoccupare tutta lamemoria lasciata libera daMonitor(finoa1278KBdi copiaapplicativoper laversionea24-bits).
3.5.5 Programma residente in flash lanciabile da Monitor (esecuzione in flash)Lostyle sheet "DICOFLASHexecutedbyMonitor"de-finisceilsimbolo__FLASH_UNDER_MONITOR__;comenelcasoprecedente,ilfilebinariogeneratodalLocator(FBYMON20.BINoFBYMON24.BIN)deveesserescari-catoilflashalMonitorattraversolaporta1100ome-dianteilWebServerintegratonelMonitorstesso.Dopoiltrasferimentoinflash,occorreeseguirel'operazionedi validazione dell'applicativo, indicandone l'indirizzoiniziale(chedeverisiederenellezoneopportunamentemesseadisposizionedaMonitor).L'esecuzionedell'ap-plicativoavverràdirettamenteinflash.
3.5.6 Programma residente su BOOTP e lanciabile da Monitor (ese-cuzione in RAM)Lo style sheet "DICOBOOTP byMonitor" definisce ilsimbolo__BOOTP_UNDER_MONITOR; inquestocaso,il file binario generato dal locator (BBYMON20.BIN oBBYMON24.BIN)deveesserecopiatosuBOOTPServer,da cuiMonitor lo potrà scaricare se opportunamenteconfiguratotramiteidip-switchespresentisullascheda(vedereTabella3.1.1).Ancheinquestocaso,avendoMonitorgiàsistematoop-portunamenteiregistrichegovernanoichipselectdellememorie,l'applicativopuòoccuparetuttalamemorialasciataliberadaMonitor.
pag. �
Bridge ethernet Can Seriale
CodiCe ordine 1902101002aprile 2014 - rev. 1.2
3.5.7 Le classi MEM4STACKS e MEM4BUFFERSNegliesempicontenutinelprogettoAPPLICATION.IDEsonostatedichiarateduespecialiclassidisegmentipercontenere,rispettivamente, ilpooldimemoriadacuipossonovenireallocatiglistacksdeitasksedilpooldibuffersperiframesscambiatisuEthernet.IlfattocheleclassisianodistintepermettedidarealLocatordirettiveperposizionarledovedesiderato.Adesempio,inuncertoapplicativopotrebbeessereconve-nienteposizionareglistacksnelleramon-chip(estre-mamenteveloce)edibuffersdiEthernetinramesterna(leggermentepiùlenta);inunaltroancora,potrebbeesserepiùconvenienteportareinramon-chipporzionidicodiceeposizionaretuttoilrestoinramesterna.
3.5.8 Utilizzo del floating pointÈaltresìdisponibilelapossibilitàdiutilizzarel'emulazio-nedelcoprocessorematematico,utilizzandolelibreriefloatingpointpresentiinParadigmC++.Èperòbennotochetalilibrerieutilizzanounaporzionedimemoriaallocataall'iniziodelsegmentocontenentelostack.PoichèlacustomizzazionedelsistemaoperativoDSTniOSoperatadaSYSTEMElectronicsprevedechetuttiglistacksdeivaritaskscondividanoilmedesimosegmento,nederivacheunosolodeitaskspuòeseguireoperazionifloatingpointochelosviluppatoredell'ap-plicazione deve provvedere opportunimeccanismi dimutuaesclusione.