본문 바로가기

공부/C언어

HMI LCD -넥션(Nextion) 코딩(문법)③

반응형

 

 Nextion HMI EEPROM 데이터 저장관련 명령어 

 

 Operational Commands(동작 명령어) 추가

Nextion HMI Display 모듈을 사용함에 있어서 다음의 동작 명령어를 사용할 수 있습니다. 동작 명령어를 사용하여 보다 간편하고 다양한 동작을 Nextion HMI Display 모듈을 통해서 구현할 수 있습니다.

순번 명령어 인자수 상세 설명 및 예시
28 wepo 2 값/ 문자열을 EEPROM에 저장
– EEPROM 유효 주소 범위는 0에서 1023(1K EEPROM)입니다.
– 숫자 값 길이: 4바이트, -2147483648 ~ 2147483647
– 부호 있는 긴 정수 숫자 데이터 유형, 리틀 엔디안 순서로 저장됨.
(엔디안? 예를 들면, 숫자 12는 2진수로 나타내면 1100인데 빅 엔디안은 1100으로, 리틀 엔디안은 0011로 각각 저장)
val[r+3]*16777216+val[addr+2]*65536+val[addr+1]*256+val[addr] 
– 문자열 내용 길이: .txt 내용은 .txt-maxl +1 또는 상수 길이 +1
사용법: wepo <attr>,<addr>
<attr>은 변수이거나 상수입니다.
<addr>은 EEPROM의 스토리지 시작 주소입니다.
wepo t0.txt, 10 // t0.txt 내용을 주소 10 ~ 10에 씁니다. + t0.txt-maxl 
wepo "abcd", 10 // 주소 10 ~ 14에 상수 "abcd" 
쓰기 wepo 11,10 // 상수 쓰기 주소 10 ~ 13의 11 
wepo n0.val, 10 // 주소 10 ~ 13의 값 n0.val 쓰기
29 repo 2 EEPROM에서 값 읽기
– EEPROM 유효 주소 범위는 0에서 1023(1K EEPROM)입니다.
– 숫자 값 길이: 4바이트, -2147483648 ~ 2147483647
– 부호 있는 긴 정수 숫자 데이터 유형, 작은 엔디안 순서로 저장됨.
val[r+3]*16777216+val[addr+2]*65536+val[addr+1]*256+val[addr] – 문자열 내용 길이: .txt 내용은 .txt-maxl보다 작거나 null에 도달할 때까지입니다.
용도: repo <attr>,<addr>
<attr>은 변수이거나 상수입니다.
<addr>은 EEPROM의 스토리지 시작 주소입니다.
repo t0.txt,10 // 10에서 t0으로 qty .txt-maxl 문자(또는 null까지)를 읽습니다.txt의
repo n0.val,10 // 주소 10에서 13까지 4바이트를 n0으로 읽습니다.
30 wept 2 MCU에서 시리얼을 통해 EEPROM에 지정된 바이트 수 저장
– EEPROM 유효 주소 범위는 0~023(1K EEPROM)
- 투명 데이터 모드 ( 1.16 참조 ) 사용 
– 수량은 직렬 버퍼로 제한됨 (모든 명령 + 종료 + 데이터 <1024 ) 
사용법: wept <addr>,<qty>
<addr>은 EEPROM의 스토리지 시작 주소입니다.
<qty>는 저장할 바이트 수입니다.
30,20 // EEPROM 주소 30 ~ 49에서 20 바이트를 직렬로 // 씁니다.
// 데이터의 바이트는 바이트 값의 ASCII 텍스트가 아니라 데이터의 원시 바이트입니다.
31 rept 2 직렬을 통해 EEPROM에서 MCU로 지정된 바이트 수 읽기
– EEPROM 유효 주소 범위는 0에서 1023(1K EEPROM)입니다.
사용법: rept <addr>,<qty>
<addr>은 EEPROM의 스토리지 시작 주소입니다.
<qty>는 읽을 바이트 수입니다.
30,20 // EEPROM 주소 30에서 49로 20바이트를 시리얼로 전송
// 데이터의 바이트는 바이트 값의 ASCII 텍스트가 아니라 데이터의 원시 바이트입니다.
32 cfgpio 3 Nextion GPIO 구성
사용법 : cfgpio <io> <모드> <comp>
<io>는 확장 I / O 핀의 번호입니다. 
- PWM 출력 모드에서 유효한 값 : 4 ~ 7, 기타 모든 모드 0 ~ 7 
<모드>는 <io>에 의해 선택된 핀의 작업 모드입니다. 
- 유효한 값 : 0 풀업 입력, 1 입력 바인딩, 2 푸시 풀 출력, 
3 PWM 출력, 4 개방 드레인 출력. 
<mode>가 1 일 때 .objname 또는 .id (그렇지 않으면 0을 사용함) 
- 바인딩 모드에서 Touch 이벤트에 다시 연결하기 위해 매 페이지 새로 고침 후 cfgpio를 선언해야합니다. cfgpio를 페이지 사전 초기화에 사용하는 것이 가장 좋습니다 행사
cfgpio 0,0,0 // io0을 풀업 입력으로 구성합니다. n0.val = pio0으로 읽습니다. 
cfgpio 1,2,0 // io1을 푸시 풀 출력으로 구성하고 pio1 = 1로 작성합니다. 
cfgpio 2,1, b0 // io2를 현재 페이지 b0의 바인딩 입력으로 구성합니다. 
// 바인딩 트리거 b0 하강 에지에서 누름 b0 상승 에지에서 해제 
PWM 모드의 경우 20 % 듀티에 대해 cfgpio : ie : pwm4 = 20 전에 듀티 사이클을 설정합니다. 
cfgpio 4,3,0 // io4를 PWM 출력으로 설정합니다. Hz를 변경하려면 pwmf = 933. 
// pwmf를 변경하면 구성된 모든 PWM io4의 주파수가 io7로 변경됩니다.

 

 

더 많은 내용은 공식 홈페이지에서 확인하세요.
https://nextion.tech/instruction-set/#s3

반응형