[Microchip]/PIC24F2013. 1. 12. 23:30

[PIC24F16KA EVM] ADC 테스트 - TSL251 Light to Voltage Converter

[PIC24F16KA EVM] ADC 테스트 - TSL251 Light to Voltage Converter

 

 

PIC24F16KA는 500ksps 10bit ADC를 내장하고 있다.

하드웨어적으로 약간의 차이는 있지만 코드는 dsPIC33 ADC 테스트와 거의 호환이 된다.

 

 

 

 

PIC24F ADC 테스트 동영상

PIC24의 ADC는 10bit이고 광센서 TSL251 Light to Voltage Converter를 이용해서 ADC값을 출력해 보았다.

LX1971 센서와 비교해서 광센서의 성능차이도 확이해 볼 수 있다.

 

 

 

 

PIC24F ADC 초기화코드

void AdcInit(void)
{
 //ADCON1 레지스터 설정
 AD1CON1bits.SAMP = 0;  //ADC 샘플/홀드 홀딩
 AD1CON1bits.ASAM = 1;  //ADC 변환 즉시 샘플링 시작 설정
// AD1CON1bits.SIMSAM=0;  //순서대로 멀티플 채널 샘플 설정
 AD1CON1bits.SSRC = 7;  //샘플 클럭 설정: 내부 카운터 샘플링 끝나고 변환시작
 AD1CON1bits.FORM = 0;  //데이터 출력 형식: Integer

 //AD1CON2 레지스터
 AD1CON2bits.CSCNA=0;  //CH0+ 입력에 대한 스캔 입력 설정: Scan inputs
 AD1CON2bits.VCFG = 0;  //AD변환 기준 전압 설정: Vreg+ = Vdd, Vreg- = Vss

 //AD1CON3 레지스터
 AD1CON3bits.ADCS = 0x3F; //ADC 변환 클럭 설정 : 최대치 설정
        //Tad=Tcy*(ADCS+1)=(1/40M)*64 = 1.6us (625KHz)
        //10비트 ADC 변환 시간 Tc = 12*Tad = 19.2us (52KHz)
 AD1CON3bits.SAMC=31;   //Auto Sample Time = 31*Tad
 AD1CON3bits.ADRC=0;   //ADC Clock을 시스템 클럭 사용 설정

 //AD1CHS0 레지스터 :
// AD1CHS0=0;     //디폴트 값

 //AD1CSSL 레지스터 : AN0 ~ AN15 아날로그 입력 핀 설정
 AD1CSSL = 0;
  Sbi(AD1CSSL, BIT0);  //AN0 ~ AN1 AD 입력 핀 설정


 //ADC1 인터럽트 설정  
 IFS0bits.AD1IF = 0;   //ADC1 인터럽트 플래그 클리어
 IEC0bits.AD1IE = 0;   //ADC1 인터럽트 시작 설정

 //ADC1 컨버터 동작 개시 설정
 AD1CON1bits.ADON = 1;  //ADC1 컨버터 동작
}

 

 

#define adc_WaitForCoversion()    while(!AD1CON1bits.DONE)
#define adc_GetData()       (ADC1BUF0)
#define adc_SetChannel(Ch)     //AD1CSSL = ~(Ch);AD1PCFGL = (Ch); 
#define adc_Run()       AD1CON1bits.SAMP = 0;

 

 

//Read ADC Value
unsigned int AdcRead(unsigned char Channel)
{
 adc_SetChannel(Channel);
 adc_Run();

 adc_WaitForCoversion();

 return adc_GetData();
}

 

 

 

 

Posted by nexp

댓글을 달아 주세요

[Microchip]/PIC24F2013. 1. 12. 09:30

[PIC24F16KA EVM] 보드 제작 - 저전력 PIC24XXKA 시리즈

[PIC24F16KA EVM] 보드 제작 - 저전력 PIC24XXKA 시리즈

 

 

 

Microchip사의 새로운 저전력 MCU인 PIC24FXXKA 시리즈을 테스트 할수 있는 보드를 S-Type 형태로 제작했다.

저전력 기술과 저렴함으로 보면 여러 장점이 있어 보인다.

 

20핀의 TSSOP형태의 소형이기 때문에 뒷면에 배치하였고 보드상에 LED 2개 및 입력스위치가 있어 간단한 테스트를 해 볼수 있다.  

 

 

 

 

 

 

s-Type 형태로 표준화 해서 다양한 확장 테스트 보드에 연결하여 테스트 가능하다. 

 

 

 

 

PIC24F16KA 핀맵

 

 

 

 

 

 

 

 

 

Posted by nexp

댓글을 달아 주세요

[Microchip]/dsPIC33-M2009. 4. 28. 20:53

dsPIC, PIC24 M-Type EVM 보드 제작

dsPIC, PIC24 M-Type EVM 보드 제작



dsPIC, PIC24를 사용할 수 있는 EVM보드를 [M-Type EVM] 타입으로 제작했다. dsPIC, PIC24F, PIC24H는 모두 동일한 핀맵을 사용하므로 동일하게 사용할 수 있다.



확장 테스트 보드
확장 보드를 이용하여 Microchip사의 무료 TCP/IP를 사용하는 ENC28J60를 쉽게 연결할 수 있다.

Posted by nexp

댓글을 달아 주세요

[Microchip]/PIC24F2008. 11. 24. 09:54

[PIC24USB EVM] 보드관련 자료

[PIC24USB EVM] 보드관련 자료



회로도
PIC24F-USB_sch.pdf
커넥터


LED및 Serial







PIC24 USB PIN MAP



PIC24FJ256GB USB Host



예제 소스
USB Device HID Test
USB Device - HID - Mouse.zip USB Device - HID - Keyboard.zip
USB Host Keyboard, Meory Test
USB Host - HID - Keyboard.zip USB Host - Mass Storage - Thumb Drive Data Logger.zip

수정사항
PIC24 USB기능을 사용하려면 점퍼 2개 날려야 한다. 일반 PIC24회로도로 만들다 보니 고려하지 못한것이 있다.
1)리셋핀(7번)이 연결되지않아 리셋 스위치와의 연결이 필요하다.



2)USB전원 VBUS(34번핀) 5V와 연결이 필요하다
Posted by nexp

댓글을 달아 주세요

[Microchip]/dsPIC33-M2008. 11. 9. 08:55

[PIC24USB EVM] - PIC24FJ256GB106 USB Host 보드 제작

[PIC24USB EVM] - PIC24FJ256GB106 USB Host 보드 제작




USB 호스트가 가능한(OTG) PIC24F EVM보드를 제작 했다.
Atmel의 USB Host AT90USB1287과 비교했을때 상당히 성능이 우수하고 가격또한 저렴하다. 무엇보다 개발지원에 있어 풍부한 예제와 환경이 편하고 부품수급 또한 편하다. AT90USB1287개발할때는 문의할곳도 없고 알아서 개발하라는 식의 Atmel의 정책에 아주 짜증 났었는데....앞으로는  Microchip로 대체해야 할것 같다.

PIC24FJ256GB106 을 이용하여 보드를 만들었고 소형 보드에 USB Device, USB HOST커넥터를 두어 모듈형태로 범용성을 살려 제작 했다.



USB 메모리스틱을 이용하여 USB HOST기능을 테스트 할 수 있다.




Posted by nexp

댓글을 달아 주세요

  1. 잘보고 갑니다.
    늘 웃음가득히 행복넘치기를 바래요 ^^*

    2008.11.09 09:22 신고 [ ADDR : EDIT/ DEL : REPLY ]