Part Number: AM2432
Other Parts Discussed in Thread: SYSCONFIG
Hi TI Support team,
As we required to toggle PRU Pins at the maximum toggling speed (in Mhz), i have taken the reference firmware for R5F - freertos core and PRU Core. For R5F FreeRTOS Project, i have taken reference firmware: - empty_pru_io_am243x-lp_r5fss0-0_freertos_ti-arm-clang which configure and enable PRU cores and load it's fir
/*
* Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/
*
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* * Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <stdint.h>
#include <pru_cfg.h>
volatile register uint32_t __R30;
/*
* main.c
*/
int main(void)
{
volatile uint32_t gpo;
/* GPI Mode 0, GPO Mode 0 */
CT_CFG.GPCFG0 = 0;
/* Clear GPO pins */
gpo = 0x0000;
while (1) {
gpo = __R30;
gpo ^= 0xF;
__R30 = gpo;
__delay_cycles(100000000); // half-second delay
}
}
mware; Similarly, for toggling PRU Pins, I have taken empty_am243x-lp_icss_g0_pru0_fw_ti-pru-cgt and written PRU Pins toggling code.
After complition of the above precedures, I built the firmware and programmed the AM243x_LP Board which result in it is not toggling the PRU Pins.
I have gone through several documentations and followed the precedures mentioned there. However, the issue is remained same.
Can you provide me the procedures of controlling PRU Pins?
Moreover, i am going to attach my both firmware. Kindly review it or if possible then validate at your end if you have AM243x_LP Board and suggest the measures.
R5F-FreeRTOS Project: empty_pru_io_am243x-lp_r5fss0-0_freertos_ti-arm-clang.zip
PRU Core Project: empty_am243x-lp_icss_g0_pru0_fw_ti-pru-cgt.zip
Best regards,
Nilesh V Parmar









