Hello Jan, Erich puts the case for being able to build AmForth very well.
I build AmForth on OS X if that is of any help. Kind regards, Tristan On 07Jun19 21:37, Erich Wälde wrote: > Hello Jan, > > Jan Kromhout via Amforth-devel writes: > > > Hello Tristan,Erich > > > > This is far over my knowledge, but will give it a try. > > > > But when I try to load the spi.frt I get an error here > > > > |C| 97|\ send a byte, ignore recieved byte > > |S| 98|: c!spi ( c -- ) > > |S| 99| c!@spi drop > > |E=3D ?? -13 6 > > In avr8/words you will find 3 files: > > 2spirw.asm n-spi.asm spirw.asm > which in turn will define 4 words: > > !@spi n@spi n!spi c!@spi > all of these come to life if you include their .asm files and > reassemble. > > Rebuilding your project: yes, it might look intimidating the > first time. However, think about the gains: > > - you can chose another board with a different controller > > - you can change the clock crystal to another frequency, e.g. I > strongly prefer baud rate crystals, e.g. 11059200 Hz. > > - you can change the baud rate of the serial interface (within > limits). > > - you can extend your AmForth system with a large number or words > to fit your project. > > - you are not locked to use somehow prebuild .hex files > > The sky is the limit! So: Don't give up too soon, please! > > This might help if you are linux based: > http://amforth.sourceforge.net/UG/linux.html > A very long time ago I wrote this: > http://amforth.sourceforge.net/pr/Fosdem2011-proceedings-amforth.pdf > > If you are Windows based, have a look at=20 > http://amforth.sourceforge.net/UG/windows.html > > Cheers, > Erich > > > > > Is this also a assembler word? > > > > Kindly regards, > > > > Jan > > > > > > > > > >> Op 7 jun. 2019, om 19:50 heeft Erich Wälde <ew.fo...@nassur.net> het > >> volgende geschreven: > >> > >> Hello Jan, > >> > >> > >> Jan Kromhout writes: > >> > >>> Hi Tristan, > >>> > >>> What to load in the right sequence to fellow the examples in > >>> http://amforth.sourceforge.net/TG/recipes/SPI.html ? > >>> If I have the right sequence of loading the screens I will start as you > >>> mentiod. > >>> > >>> Kind regards, > >>> > >>> Jan > >>> > >>> > >>> > >>> Op 7 jun. 2019, om 19:25 heeft Tristan Williams > >>> <h...@tjnw.co.uk<mailto:h...@tjnw.co.uk>> het volgende geschreven: > >>> > >>> Hi Jan, > >>> > >>> No don’t have. Why? > >>> > >>> Because words/spirw.asm provides c!@spi which makes using the > >>> hardware spi easier, and it is used in the recipes > >> > >> you see the filename? "words/spirw.asm"? Please note: .asm > >> suffix. This means that in your project directory, you need to > >> add one line to the file "dict_appl.inc". Then you need to > >> reassemble the project and load the resulting .hex files to your > >> controller. I strongly recommend learning this workflow, if you > >> didn't already. > >> > >> Cheers, > >> Erich > >> > >> > >>> > >>> http://amforth.sourceforge.net/TG/recipes/SPI.html > >>> > >>> Separately, if you haven't read it already > >>> > >>> https://en.wikipedia.org/wiki/Serial_Peripheral_Interface > >>> > >>> will help a lot, as will starting with a simple SPI device (e.g. io > >>> expander, digital potentiometer) first. > >>> > >>> Kind regards, > >>> > >>> Tristan > >>> > >>> > >>> Verstuurd vanaf mijn iPad > >>> > >>> Op 7 jun. 2019 om 17:25 heeft Tristan Williams > >>> <h...@tjnw.co.uk<mailto:h...@tjnw.co.uk>> het volgende geschreven: > >>> > >>> Hello Jan, > >>> > >>> A quick question first. > >>> > >>> You have built your AmForth hex files with words/spirw.asm ? > >>> > >>> Kind regards, > >>> > >>> Tristan > >>> > >>> On 07Jun19 17:06, Jan Kromhout via Amforth-devel wrote: > >>> Hello > >>> > >>> I have take a close look into SPI routines. > >>> I really not understand them. > >>> > >>> I need simple make a connection withe the arduino in amForth. > >>> The basics I understand how to make a pin high or low etc. > >>> But I don’t know how to start to initialize the SPI etc. > >>> Can someone help me with this or give a simple example? > >>> The interface is using the standard pins for the SPI. > >>> > >>> I mark the part of the code with <===========? where I have trouble to > >>> convert to amForth. > >>> > >>> Thanks for any help. > >>> > >>> Cheers, > >>> > >>> Jan > >>> > >>> > >>> #include "SPI.h" > >>> > >>> #define SCK_PIN 13 > >>> #define MISO_PIN 12 > >>> #define MOSI_PIN 11 > >>> #define SS_PIN 10 > >>> > >>> void umFPU_begin(void) > >>> { > >>> digitalWrite(SS_PIN, HIGH); > >>> pinMode(SS_PIN, OUTPUT); > >>> umFPU_reset(); > >>> } > >>> > >>> //------------------- reset > >>> ------------------------------------------------- > >>> > >>> void umFPU_reset() > >>> { > >>> digitalWrite(SS_PIN, LOW); > >>> > >>> // disable SPI.Master > >>> SPI.end(); <===========? > >>> > >>> // reset the FPU > >>> digitalWrite(MOSI_PIN, HIGH); > >>> for (byte i = 0; i < 80; i++) > >>> { > >>> digitalWrite(SCK_PIN, HIGH); > >>> digitalWrite(SCK_PIN, LOW); > >>> } > >>> digitalWrite(MOSI_PIN, LOW); > >>> > >>> delay(10); > >>> > >>> // enable SPI.Master > >>> SPI.setDataMode(SPI_MODE0); > >>> SPI.setBitOrder(MSBFIRST); > >>> SPI.setClockDivider(SPI_CLOCK_DIV4); > >>> SPI.begin(); <===========? > >>> > >>> digitalWrite(SS_PIN, HIGH); > >>> } > >>> > >>> byte umFPU_read(void) > >>> { > >>> byte bval; > >>> digitalWrite(SS_PIN, LOW); > >>> umFPU_readDelay(); > >>> bval = SPI.transfer(0); <===========? > >>> digitalWrite(SS_PIN, HIGH); > >>> return bval; > >>> } > >>> > >>> void umFPU_write_1(byte b1) > >>> { > >>> digitalWrite(SS_PIN, LOW); > >>> SPI.transfer(b1); <===========? > >>> digitalWrite(SS_PIN, HIGH); > >>> } > >>> > >>> _______________________________________________ > >>> Amforth-devel mailing list for http://amforth.sf.net/ > >>> Amforth-devel@lists.sourceforge.net<mailto:Amforth-devel@lists.sourceforge.net> > >>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>> > >>> > >>> _______________________________________________ > >>> Amforth-devel mailing list for http://amforth.sf.net/ > >>> Amforth-devel@lists.sourceforge.net<mailto:Amforth-devel@lists.sourceforge.net> > >>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>> > >>> > >>> > >>> _______________________________________________ > >>> Amforth-devel mailing list for http://amforth.sf.net/ > >>> Amforth-devel@lists.sourceforge.net<mailto:Amforth-devel@lists.sourceforge.net> > >>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>> > >>> > >>> _______________________________________________ > >>> Amforth-devel mailing list for http://amforth.sf.net/ > >>> Amforth-devel@lists.sourceforge.net<mailto:Amforth-devel@lists.sourceforge.net> > >>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>> > >>> > >>> _______________________________________________ > >>> Amforth-devel mailing list for http://amforth.sf.net/ > >>> Amforth-devel@lists.sourceforge.net > >>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >> > >> > >> -- > >> May the Forth be with you ... > >> > >> > >> _______________________________________________ > >> Amforth-devel mailing list for http://amforth.sf.net/ > >> <http://amforth.sf.net/> > >> Amforth-devel@lists.sourceforge.net > >> <mailto:Amforth-devel@lists.sourceforge.net> > >> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >> <https://lists.sourceforge.net/lists/listinfo/amforth-devel> > > > > _______________________________________________ > > Amforth-devel mailing list for http://amforth.sf.net/ > > Amforth-devel@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/amforth-devel > > > -- > May the Forth be with you ... > > > _______________________________________________ > Amforth-devel mailing list for http://amforth.sf.net/ > Amforth-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/amforth-devel _______________________________________________ Amforth-devel mailing list for http://amforth.sf.net/ Amforth-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/amforth-devel