This lab is similar to the previous lab, we configured some additional peripherals, export to the SDK, and exercise the newly created peripherals.
Notice in the above diagram, there are checks next to UART 1, GPIO, SD 1, USB 0, and QUAD SPI. One of the important lessons they wanted us to learn in this lab was why the order in which you map peripherals matters.
The devices are listed in priority in the green boxes above, with the memory devices having the highest priority, followed by ENET, USB,... SPI. Another important thing is the flexibility, so while the ENET devices have a higher priority
than the USB devices, you should map the USB first because it cannot be operated via EMIO (Extended MIO). After configuring the USB, we then configured the remaining peripherals and clocks.
Once that was complete, we exported to the SDK and launched the application. As I mentioned before, the SDK is a modified version of eclipse. This is where you write the C language code to access the peripherals you have enabled.
In order to do that, you have to generate a BSP, or a Board Support Package, this is as easy as selecting File -> New -> Board Support Package, this will create the BSP and bring in the libraries that you need to access the peripherals.
There are templates for a few things, like the Hello World we did in the last lab, but this time they introduced us to a couple of new templates.
This time they had us select the Memory Tests template, as well as the Peripheral Tests template. The outputs follow:
Those are the outputs of the unmodified templates. Just some quick diagnostics. The source for those is available in the project folders that are created, so if you're curious you can see how they access the devices.
Now I realize these are not the most exciting blogs. These first few labs are mostly board and tool familiarization. Honestly, they have not been too difficult, the biggest challenge
for me is to pace my self and not zoom right through them, that's because I realize I need to write about them afterwards . Writing about them is helpful, because it makes me go back
and investigate certain processes and statements that I make, so it helps cement the lessons and reminds me of the procedures.
I did go off the reservation and explored the linux installation that is included in the board, but that's for another blog post.