So after messing and futzing around with their novel Spin language (I suspect it's a hybrid of Python, some C and probably Pascal?) I managed to coax that thing to print out an excerpt from the Propeller Manual. (source: https://www.parallax.com/sites/default/files/downloads/P8X32A-Web-PropellerManual-v1.2.pdf)
I named the text file "textfile.txt" and written the excerpt into it :
The Propeller chip is designed to provide high-speed processing for embedded systems while maintaining low current consumption and a small physical footprint. In addition to being fast, the Propeller provides flexibility and power through its eight processors, called cogs, that can perform simultaneous independent or cooperative tasks, all while maintaining a relatively simple architecture that is easy to learn and utilize.
And also the code to read the file:
{ FSRW Test } CON _clkmode = xtal1 + pll16x 'Standard clock mode * crystal frequency = 80 MHz _xinfreq = 5_000_000 SDO = 15 SDI = 13 SCK = 14 CS = 16 VAR long symbol byte isMounted byte textBuf[512] byte bufCount OBJ fsrw: "fsrw.spin" pst: "Parallax Serial Terminal.spin" spisd: "safe_spi.spin" PUB main DIRA[3] := 1 pst.Start(115200) pst.Str(String("Hello World Propeller!",13)) bytefill(@textBuf, 0, 128) isMounted := fsrw.mount_explicit(SDO, SCK, SDI, CS) if(isMounted == 0) pst.Str(String("SD-Card Detected!",13)) else pst.Str(String("SD-Card error or not found!",13)) repeat 'wait here and blink LED for 500ms if error or not found! OUTA[3] := 0 waitcnt(cnt + (clkfreq/2)) OUTA[3] := 1 waitcnt(cnt + (clkfreq/2)) fsrw.Seek(0) pst.Str(String("Reading SD Card!",13)) if( fsrw.popen(String("textfile.txt"), "r") == 0 ) pst.Str(String("File is found, reading it now!",13)) if( fsrw.pread(@textBuf, 512) < 0 ) pst.Str(String("Reached end of the file!",13)) pst.Str(@textBuf) else pst.Str(String("File not found!",13)) pst.Str(String(13)) fsrw.pclose waitcnt(cnt + (clkfreq)) pst.Str(String("Done, unmount!",13)) fsrw.unmount repeat PRI private_method_name DAT name byte "string_data",0
And the output:
Success! That'll be the reference for me (and the readers) to write more code for the Propeller.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.