DHD
05-06-07, 02:08 PM
I installed the following code on a ARM 2106 USB from NMI.
1) When I ran the word "GGG" , I measured pulses that were 1 usec wide and that occurred every 230 usecs. Is the scheduler running on a ARM 2106 USB board "off" by this factor ?
2) When I ran the state machine "TOGGLE" , my toggle rate was about 10 Hz. Why is the state machine so slow in my code ?
\ Reconfigure the Terminal Input Buffer
HEX
CREATE NTIB \ NEW TIB
100 ALLOT \ Save 256D locations for TIB
400003C0 CONSTANT TIBL
NTIB 8 + TIB ! \ move TIB to new saved space
F0 TIBL C! \ make TIB 248D characters long
\ 000000000000000000000000000000000000000000000000000000000000000000
\ 000000000000000000000000000000000000000000000000000000000000000000
\ SPTK ???? <----- PROJECT number
\ VERSION v0.0.1
\ 20070505 IsoMax Speed Test
\ based on isoMAX for the ARM processor
\ baud rate is 115K BAUD 8N1
\ 000000000000000000000000000000000000000000000000000000000000000000
\ HISTORY
\ 20070505 v001 created speed test
\ 0000000000000000000000000000000000000000000000000000000000000000000
\ CREATED BY DHD aka Bill Goodrich billgoodrich.com
\ AGSC @ RADMI.com omegadogs.com wftelectronics.com
\ 0000000000000000000000000000000000000000000000000000000000
\ create names P30 and P31 for appropriate addresses
HEX
40000000 CONSTANT P30 \ data zero
80000000 CONSTANT P31 \ data one
FFFFFFFF CONSTANT TRUE \ defines true
00000000 CONSTANT FALSE \ defines false
HEX
C0000000 IODIR !
\ define the state machine named CRDRDR
MACHINE TOGGLE ON-MACHINE CRDRDR
APPEND-STATE AAA
APPEND-STATE BBB
\ begin definitions of states used by CRDRDR
\ rest state
IN-STATE
AAA
CONDITION
TRUE
CAUSES
P31 ON
THEN-STATE
BBB
TO-HAPPEN
IN-STATE
BBB
CONDITION
TRUE
CAUSES
P31 OFF
THEN-STATE
AAA
TO-HAPPEN
: PULSE P31 ON P31 OFF ;
\ end of definitions of states
\ 0000000000000000000000000000000000000000000000000000
: GG ." TOGGLE running " CR AAA SET-STATE INSTALL TOGGLE ;
: GGG ." SCHEDULE running " CR EVERY 100 MICROSECONDS SCHEDULE-RUNS PULSE ;
1) When I ran the word "GGG" , I measured pulses that were 1 usec wide and that occurred every 230 usecs. Is the scheduler running on a ARM 2106 USB board "off" by this factor ?
2) When I ran the state machine "TOGGLE" , my toggle rate was about 10 Hz. Why is the state machine so slow in my code ?
\ Reconfigure the Terminal Input Buffer
HEX
CREATE NTIB \ NEW TIB
100 ALLOT \ Save 256D locations for TIB
400003C0 CONSTANT TIBL
NTIB 8 + TIB ! \ move TIB to new saved space
F0 TIBL C! \ make TIB 248D characters long
\ 000000000000000000000000000000000000000000000000000000000000000000
\ 000000000000000000000000000000000000000000000000000000000000000000
\ SPTK ???? <----- PROJECT number
\ VERSION v0.0.1
\ 20070505 IsoMax Speed Test
\ based on isoMAX for the ARM processor
\ baud rate is 115K BAUD 8N1
\ 000000000000000000000000000000000000000000000000000000000000000000
\ HISTORY
\ 20070505 v001 created speed test
\ 0000000000000000000000000000000000000000000000000000000000000000000
\ CREATED BY DHD aka Bill Goodrich billgoodrich.com
\ AGSC @ RADMI.com omegadogs.com wftelectronics.com
\ 0000000000000000000000000000000000000000000000000000000000
\ create names P30 and P31 for appropriate addresses
HEX
40000000 CONSTANT P30 \ data zero
80000000 CONSTANT P31 \ data one
FFFFFFFF CONSTANT TRUE \ defines true
00000000 CONSTANT FALSE \ defines false
HEX
C0000000 IODIR !
\ define the state machine named CRDRDR
MACHINE TOGGLE ON-MACHINE CRDRDR
APPEND-STATE AAA
APPEND-STATE BBB
\ begin definitions of states used by CRDRDR
\ rest state
IN-STATE
AAA
CONDITION
TRUE
CAUSES
P31 ON
THEN-STATE
BBB
TO-HAPPEN
IN-STATE
BBB
CONDITION
TRUE
CAUSES
P31 OFF
THEN-STATE
AAA
TO-HAPPEN
: PULSE P31 ON P31 OFF ;
\ end of definitions of states
\ 0000000000000000000000000000000000000000000000000000
: GG ." TOGGLE running " CR AAA SET-STATE INSTALL TOGGLE ;
: GGG ." SCHEDULE running " CR EVERY 100 MICROSECONDS SCHEDULE-RUNS PULSE ;