Then I am wrong I thought the hole *.hal file was parsed before threads where 
started and then there is no execution order as in non sequential VHDL or a 
Makefile.

> > > Example:  PID tuning parameters are pins.  99.9% of they time
> > > they are NOT connected to anything.  A series of "setp" commands
> > > in the HAL file sets the unconnected pins to the proper values.
> > 
> > Then they are connected and I expect setp happens before PID
> > is executed. The *.hal file is a kind of netlist and there is not order
> > execution, in sort of all of it are interpreted and connected at once.
> 
> Actually there IS an order of execution.  A *.hal file should be thought
> of as a script written in the HAL language.  It is executed in order, and
> the order does matter.  If you attempt to use "net" to connect to a pin
> before you use "loadrt" to load the component, it will fail.
> If you use "sets" to set a signal value before "net" creates the signal
> it will fail.
> 
> > I expect *.hal file is interpreted and everything connected before the 
> > threads are started.
> 
> There is a hal command "start" which starts real-time execution.
> It is "usually" the last line in a *.hal file, but there is nothing about 
> HAL that prevents you from making or breaking connections after
> the "start" command.  HAL is designed to allow interactive use.

------------------------------------------------------------------------------
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to