hi all,
my chip is RM48L530PGET , i use it's HET PIN as GPIO, But when I performing initialization, I found can't assignment a value to registers, etc,DIR,DIN,DOUT,DSET register.my code is programming and debug with IAR Embedded Workbench IDE.
but, when I use the same config, programming and debug with CCS, it can assignment values to these registers.
my code is generated with HAL Code Generator ,
The following code:
void hetInit(void)
{
/** @b initialize @b HET */
/** - Set HET pins default output value */
hetREG1->DOUT = (uint32)((uint32)0U << 31U)
| (uint32)((uint32)1U << 30U)
| (uint32)((uint32)0U << 29U)
| (uint32)((uint32)0U << 28U)
| (uint32)((uint32)0U << 27U)
| (uint32)((uint32)0U << 26U)
| (uint32)((uint32)0U << 25U)
| (uint32)((uint32)0U << 24U)
| (uint32)((uint32)0U << 23U)
| (uint32)((uint32)0U << 22U)
| (uint32)((uint32)0U << 21U)
| (uint32)((uint32)0U << 20U)
| (uint32)((uint32)0U << 19U)
| (uint32)((uint32)0U << 18U)
| (uint32)((uint32)0U << 17U)
| (uint32)((uint32)0U << 16U)
| (uint32)((uint32)0U << 15U)
| (uint32)((uint32)1U << 14U)
| (uint32)((uint32)0U << 13U)
| (uint32)((uint32)1U << 12U)
| (uint32)((uint32)0U << 11U)
| (uint32)((uint32)1U << 10U)
| (uint32)((uint32)0U << 9U)
| (uint32)((uint32)1U << 8U)
| (uint32)((uint32)0U << 7U)
| (uint32)((uint32)0U << 6U)
| (uint32)((uint32)0U << 5U)
| (uint32)((uint32)0U << 4U)
| (uint32)((uint32)0U << 3U)
| (uint32)((uint32)0U << 2U)
| (uint32)((uint32)0U << 1U)
| (uint32)((uint32)0U << 0U);
/** - Set HET pins direction */
hetREG1->DIR = (uint32) 0x00000000U
| (uint32) 0x40000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x01000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00100000U
| (uint32) 0x00000000U
| (uint32) 0x00040000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00004000U
| (uint32) 0x00000000U
| (uint32) 0x00001000U
| (uint32) 0x00000000U
| (uint32) 0x00000400U
| (uint32) 0x00000000U
| (uint32) 0x00000100U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U;
/** - Set HET pins open drain enable */
hetREG1->PDR = (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U;
/** - Set HET pins pullup/down enable */
hetREG1->PULDIS = (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U
| (uint32) 0x00000000U;