Hello, In my efm32lg I need to set my routing regystry in CSPEN to be zero, i try to write a code for manualy put zero inside cell 2 as shown in the
manual printscreen bellow.
//x3x2x1x0
//0 1 0 0 shifted 1 by two places
//1 0 1 1 inverted shifted one
//x3 0 x1 x0 inverted shifted one
Is this a valid way to change a value in a register?I am not sure if it will affect the handle
maybe i should do i like this?
from a pure bit wise and operation did i formulated correctly the putting of zero inside the bitfield?
Thanks.
SPIDRV_HandleData_t handleData;
SPIDRV_Handle_t handle = &handleData;
SPIDRV_Init_t initData = SPIDRV_MASTER_USART2 ;
SPIDRV_Init(handle, &initData);
handle->initData.csControl=spidrvCsControlApplication;
USART2->ROUTE=(USART2->ROUTE)&(~(1<<2));
manual printscreen bellow.
//x3x2x1x0
//0 1 0 0 shifted 1 by two places
//1 0 1 1 inverted shifted one
//x3 0 x1 x0 inverted shifted one
Code:
USART2->ROUTE=(USART2->ROUTE)&(~(1<<2));
maybe i should do i like this?
Code:
handle->initData.port->ROUTE=(handle->initData.port->ROUTE)&(~(1<<2));
Thanks.
Code:
SPIDRV_HandleData_t handleData;
SPIDRV_Handle_t handle = &handleData;
SPIDRV_Init_t initData = SPIDRV_MASTER_USART2 ;
SPIDRV_Init(handle, &initData);
handle->initData.csControl=spidrvCsControlApplication;
USART2->ROUTE=(USART2->ROUTE)&(~(1<<2));
SPIDRV_HandleData_t handleData;
SPIDRV_Handle_t handle = &handleData;
SPIDRV_Init_t initData = SPIDRV_MASTER_USART2 ;
SPIDRV_Init(handle, &initData);
handle->initData.csControl=spidrvCsControlApplication;
USART2->ROUTE=(USART2->ROUTE)&(~(1<<2));
Attachments
-
64.7 KB Views: 0
Last edited: