카테고리 없음

Mega328 마이크로컨트롤러 아두이노 다운로드(2/2)

모빌리티키즈 2023. 12. 19. 11:57
728x90
반응형

안녕하세요,

아래는 Mega328 마이크로컨트롤러와 LCD, 키패드, FTDI를 이용한 인터넷 프로그래밍에 대한 정보입니다.

 

1탄에서 2탄으로 추가로 프로그래밍하는 방법을 소개합니다.

17단계: PhotoMOS 시뮬레이터

 

그림과 같이 두 개의 빨간색과 녹색 5mm LED를 배선합니다. 이 LED는 나중에 코드가 실행될 때 MCU 출력이 작동하는 것을 볼 수 있도록 여기에 있습니다.

이 회로를 사용하는 원래 장치(매우 유사한 스케치 포함)는 회로도 섹션에서 볼 수 있듯이 AQV251G PhotoMOS 릴레이를 제어했습니다. 이들은 해당 장치의 모든 고전류 작업을 수행했지만 광 계전기는 상대적으로 비싸기 때문에 간단한 LED 회로로 교체하여 이러한 장치의 MCU 제어를 시뮬레이션합니다. 고전류 장치를 제어하려면 그림과 같이 LED를 광 릴레이로 교체하거나 트랜지스터를 스위치로 사용하여 간단히 교체할 수 있습니다. 적절한 크기의 릴레이가 주어지면 이 칩으로 기관차 크기의 전기 모터를 활성화할 수 있습니다.

18 단계 : 스케치 및 프로그램 작동

KPD_LCD_tutorial 스케치와 KPD_LCD_basic 스케치 및 필요한 라이브러리가 모두 여기에 Arduino 파일로 포함되어 있습니다. 라이브러리 Wire.h  SoftwareSerial.h는 이미 Arudino IDE에 있으므로 제공되지 않습니다.

이러한 스케치가 작동하려면 IDE에 다음 라이브러리가 설치되어 있어야 합니다

  • 와이어.h
  • SoftwareSerial.h (영문)
  • i2ckeypad.h
  • EEPROMVar.h
  • serLCD.h

이러한 라이브러리를 Arduino IDE로 가져오려면 압축 파일을 컴퓨터의 폴더에 다운로드한 다음 Sketch > Import Library > Add Library를 클릭해야 합니다. 추가할 라이브러리가 포함된 폴더를 선택하라는 대화 상자가 열립니다. 폴더의 압축을 풀 필요가 없으며 Arduino가 자동으로 풀어야 합니다.

참고:여기에 제공된 i2ckeypad.h 라이브러리는 Arduino 버전 1.0 이상에서 작동하도록 수정되었습니다.

스케치를 가져오려면 파일을 컴퓨터의 폴더에 다운로드하고 컴퓨터의 Arduino 폴더로 드래그합니다.

중요사항: IDE에서 스케치를 처음 열 때 새 이름으로 저장하고 코드를 실험할 때 이름이 바뀐 스케치로만 작업합니다. 이렇게 하면 문제가 발생할 경우 항상 알려진 작업 버전의 스케치로 대체할 수 있습니다.

스케치에 대한 몇 가지 참고 사항 :

*튜토리얼 스케치의 최신 버전은 1.0.03입니다.

튜토리얼 스케치는 상당히 광범위하며 칩 메모리의 상당 부분을 차지합니다. 더 많은 것을 추가해야 하는 경우 Mega168을 대체 컨트롤러로 고려할 수 있습니다.

여기서 전체 아이디어는 LCD와 키패드를 다음 프로젝트에 빠르게 통합할 수 있는 방법을 제공하는 것입니다. 나머지 코드는 이를 실제로 보여주고 회로 자체에 대한 실제 기능을 제공하기 위한 것입니다. 약간의 상상력을 발휘하면 이 스케치로 LED 몇 개를 깜박이는 것보다 훨씬 더 많은 일을 할 수 있다는 것을 알게 될 것입니다.

기본 스케치는 훨씬 간단하며 회로의 모든 것을 통합하는 데 필요한 베어 코드가 포함되어 있습니다.

시간을내어 스케치 주석을 읽고 무슨 일이 일어나고 있는지 파악하십시오. 얼마 지나지 않아 자신의 필요에 맞게 만들 수 있는 방법을 알게 될 것입니다.

부름:

코드에서 호출이 작동하는 방식을 이해하면 스케치에서 일어나는 일을 해독하려고 할 때 큰 도움이 됩니다.

사용자는 LCD에 나타나는 프롬프트를 통해 프로그래밍할 때 거의 손으로 주도됩니다. 모든 필수 입력에 대한 프롬프트가 표시되고 오류는 동일한 방식으로 처리됩니다. 메모리는 프로그래밍할 때 종종 문제가 되므로 항상 코드 중복을 피해야 합니다. 이를 수행하는 가장 일반적인 방법은 자주 사용되는 코드를 함수에 작성하고 필요할 때 '호출'하는 것입니다. 이것이 프롬프트 (및 몇 가지 다른 작업)가 여기에서 처리되는 방법입니다. 사용자 입력 오류를 처리할 때와 같이 동일한 것을 LCD에 효과적으로 출력하는 여러 줄을 사용하는 대신 프롬프트는 함수에서 한 번 작성되고 다양한 지점에서 필요할 때 구체적으로 호출됩니다. 프로그램은 스케치의 다른 위치로 '점프'하고 초기 호출 줄을 지나 계속하기 위해 돌아 오기 전에 다른 코드의 여러 줄을 실행할 수 있습니다.

작동 할 때 프로그램이 스케치 주위를 계속 움직이는 것을 즉시 볼 수 있습니다. 무슨 일이 일어나고 있는지 완전히 이해하려면 (흰 토끼를 따라가세요?) 읽으면서 스케치를 이리저리 움직여야 합니다.

참조:

막히면 Arduino 도움말 메뉴를 사용할 수 있습니다. 참조 링크를 클릭하면 Arduino에서 사용되는 언어에 대한 대부분의 질문에 답할 수 있습니다.

프로그램 운영:

프로그램의 실제 기능은 간단합니다. 코드는 사용자가 결정한 간격으로 깜박이는 녹색 또는 빨간색 LED 사이를 전환하기만 하면 되지만 입력된 변수를 변경하여 이 작업을 수행하는 방법을 많이 제어할 수 있습니다.

아래는 입력하라는 메시지가 표시되는 매개 변수입니다.

시작 색상:

  1. 빨간색으로 시작
  2. 시작 녹색
  3. 무작위 선택

스위치 시간:

  • 색상 전환 사이의 시간(분) 또는 전환이 없는 경우 0(깜박임 간격이 하드 코딩됨)

시작 지연:

  • 시작하기 전에 대기하는 시간(분)

실행 시간:

  • 작동하는 총 시간입니다.

화면 비활성화?:

  • 실행 중 LCD를 비활성화하지 않음을 나타냅니다.

사이렌은 시작, 색상 스위치 및 종료 경고를 제공합니다. 입력 오류 또는 잘못된 입력은 프롬프트와 적절한 피드백으로 처리됩니다.

F5Y4FWEIRXT74MZ.zip
0.00MB

728x90
반응형