Programming KFLOP
Posted: Tue Apr 30, 2019 6:29 pm
From the blog:
1) Write a completely autonomous program in C, flash it to memory, and run the KFLOP autonomously. This apparently is not recommended.
2) Use KMotionCNC and upload G-Code, possibly executing C code, running from the KMotionCNC window with its user interface and communicating with the KFLOP via the USB interface.
3) Use the .NET interface and write a user interface in LabView, Windows C++, Python, etc which communicates with the KFLOP via the USB interface.
In cases 2 and 3, you write a C program that is loaded onto the board from the PC at startup (every time the system is powered on, what happens when the KFLOP is powered up and the PC isn't there?) and just talks to the user interface on the PC. The documentation is a bit confusing as to what functionality is on which. When the blog says "Programs can be compiled, downloaded, and executed dynamically in Threads by Applications at run time", which "Applications" are we talking about?
Is this basically correct?
So if I understand correctly, there are three ways to run the KFLOP.Although C Programs can be Flashed to KFLOP memory so they will be present in KFLOP Memory on Power up this is not normally recommended and not usually required. KFLOP normally powers up with no C Programs in Memory. Programs can be compiled, downloaded, and executed dynamically in Threads by Applications at run time. They do not need to be pre-loaded (or Flashed) into KFLOP Memory. For example when KMotionCNC executes GCode and encounters an M3 it may download the configured C Program to the Configured Thread and execute it.
1) Write a completely autonomous program in C, flash it to memory, and run the KFLOP autonomously. This apparently is not recommended.
2) Use KMotionCNC and upload G-Code, possibly executing C code, running from the KMotionCNC window with its user interface and communicating with the KFLOP via the USB interface.
3) Use the .NET interface and write a user interface in LabView, Windows C++, Python, etc which communicates with the KFLOP via the USB interface.
In cases 2 and 3, you write a C program that is loaded onto the board from the PC at startup (every time the system is powered on, what happens when the KFLOP is powered up and the PC isn't there?) and just talks to the user interface on the PC. The documentation is a bit confusing as to what functionality is on which. When the blog says "Programs can be compiled, downloaded, and executed dynamically in Threads by Applications at run time", which "Applications" are we talking about?
Is this basically correct?