C/C++

__attribute__(section) 으로 지정한 영역에 변수를 저장하고 초기값을 부여하고 싶어요.

1
__attribute__(section) 으로 지정한 영역에 변수를 저장하고 초기값을 부여하려고 다음과 같이 작성했는데 안되네요.  uint8_t ar[4] __attribute__((section(".share"))) = {1, 2, 3, 4}; 초기값은 어떻게 설정하는 건가요? 

__attribute__(section) 으로 지정한 영역에 변수를 저장하고 초기값을 부여하려고 다음과 같이 작성했는데

안되네요. 

uint8_t ar[4] __attribute__((section(".share"))) = {1, 2, 3, 4};

초기값은 어떻게 설정하는 건가요? 

pabian 2021-11-25
pabian 님께서 2021-11-25에 C/C++에 올린 질문

댓글

1개의 답변

1
혹시 어떻게 에러가 나시는지요? 아래는 예제입니다. struct duart a __attribute__ ((section ("DUART_A"))) = { 0 }; struct duart b __attribute__ ((section ("DUART_B"))) = { 0 }; char stack[10000] __attribute__ ((section (..

혹시 어떻게 에러가 나시는지요?

아래는 예제입니다.

struct duart a __attribute__ ((section ("DUART_A"))) = { 0 };
struct duart b __attribute__ ((section ("DUART_B"))) = { 0 };
char stack[10000] __attribute__ ((section ("STACK"))) = { 0 };
int init_data __attribute__ ((section ("INITDATA")));

main()
{
  /* Initialize stack pointer */
  init_sp (stack + sizeof (stack));

  /* Initialize initialized data */
  memcpy (&init_data, &data, &edata - &data);

  /* Turn on the serial ports */
  init_duart (&a);
  init_duart (&b);
}

 

윈비 2021-11-29
사탕 주기
윈비 님께서 2021-11-29에 C/C++에 올린 글
보관하기
2
 
pabian 2021-11-29
link discrptor에 section 설정할 때 절대주소 위치를 이동할 수 없는 곳으로 했더니 생겼던 에러였네요. 감사합니다.

댓글

조회수 241
답글 1
URL