HiDEOS Details
Jim Kowalkowski
Table of Contents
Levels
- Using existing support
- Writing EPICS/HiDEOS device support
- Writing HiDEOS embedded programs
Steps
- Set up your MVME162 jumpers
- Build g++ compiler and HiDEOS OS code
- Build HiDEOS package
- Build EPICS/HiDEOS device support
- Modify EPICS ascii files
- Create database
- Configure vxWorks startup script
- Boot
Documentation is on the WWW.
MVME162 HiDEOS Processor
- Read "Setting up your MVME162".
HiDEOS home directory
- Create a home directory for HiDEOS (optional login)
- Make directory for GNU, os_code, and hideos.
- Read "How to quickly install HiDEOS".
Compiler Notes
- Get all GNU pieces from HiDEOS Home Page.
- Follow instructions explicitly.
- Do not change sun3 to sun4.
- Compile and install g++ and related GNU tools.
OS Code Notes
- Get "Required C Library source".
- Adjust variables in os_code/config/HIDEOS_VARS
- Set GNU_DIR to your g++ install directory.
OS Code is really a modified libc which runs on the HiDEOS processor, it does not change on a regular basic.
Adjust Variables in HIDEOS_VARS
- Set GNU_DIR to the GNU installation directory
- Set CORE_DIR to the os_code directory
Adjust Variables in HIDEOS_VARS_vx*
- Set VX_DIR to your vxWorks directory
Type "gnumake World" in hideos directory
- The "gnumake World" command will clean out the tree, do a generate all dependancies, do a make and an install.
Important Installed Files
- install/include/msg - HiDEOS message header files
- install/include/hideos - HiDEOS system header files
- install/usrapps/bare162/* - Applications that can be downloaded to a 162 HiDEOS processsor
- install/usrapps/vx167/* - Applications that run under vxWorks
Application xfd_app is the standard program to download to the 162 HiDEOS processor. Application bp_test is used under vxWorks with EPICS.
- Read "EPICS device support"
- Get "EPICS HiDEOS device support source" and place it in your EPICS getrel or application developers directory. The programs in this module depend on HiDEOS and on an EPICS release. The build of this module must be done in a getrel-type directory.
- Contains three standard makefiles: Makefile, Makefile.Vx, Makefile.hideos. You must modify the .Vx and .hideos makefiles to point them at the tops of the getrel and HiDEOS trees. Follow the direction in the makefiles.
- Creates three files in O.mv167 directory that you must load into vxWorks.
- ldpp.o - Front end to vxWorks loader for c++ object modules.
- Hideos.o - The HiDEOS system
- EpicsHideos.o - All of the EPICS device support to communicate with HiDEOS.
vxWorks Start Up Script
- load EPICS
- load databases
- load ldpp.o
- load Hideos.o with ldpp
- load EpicsHideos.o with ldpp
- download embedded HiDEOS executable (xfd_app)
- start HiDEOS running under vxWorks (hideos_main)
- configure HiDEOS serial ports here
- configure HiDEOS GPIB links here
- start EPICS (iocInit)
HiDEOS Processor Information
- Auto detects IP modules.
- Generally starts and names one task per IP module.
- Starts one task per serial port.
- Names of tasks print out on MVME162 console
- Name is prefixed with slot ID "[abcd]-"
- a-Serial[x] = serial port x of IP module in slot a
- b-ip488 = GPIB IP in slot b
- c-ADC = An ADC IP module in slot c
- d-DAC = A DAC IP module in slot d
General Device Support Names
- stringin - devSiHideos - Hideos Stringin
- stringout - devSoHideos - Hideos Stringout
- waveform - devWfFanuc - Hideos Fanuc
- ai - devAiLove - Hideos Love Controllers
- ai - devHideosADC - Hideos ADC
- ao - devHideosDAC - Hideos DAC
Records used for HiDEOS will appear as VME links. Use the CARD field to specify the HiDEOS system you want to talk to. Card zero is the vxWorks EPICS processor. The SIGNAL field is device support specific. Enter the name of the HiDEOS task that you want to connect to in the PARM field of the link.
- Be sure to do "makesdr" after modifying the EPICS ascii files.
- Set serial parameters such as baud rate using ConfigureHideosSerialPort() from the vxWorks shell.
- Set up Love controller tasks using ConfigureLoveTask()
- Set up GPIB support using HiDEOSGpibLinkConfig().