11
Codice ordine: Data: - Rev: 04/2014 1.1 1902101004 Manuale d’uso e manutenzione MODULO CPU DICO 708EX/B 708EX/BL Sommario 1. Introduzione...............................................................................................3 2. Specifiche tecniche..................................................................................3 2.1 Serigrafia DICO708EX/B.............................................................4 2.2 Serigrafia DICO708EX/BL............................................................4 2.3 LEDS DICO708EX/B......................................................................5 2.4 LEDS DICO708EX/BL....................................................................5 2.5 Connessioni DICO708EX/B.........................................................6 2.6 Connessione DICO708EX/BL.....................................................7 3. MON-EX Firmware.......................................................................................8 3.1 Cosa fa MON-EX..........................................................................8 3.2 Le porte di comunicazione di MON-EX....................................9 3.3 Le segnalazioni luminose di MON-EX......................................9 3.4 Le E2Prom seriali.......................................................................9 3.5 Configurazioni di memoria per gli applicativi.......................10

MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

Codice ordine:Data: - Rev:04/2014 1.1

1902101004

Manualed’uso e manutenzione

MODULO CPU

DICO 708EX/B

708EX/BL

Sommario1. Introduzione...............................................................................................3

2. Specifiche tecniche..................................................................................3

2.1 Serigrafia DICO708EX/B.............................................................42.2 Serigrafia DICO708EX/BL............................................................42.3 LEDS DICO708EX/B......................................................................52.4 LEDS DICO708EX/BL....................................................................52.5 Connessioni DICO708EX/B.........................................................62.6 Connessione DICO708EX/BL.....................................................7

3. MON-EX Firmware.......................................................................................8

3.1 Cosa fa MON-EX..........................................................................83.2 Le porte di comunicazione di MON-EX....................................93.3 Le segnalazioni luminose di MON-EX......................................93.4 Le E2Prom seriali.......................................................................93.5 Configurazioni di memoria per gli applicativi.......................10

Page 2: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. �

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

Storico Revisioni PagineRev. 1.0 Stesura 11

SYSTEM s.p.a. Div. ElectronicsviaGhiarolaVecchia,7341042Fiorano(MO)-Italytel.0536/836111-fax0536/830901www.system-group.ite-mail:[email protected]

Questoprodottosoddisfairequisitidiprote-zioneEMCdelladirettiva2004/108/CE (ex 89/336/CEE) e successive modifiche.

SYSTEM s.p.a. Div. Electronics siriservaildirittodiapportare variazione di qualunque tipo alle specifiche tecnicheinqualunquemomentoesenzaalcunpreavviso.Le informazioni contenute in questa documentazionesono ritenute corrette e attendibili. La riproduzioneancheseparziale,delcontenutodiquestocatalogo,èpermessasolodietroautorizzazionediSYSTEMs.p.a.Div.Electronics.

Ilpresentemanualefariferimentoaiseguenticodici:1902101004 MODULOCPUDICO708EX/B+M011902101013 MODULOCPUDICO708EX/B+M021902101014 MODULOCPUDICO708EX/BL+M011902101011 MODULOCPUDICO708EX/BL+M02

Page 3: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. �

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

1. IntroduzioneLaseriedimoduliCPU708EX/Bxsonobasatisuunapotentecpuingradodi interfacciarsiadunPCdisu-pervisionetramiteprotocolliTCP/IPoWeb-ServeredigestiremodulidiI/Oremotoenodiintelligenticonnessisuunoopiùbusdicampo(CANbusoaltro).ConsentonodiprogettarearchitetturedisupervisioneecontrolloevolutesenzalanecessitàdiintrodurresistemiPC-based, con evidenti vantaggi in termini di affidabilità edigestione.Ilmoduloe’disponibileinquattroversioni;duemodellidicpuM01eM02,duemodellidischedacarrier/Be/BL.

2. Specifiche tecniche• Microprocessore DSTni-EX120MHzx86compati-

bileconcapacitàdiindirizzamentoa20e24bits• 2porte ETHERNET10/100Mbps• 2interfacce full CAN 2.0Ae2.0B• 2interfacce RS232/RS422/RS485 (solover./B)• 1interfaccia RS232(solover./BL)• Memoria RAM volatile fino a 4MB (solo ver. M01)• Memoria RAM tamponata 2Mbyte• Memoria FLASH parallela4MB• Memoria EEPROM seriale1KBx2• Alimentazione 24Vdc1A• Watch-Dog• Orologio-Calendario• Possibilitàdiprogrammazione inlinguaggio"C"o

inlinguaggistandardIEC61131-3(soft-PLC)• Temperatura di lavoro: 0…60°C• Umidità: UR85%(senzacondensa)• Dimensioni: 140×60×110mm• Montaggio subarraDINEN50035

Mappa di memoriaAdd20 Size [KB]Memory

0x00000 256On-chip RAM0x40000 BB_SRAM 2560x80000 Sector 00-07 8x80x90000 Sector 08-13 6x640xF0000 Sector 14 480xFC000 On-chip ROM 16

Add240x0000000x0400000x2000000x4000000x800000

0xA000000xC000000xC10000

0xFC00000xFFC000

MemoryOn-chip RAM

Size [KB]256

SRAM1 (*) 1792SRAM2 (*) 2048

BB_SRAM 2048

Sector 00-07 8x8

Sector 08-69 62x64

Sector 70On-chip ROM

4816

Mappa di memoria

Tabella 2.1

Tabella 2.2 (*) Solo M01

Page 4: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. �

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

2.1 Serigrafia DICO708EX/B

Figura 2.1.1 Serigrafia DICO708EX/B

Settaggio porte CAN:SLOPE = slopecontrolCANBus(dainserirepervelocità

direteCAN>500KB)TERM = terminazioneCANBUS

Settaggi porte seriali:TERM1 e TERM2 = TerminazioneRS485/422POL1 e POL2 = PolarizzazioneRX422

Settaggi CPU:BATT = 1-2batteria inserita;2-3batterianon inse-

rita20_BIT = Indirizzamento a 20-bits (inserito);

a24-bit(noninserito)B_RDIS = DisabilitazionedelBootstrapon-chip

Settaggi On-chip BootstrapB_ETH = AbilitazioneBootdaETHERNET0DBG_MSG = Abilitazionemessaggididebugdelboot-

strapSP_9600 = PorteSP0/SP1a"9600,N81"(inserito);a

"57600,N81"(noninserito)

2.2 Serigrafia DICO708EX/BL

Figura 2.2.1 Serigrafia DICO708EX/BL

Settaggio porte CAN:SLOPE = slopecontrolCANBus(dainserirepervelocità

direteCAN>500KB)TERM = terminazioneCANBUS

Settaggi CPU:BATT = 1-2batteria inserita;2-3batterianon inse-

rita20_BIT = Indirizzamento a 20-bits (inserito);

a24-bit(noninserito)B_RDIS = DisabilitazionedelBootstrapon-chip

Settaggi On-chip BootstrapB_ETH = AbilitazioneBootdaETHERNET0DBG_MSG = Abilitazionemessaggididebugdelboot-

strapSP_9600 = PorteSP0/SP1a"9600,N81"(inserito);a

"57600,N81"(noninserito)

PWR

1C

AN

1C

AN

0SE

R1

ETH

0

TERM

SLO

PETE

RMSL

OPE

DB

G_M

SGB

_RD

IS20

_BIT

SP_9

600

B_E

TH

SW2

SW1

BATT

ETH

1

SER

2

TERM2 POL2

+PO

L2-

TERM1 POL1

+PO

L1-

BATT2

1

11

PWR

1C

AN

1C

AN

0SE

R0

ETH

0

TERM

SLO

PETE

RMSL

OPE

DB

G_M

SGB

_RD

IS20

_BIT

SP_9

600

B_E

TH

SW2

SW1

BATT

BATT2

ETH

1

1

11

Page 5: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. �

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

2.3 LEDS DICO708EX/B

Figura 2.3.1

ETH0 Led Giallo = linkstabilitoETH0 Led Verde = segnalazione di trafficoETH1 Led Giallo = linkstabilitoETH1 Led Verde = segnalazione di trafficoCAN0 = trasmissioneportaCAN0CAN1 = trasmissioneportaCAN1SER1 Led Rosso = trasmissionesuportaserialeSP1SER1 Led Verde = ricezionesuportaserialeSP1SER2 Led Rosso = trasmissionesuportaserialeSP2SER2 Led Verde = ricezionesuportaserialeSP2PWR = LedpresenzaalimentazioneL1 = LedgeneralpurposeL2 = LedgeneralpurposeL3 = LedgeneralpurposeL4 = LedgeneralpurposeL5 = Ledgeneralpurpose

2.4 LEDS DICO708EX/BL

Figura 2.4.1

ETH0 Led Giallo = linkstabilitoETH0 Led Verde = segnalazione di trafficoETH1 Led Giallo = linkstabilitoETH1 Led Verde = segnalazione di trafficoCAN0 = trasmissioneportaCAN0CAN1 = trasmissioneportaCAN1SER0 Led Rosso = trasmissionesuportaserialeSP0SER0 Led Verde = ricezionesuportaserialeSP0PWR = LedpresenzaalimentazioneL1 = LedgeneralpurposeL2 = LedgeneralpurposeL3 = LedgeneralpurposeL4 = LedgeneralpurposeL5 = Ledgeneralpurpose

Page 6: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. �

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

2.5 Connessioni DICO708EX/B

Figura 2.5.1

PWR - ALIMENTAZIONE Pin1 +24Vdc Pin2 GND Pin3 PE

CAN0 - CAN BUS porta 0 Pin4 CANH Pin5 CANL Pin6 REF

Pin7 CANH Pin8 CANL Pin9 REF

CAN1 - CAN BUS porta 1 Pin10 CANH Pin11 CANL Pin12 REF

Pin13 CANH Pin14 CANL Pin15 REF

SER1 - Porta Seriale SP1 RS232 RS485 RS422Pin16 TX Data- TX-Pin17 RTS Data+ TX+Pin18 GND GND GNDPin19 CTS NC RX-Pin20 RXD NC RX+

ETH1ETH0

SER2SER1 CAN0 CAN1 PWR

21 22 23 24 25

16 17 18 19 20

7 8 9

4 5 6

13 14 15

10 11 12 1 2 3

SER2 - Porta Seriale SP2 RS232 RS485 RS422Pin21 TX Data- TX-Pin22 RTS Data+ TX+Pin23 GND GND GNDPin24 CTS NC RX-Pin25 RXD NC RX+

ETH0 - Porta Ethernet 0

ETH1 - Porta Ethernet 1

Page 7: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. �

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

2.6 Connessioni DICO708EX/BL

Figura 2.6.1

XP1 - AlimentazionePin 1 +24VdcPin 2 GNDPin 3 PE

XP3, XP8 - CAN0Pin 4 CANHPin 5 CANLPin 6 REF

Pin 7 CANHPin 8 CANLPin 9 REF

XP2, XP7 - CAN1Pin 10 CANHPin 11 CANLPin 12 REF

Pin 13 CANHPin 14 CANLPin 15 REF

XP5XP6

(ETH1)(ETH0) XP4

XP8XP3

XP7XP2 XP1

1616 17 18 19 20 4 5 6

7 8 9 13 14 15

10 11 12 1 2 3

(SER0)(CAN0) (CAN1)

(PWR)

XP4 - Porta Seriale SP0 RS232 Pin16 TX Pin17 RTS Pin18 GND Pin19 CTS Pin20 RXD

XP5 - ETH1

XP6 - ETH0

Page 8: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. �

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

3. MON-EX FirmwareMON-EX è il firmware standard che viene bruciato nel-la FLASHparallela diDICO708EX/BeDICO708EX/BLdurantelaproduzioneinSYSTEMElectronics.Piùpre-cisamente,laFLASHparallelacontienesialaversionea 24-bit che la versione a 20-bit di MON-EX, comeevidenziatonelleappositetabellecontenentilemappedimemoria.MON-EXvienelanciatodalbootstrapon-chipe,asuavolta,puòfarepartireunaltroapplicativoutenteresi-dente ad un indirizzo fisso in FLASH parallela o scaricato inRAMviaprotocolloBOOTP/TTFTP.SYSTEMElectronicsfornisceapposititoolschepossonovenire usati per comunicare col firmware MON-EX at-traversoleporteSP0,CANbus0eleporteEthernet,seattive.Questitoolspermettonodiconoscerelaversionedi firmware MON-EX che sta girando, di invalidare un'ap-plicazioneesistente,scaricarneunanuovaevalidarla.Inoltre,sonofornitiglistrumentiperutilizzarelasecondaEEPROM seriale, l'utilizzo del Real Time Clock, la lettura/scritturadegliI/Oelaletturadizonedimemoria.IncasosivogliainserireinunaHMIdedicatailnucleodiquestitools,sipossonorichiedereaSYSTEMElectronicsidettaglirelativiaiprotocolliperCANbuseperEther-net/Seriale.MON-EXcontieneancheunWebServerchepermettediinterfacciarsitramiteunbrowserstandard(InternetExplorer,Firefox,Chrome,ecc…)perreperireinforma-zioni,impostareIPeNetmaskdasalvareinmemorianonvolatile,scaricareapplicativi,validarliedinvalidarli.

3.1 Cosa fa MON-EXLaprimissimaazionediMON-EXèleggereunregistroincuilalogicahardwaredellaschedahamemorizzatolacausadiresetdellaCPU(power-up,watch-dogoaltro)e scrivere questa informazione in un area fissa di me-moria(Monitor Exchange Memory)doveunprogrammaapplicativolapossainseguitoreperire.Quindi,MON-EXlegge idip-switchesSW1eSW2persaperecomeprocedere.

Tabella 3.1.1

SW1_1 SW1_2 SW1_3 SW1_4 SW1_5 SW1_6 SW1_7 SW1_8CANbus 0

User defined

Off

Port used bymonitor

IP Mode

Off Off = Class C

Off On = E2PromOn Off = DHCPOn On = BOOTP

(192.168.1.x)or ARP trick

CANbus baudrate

Off 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_8

On

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 0

On

Port can bemanaged byTCPtoCAN /UDPtoCANGateway

User defined

Off

ExecuteApplicationprogram, if

present

Loswitchpiùdiscriminanteè,senzadubbio,SW2_1.QuandoèON,SW2_1diceaMON-EXdiignorarequa-lunqueprogrammaapplicativoeventualmenteresidenteinFLASHparallelaediprocedereaprendouninsiemediportedicomunicazioneattraversocuiriceverecomandidalmondoesterno.QuandoSW2_1èOFF,MON-EXleggelaE2Promserialein cerca di patternsmagici ed altre informazioni cheindichino la presenza di un applicativo utente validonella FLASH parallela (ad un indirizzo fisso dipendente dallamodalitàdiindirizzamentoa20/24bits)edeven-tualmentelolancia.Peridettaglirelativiagli indirizzifissi, si faccia riferimento alle tabelle con le opportune mappedimemoria.È altamente consigliabile che l'applicativo usi i dip-switchesrelativiaNodeIDebaudratedelCANbusnelmedesimo modo di MON-EX e che l'applicativo imple-mentiinqualchemodolafunzionalitàdiinvalidazionedi se stesso (inmodo taledapoter essere indotto asuicidarsiefarripartireMON-EXalsuccessivoreset).

Tabella 3.1.2

Tabella 3.1.3 (*) solo M01

Mappa di memoria di MON-EX-20

Add20 MemoryChip

Chip Size[KB]

Area Size[KB] Area Type

0x00000 1 Interrupt Vectors0x00400 0,75 Reserved0x00700 0,25 Monitor Exchange Memory0x00800

On-chip RAM 256222

Monitor Data(available for application)

0x0380000x40000

BB_SRAM 256224

Monitor Free Memory(application download)

Unused by Mon-EX-20640x700000x80000 Sector 00-03 4x8 Unused by Mon-EX-200x88000 Sector 04-07 4x80x90000 Sector 08-10 3x64

22420-bit Application

(started by Mon-EX-20)0xC0000 Sector 11-13 3x640xF0000 Sector 14 48

240 Mon-EX-20

0xFC000 On-chip ROM 16 16 DSTni-EX Bootstrap

Mappa di memoria di MON-EX-24

Add24 MemoryChip

Chip Size[KB]

Area Size[KB] Area Type

0x000000 1 Interrupt Vectors0x004000 0,75 Reserved0x007000 0,25 Monitor Exchange Memory0x008000

On-chip RAM 256

254Monitor Data

(available for application)

0x400000

BB_SRAM 2048 2048

Monitor Free Memory(application download)

20-bit Application(started by Mon-EX-20)3x64

Sector 00-02 3x8

0x040000SRAM1(*) 1792

33280x2000000x380000

SRAM2(*) 2048512 Unused by Mon-EX-24

0x800000Unused by Mon-EX-24

0xA000000xC00000 Unused by Mon-EX-240xC06000 Sector 03 8 [Eth2Serials Configuration]0xC08000 Sector 04-07 4x8

2240xC10000 Sector 08-100xC40000 Sector 11-14 4x64 256 Mon-EX-200xC80000 Sector 15-66 52x64 3328 24-bit Application

(started by Mon-EX-24)0xFC0000 Sector 67-70 240 Mon-EX-240xFFC000 On-chip ROM

4x6416 DSTni-EX Bootstrap

Page 9: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. �

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

3.2 Le porte di comunicazione di MON-EX

QuandoMON-EXignorauneventualeprogrammaappli-cativo,iniziaafarlampeggiareL3edaprealcuneportedicomunicazione su cui attendere comandi dall'esterno.

3.2.1 La porta seriale SP0 (RS232)Laporta seriale SP0 vieneapertaa"38400,N81"indi-pendentementedalsettaggiodegliswitches.

3.2.2 La porta CAN0SeloswitchSW1_1èOFFedilnodeIDèdiversodazero(switchesSW2_2-SW2_8),laportaCANbus 0vieneapertaconlabaudrateimpostatadagliswitchesSW1_6-SW1_8.SegliswitchesSW2_2-SW2_8sonotuttiOFF,ilNodeIDvieneautomaticamenteportatoda0a1.L'impostazione di fabbrica per il Node ID è 1; quella per labaudrateè500Kbps.SeSW1_1èON,laportaCANbus0puòvenireusatacomegatewaytraTCP/UDPeCANbus;laportaCANbus1funzionasemprecomegateway.Dettaglisulprotocollodigatewaysonodisponibilipergliinteressati.

3.2.3 La porta ETH0LeporteEthernetdeidispositiviSYSTEMElectronicshan-noMACdeltipo00-11-63-xx-xx-xx;disolito,laportaEthernet0haunMACaddressparielaportaEthernet1ilMACaddressdispariimmediatamenteseguente.

Seriescearecuperareinqualchemodo(dipendente-mentedallaposizionediSW1_4-SW1_5)unIPedunaNetMask,MON-EXapreanchelaportaEthernet 0.Il settaggiodi fabbricaper IP_ModeèClass C: l'IP è "192.168.1.1" (Node ID, come abbiamo già visto, èimpostatoad1)eNetMaskè"255.255.255.0".Se SW1_1 è ON, l'IP è fissato a "192.168.1.1".SeSW1_1èOFF,unNode IDcompreso tra1e127viene usato come ultimo byte dell'IP; un Node ID nullo, invece,attivailcosiddetto"ARPtrick",chepermettediassegnareunIPtemporaneousandoicomandistandardARPePING.Indettaglio,sitrattadiaggiungeretempo-raneamenteunavocestaticaallatabellaARPdelproprioPCe,successivamente,diusareilcomandoPINGperassegnare temporaneamente l'IP desiderato alla porta ETH0;adesempio,sesivuoleassegnaretemporanea-mente l'IP 10.11.12.13 alla porta ETH0 avente MAC address001163-000100,sidevonodigitaresulproprioPCiseguenticomandi: arp -s 10.11.12 00-11-63-00-01-00 ping 10.11.12.13A questo punto, fino al prossimo spegnimento DI-CO708EX/BoDICO708EX/BLdiventaraggiungibile(adesempio, con un browser) attraverso l'IP fissato.Usandounbrowser,gliIPseleNetMasksperleporteEthernet 0 ed Ethernet 1 possono essere modificati e salvatisuE2Promseriale,inmodocheMON-EXpossadalìleggerliincasoIP_ModevengapostoadE2Prom.

SeIP_ModeèimpostatoaDHCP, l'IP e la NetMask per laportaEthernet0puòessereottenutadaunserverDHCP;intalcasoSYSTEMElectronicssuggeriscecheilserver DHCP venga configurato per usare il MAC address come chiave per l'assegnazione di IP e NetMask.

SeIP_ModeèimpostatoaBOOTP,unappositoserverdeveassegnareIPeNetMaskallaportaEthernet0e,quindi, scaricare un applicativo utente nella RAM diDICO708EX/BoDICO708EX/BL(sivedaMonitor Free Memory nelletabelledellemappedimemoria).

3.3 Le segnalazioni luminose di MON-EX

3.3.1 L5Comegiàaccennato,seMON-EXnondevefarpartireuneventualeprogrammaapplicativo,iniziaafarlam-peggiareL3primadiprocedere.Siconsiglia,dunque,agliapplicatori,dinonusarequelledneiprogrammi,inmodo tale che siano chiaramente distinguibili all'esecu-zionedelMonitorequelladiunapplicativo.

3.3.2 L4SeIP_ModeèimpostatoadE2PromoaDHCPeMON-EXnonriesceadottenereunIPedunaNetMaskvalidi,esso cessa qualunque attività ed entra in un loop infinito facendolampeggiareL2allafrequenzadi1Hz.SeIP_ModeèimpostatoaBOOTPeMON-EXvainti-meout sull'attesa di connettersi ad un server apposito, essoripetecontinuamentelaricercadelserverfacendolampeggiarebrevementeL2adognitentativo.SeIP_ModeèimpostatoaClass Cinmodotaledaattiva-re l'ARP trick, MON-EX attende l'arrivo del comando PING facendolampeggiareL2allafrequenzadicirca2Hz.

3.3.3 L3DurantelacopiaturadaRAMaFlashdiunprogrammaapplicativoinqualchemodoscaricato,MON-EXaccendeL1peruntempo(breve)chedipendedallalunghezzadall'applicativo.

3.4 Le E2Prom serialiDICO708EX/BeDICO708EX/BLmontano2chipdime-moriaE2Promseriali.Nel primo di questi chip, protetto contro qualunquetentativodiscrittura,sonostatimemorizzatialcunidatidifabbricacomei2MACaddressesdelleporteEthernetedaltro.Nelsecondochip,opportunamentescrivibile,possonoinvecevenirmemorizzatidaticomegliindirizziIPelerelativeNetMasks,ivalidatorideglieventualiprogrammiapplicativiresidentiinFlashparallelanonchèunmassi-mo di 32 byte utente, cui l'applicativo può assegnare il significato desiderato.

Page 10: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. 10

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

3.5 Configurazioni di memoria per gli applicativi

SYSTEMElectronicsmetteadisposizionedegliutilizzatoridiDICO708EX/BoDICO708EX/BLnonsololelibrerienecessarieacostruireunapplicativo,maancheunesem-piodiprogettocontenenteiltargetMON-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,nelseguitoverran-no presentate le varie configurazioni di memoria previste nel file APPL001.CFG; ad ognuna di esse è associato un particolarestyle sheet nel file di progetto APPLICATION.PDLProjectDescriptionLong).Alcune di queste configurazioni tengono conto della eventualepresenzadiunMonitora20oa24bits)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, essere riutilizzato dall'applicativo utente lanciato dalMonitorstesso.SinotiancoracheilMonitornonutilizzaalcunaporzionediramtamponata.Si noti infine che Monitor gestisce un'area di scambio congliapplicativichemandainesecuzione;taleareainizia all'indirizzo fisico 0x00700 ed occupa 256 bytes, cosìsuddivisi:

Tabella 3.5.2

Tutte le configurazioni descritte nel seguito prevedono dunquecheiprimi2KBdellospaziodimemoriasianoriservati:1KBservonoper latabelladeivettoridi in-terrupt,768bytesper lo stackdiPDREM(in casodidebugging) e 256 bytes per l'area di scambio tra Monitor egliapplicativi.

Monitor Dimens. Codice Flash impegnata Dimens. Dati Ram impegnata20 bits ~ 177 KB 240 KB ~ 163 KB 192 KB24 bits ~ 225 KB 240 KB ~ 176 KB 256 KB

0x00700 - 0x007010x00702 - 0x007070x00708 - 0x007090x0070A - 0x0070B0x0070C - 0x007FF

iRestartReasonszMonitorReleaseiCANbus0BaudrateiCANbus0NodeIdReserved

3.5.1 Programma in debuggingSe, nell'ambiente di sviluppo Paradigm, si associa ad un target uno style sheet di debugging (Debug20 oDebug24), viene definito il simbolo __PDREMOTE__; in talcaso,iltooldirilocazione(Locator)vieneistruitodaAPPL001.CFGaconsiderareimpegnatelezonedime-moriaon-chipdedicataaPDREMquandoquestovienescaricatoalbootstrapattraversolaportaserialeSP0(da0x00800a0x03FFFeda0x3F000a0x3FFFF).Se possibile, si consiglia di usare per l'applicativo la medesimazonadimemoriadatichesihaintenzionediusare per il sistema finito.

3.5.2 Programma residente in flash lanciabile dal Bootstrap (esecuzione in flash)Glistyle sheet Flash20 e Flash24 definiscono il simbolo __IN_FLASH__checostringe il locatoragenerareunfile in formato HexIntel (FLASH20.HEX o FLASH24.HEX) chedovràpoiessereprocessatonuovamentedaDSTMK-BIN32 per ottenere il file FLASH20.SPB (o FLASH24.SPB); questo file deve infine essere scaricato sul target medianteDSTniLoader.L'indirizzo iniziale del codice deve rispettare le specifiche del bootstrap on-chip, che ricerca l'intestazione di un ap-plicativo in flash agli indirizzi multipli di 64KB (partendo dal più alto e sino all'inizio dell'upper memory).

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)Glistyle sheet F2Ram20 e F2Ram24 definiscono il sim-bolo __FLASH_TO_RAM__; il file HexIntel generato dal locator(RAM20.HEXoRAM24.HEX)puòessereproces-satodaDSTMKBIN32induediversimodiegenerareifiles RAM20.SPB e RAM24.SPB oppure i files SERIAL20.SDBeSERIAL24.SDB.I files .SPB devono essere scaricati sul target mediante DSTniLoaderevengonogestitidaBootstrapcheprevedeacopiarliinramon-chipprimadellaesecuzione.In entrambi i casi, l'indirizzo di inizio dell'applicativo deve essere obbligatoriamente 0x00800 e l'intero applicativo (codice più dati iniziali) non deve oltrepassare il confine costituito dall'indirizzo 0x3BFFF (max 238KB); questo limite è dovuto all'utilizzo dell'ultima porzione di ram on-chipdapartedelBootstrape,soprattutto,alfattocheBootstrapprogrammairegistridichipselectinmodotaledaeccederesoloallaramon-chip.

Page 11: MODULO CPU Manuale DICO 708EX/B d’uso e manutenzione … · pag. Modulo Cpu dICo 708EX/B - dICo 708EX/Bl apr l 2014 - r v. 1.1 CodICE ordI nE 1902101004 2.3 LEDS DICO708EX/B Figura

pag. 11

Modulo Cpu dICo 708EX/B - dICo 708EX/Bl

CodICE ordInE 1902101004aprIlE 2014 - rEv. 1.1

3.5.4 Programma residente in flash lanciabile da Monitor (esecuzione in ram)Glistyle sheet F2Ram20eF2Ram24costringonoillo-cator a generare, oltre al file HexIntel di cui si è detto al punto precedente, anche un file binario RBYMON20.BIN o RBYMON24.BIN. Questo file deve essere scaricato in flash al Monitor attraverso la porta 1100 o median-tealWebServer integratonelMonitorstesso.Dopo iltrasferimento in flash, occorre eseguire l'operazione di validazione dell'applicativo, indicando un indirizzo iniziale nonnecessariamenteugualea0x00800.Monitor provvede a copiare l'applicativo in ram prima dell'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 la memoria lasciata libera da Monitor (fino a1536KB[soloperM013328KB]dicodiceapplicativoperlaversionea24-bits).

3.5.5 Programma residente in flash lanciabile da Monitor (esecuzione in flash)Gli style sheets FBYMON20 e FBYMON24 defiscono il simbolo__FLASH_UNDER_MONITOR__;comenelcasoprecedente, il file binario generato dal Locator (FBY-MON20.BINoFBYMON24.BIN)deveesserescaricatoilflash al Monitor attraverso la porta 1100 o mediante il WebServerintegratonelMonitorstesso.Dopoiltrasfe-rimento in flash, occorre eseguire l'operazione di vali-dazione dell'applicativo, indicandone l'indirizzo iniziale (chedeverisiederenellezoneopportunamentemessea disposizione da Monitor). L'esecuzione dell'applicativo avverrà direttamente in flash.

3.5.6 Programma resistente su BOOTP e lanciabile da Monitor (ese-cuzione in RAM)Gli style sheet BbyMon20 e BbyMon24 definiscono il simbolo__BOOTP_UNDER_MONITOR; inquestocaso,il file binario generato dal locator (BBYMON20.BIN o BBYMON24.BIN)deveesserecopiatosuBOOTPServer,da cuiMonitor lo potrà scaricare se opportunamenteconfigurato tramite i dip-switches presenti sulla scheda (vedereTabella3.1.1).Ancheinquestocaso,avendoMonitorgiàsistematoop-portunamenteiregistrichegovernanoichipselectdellememorie, l'applicativo può occupare tutta la memoria lasciataliberadaMonitor.

3.5.7 Le classi MEM4STACKS e MEM4BUFFERSNegliesempicontenutinelprogettoAPPLICATION.PDLsonostatedichiarateduespecialiclassidisegmentipercontenere,rispettivamente, ilpooldimemoriadacuipossonovenireallocatiglistacksdeitasksedilpooldibuffersperiframesscambiatisuEthernet.IlfattocheleclassisianodistintepermettedidarealLocatordirettiveperposizionareglistacksnelleramon-chip(estremamenteveloce)edibuffersdiEthernetinramesterna(leggermentepiùlenta);dipendentementedall'applicativo, potrebbe essere più conveniente portare inramon-chipporzionidicodicedaposizionaretuttoilrestoinramesterna.

3.5.8 Utilizzo del floating pointÈ altresì disponibile la possibilità di utilizzare l'emulazio-nedelcoprocessorematematico,utilizzandolelibreriefloating point presenti in Paradigm C++.Èperòbennotochetalilibrerieutilizzanounaporzionedi memoria allocata all'inizio del segmento contenente lo stack.PoichèlacustomizzazionedelsistemaoperativoDSTniOSoperatadaSYSTEMElectronicsprevedechetuttiglistacksdeivaritaskscondividanoilmedesimosegmento,nederivacheunosolodeitaskspuòeseguireoperazioni floating point.