From: pito <pi...@vo...> - 2012-05-14 15:51:17
|
.. and the timing with high and low words written in forth: > : test0 timer-start 10000 0 do PA.7 low PA.7 high loop timer-stop > 10000 s>f f/ > fs. ; ok > test0 9.54074E-5 ok (95usec) > The speed-up is 3x with asm words for pin manipulation. p. ----- PŮVODNÍ ZPRÁVA ----- Od: "pito" <pi...@vo...> Komu: amf...@li... Předmět: Re: [Amforth] Fast pin I/O lib in asm - new names Datum: 14.5.2012 - 17:26:14 > A simple test on fastio.lib (there is no > correction on the do-loop > timing). > The result is the duration of one loop (out of > 10.000 loops). > ---------------------------------------------------------------------------------------------------------- > > Measured @11.0592MHz fcpu, atmega1284p, amforth > 4.9 trunk. > > > printdate.rtc > 2012/05/14-MON-13:04:31 ok > > / portpin: is used for an individual pin only > (0-7) > > > PORTA 7 portpin: PA.7 > ok > > PA.7 pin.o > ok > > > : test1 timer-start 10000 0 do PA.7 pin.l PA.7 > > pin.h loop > > > timer-stop 10000 s>f > > f/ fs. ; > ok > > test1 > 4.14815E-5 ok ( 41 usec) > > > : test2 timer-start 10000 0 do 128 PORTA pin.l > > 128 PORTA pin.h > > > loop timer-stop > > 10000 s>f f/ fs. ; > ok > > test2 > 3.43704E-5 ok ( 34 usec) > > > : test3 timer-start 10000 0 do 128 34 pin.l 128 > > 34 pin.h loop > > > timer-stop 10000 > > s>f f/ fs. ; > ok > > test3 > 3.43704E-5 ok (34 usec) > > > The port! (written in asm) is the same as the > portpin! (forth) > > / bitmask: is used for bits masks ($00-$FF) > > > PORTA $F0 bitmask: PA.HNIB > ok > > PA.HNIB pin.o > ok > > > : test7 timer-start 10000 0 do $88 240 34 port! > > $33 240 34 port! > > > loop timer-st > > op 10000 s>f f/ fs. ; > ok > > test7 > 4.56296E-5 ok (46usec) > > > > > : test5 timer-start 10000 0 do $88 PA.HNIB port! > > $33 PA.HNIB port! > > > loop timer- > > stop 10000 s>f f/ fs. ; > ok > > test5 > 5.15556E-5 ok (52usec) > > > ok > > > : test6 timer-start 10000 0 do $88 PA.HNIB > > portpin! $33 PA.HNIB > > > portpin! loop > > timer-stop 10000 s>f f/ fs. ; > ok > > test6 > 1.54667E-4 ok (155usec) > > > : test-loop timer-start 10000 0 do loop > > timer-stop 10000 s>f f/ > > > fs. ; > > ok > > test-loop > 6.51852E-6 ok (6.5usec) > > > > > ----- PŮVODNÍ ZPRÁVA ----- > Od: "pito" <pi...@vo...> > Komu: amf...@li... > Předmět: [Amforth] Fast pin I/O lib in asm - new > names > Datum: 14.5.2012 - 13:25:55 > > > Hi, some time back I posted here the fastio.asm > > lib for building > > into amforth. I did a refresh recently and > > changed > > > the names of the > > words - ie: > > > > pin.l pin.h pin.l? pin.h? pin.t pin.o > > pin.i > > > port! port@ > > port,h? port.l? (portpin:) > > > > The portpin: portpin! and bitmask: and few > > others > > > (set pullups, > > pulse) are still written in forth (in > > bitnames.frt). The (portpin:) > > is now in asm for does> part of portpin: and > > bitmask:. > > > > So if you are interested and happy with the new > > names I may provide > > Matthias with the source. The lib is written in > > asm based upon > > resources find in amforth and LubosP > > repositories > > > (which were > > written in forth or Lubos' asm for amforth). > > P. > > > > > > ------------------------------------------------------------------------------ > > > > > > Live Security Virtual Conference > > Exclusive live event will cover all the ways > > today's security and > > threat landscape has changed and how IT managers > > can respond. Discussions > > will include endpoint security, mobile security > > and the latest in malware > > threats. > > http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > > > _______________________________________________ > > Amforth-devel mailing list for > > http://amforth.sf.net/ > > Amf...@li... > > https://lists.sourceforge.net/lists/listinfo/amforth-devel > > > > > > ------------------------------------------------------------------------------ > > Live Security Virtual Conference > Exclusive live event will cover all the ways > today's security and > threat landscape has changed and how IT managers > can respond. Discussions > will include endpoint security, mobile security > and the latest in malware > threats. > http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Amforth-devel mailing list for > http://amforth.sf.net/ > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel > |