시스템 반도체5 [Harman 세미콘 아카데미] 29일차 - STM32(Initial setting, Pin assign, LED_On/Off) [STM32] Initial Setting 1. 개발환경 구축 STM32는 자체적인 OS가 없기 때문에 공급사에서 지원하는 Tool들을 활용하여 개발환경을 구축해야 한다. 개발환경을 구축하기 위해 먼저 ST Micro사에서 공식적으로 제공하는 무료 개발 IDE인 STM32CubeIDE 설치할 것이다. https://www.st.com/content/st_com/en/stm32cubeide.html STM32CubeIDE: Multi-OS development tool - STMicroelectronics - STMicroelectronics STM32CubeIDE is an all-in-one multi-OS development tool, which is part of the STM32Cube soft.. 2023. 7. 27. [Harman 세미콘 아카데미] 17일차 - ATmege128 실습(LED shift, Tactile switch 활용), FSM의 개념 [LED shift] 예제 1 0000 0000 1000 0001 0100 0010 0010 0100 0001 1000 0000 0000 0001 1000 0010 0100 0100 0010 1000 0001 0000 0000 위와 같이 LED가 shift하며 출력되는 코드 작성 여러 가지 방법으로 작성할 수 있다. 1번 - 가장 기초적인 방법(case 다 써서 반복) 더보기 #define F_CPU 16000000UL #include #include #include uint8_t ledArr[]={ 0x81, // 1000 0001 0x42, // 0100 0010 0x24, // 0010 0100 0x18, // 0001 1000 0x24, // 0010 0100 0x42, 0x81 }; int ma.. 2023. 7. 11. [Harman 세미콘 아카데미] 13일차 - C언어 문법(조건문, 반복문, 함수) [조건문] if / else int main() { if (조건식1) { // 조건식1의 결과가 참일 때 실행되는 명령문; else if (조건식2) // 조건식2의 결과가 참일 때 실행되는 명령문; else // 조건식1,2의 결과가 거짓일 때 실행되는 명령문; } return 0; } int main() { int num = 0; printf("숫자를 입력하세요.\n"); scanf("%d", &num); if (num < 5) { printf("입력하신 숫자는 5보다 작습니다. \n"); } else if (num == 5) { printf("입력하신 숫자는 5입니다.\n"); } else { printf("입력하신 숫자는 5보다 큽니다\n"); } } switch // switch 문 // int.. 2023. 7. 5. [Harman 세미콘 아카데미] 10일차 - Register, Memory [Register] Register란? FF 여러 개를 일렬로 배열하여 적당히 연결함으로써, 여러 비트로 구성된 2진수를 저장할 수 있도록 한 것 즉, 외부로부터 들어오는 데이터를 저장하거나 이동하는 목적으로 사용하며, 상태의 순서적인 특성을 갖는 것은 아니다. 다음과 같은 경우에 많이 사용 - CPU 내부에서 연산의 중간 결과를 임시 저장하는 경우 - 어떤 2진수의 보수를 구하는 경우 - 곱셉 또는 나눗셈을 하는 경우 등 Register의 종류 1. 직렬 입력 - 직렬 출력 레지스터 = SI-SO Register(serial input - serial output) module shift_register_SISO( /// SISO register 구조적 모델링 input clk, rst, d, outp.. 2023. 6. 30. 이전 1 2 다음