
ROM 에서 데이터 읽는 방법 Decoder Tri-state Buffer Enable 신호가 1이면 연결되고 0이면 High-Z이다. 예시 위의 ROM은 0~7 까지 총 8개의 주소를 가지고 있으며, 각 주소에서 2bit를 저장할 수 있다. (네모박스는 메모

MCU는 한 번에 처리하는 데이터 비트 수에 따라 구분: 8비트, 16비트, 32비트로 구분한다.32비트 MCU의 경우는 CPU 내에서 32비트 단위로 처리를 한다. ALU에서 산술 연산이나 논리 연산을 할 때 32비트 단위로 연산을 수행한다데이터를 저장하는 레지스터들

Arm은 영국의 팹리스(fabless) 반도체 기업으로 CPU를 설계하고 설계 자료를 반도체 제조사에게 제공해서 설계 사용료로 수익을 창출한다.직접 반도체를 생산하지 않고, CPU 설계 자료(IP)를 제조사에 라이선스하여 수익 창출전 세계 인구의 약 70%가 Arm 기

PC와 STM32 칩을 이어주는 USB 케이블+어댑터 역할의 작은 장치프로그램 업로드(Flash에 쓰기)디버깅(한 줄씩 실행, 변수 보기 등)JTAG과 SWD 모두 MCU를 디버깅 하기위한 인터페이스이다.코딩한대로 MCU가 정확하게 잘 동작하는지 MCU의 각 핀을 찍어

프로젝트 생성 File - New - STM32 Project 에 들어간다. NUCLEO-F103RB에는 STM32F1 시리즈의 MCU가 들어가므로 이를 바탕으로 Boards List에서 보드를 찾아준다. Type 에 나와있는 Nucleo-64 는 64핀 MCU를

1. 수정 발진기 (오실레이터) > 수정 발진기 (quartz oscillator) 는 정확한 주기 신호를 발생시키는 부품소자로, MCU에 Clock을 공급 해주는 역할을한다. 2. PLL(Phase-Locked Loop)회로 > PLL 이라는 회로가 존재한다.

이것이 발광 다이오드의 기호이다. SB(Solder Bridge)는 사용자가 필요에 따라 납땜으로 연결(Short)하거나 연결하지 않음(Open)으로 설정할 수 있게 만든 PCB상의 작은 브리지위는 STM32F103RB-NUCLEO 보드의 뒷면이다. 뒷면에 보이는 SB

왼쪽에서부터 순서대로 저장, 빌드, 디버그, 실행 버튼이다.Core-Src-main.c 는 실제로 내가 STM32에 올라갈 프로그램을 짜는 파일이다.코딩을 할때에도 규칙이 존재한다.위와 같이 이런식으로 주석이 달려있다.이 BEGIN-END 영역 안에서만 사용자가 코딩을

위외 같은 경우Switch ON -> Input에 정상적으로 LOW가 들어간다.Switch OFF -> Input이 GND와 연결되지 않았다고HIGH가 아니라Floating 상태가된다. (공중에 떠다니는 상태로, 노이즈의 영향에 인해 아주 빠르게 LOW 와 HIGH가

\-5+0.7 이므로 KVL 위배이다. 도선 내부에는 아주 작은 미세한 저항이 있다.옴의 법칙에 의하여 이 내부 저항에도 전압이 걸리게된다.I=V/R=5/0.000000000xxxx...= (아주 큰 전류) 이므로해당 회로에 아주 큰 전류가 흐르게 될 것이다. 이럴 땐

CPU(Arm core)는 명령어 실행 과정에 임시로 데이터를 저장할 필요가있다. 이런 데이터들을 빠르게 읽고 쓸 수 있는 일종의 메모리가 필요하다.CPU 내부에 존재하는 이런 메모리를 레지스터라고한다.Arm의 CPU(=Arm core) 내부에는 16개의 레지스터가 존

STM32CubeIDE를 이용한 STM32 따라하기(김남수, 이진형) 책을 읽으며 정리한 내용입니다.Repository 폴더는 STM32CubeIDE에서 C코드 생성에 필요한 압축 라이브러리를 다운로드하여 저장하고, 압축된 라이브러리를 압축 해제해놓는 곳이다.(각 라이

STM32CubeIDE를 이용한 STM32 따라하기(김남수, 이진형) 책을 읽으며 정리한 내용입니다.Tera Term은 시리얼 통신(Serial Communication) 전용 터미널 프로그램임.PC ↔ MCU(예: STM32 보드) 사이에 UART, RS232, US

STM32CubeIDE를 이용한 STM32 따라하기(김남수, 이진형) 책을 읽으며 정리한 내용입니다.Cortex-M0/M0+, M3, M4, M7, M33, H7, U5 등 다양한 라인업Nucleo Board: 저가형, 아두이노 핀 호환, 빠른 프로토타이핑Discove

RAM과 ROM은 논리적 분류 이고 이들을 실제로 구현한 것들이 각각SRAM, DRAM, Flash Memory 같은 것 들이다.정의를 잘 아는 것이 중요한 듯 하다.

1. 프로젝트 생성 조금 기다리면,,, 여기서 보드 찾아준다. 여기서 Nucleo-64 는 MCU의 핀 개수를 의미한다. STM32F103RB-Nucleo 보드의 경우 내부에 MCU를 잘 보면 핀이 64개인 것을 확인할 수 있다. 
필요성 printf 디버깅은 가장 간단하면서, 다양한 임베디드 플랫폼에 공통적으로 사용할 수 있는 디버깅 방법이다. 현업에서도 많이 사용되는 디버깅 방법이다. 1. 프로젝트 생성 및 설정 USART_printf라는 이름으로 프로젝트를 생성한다. USART_pr

STM32CubeIDE에서는 CubeMX를 통해 GUI로 각종 설정을 수행한다.그 후 CubeMX가 Naming Rule 규칙에 의거해 Code를 Generation 해주는데, 나는 그 Naming Rule에 대해 잘 알지못하여 소스코드를 봐도 이해가 쉽지 않았다.오늘

Nucleo 보드의 B1 버튼을 누르면 외부 인터럽트가 발생하며 LED(LD2)가 깜빡이도록 하는 것B1 버튼은 PC13에 연결되어 있는 것을 확인할 수 있다.또한, 회로도를 보면 스위치가 Open 상태일때 PC13이 HIGH(1)이고, Short 상태일때 PC13이

프로그램 메모리와 데이터 메모리 구분 없음 (즉, 한 메모리에 프로그램, 임시 데이터 전부 저장)EX) 인텔 계열 CPU 프로그램 메모리(ROM)와 데이터 메모리(RAM) 분리MCU에서 주로 사용 → 프로그램과 데이터 동시에 접근 가능 → 속도 빠름단점: 버스 구조 복

현대의 컴퓨터는 폰 노이만이 제안한저장 프로그램 방식을 사용한다. 저장 프로그램 방식이란 컴퓨터가 수행해야하는 명령어를 메모리에 저장하고, 이를 불러와서 실행하는 방식이다.(1) 역할: 컴퓨터/MCU의 두뇌, 명령을 해석하고 실행함(2) 기능연산(Arithmetic)