MCU는 하나의 칩에 통합된 완전한 컴퓨터 시스템을 말합니다. 대부분의 기능은 작은 칩에 통합되어 있지만 CPU, 메모리, 내부 및 외부 버스 시스템 등 완전한 컴퓨터에 필요한 대부분의 구성 요소를 갖추고 있으며 현재 대부분은 외부 메모리도 갖추고 있습니다. 동시에 통신 인터페이스, 타이머, 실시간 시계 등 주변 장치가 통합됩니다. 오늘날 가장 강력한 단일 칩 마이크로컴퓨터 시스템은 사운드, 이미지, 네트워크 및 복잡한 입력 및 출력 시스템을 하나의 칩에 통합할 수도 있습니다.
마이크로 컨트롤러는 산업 제어 분야에서 처음으로 사용되었기 때문에 마이크로 컨트롤러라고도 합니다. 마이크로컨트롤러는 칩에 CPU만 있는 전용 프로세서로 개발됩니다. 최초의 설계 개념은 다수의 주변 장치와 CPU를 하나의 칩에 통합하여 컴퓨터 시스템을 더 작고 복잡하고 까다로운 제어 장비에 쉽게 통합할 수 있도록 하는 것이었습니다. INTEL의 Z80은 이 아이디어에 따라 설계된 최초의 프로세서였습니다. 이후 마이크로 컨트롤러와 특수 목적 프로세서의 개발은 서로 다른 방향으로 진행되었습니다.
초기 마이크로 컨트롤러는 모두 8비트 또는 4비트였습니다. 가장 성공적인 제품은 INTEL의 8031로 단순성, 신뢰성, 우수한 성능으로 큰 호평을 받았습니다. 그 이후로 MCS51 시리즈 마이크로 컨트롤러 시스템은 8031을 기반으로 개발되었습니다. 이 시스템을 기반으로 하는 마이크로컨트롤러 시스템은 오늘날에도 여전히 널리 사용되고 있습니다. 산업 제어 분야의 요구 사항이 높아지면서 16비트 마이크로컨트롤러가 등장하기 시작했지만, 가격 대비 성능이 만족스럽지 못하여 널리 사용되지는 못했습니다. 1990년대 이후 가전제품의 급속한 발전과 함께 마이크로컨트롤러 기술은 크게 발전하였다. INTEL i960 시리즈, 특히 최신 ARM 시리즈의 광범위한 적용으로 32비트 마이크로컨트롤러는 16비트 마이크로컨트롤러의 고급 상태를 빠르게 대체하고 주류 시장에 진입했습니다. 전통적인 8비트 마이크로 컨트롤러의 성능도 급속히 향상되었으며 처리 능력은 1980년대에 비해 수백 배 증가했습니다. 현재 고급형 32비트 마이크로 컨트롤러의 주 주파수는 300MHz를 초과했으며 성능은 1990년대 중반의 특수 프로세서를 바짝 따라잡고 있습니다. 일반 모델의 공장 가격은 1달러까지 떨어졌으며 최고 수준입니다. -최종 모델은 US$10에 불과합니다. 최신 마이크로 컨트롤러 시스템은 더 이상 베어 메탈 환경에서만 개발 및 사용되지 않습니다. 다양한 전용 임베디드 운영 체제가 전체 범위의 마이크로 컨트롤러에서 널리 사용됩니다. 그리고 휴대용 컴퓨터와 휴대폰의 핵심 처리 장치인 고급 마이크로 컨트롤러는 전용 Windows 및 Linux 운영 체제를 직접 사용할 수도 있습니다.
마이크로컨트롤러는 전용 프로세서보다 임베디드 시스템에 더 적합하므로 애플리케이션이 가장 많습니다. 실제로 마이크로컨트롤러는 세계에서 가장 많은 컴퓨터입니다. 마이크로컨트롤러는 현대인의 삶에 사용되는 거의 모든 전자 및 기계 제품에 통합되어 있습니다. 휴대폰, 전화기, 계산기, 가전제품, 전자 장난감, 휴대용 컴퓨터, 마우스 및 기타 컴퓨터 액세서리에는 모두 1-2개의 마이크로컨트롤러가 장착되어 있습니다. 또한 개인용 컴퓨터에서 작동하는 수많은 마이크로 컨트롤러가 있을 것입니다. 자동차에는 일반적으로 40개 이상의 마이크로컨트롤러가 장착되어 있으며 복잡한 산업 제어 시스템에는 수백 개의 마이크로컨트롤러가 동시에 작동할 수도 있습니다. 마이크로컨트롤러의 수는 PC와 기타 컴퓨팅 수를 합친 것보다 훨씬 많을 뿐만 아니라 인간의 수보다 훨씬 더 많습니다.
단일칩 마이크로컴퓨터 소개
단일칩 마이크로컴퓨터는 특정 논리 기능을 완성하는 칩이 아니라 컴퓨터 시스템을 통합하는 칩이다. 칩에. 간단히 말해서, 칩이 컴퓨터가 됩니다. 작은 크기, 가벼운 무게, 저렴한 가격으로 학습, 응용 및 개발에 편리한 조건을 제공합니다. 동시에 마이크로 컨트롤러 사용법을 배우는 것은 컴퓨터의 원리와 구조를 이해하는 데 가장 좋은 선택입니다.
마이크로 컨트롤러는 또한 하드 디스크와 동일한 기능을 가진 CPU, 메모리, 병렬 버스 및 저장 장치와 같은 컴퓨터 기능과 유사한 모듈을 사용합니다. 차이점은 이러한 구성 요소의 성능이 하드 디스크와 비슷하다는 것입니다. 가정용 컴퓨터보다 훨씬 약하지만 가격도 저렴합니다. 일반적으로 10위안을 넘지 않습니다... 전기 제품 제어와 같이 그다지 복잡하지 않은 작업을 수행하는 데 사용하면 충분합니다. 현재 우리가 사용하는 전자동 드럼세탁기, 배기후드, VCD 등 가전제품에서 볼 수 있습니다! ...주로 제어부의 핵심 부품으로 사용됩니다.
온라인 실시간 제어 컴퓨터입니다. 온라인은 현장 제어를 의미합니다. 필요한 것은 강력한 간섭 방지 능력과 저렴한 비용입니다. 이는 오프라인 컴퓨터(예: 가정용 PC)와도 다릅니다. .) 주요 차이점은 다음과 같습니다.
마이크로 컨트롤러는 프로그램에 의존하며 수정될 수 있습니다. 다양한 기능은 다양한 프로그램을 통해 구현되며, 특히 일부 특별하고 고유한 기능은 다른 장치에서 달성하려면 많은 노력이 필요하며 일부는 많은 노력을 기울여도 달성하기 어렵습니다.
1950년대 미국에서 개발된 74 시리즈나 1960년대 CD4000 시리즈처럼 별로 복잡하지 않은 기능을 순수 하드웨어로 구현한다면 그 회로는 대형 PCB 기판이 틀림없다! 그러나 1970년대 미국 시장에 성공적으로 출시된 마이크로컨트롤러 시리즈를 사용한다면 결과는 매우 달라질 것입니다! 마이크로컨트롤러는 여러분이 작성한 프로그램을 통해 높은 지능, 고효율, 높은 신뢰성을 달성할 수 있기 때문입니다!
마이크로컨트롤러는 비용에 민감하기 때문에 현재 지배적인 소프트웨어는 여전히 가장 낮은 수준의 어셈블리 언어입니다. 바이너리 기계어 코드를 제외하면 왜 사용합니까? 많은 고급 언어가 시각적 프로그래밍 수준에 도달했는데 왜 사용하지 않습니까? 그 이유는 매우 간단합니다. 즉, 마이크로 컨트롤러에는 가정용 컴퓨터와 같은 CPU도 없고 하드 드라이브와 같은 대용량 저장 장치도 없기 때문입니다. 시각적 고급 언어로 작성된 작은 프로그램에 버튼이 하나만 있어도 크기가 수십K에 달합니다! 가정용 PC의 하드 드라이브에는 적합하지만 마이크로컨트롤러에는 적합하지 않습니다. 마이크로 컨트롤러의 하드웨어 리소스 활용률은 매우 높아야 하므로 조립이 원시적이지만 여전히 광범위하게 사용됩니다. 마찬가지로 슈퍼컴퓨터의 운영체제와 응용소프트웨어가 가정용 PC에서 구동된다면 가정용 PC는 이를 감당할 수 없게 된다.
20세기는 전기 시대, 전자 시대, 그리고 이제 돌입한 컴퓨터 시대라는 세 가지 '전기' 시대를 거쳐 왔다고 할 수 있습니다. 그러나 이러한 종류의 컴퓨터는 일반적으로 개인용 컴퓨터, 줄여서 PC를 의미합니다. 호스트, 키보드, 모니터 등으로 구성됩니다. 대부분의 사람들이 잘 알지 못하는 또 다른 유형의 컴퓨터가 있습니다. 이러한 종류의 컴퓨터는 다양한 기계에 지능을 부여하는 단일 칩 컴퓨터(마이크로컨트롤러라고도 함)입니다. 이름에서 알 수 있듯이 이 최소 컴퓨터 시스템은 하나의 집적 회로만 사용하여 간단한 계산과 제어를 수행합니다. 크기가 작기 때문에 일반적으로 제어되는 기계의 "배"에 숨겨져 있습니다. 장치 전체에서 인간의 마음과 같은 역할을 하고 있는데, 잘못되면 장치 전체가 마비된다. 오늘날 이러한 종류의 마이크로 컨트롤러는 지능형 기기, 실시간 산업 제어, 통신 장비, 내비게이션 시스템, 가전 제품 등과 같은 광범위한 분야에서 사용됩니다. 다양한 제품이 마이크로컨트롤러를 사용하면 제품을 업그레이드할 수 있다. 스마트 세탁기처럼 제품명 앞에 '지능형'이라는 형용사가 붙는 경우가 많다. 요즘에는 일부 공장의 기술자나 아마추어 전자 개발자가 생산하는 일부 제품은 회로가 너무 복잡하거나 기능이 너무 단순하여 쉽게 복제됩니다. 그 이유는 해당 제품이 마이크로컨트롤러나 기타 프로그래밍 가능한 논리 장치를 사용하지 않기 때문일 수 있습니다.
마이크로컨트롤러의 응용 분야
현재 마이크로컨트롤러는 우리 삶의 모든 영역에 침투해 있으며, 마이크로컨트롤러의 흔적이 없는 분야는 찾기가 거의 어렵습니다. 미사일 항법 장치, 항공기 각종 기기 제어, 컴퓨터 네트워크 통신 및 데이터 전송, 산업 자동화 프로세스의 실시간 제어 및 데이터 처리, 널리 사용되는 스마트 IC 카드, 민간 고급 자동차 보안 시스템, 비디오 기계, 카메라 제어 , 전자동 세탁기, 프로그램 제어 장난감, 전자 애완동물 등은 모두 마이크로컨트롤러와 분리될 수 없습니다. 자동제어 분야에서는 로봇, 스마트기기, 의료기기는 물론이다. 따라서 마이크로컨트롤러의 학습, 개발 및 응용을 통해 컴퓨터 응용 및 지능형 제어 분야의 과학자 및 엔지니어 그룹이 탄생할 것입니다.
마이크로 컨트롤러는 계측, 가전 제품, 의료 장비, 항공 우주, 지능형 관리 및 특수 장비의 프로세스 제어 분야에서 널리 사용되며 대략 다음 범주로 나눌 수 있습니다.
1. 지능형 계측기에서의 적용
마이크로컨트롤러는 작은 크기, 낮은 전력 소비, 강력한 제어 기능, 유연한 확장, 소형화 및 사용 용이성 등의 장점을 가지고 있으며 다양한 조합을 통해 계측기 및 계측기에 널리 사용됩니다. 전압, 전력, 주파수, 습도, 온도, 유량, 속도, 두께, 각도, 길이, 경도, 원소, 압력 등의 물리량을 측정할 수 있는 센서입니다. 마이크로 컨트롤러 제어를 사용하면 계측기가 디지털화되고 지능화되고 소형화되며 전자 회로나 디지털 회로를 사용하는 것보다 기능이 더욱 강력해집니다. 예를 들어 정밀 측정 장비(파워미터, 오실로스코프, 각종 분석기) 등이 있습니다.
2. 산업 제어에 적용
마이크로컨트롤러를 사용하여 다양한 유형의 제어 시스템 및 데이터 수집 시스템을 구축할 수 있습니다. 예를 들어, 공장 조립 라인의 지능형 관리, 지능형 엘리베이터 제어, 다양한 경보 시스템 및 보조 제어 시스템을 구성하는 컴퓨터 네트워킹 등이 있습니다.
3. 가전제품에의 응용
밥솥, 세탁기, 냉장고, 에어컨에 이르기까지 오늘날의 가전제품은 기본적으로 싱글칩 마이크로컴퓨터로 제어된다고 할 수 있다. , 컬러 TV, 기타 오디오 및 비디오 장비, 전자 계량 장비 등은 모두 다양하고 어디에나 있습니다.
4. 컴퓨터 네트워크 및 통신 분야의 응용
현대 마이크로 컨트롤러는 일반적으로 통신 인터페이스를 갖추고 있어 데이터 통신을 위해 컴퓨터와 쉽게 통신할 수 있으며 우주 응용에 탁월한 재료 조건을 제공합니다. 오늘날 통신 장비는 기본적으로 휴대폰, 전화기, 소형 프로그램 제어 스위치, 자동 통신 호출 시스템 구축, 무선 통신 열차, 일상 업무의 모든 곳에서 단일 칩 마이크로컴퓨터의 지능형 제어를 실현합니다. 통신, 무선 무전기 등
5. 의료 장비 분야에서 단일 칩 마이크로컴퓨터의 적용
단일 칩 마이크로컴퓨터는 의료용 인공호흡기, 각종 분석기, 모니터, 초음파 진단 장비 및 호출 시스템 등
또한 마이크로 컨트롤러는 산업 및 상업, 금융, 과학 연구, 교육, 국방, 항공 우주 및 기타 분야에서 널리 사용됩니다.
학습 과정의 6가지 중요한 부분
마이크로 컨트롤러 학습 과정의 6가지 중요한 부분
1. 버스: 우리는 회로가 항상 구성 요소로 구성된다는 것을 알고 있습니다. 장치는 전선으로 연결되며, 일반적으로 장치가 직렬 관계에 있고 장치 간 연결이 많지 않기 때문에 배선이 문제가 되지 않습니다. 그러나 컴퓨터 회로는 마이크로프로세서를 핵심으로 합니다. 그리고 각 장치는 마이크로프로세서에 연결되어야 하며, 각 장치의 작업은 서로 조화를 이루어야 하므로 여전히 아날로그 회로와 같다면 각 마이크로프로세서에 별도의 연결이 있는 경우이다. 각 장치 사이의 라인 수는 놀라울 정도입니다. 따라서 마이크로프로세서에는 버스라는 개념이 도입되었습니다. 각 장치는 모든 장치의 8개 데이터 라인을 모두 8개로 연결합니다. 공통 라인은 다양한 장치를 연결하는 것과 같습니다. 그러나 이것만으로는 충분하지 않습니다. 두 장치가 동시에 데이터를 전송하면 하나는 0이고 다른 하나는 1입니다. 그렇다면 수신자는 정확히 무엇을 수신합니까? 이러한 상황은 허용되지 않으므로 장치가 시분할 방식으로 작동하도록 제어 라인을 통해 제어해야 합니다. 언제든지 하나의 장치만 데이터를 보낼 수 있습니다(여러 장치가 동시에 데이터를 수신할 수 있음). 장치의 데이터 라인을 데이터 버스라고도 하며, 장치의 모든 제어 라인을 제어 버스라고 합니다. 마이크로 컨트롤러 내부나 외부 메모리, 기타 장치에는 저장 장치가 있으며, 이러한 저장 장치를 사용하려면 주소를 할당해야 합니다. 물론 할당된 주소는 전기 신호의 형태로도 제공됩니다. , 주소 할당에 사용됩니다. 또한 많은 라인이 있으며 이러한 라인을 주소 버스라고 합니다.
2. 데이터, 주소, 명령어: 이 세 가지를 하나로 묶은 이유는 이 세 가지의 본질이 동일하기 때문입니다. 숫자, 즉 '0'의 문자열과 '1'의 연속입니다. 즉, 주소와 명령어도 데이터입니다. 명령: 마이크로컨트롤러 칩 설계자가 지정한 숫자는 일반적으로 사용되는 명령 니모닉과 일대일로 일치하며 마이크로컨트롤러 개발자가 변경할 수 없습니다. 주소: 마이크로 컨트롤러의 내부 및 외부 저장 장치와 입력 및 출력 포트를 찾는 기준입니다. 내부 장치의 주소 값은 칩 설계자에 의해 지정되며 외부 장치는 변경할 수 없습니다. 마이크로 컨트롤러 개발자이지만 일부 주소 단위가 있습니다. (자세한 내용은 프로그램 실행 프로세스 참조) 데이터: 이는 마이크로프로세서에 의해 처리되는 개체입니다. 일반적으로 처리되는 데이터는 다음과 같은 상황에 처할 수 있습니다. (예: MOV DPTR, #1000H) ), 즉 주소 1000H가 DPTR로 전송됩니다.
2? 모드 워드 또는 제어 워드(예: MOV TMOD, #3), 3은 제어 워드입니다.
3? 상수(예: MOV TH0, #10H) 10H는 시간 상수입니다.
4? 실제 출력 값(예: P1 포트는 유색 조명에 연결됩니다. 조명을 완전히 밝게 하려면 MOV P1, #0FFH 명령을 실행합니다. 완전히 어두워지려면 다음 명령을 실행하십시오: MOV P1, #00H) 여기서 0FFH 및 00H는 실제 출력 값입니다. 또 다른 예는 LED에 사용되는 글리프 코드이며, 이는 실제 출력 값이기도 합니다.
주소와 명령어의 성격을 이해하면 왜 프로그램이 도망쳐 데이터를 명령어로 실행하는지 이해하는 것은 어렵지 않습니다.
3. P0 포트, P2 포트, P3 포트의 두 번째 기능 사용법: 초보자들이 P0 포트, P2 포트, P3 포트의 두 번째 기능 사용법에 대해 종종 혼동할 때 두 번째 기능은 다음과 같다고 생각합니다. 원래 기능과 동일합니다. 전환 프로세스나 지침이 있어야 합니다. 실제로 각 포트의 두 번째 기능은 완전히 자동이며 전환하기 위해 지침을 사용할 필요가 없습니다. 예를 들어, P3.6과 P3.7은 각각 WR 신호와 RD 신호입니다. 마이크로칩 프로세서가 외부 RAM에 연결되거나 외부 I/O 포트가 있는 경우 두 번째 기능으로 사용되며 일반으로 사용할 수 없습니다. I/O 포트. 마이크로프로세서가 MOVX 명령을 실행하자마자 사전 명령 명령 없이 해당 신호가 P3.6 또는 P3.7에서 전송됩니다. 실제로 "범용 I/O 포트로 사용할 수 없습니다"는 "할 수 없다"는 의미가 아니라 (사용자가) 범용 I/O 포트로 "사용하지 않을 것"이라는 의미입니다. 명령어에 SETB P3.7 명령어를 완전히 배열할 수 있으며, 마이크로컨트롤러가 이 명령어를 실행할 때 P3.7도 하이 레벨로 만들지만 사용자는 이렇게 하지 않습니다. 왜냐하면 이렇게 하면 일반적으로 시스템이 충돌할 수 있기 때문입니다.
4. 프로그램 실행 과정 : 파워온 리셋 후 마이크로 컨트롤러의 8051에 있는 프로그램 카운터(PC)의 값이 '0000'이므로 프로그램은 항상 '0000' 단위부터 실행을 시작하며, 즉, '0000' 단위는 시스템의 ROM에 존재해야 하며, '0000' 단위에 저장되어 있는 것은 명령어여야 한다.
5. 스택: 스택은 데이터를 저장하는 데 사용되는 영역입니다. 이 영역 자체에는 특별한 것이 없습니다. 내부 RAM의 일부일 뿐이며 데이터를 저장하고 액세스한다는 점만 다릅니다. 방식은 소위 '선입선출, 후입선출'이며, 스택에는 'PUSH' 및 'POP'라는 특수한 데이터 전송 명령이 있고 이를 제공하는 전용 단위, 즉 스택 포인터 SP, 각각 PUSH 명령이 실행되면 SP는 원래 값을 기준으로 자동으로 1씩 증가합니다. POP 명령이 실행될 때마다 SP는 원래 값을 기준으로 자동으로 1씩 감소합니다. SP의 값은 명령어에 의해 변경될 수 있으므로 프로그램 시작 시 SP의 값이 변경되는 한 지정된 메모리 단위에 스택을 설정할 수 있습니다. MOV SP, #5FH 명령, 스택은 메모리 셀 60H부터 시작하는 메모리 셀에 설정됩니다. 일반적으로 프로그램 시작 부분에는 항상 스택 포인터를 설정하라는 명령이 있습니다. 왜냐하면 시작할 때 SP의 초기 값은 07H이므로 스택은 유닛 08H에서 시작하여 뒤로 돌아가고 영역은 08H에서 08H까지입니다. 1FH는 8031의 두 번째와 세 번째 비트입니다. , 네 번째 작업 레지스터 영역이 자주 사용되므로 데이터 혼란이 발생합니다. 서로 다른 작성자가 프로그램을 작성할 때 초기화 스택 지침은 정확히 동일하지 않습니다. 이는 작성자의 습관에 따른 문제입니다. 스택 영역을 설정한다고 해서 해당 영역이 특수 메모리가 되는 것은 아니며 일반 메모리 영역처럼 사용할 수는 있지만 일반적으로 프로그래머는 이를 일반 메모리로 사용하지 않습니다.
6. 마이크로 컨트롤러의 개발 과정: 여기서 언급하는 개발 과정은 일반적인 책에서 언급한 것처럼 작업 분석으로 시작하지 않으며, 하드웨어가 설계 및 제작되었다고 가정하고 작성하는 작업입니다. 소프트웨어. 소프트웨어를 작성하기 전에 먼저 몇 가지 상수와 주소를 결정해야 합니다. 실제로 이러한 상수와 주소는 설계 단계에서 직접 또는 간접적으로 결정되었습니다. 예를 들어, 장치의 배선을 설계할 때 장치의 주소가 결정되면 장치의 기능도 결정됩니다. 그런 다음 텍스트 편집기(EDIT, CCED 등)를 사용하여 소프트웨어를 작성합니다. 작성 후 컴파일러를 사용하여 소스 프로그램 파일을 컴파일하고 구문 오류가 없을 때까지 오류를 확인합니다. 시뮬레이션 기계는 일반적으로 프로그램이 올바르게 실행될 때까지 소프트웨어를 실행하는 데 사용됩니다. 올바르게 실행한 후 필름을 작성할 수 있습니다(EPROM에 프로그램을 굳히기). 소스 프로그램이 컴파일되면 확장자가 HEX인 개체 파일이 생성됩니다. 일반적으로 프로그래머는 이 형식의 파일을 인식할 수 있으며 이 파일이 로드되는 한 영화를 작성할 수 있습니다. 여기에서는 모든 사람이 전체 프로세스를 이해할 수 있도록 예를 들어 보겠습니다.
ORG 0000H
LJMP START
ORG 040H
START:
MOV SP, #5FH; 세트 스택
LOOP:
NOP
LJMP 루프
p>END; 종료
MCU 학습
현재 많은 사람들이 어셈블리 언어를 인식하지 못합니다. C 언어로 마이크로컨트롤러 프로그래밍을 익히는 것은 매우 중요하며, 이는 개발 효율성을 크게 향상시킬 수 있습니다. 그러나 초보자는 마이크로 컨트롤러의 어셈블리 언어를 이해하지 못할 수도 있지만 마이크로 컨트롤러의 구체적인 성능과 특성을 이해해야 합니다. 그렇지 않으면 마이크로 컨트롤러 분야에서 치명적일 것입니다. 마이크로컨트롤러의 하드웨어 자원을 고려하지 않고 KEIL에서 C로 무작위로 프로그램한다면 결과는 해결할 수 없는 문제일 뿐입니다! 최고의 C 언어 마이크로 컨트롤러 엔지니어는 어셈블리 출신의 프로그래머라고 확신할 수 있습니다. 마이크로 컨트롤러의 C 언어는 고급 언어이지만 마이크로 컨트롤러의 하드웨어 리소스는 다릅니다. VC, VB 등의 고급 언어를 사용해 데스크톱 PC에서 프로그램을 작성할 때와는 달리, 결국 데스크톱 컴퓨터의 하드웨어는 매우 강력하기 때문에 하드웨어 리소스 문제를 무시할 수 있습니다.
마이크로 컨트롤러의 핀과 관련 기능을 설명하기 위해 8051 마이크로 컨트롤러를 예로 들어 보겠습니다.
"MCU 핀 다이어그램"
40개의 핀은 대략적으로 나뉩니다. 핀 기능은 전원, 클럭, 제어 및 I/O 핀의 4가지 범주로 나눌 수 있습니다.
⒈ 전원 공급 장치:
⑴ VCC - +5V에 연결된 칩 전원 공급 장치
⑵ VSS - 접지 단자; 참고: 멀티미터를 사용하여 마이크로컨트롤러의 핀 전류를 테스트합니다. 이는 일반적으로 0v 또는 5v입니다. 이는 표준 TTL 레벨입니다. 그러나 때로는 마이크로컨트롤러 프로그램이 작동할 때 테스트 결과가 이 값이 아니라 0v-5v 사이입니다. 실제로 이것은 멀티미터입니다. 특정 순간에는 마이크로 컨트롤러 핀 전류가 0v 또는 5v로 유지됩니다.
⒉ 클록: XTAL1, XTAL2 - 수정 발진기 회로의 반전 입력 및 출력 단자입니다.
⒊ 제어 라인: 4개의 제어 라인이 있습니다.
⑴ ALE/PROG: 주소 래치 활성화/온칩 EPROM 프로그래밍 펄스
① ALE 기능: P0 포트에서 전송된 하위 8비트 주소를 래치하는 데 사용됩니다.
② PROG 기능: EPROM 온칩이 있는 칩의 경우 EPROM 프로그래밍 중에 이 핀은 프로그래밍 펄스를 입력합니다.
⑵ PSEN: 외부 ROM 읽기 스트로브 신호.
⑶ RST/VPD: 리셋/대기 전원 공급 장치.
① RST(Reset) 기능: 신호 입력 단자를 재설정합니다.
② VPD 기능: Vcc의 전원이 꺼지면 백업 전원 공급 장치에 연결합니다.
⑷ EA/Vpp: 내부 및 외부 ROM 선택/온칩 EPROM 프로그래밍 전원 공급 장치.
① EA 기능: 내부 및 외부 ROM 선택 단자.
② Vpp 기능: 칩 내부에 EPROM이 있는 칩의 경우 EPROM 프로그래밍 중에 프로그래밍 전원 Vpp가 적용됩니다.
⒋ I/O 라인
80C51***에는 4개의 8비트 병렬 I/O 포트가 있습니다: P0, P1, P2, P3 포트, ***32핀.
P3 포트에는 특수 신호 입력 및 출력과 제어 신호(제어 버스에 속함)에 사용되는 두 번째 기능도 있습니다.