사용자 도구

사이트 도구


products:mpino_studio2:memory

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
products:mpino_studio2:memory [2026/09/08 23:56] – 바깥 편집 127.0.0.1products:mpino_studio2:memory [2026/10/25 11:33] (현재) – 바깥 편집 127.0.0.1
줄 47: 줄 47:
 래더 로직에서 변경한 값은 ''ladderLoop()'' 실행이 끝난 뒤 Arduino 코드에서 읽을 수 있습니다. 같은 스캔 안에서 값을 읽고 쓰는 순서는 ''loop()''에서 ''ladderLoop()''를 호출한 위치를 따릅니다. 래더 로직에서 변경한 값은 ''ladderLoop()'' 실행이 끝난 뒤 Arduino 코드에서 읽을 수 있습니다. 같은 스캔 안에서 값을 읽고 쓰는 순서는 ''loop()''에서 ''ladderLoop()''를 호출한 위치를 따릅니다.
  
-> **입출력 매핑 주의:** P 영역과 보드 기능에 매핑된 C 영역은 래더 스캔 중 실제 입출력과 동기화됩니다. 이 영역을 Arduino 코드와 공유할 때는 **설정 → 래더 핀맵 설정**에서 주소와 입출력 방향을 먼저 확인하십시오.+> **입출력 매핑 주의:** P 영역과 보드 기능에 매핑된 C 영역은 래더 스캔 중 실제 입출력과 동기화됩니다. 이 영역을 Arduino 코드와 공유할 때는 **설정 → 래더 핀맵 설정**에서 주소와 입출력 방향을 먼저 확인해주시기 바랍니다.
  
 > **P 주소 주의:** P 주소는 **보드의 핀 편집**에서 확인하고 수정할 수 있습니다. P 주소의 입출력 방향과 실제 단자는 프로젝트에서 선택한 보드의 정의를 따릅니다. > **P 주소 주의:** P 주소는 **보드의 핀 편집**에서 확인하고 수정할 수 있습니다. P 주소의 입출력 방향과 실제 단자는 프로젝트에서 선택한 보드의 정의를 따릅니다.
줄 59: 줄 59:
 **설정 → 메모리 영역 설정**에서 메모리의 사용 개수를 수정할 수 있습니다. (단축키: ''Ctrl + Shift + M'') **설정 → 메모리 영역 설정**에서 메모리의 사용 개수를 수정할 수 있습니다. (단축키: ''Ctrl + Shift + M'')
  
-{{ :products:mpino_studio2:memory-settings-modal.png?430|그림 1. 메모리 영역별 사용 개수와 예상 SRAM 사용량을 확인하는 메모리 영역 설정 창}}+{{ :products:mpino_studio2:memory-settings-modal.png?430 |그림 1. 메모리 영역별 사용 개수와 예상 SRAM 사용량을 확인하는 메모리 영역 설정 창 }}
  
 ^ 영역 ^ 기본 개수 ^ 기본 주소 범위 ^ ^ 영역 ^ 기본 개수 ^ 기본 주소 범위 ^
줄 71: 줄 71:
 **메모리 영역 설정 창:** P·M·D·C·T·R 입력칸을 비워 두면 보드 기본값을 사용합니다. 값을 입력하면 해당 프로젝트의 사용 개수를 변경하며, 창 아래에서 예상 SRAM 사용량과 전체 SRAM을 함께 확인할 수 있습니다. **메모리 영역 설정 창:** P·M·D·C·T·R 입력칸을 비워 두면 보드 기본값을 사용합니다. 값을 입력하면 해당 프로젝트의 사용 개수를 변경하며, 창 아래에서 예상 SRAM 사용량과 전체 SRAM을 함께 확인할 수 있습니다.
  
-개수와 마지막 주소를 혼동하지 마십시오. 번호가 0부터 시작하므로 D 메모리 200개는 ''D0''부터 ''D199''까지입니다.+개수와 마지막 주소를 구분해야 합니다. 번호가 0부터 시작하므로 D 메모리 200개는 ''D0''부터 ''D199''까지입니다.
  
 ==== C 영역과 보드 핀 매핑 ==== ==== C 영역과 보드 핀 매핑 ====
줄 79: 줄 79:
 매핑 메모리는 **설정 → 래더 핀맵 설정**에서 변경할 수 있습니다. 매핑 메모리는 **설정 → 래더 핀맵 설정**에서 변경할 수 있습니다.
  
-> **아날로그·PWM 출력 주의:** 아날로그 출력 또는 PWM 출력에 메모리를 매핑하면 매핑한 주소의 값으로 출력되므로 Arduino 코드에서 ''analogWrite'' 관련 함수를 사용할 수 없습니다. ''analogWrite'' 관련 함수를 사용하려면 **설정 → 래더 핀맵 설정**에서 해당 출력의 **사용**을 체크 해제하십시오.+> **아날로그·PWM 출력 주의:** 아날로그 출력 또는 PWM 출력에 메모리를 매핑하면 매핑한 주소의 값으로 출력되므로 Arduino 코드에서 ''analogWrite'' 관련 함수를 사용할 수 없습니다. ''analogWrite'' 관련 함수를 사용하려면 **설정 → 래더 핀맵 설정**에서 해당 출력의 **사용**을 체크 해제해야 합니다.
  
 {{ :products:mpino_studio2:memory-c-map-8a4r-s.svg?1000 |MPINO-8A4R(T)-S의 C 메모리와 보드 핀 매핑 }} {{ :products:mpino_studio2:memory-c-map-8a4r-s.svg?1000 |MPINO-8A4R(T)-S의 C 메모리와 보드 핀 매핑 }}
줄 89: 줄 89:
 | ''C11'' ~ ''C99'' | 위 기능에 직접 배정되지 않은 C 영역 | 사용 목적을 확인한 뒤 선택 | | ''C11'' ~ ''C99'' | 위 기능에 직접 배정되지 않은 C 영역 | 사용 목적을 확인한 뒤 선택 |
  
-> **중요:** 이 보드에서 ''C0'' ~ ''C10''을 일반 카운터 주소로 정하면, 같은 주소를 사용하는 보드 기능과 데이터가 겹칠 수 있습니다. 카운터 주소를 정하기 전에 **보드·메모리 정보의 핀맵**과 **사용 메모리 맵**을 함께 확인하십시오.+> **중요:** 이 보드에서 ''C0'' ~ ''C10''을 일반 카운터 주소로 정하면, 같은 주소를 사용하는 보드 기능과 데이터가 겹칠 수 있습니다. 카운터 주소를 정하기 전에 **설정 → 래더 핀맵 설정**과 **설정 → 사용한 메모리**를 확인해주시기 바랍니다.
  
-매핑된 주소는 보드별로 다릅니다. 또한 사용자가 변경할 수 있으므로 **설정 → 래더 핀맵 설정**에서 확인하십시오.+매핑된 주소는 보드별로 다릅니다. 또한 사용자가 변경할 수 있으므로 **설정 → 래더 핀맵 설정**에서 확인해주시기 바랍니다.
  
 ===== 3. 데이터 형식 ===== ===== 3. 데이터 형식 =====
줄 107: 줄 107:
 ''R''은 32비트를 사용하지만 DWORD 정수가 아니라 **실수**를 저장하는 별도의 영역입니다. 숫자 크기가 32비트라는 이유만으로 DWORD 접근과 R 메모리를 같은 방식으로 사용하면 안 됩니다. ''R''은 32비트를 사용하지만 DWORD 정수가 아니라 **실수**를 저장하는 별도의 영역입니다. 숫자 크기가 32비트라는 이유만으로 DWORD 접근과 R 메모리를 같은 방식으로 사용하면 안 됩니다.
  
-값을 정할 때는 현재 값만 보지 말고 계산 후의 최댓값도 확인하십시오. 예를 들어 1일 동안 1ms마다 증가하는 누적값은 86,400,000이므로 WORD 범위를 넘습니다.+값을 정할 때는 현재 값만 보지 말고 계산 후의 최댓값도 확인해주시기 바랍니다. 예를 들어 1일 동안 1ms마다 증가하는 누적값은 86,400,000이므로 WORD 범위를 넘습니다.
  
 ===== 4. 메모리 주소 읽는 방법 ===== ===== 4. 메모리 주소 읽는 방법 =====
줄 132: 줄 132:
 ===== 5. 프로젝트에서 사용한 메모리 찾기 ===== ===== 5. 프로젝트에서 사용한 메모리 찾기 =====
  
-메뉴에서 **보기 → 사용 메모리 맵**을 선택하거나 ''Ctrl+Shift+L''을 누릅니다.+메뉴에서 **설정 → 사용한 메모리**를 선택하거나 ''Ctrl+Shift+L''을 누릅니다.
  
-{{ :products:mpino_studio2:memory-map-modal.png?800 |그림 2. 사용 메모리 맵에서 주소와 사용 위치를 확인하는 화면 }}+{{ :products:mpino_studio2:memory-map-modal.png?800 |그림 2. 사용한 메모리에서 주소와 사용 위치를 확인하는 화면 }}
  
 주소를 바꾸기 전과 메모리 영역 크기를 줄이기 전에 이 화면을 확인하면 중복 사용과 범위 오류를 줄일 수 있습니다. 주소를 바꾸기 전과 메모리 영역 크기를 줄이기 전에 이 화면을 확인하면 중복 사용과 범위 오류를 줄일 수 있습니다.
줄 161: 줄 161:
  
   * ''@<ms>''와 ''@F<ms>''의 시간 단위는 밀리초(ms)입니다.   * ''@<ms>''와 ''@F<ms>''의 시간 단위는 밀리초(ms)입니다.
-  * 괄호를 쓰지 않습니다. ''@F(1000)''이 아니라 ''@F1000''으로 입력합니다. +  * 괄호를 사용해서는 안 됩니다. ''@F(1000)''이 아니라 ''@F1000''으로 입력해야 합니다. 
-  * 비트 접점에서만 사용합니다. +  * 비트 접점에서만 사용해야 합니다. 
-  * 출력 코일 주소에는 사용하지 않습니다.+  * 출력 코일 주소에는 사용해서는 안 됩니다.
  
 ===== 문제해결방법 ===== ===== 문제해결방법 =====
  
 ^ 증상 ^ 확인할 항목 ^ ^ 증상 ^ 확인할 항목 ^
-| 입력한 주소가 허용되지 않습니다. | 영역 문자, 주소 범위, B/W/D 접두어 지원 여부, ''.n'' 비트 접근 지원 여부를 차례로 확인합니다. | +| 입력한 주소가 허용되지 않습니다. | 영역 문자, 주소 범위, B/W/D 접두어 지원 여부, ''.n'' 비트 접근 지원 여부를 차례로 확인해주시기 바랍니다. | 
-| 메모리 영역 설정을 저장할 수 없습니다. | 예상 SRAM 사용량이 전체 SRAM을 넘어서 빨간색으로 표시되었는지 확인합니다. | +| 메모리 영역 설정을 저장할 수 없습니다. | 예상 SRAM 사용량이 전체 SRAM을 넘어서 빨간색으로 표시되었는지 확인해주시기 바랍니다. | 
-| 사용 메모리 맵에서 주소가 보이지 않습니다. | 올바른 영역 탭과 래더·코드 필터를 선택했는지 확인하고 주소를 입력한 뒤 ''Enter''를 누릅니다. | +| 사용한 메모리에서 주소가 보이지 않습니다. | 올바른 영역 탭과 래더·코드 필터를 선택했는지 확인하고 주소를 입력한 뒤 ''Enter''를 눌러주시기 바랍니다. | 
-| C 카운터 값이 예상과 다릅니다. | MPINO-8A4R(T)-S의 ''C0'' ~ ''C10'' 보드 핀 매핑과 주소 중복을 먼저 확인합니다. | +| C 카운터 값이 예상과 다릅니다. | MPINO-8A4R(T)-S의 ''C0'' ~ ''C10'' 보드 핀 매핑과 주소 중복을 먼저 확인해주시기 바랍니다. | 
-| ''@F1000''을 입력할 수 없습니다. | 비트 접점인지, 괄호 없이 입력했는지 확인합니다. |+| ''@F1000''을 입력할 수 없습니다. | 비트 접점인지, 괄호 없이 입력했는지 확인해주시기 바랍니다. |
  
 ===== 관련 문서 ===== ===== 관련 문서 =====
 +
 +  * [[products:mpino_studio2:activity_bar|Phase 8 · 활동바와 사이드 패널]]
 +
 +  * [[products:mpino_studio2:menus_settings|Phase 7 · 메뉴와 환경설정]]
 +
 +  * [[products:mpino_studio2:monitoring|Phase 6 · 시리얼ㆍ래더 모니터링]]
  
   * [[products:mpino_studio2:first_project|Phase 1 · 첫 프로젝트 만들기]]   * [[products:mpino_studio2:first_project|Phase 1 · 첫 프로젝트 만들기]]
products/mpino_studio2/memory.1788879390.txt.gz · 마지막으로 수정됨: 저자 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki