Part Number: AM6548
Tool/software: Code Composer Studio
Hello,
Environment:
- Hardware: AM65x EVM board
- Software: Linux in the shipped SD Card or TI-RTOS
I m able to use GPIO1_88 with the following Linux commands.
./busybox devmem 0x11c300 0x08010007 ./busybox devmem 0x601060 w 0xFEFFFFFF ./busybox devmem 0x601068 w 0x1000000 ./busybox devmem 0x60106c w 0x1000000
Then I try to use R5F running TI-RTOS to control GPIO1_88 as well. I import the hello world example code and add the following code in main().
volatile unsigned int *CTRLMMR_PADCONFIG192 = (volatile unsigned int *)0x11C300;
volatile unsigned int *GPIO_DIR45 = (volatile unsigned int *)0x601060;
volatile unsigned int *GPIO_OUT_DATA45 = (volatile unsigned int *)0x601064;
volatile unsigned int *GPIO_SET_DATA45 = (volatile unsigned int *)0x601068;
volatile unsigned int *GPIO_CLR_DATA45 = (volatile unsigned int *)0x60106C;
Int main()
{
System_printf("hello world\n");
System_printf("*CTRLMMR_PADCONFIG192: 0x%x\n", *CTRLMMR_PADCONFIG192);
System_printf("*GPIO_DIR45: 0x%x\n", *GPIO_DIR45);
System_printf("*GPIO_OUT_DATA45: 0x%x\n", *GPIO_OUT_DATA45);
System_printf("*GPIO_SET_DATA45: 0x%x\n", *GPIO_SET_DATA45);
System_printf("*GPIO_CLR_DATA45: 0x%x\n", *GPIO_CLR_DATA45);
*CTRLMMR_PADCONFIG192 = 0x8000007;
*GPIO_DIR45 = 0xFEFFFFFF;
*GPIO_SET_DATA45 = 0x1000000;
System_printf("*CTRLMMR_PADCONFIG192: 0x%x\n", *CTRLMMR_PADCONFIG192);
System_printf("*GPIO_DIR45: 0x%x\n", *GPIO_DIR45);
System_printf("*GPIO_OUT_DATA45: 0x%x\n", *GPIO_OUT_DATA45);
System_printf("*GPIO_SET_DATA45: 0x%x\n", *GPIO_SET_DATA45);
System_printf("*GPIO_CLR_DATA45: 0x%x\n", *GPIO_CLR_DATA45);
/*
* normal BIOS programs, would call BIOS_start() to enable interrupts
* and start the scheduler and kick BIOS into gear. But, this program
* is a simple sanity test and calls BIOS_exit() instead.
*/
BIOS_exit(0); /* terminates program and dumps SysMin output */
return (0);
}
After the execution of my program with TI-RTOS, the value of GPIO1_88 remains low and the value of CTRLMMR_PADCONFIG192 is the same.
[MCU_PULSAR_Cortex_R5_0] hello world *CTRLMMR_PADCONFIG192: 0x8210007 *GPIO_DIR45: 0xffffffff *GPIO_OUT_DATA45: 0x0 *GPIO_SET_DATA45: 0x0 *GPIO_CLR_DATA45: 0x0 *CTRLMMR_PADCONFIG192: 0x8210007 *GPIO_DIR45: 0xfeffffff *GPIO_OUT_DATA45: 0x0 *GPIO_SET_DATA45: 0x1000000 *GPIO_CLR_DATA45: 0x0
I m wondering if any initialization of modules is not done... Could any one provide some comments?