Study_Embedded (18) 썸네일형 리스트형 [오제이 튜브의 임베디드 실전 강의] 8강 지금까지 배운 것을 큰 그림에 저장하기 - GPIO 제어 과정 Power On -> Startup Code -> main() 예전에는 Stack Pointer를 코드로 (어셈블리만 이용가능했었음) 설정해줬어야 했으나 요즘에는 하드웨어에서 자동으로 설정해줌 (바로 C코드로 접근 가능) SP, PC 설정 후 전원 공급 -> Startup Code로 이동 Stack Pointer : 현재 연산에 필요한 stack 영역에 저장되어있는 memory의 주소 저장. 저장시 자동으로 memory address가 바뀜 Program Counter : 다음에 실행될 program code의 memory의 address 저장 1) Power On 보드의 동작 전원은 3.3V 가정에 AC로 들어오는 220V를 3.3V로 전환해줌 2) Startup Code mai.. [오제이 튜브의 임베디드 실전 강의] 7강 GPIO제어 고아 먹기 - GPIO 수동 제어 2 지난 시간에 공부했던 MX_GPIO_Init( ) 중 static void MX_GPIO_Init(void) { GPIO_InitTypeDef GPIO_InitStruct = {0}; /* GPIO Ports Clock Enable */ __HAL_RCC_GPIOC_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(GPIO_LED_GPIO_Port, GPIO_LED_Pin, GPIO_PIN_SET); /*Configure GPIO pin : GPIO_LED_Pin */// 이부분 공부 GPIO_InitStruct.Pin = GPIO_LED_Pin; GP.. [오제이 튜브의 임베디드 실전 강의] 6강 GPIO제어 뿌셔 먹기 0. Cube IDE의 IOC 화면에서 각 GPIO 설정값들의 의미 1) GPIO output level (High / Low) 최초 동작시의 GPIO Output값 설정High 설정 시 Low 설정 시 GPIO_PIN_RESET = 0GPIO_PIN_SET = 1 2) GPIO mode (Output Push Pull / Output Open Drain) 회로의 방식을 설정Push Pull : MCU에서 제공하는 3.3V를 통해 장치를 제어함 Open Drain : 단순히 Ground를 열고 닫음 A. Push - PullPush - Pull 방식의 기본적인 회로도 sw1이 연결되면 3.3V가 연결되며 Output에 High가 출력 sw2가 연결되면 Ground(0V)가 연결되어 Low가 출력 (어떠한.. [오제이 튜브의 임베디드 실전 강의] 5강 혼자서 임베디드 고수 되는 법 1. 강의 목표WritePin부분을 HAL Driver를 사용하지 않고 순수 코딩만으로 만들어보기 HAL Driver의 코드를 분석하고 Datasheet를 보며 필요한 것들만 뽑아 코드를 만들 것MX_GPIO_Init();HAL_GPIO_WritePin(GPIO_LED_GPIO_Port, GPIO_LED_Pin, 0);위 두개의 코드 분석Data Sheet를 보며 해당하는 주소값을 보며 코딩을 해야 함Embedded Programming은 Source Code는 몇 줄 안되나 이해하고 코드로 표현을 하기까지 수많은 공부가 필요회로, 컴퓨터 등의 알아야 할 배경 지식이 너무 많음코드를 분석하기 쉬운 방법소스가 어떤 환경에서 작동하는지 이해 후 환경 구성Breakpoint를 찍어가며 Debugging 진행 .. [오제이 튜브의 임베디드 실전 강의] 3-1강 개발 환경 구축하기, 4강 Hello!! GPIO!! 1. 개발 환경 구축1.1. 개발 환경 구축이란- 개발을 할 수 있는 환경을 구축하는 준비과정보통 컴파일 + "Hello World"가 출력되는 상황 + 디버깅이 되는 상황을 환경구축이 완료되었다고 한다임베디드 분야는 환경 구축이 유난히 어려움임베디드 계열의 "Hello World" 는 GPIO 제어 : 이번 강의의 목적 1.2. IDE란- IDE (Integrated Development Environment) : 통합 개발 환경을 의미Coding, Debugging, Compile, 배포 등 프로그램 개발에 관련된 모든 작업을 하나의 프로그램 안에서 처리할 수 있는 환경을 제공하는 SoftwareEx) Visual Studio, JupyterIDE = Source code editor + Compi.. [오제이 튜브의 임베디드 실전 강의] 3강 전기 기본 상식 - 모르면 보드 태워먹는다 0. Embedded Software 개발에 전기 기본 상식을 알아야 하는 이유1) DC 뿐만 아니라 매우 위험함 고압의 AC 전류가 흐르는 환경에서 작업을 할 수 있음DC (Direct Current) : 직류라는 뜻으로, (+)극, (-)극이 정해져 있으며 전류의 방향이 바뀌지 않는 전원저압이라 크게 위험하지 않음배터리에서 사용AC (Alternating Currnet) : 교류라는 뜻으로, 시간에 따라 크기와 극성(방향)이 주기적으로 변하는 전류1초 사이에 전류의 극성이 변하는 횟수를 Frequency(주파수) [Hz]라고 한다.가정에서 사용AC 값은 최고점과 최저점 간의 차이 값을 의미고압이라 잘못하면 사망으로 이어질 수도 있음 또한 전류의 방향이 계속 바뀌므로 몸이 전기가 흐르는 물체에 달라 붙.. [오제이 튜브의 임베디드 실전 강의] 2강 실무자는 어떻게 칩을 고르나요? 0. 큰 그림을 반드시 그려야 하는 이유큰 그림 : 나만의 개념을 잡고 그 개념들이 조각조각 분산되어 있는 것이 아니라 서로 연결되어 있는 것을 의미큰 그림을 그릴 줄 알면 다양한 문제점을 만나더라도 쉽게 해결을 할 수 있음Ex 1) NPM, PIP, Apt-get, 마켓 플레이스모두 어떤 프로그램을 저장소에서 다운받을 수 있는 기능 -> 이 개념을 잡고 있으면 다양한 것을 해결할 수 있음저장소와 관련된 문제 파악 및 해결 가능무엇을 배우던 간에 큰 그림을 그려야 함 위와 같은 큰 그림을 머리 속에 하나씩 그려가야 함문제를 만날 때 마다 해결하기가 쉬워짐 - Ex 2) Visual Studio Code와 Visual Studio의 차이점둘 모두 개발 Tool개발 Tool : 메모장 + Compiler .. [오제이 튜브의 임베디드 실전 강의] 1강 임베디드가 뭔가요? 1. 강의 진행 방향유튜브에서 무료로 진행. 희망 시 강의료 자율 납부 가능한번에 최대 1시간 정도 진행내용이 남으면 다음 시간에 진행 2. 큰 그림 그리기- 큰 그림을 그려야 하는 이유개발자는 모든 영역을 다 공부할 순 없어 자기만의 개발에 대한 큰 지도가 있어야 함지도의 뼈대를 세운 후에 연차를 쌓아가며 살을 붙이고 자세히 색칠하는 식으로 발전을 해나가야 함어떤 것이 중요한지 본인 스스로 판단하고 따로 공부를 하여 본인을 발전해나가는 식으로 개발자로써의 역량을 발전시켜야 함 2.1. Embedded 개발의 큰 그림아래의 내용은 임베디드뿐 아니라 모든 분야의 개발자에게 도움이 될만한 내용 1) 전기전자, 양자역학원자 주위를 도는 전자로 인해 전기력 발생 : 이 전기를 인위적으로 발생시켜 컴퓨터 사용.. 이전 1 2 3 다음