Using Beaglebone hardware, toggle a GPIO on the expansion header as fast as possible, using the Cortex A8 core.
This should be trivial to do. I want to use Code Composer Studio v5 to run a program on the Beaglebone, connected only by the USB cable, that enables the MMU, I&D caching, enables the GPIO and sits in a loop wiggling a GPIO that is on the expansion header. This allows me to attach an oscilloscope and measure the speed. Currently a dumb GPIO wiggle takes 1.22microseconds on the 500MHz Cortex A8.
my dumb code that slowly wiggles the GPIO doesn't initialise the MMU:
#define OUTPUT_PIN 6
int main(void)
{
GPIO1ModuleClkConfig();
/* Enabling the GPIO module. */
GPIOModuleEnable(SOC_GPIO_1_REGS);
/* Resetting the GPIO module. */
GPIOModuleReset(SOC_GPIO_1_REGS);
/* Setting the GPIO pin as an output pin. */
GPIODirModeSet(SOC_GPIO_1_REGS, OUTPUT_PIN, GPIO_DIR_OUTPUT);
for (;;)
{
GPIOPinWrite(SOC_GPIO_1_REGS, OUTPUT_PIN, GPIO_PIN_HIGH);
GPIOPinWrite(SOC_GPIO_1_REGS, OUTPUT_PIN, GPIO_PIN_LOW);
GPIOPinWrite(SOC_GPIO_1_REGS, OUTPUT_PIN, GPIO_PIN_HIGH);
GPIOPinWrite(SOC_GPIO_1_REGS, OUTPUT_PIN, GPIO_PIN_LOW);
}
}
Note that I do not want to use the PRUSS or the Cortex M
This is for the BB not BBB, because I don't have the JTAG programmer.
Submission is to use Texas Instruments' Code Composer v5 (can be freely downloaded and evaluated) with Starterware (also from TI). Submission must be the entire project, with include paths to the standard install directories (starting c:\ti\ ). Please mention 'kennel' in any bid to prove you read this far (I hate boiler plate bids)
The budget is GBP £50 and I'd like it asap
Any bids over the budget will just be ignored.
Comments in English