====== PWM() ====== ''PWM()''는 지정한 핀에 8비트 또는 16비트 PWM을 출력합니다. {{:commands:reference:pwm.svg?900|PWM 명령어 동작 흐름}} ''void PWM(uint8_t pin, uint16_t val, bool onDutybit16 = false)'' ===== 명령어 ===== ^ 명령어 ^ 인수 ^ 반환값 ^ 동작 ^ | ''PWM(pin, val, onDutybit16)'' | ''uint8_t pin''\\ ''uint16_t val''\\ ''bool onDutybit16 = false'' | ''void'' | 지정한 핀에 8비트 또는 16비트 PWM을 출력합니다. | ===== 예제 ===== void setup() { IpidSet(1, 5.0, 0.5, 1.0, 100, 0, 65535); // PID 계수, 계산 주기와 출력 범위를 설정합니다. } void loop() { float pv = ntcReadf(4); // NTC 3950 10kΩ 센서의 온도를 ℃ 단위 실수로 반환합니다. float sv = 50.0; uint16_t output = (uint16_t)IpidRun(1, pv, sv); // 현재값과 설정값을 사용해 PID 출력을 계산합니다. PWM(12, output, true); // 지정한 핀에 8비트 또는 16비트 PWM을 출력합니다. } ===== 주의사항 ===== * 제품별 PWM 핀과 타이머 공유 관계를 확인합니다. * 주파수나 분해능 변경은 같은 타이머의 다른 채널에도 영향을 줄 수 있습니다. * 출력 정지와 초기화 시 연결 부하가 안전한 상태인지 확인합니다. ===== 같은 카테고리의 내장 명령어 ===== * [[commands:reference:fdpwm|FDPWM() 상세 설명 보기]] * [[commands:reference:pwmoff|PWMOFF() 상세 설명 보기]] * [[commands:reference:pwm_reset|PWM_RESET() 상세 설명 보기]] [[commands:builtin|← 내장 명령어 리스트]]