inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

ARM Cortex-M 프로세서 프로그래밍

s202_LED 점멸해보기

led 점멸 소스 관련 질문 드립니다.

305

남윤아

작성한 질문수 3

0

안녕하세요. led 점멸 소스를 보던 중 궁금한 점이 생겨 질문 드립니다.

ld3와 ld4를 동시에 점멸하는 코드인

HAL_GPIO_WritePin(GPIOG, LD3_Pin|LD4_Pin, GPIO_PIN_SET);

부분에서 LD3_Pin&LD4_Pin로 쓰지않고 LD3_Pin|LD4_Pin로 쓰는지 궁금합니다.

arm-architecture 임베디드 cortex

답변 2

0

남윤아

감사합니다!

0

홍영기

안녕하세요. 남윤아 님!

HAL_GPIO_WritePin(GPIOG, LD3_Pin|LD4_Pin, GPIO_PIN_SET)

#define LD3_Pin GPIO_PIN_13

#define LD4_Pin GPIO_PIN_14

#define GPIO_PIN_13                ((uint16_t)0x2000)  /* Pin 13 selected   */

#define GPIO_PIN_14                ((uint16_t)0x4000)  /* Pin 14 selected   */

LD3_Pin 와 LD4_Pin 는 i429DISC 보드의 각 LED 을 접근하기 위한 목적으로 함수의 전달인자도 사용된 상수 입니다.

말씀하신 것처럼

HAL_GPIO_WritePin(GPIOG, LD3_Pin&LD4_Pin, GPIO_PIN_SET)

이렇게 할 경우

HAL_GPIO_WritePin(GPIOG, 0x0000, GPIO_PIN_SET

이렇게 처리될 것이고, 결국 이 코드는 아무런 일도(LED 점멸) 발생시키지 못할 겁니다.

하지만,

HAL_GPIO_WritePin(GPIOG, LD3_Pin|LD4_Pin, GPIO_PIN_SET)

이렇게 처리한다면, 이것은 결국

HAL_GPIO_WritePin(GPIOG, 0x6000, GPIO_PIN_SET) 이고

이 코드는 두 개의 LED 의 상태 변화를 이끌어 낼 수 있습니다.

자세한 내용은 이 함수(HAL_GPIO_WritePin)의 실행을 TRACE INTO 로 쫓아가 보시면 아실 수 있습니다.

 

stm32cubeide 관련 문의

0

52

2

DMA 관련한 강의도 제작해주실 수 있으신가요 ?

0

100

1

그림들도 해석 할 수 있어야 하나요?

1

103

2

no-stlink

1

82

2

4개의 CPU 사이클이 필요한 이유

1

101

2

MAC으로 진행 질문드려요..

1

95

2

학습 진행 시, 사용하는 Board에 대한 문의 드립니다!

0

160

2

push pop 질문

1

192

2

STM32Fx Cortex ARM 프로그래밍 저자:홍봉조, 출판사:지식과 감성

0

242

1

CORTEX_02_ASSEMBLY 빌드시 에러

1

270

1

외부 ST Link 연결 이용한 SWD 방법

0

342

1

파이프라인과 명령어

1

327

1

명령어 fetch

0

238

1

lr 레지스터 LSB 값

1

261

1

Disassembly 창 문제

0

350

1

s702 강좌에서 사용한 technical reference manual 문서

1

328

1

s702에 원자적 Access 를 위한 BSRR 코드작성 부분에 대해서

1

273

1

s202 LED 점등 예제 실행시 에러

2

351

1

STM32F429I-DISC 보드의 펌웨어

2

395

1

제공되지 않은 강의교재

0

319

1

s524 테일체이닝 강의 질문

0

235

1

부트코드와 부트로더의 차이점

1

1528

1

메모리 맵 질문

0

288

1

xPSR 레지스터 플래그 값 및 기타 질문 드립니다.

1

864

2