본문 바로가기

PIC16F150x

(5)
[PIC16F150x EVM]TIMER 인터럽트 테스트 [PIC16F150x EVM]TIMER 인터럽트 테스트 PIC16F1509 에는 3개의 타이머/카운터가 있다. 타이머 입력소스는 시스템클럭의 1/4 또는 T0CKI핀 으로 입력 받을 수 있다. PIC16F1509 타이머 초기화 함수 void InitTimer0(void) { // TMR0 Associate Registers Initial TMR0CS = 0; // Timer0 CLK Source설정 -> FOSC/4 PSA = 0; //Prescaler 사용여부 설정(사용) PS0 = 0; // Prescaler 1:4 PS1 = 1; // Prescaler 1:16 PS1 = 0; // Prescaler 1:256 TMR0 = INTERVAL_1mS; // Initial TMR0 //타이머 인터럽트 레..
[PIC16F1509] FVR 테스트 - 레퍼런스 입력 없이 정밀한 전압 측정하기 [PIC16F1509] FVR 테스트 - 레퍼런스 입력 없이 정밀한 전압 측정하기 PIC16F1509를 사용하다 한가지 문제점이 발생했다. ADC채널이 부족해서 Vref핀을 사용할 수 없는 상황인데 정확한 레퍼런스 측정이 필요한 상황이다. 데이터시트를 찾아보니 FVR이 있다. 이를 이용하면 가능하지 않을까... PIC16F1508 에는 FVR(FIXED VOLTAGE REFERENCE) 이 있어 레퍼런스 전압을 측정할 수 있다. FVR은 3가지 고정 전압으로 설정 가능하다. 4.096V 2.048V 1.024V 이 출력 전압은 ADC, CMP 등의 레퍼런스로 사용할 수 있다. FVR출력을 ADC 로 설정하면 31번 채널에서 ADC값으로 읽을 수 있다. //VFR 초기화 코드 ADFVR0 = 1; ADFV..
[PIC16F150x EVM] PIC16F1509 ADC, PWM 테스트 [PIC16F150x EVM] PIC16F1509 ADC, PWM 테스트 PIC16F1509는 4개의 10비트 PWM출력이 있다. 20Mhz에서 최대 208khz, 6.5bit 해상도로 출력 가능하다. PIC16F1509 PWM초기화 코드 void Pwm1Init(void) { Cbi(TRISC, BIT5);Cbi(ANSELC, BIT5); PWM1CON = 0x00; T2CON = 0b00000111; PR2 = 255; PWM1DCH = PWM1DCL = 0x00; T2CON = 0b00000100; PWM1DCH = 0b00100000; PWM1EN = 1; PWM1OE = 1; PWM1OUT = 0 PWM1POL = 0; } void PWM1_SET(unsigned int Duty){PWM1DCH..
[PIC16F150x EVM] PIC1509 초기화 및 클럭 설정 [PIC16F150x EVM] PIC1509 초기화 및 클럭 설정 PIC16F15xx 시리즈는 Enhanced Mid-range Core 로 저렴하면서 강력한 페리를 가진 MCU로 이전 PIC16시리즈와 클럭 시스템과 약간 다른 점이 있어 설정이 필요하다. 내부 클럭을 사용하면 31Khz에서 16Mhz로 설정 가능하고 기존 코드 호환을 위해 SystemInit()함수에 설정하였다. void SystemInit(void) { //grobal interrupt disable disable(); //Internal Oscillator Frequency Select bits /* 1111 = 16MHz 1110 = 8MHz 1101 = 4MHz 1100 = 2MHz 1011 = 1MHz 1010 = 500 kH..
[PIC16F150x EVM] 보드 제작 [PIC16F150x EVM] 보드 제작 PIC16F15xx 시리즈는 새롭게 출시된 저가격, 저전력의 MCU이다. 시리얼 포트 있고 저렴하기 때문에 저렴한 솔루션으로 사용될 곳이 많을것 같은아 테스트 하기 위해 s-Type 형태로 제작 해 보았다. 저렴한 16bit MCU임에도 10bit ADC, PWM, UART, SPI, I2C가 있고 특이하게 DAC출력까지 있다. 기존 PIC18F14K50 PCB와 동일한 핀맵이므로 PCB를 그대로 사용해서 테스트 했다. s-Type 형태로 제작 해서 기존 확장 보드를 그대로 이용 가능하다. 저렴한 가격 PIC16F1508은 실제로 저렴한 가격인데 쇼핑몰에서 1350에 구매 가능하다.(이번에 PIC16F1509 25개 구매 했다.) PIC16F150x EVM 회로도..