I wrote a driver for the ili9341 240×320 LCD Driver IC. Next I wrote my own primitive drawing functions. I then linked in the TI Tiva C Graphics Library to access more sophisticated features such as widgets. I tried the primitive functions of the graphics library. Size and speed seemed comparable when drawing and filling circles. Wikipedia can probably be thanked for that (https://en.wikipedia.org/wiki/Midpoint_circle_algorithm). My full screen fill was visibly faster than the library. The library functions are not built-in like the peripheral functions it’s just a normal library. That meant I could include the whole library and have the linker sort out which functions to actually include based on the compiler’s needs. They’re good friends you know, the compiler and linker. BFFs. The short demo video doesn’t show the advanced GUI functions, just my primitives and the TI Graphic Library’s font/string features. I utilized a new timer to create some simple animation.
I do have some past experience dealing with voxels and plotting 3D vectors and I could certainly keep exploring deeper into driving displays and making graphics…but I’ve given myself a good understanding and want to move on for now. I want to focus on adding to my TM4C123GXL project. I’ll return to the LCD when I need to display something. It’s hard to stop, I want to keep going. However, there’s so much more! Touch-Screen. External Flash. CRC. Analog Joystick. SD Card, wi-fi. I think the next step will be to either hook up an SD Card or the analog Joystick. So far everything is still interrupt driven. I will probably branch off somewhere and try to implement an RTOS. The Camera will also be up soon. Everyone is impressed by a camera.
I need to figure out GIT a little better, I’m use to svn. I’ll get my current code up soon.