MCU
[MCS-51] Keil 컴파일러 C51 시험버전 구하는 방법
이 글에서는 MCS-51 계열 MCU 펌웨어 개발을 위한 상용 툴인 Keil 사의 컴파일러 C51 시험 버전을 구하는 방법을 설명합니다. MCS-51 계열 MCU 펌웨어를 개발하기 위해서는 전용 컴파일러 및 IDE가 필요합니다. 무료로 사용할 수 있는 컴파일러는 SDCC가 있습니다. 이를 eclipse IDE와 함께 사용한다면 훌륭한 개발환경이 갖춰지게 됩니다. 유료로 사용해야 하는 툴로는 Keil 사의 C51이나 IAR SYSTEMS 사의 IAR Embedded workbench for 8051등이 대표적입니다. 개인이 사용하기에는 꽤 비싼 사용료를 내야 하지만 산업 현장에서는 많이 사용되고 있습니다. 이 중 Keil 사의 C51 시험 버전을 다운로드받는 방법에 대해 알아보겠습니다. 과정 1 Keil ..
[MCS-51] Arduino를 이용한 AT89S52 프로그램 다운로드
AT89S52는 SPI(Serial Peripheral Interface) 통신으로 프로그램을 다운로드 할 수 있습니다. SPI 통신을 위한 별도의 장비를 이용할 수도 있지만 혹시 주변에 아두이노(Arduino)가 있다면 그것으로 hex 파일을 프로그램 메모리에 쓸 수 있습니다. 이 방법은 모든 MCS-51 계열 MCU에 사용할 수 있는 방법은 아닙니다. 칩 내부에 플래시 메모리를 내장한 모델에 적용할 수 있습니다. 참고로 프로그램은 약 1,000회 정도 덮어쓸 수 있다고 합니다. 개발 환경 및 준비물 이 과정은 Windows 10 환경에서 진행하였고 사용한 재료들은 아래와 같습니다. 아두이노 우노 점퍼선 6개 (전원 용도 2개, SPI 통신 용도 3개, RST 용도 1개) 최소 설계 회로로 구성된 AT..
[MCS-51] AT89S52 특징
Microchip(구 Atmel)사의 MCS-51(8051) 계통 MCU인 AT89S52의 주요 특징은 아래와 같습니다. MCS-51 계통과 호환되는 구조 8K Bytes의 In-System Programmable 플래시 메모리 동작 전원 범위는 4.0V에서 5.0V 까지 0Hz 부터 33 MHz까지 완전 정적인 작동 3 단계 프로그램 메모리 잠금 256 x 8-bit 내장 RAM 제어가능한 I/O 핀 32개 16bit 타이머/카운터 3개 인터럽트 소스 8개 Full duplex를 지원하는 UART 직렬 채널 저전력 유휴(Idle)과 절전( power-down) 모드 와치독 타이머(Watch dog timer) 데이터 포인터 2개 Power-off 플래그 위 정보는 Microship사의 공식 홈페이지에서..
[MCS-51] MCS-51 기본 구조
기본적인 MCS-51(8051) 칩에는 다음과 같은 것들이 내장되어 있습니다. 일반 CPU 기능 병렬 I/O 포트 (Perallel I/O port) 직렬 포트 (Serial port) 인터럽트 제어기 (Interrupt) 타이머/카운터 (Timer/Counter) ROM RAM 특수 기능 레지스터 (SFR, Special Function Register) 위 구성도는 Microchip(구 Atmel)사에서 생산하는 MCS-51 계열 MCU중 AT89S52의 것 입니다. 기본 8051에는 없지만 이 칩에 추가된 것은 아래와 갔습니다. EPROM을 대신하는 플래시(Flash) 메모리 와치독 타이머 (Watch dog timer) 내장된 플래시 메모리에 프로그램을 쓰기 위한 ISP(In-System Prog..