Vme-sporadresse

Vme-sporadresse h1>

Nar du arbeider med en CSR / CR-enhet, er det forste trinnet a finne identifikatorene for brettet. Dette bor inkluderes i leverandordokumentasjonen, og kan verifiseres ved a undersoke det aktuelle VME-sporet ved kjoring. Bibliotekets funksjoner vmecsrdump (lvl) og vmecsrprint (slot, lvl) kan brukes til dette. Se IOC-skallseksjonen for detaljer om disse funksjonene.

Inkludert denne identifiserende informasjonen i koden gir en viktig sikker vakt mot misbruk av brukeren. Dette gir en enkel mate a hindre at koden din prover a fa tilgang til feil type enhet.

For a initialisere ma du kjenne sitt spornummer. Mens det er mulig a automatisk registrere kort, er det a foretrekke a ha en brukerdefinert kartlegging mellom fysisk id (spor #) og logisk ID (Asyn-port, ID-ID, etc.). Dette muliggjor konsekvent navngivning, selv om kortene blir lagt til eller fjernet fra systemet.

For EPICS-drivere vil initialisering vanligvis gjores med en IOC-skallfunksjon. For eksempel:

Ville sette kort «dac» for a v re kortet i spor 5. Dette imagin re kortet er gitt en A24 basisadresse pa 0x210000, og satt til a generere avbryt vektor 0x60 pa niva 4.

Nedenfor er et eksempel implementering av myVMECardSetup ().

Det forste trinnet er a teste VME-sporet og fa CSR-basisadressen. Hvis sporet var tomt eller befolket med et ikke-stottet kort, ville vi avbryte her.

Forutsatt at kortet stotter full jumperlos konfigurasjon, sa vil baseadressen bli programmert ved hjelp av CSR-plassen. Mens nyere VME64x-kort har standardbaserte adresseregister for dette, gjor ikke eldre VME64-kort det. For disse kortene skal leverandoren dokumentere den riktige maten a angi basisadressen pa.

Nar A24-basen adressen er satt, kartlegger vi den i prosessadressen med standard devLib-kartleggingssamtalen.

Fest alltid avbruddshandleren for du kan sette avbrudd.

Verken VME64 eller VME64x angir standardregistre for avbruddsniva eller vektorkode. Leverandor dokumentasjon ma angi hvordan du skal sette dette inn.

Dette kan ikke gjores i CSR-rommet, men heller i et annet adresserom.