본문 바로가기

[Microchip]

(132)
dsPIC33 EVM - I2C 테스트 dsPIC33 EVM - I2C 테스트 dsPIC33 EVM 보드의 I2C는 RG2(SCL), RG3(SDA)에 연결되어 있다. dsPIC33 I2C 초기화 코드void i2c_init(unsigned int Speed){OpenI2C1( I2C_ON, I2C_BRG );} dsPIC33 I2C Read/Write 소스 코드unsigned char i2c_read_byte(unsigned char Addr, unsigned char reg){unsigned char data = 0;unsigned char SlaveAddress = Addr;char i2cData[10];int DataSz;int Index = 0;i2cData[0] = (SlaveAddress
PIC16F723 내부 풀업저항 설정 PIC16F723 내부 풀업저항 설정 PIC16F723/PIC16F724 EVM 보드에서는 P_A7(PB7)이 저항을 통해 스위치로 연결되어 있다. MCU에서 풀업이 필요하다. PIC16F723에는 GPIOB에 내부 풀업저항이 있고 WPUB(WEAK PULL-UP PORTB REGISTER) 레지스터를 통해 설정 가능하다.1일경우 플업이 된다. 여기서 주의 사항은 OPTION_REG 에서 RBPU비트를 0으로 설정해 주어야 풀업이 가능하다. 실제 코드에서는 아래와 같이 정의해 주면 된다.//-----------------------------------------------------------------------------//Switch Driver #define SW1_BIT BIT7 #define..
PIC16F724 EVM 보드 제작 PIC16F724 EVM 보드 제작 마이크로칩사의 저전력 MCU PIC16F724 를 테스트 할 수 있는 EVM보드를 제작 했다기존 확장 테스트 보드와 핀맵이 호환되도록 SM-Type EVM 형태로 제작 했고 PIC16F723 EVM 보드와 비교하면 핀수가 증가된 형태이다 가장 큰 특징으로 저렴하면서도 저전력에 16채널 터치인터페이스를 지원 한다 Microchip's family of Extreme Low Power MCUs featuring nanoWatt XLP(TM) Technology
dsPIC33E - 내부플래시를 EEPROM 처럼 사용하기 dsPIC33E - 내부플래시를 EEPROM 처럼 사용하기dsPIC은 내부 EEPROM이 없지만 내부 플래시 메모리를 EEPROM처럼 사용할 수 있다. dsPIC33 시리즈는 "Flash Operations.s" 를 링크하면되고, dsPIC33E 시리즈는 "Flash Operations 33E_24E.s" 파일이 필요하다. dsPIC33E EEPROM 테스트 예제코드 #include "system.h"#include "serial.h"#include int main(void){//Init SystemSystemInit();//Init LEDLed1Init();Led1On();DebugInit(BAUD_115200);DebugPrint("dsPIC33E EEPROM TEST\r\n"); //내부 플래시 초..
dsPIC33E - PWM 테스트 (HIGH-SPEED PWM MODULE) dsPIC33E - PWM 테스트 (HIGH-SPEED PWM MODULE) dsPIC33EPXXXMC20X/50X 시리즈는 모터제어를 위해 3채널(6 PWM)의 HIGH-SPEED PWM MODULE 이 있다.70Mhz에서 7.14 ns의 듀티폭을 제어할 수 있다. dsPIC33E PWM 핀맵26-PWM1L/T5CK/RB1525-PWM1H/T3CK/RB14 24-PWM2L/CTPLS/RB1323-PWM2H/RB12 22-PWM3L/RB1121-PWM3H/RB10 dsPIC33E PWM 블록도 dsPIC33E PWM 초기화 코드void InitMCPWM(void){ PTCON = 0x0000; PTPER = 16000; //1000 PHASE1 = 0; PDC1 = 16000; DTR1 = 0; ALTD..
dsPIC33E - ADC 테스트 dsPIC33E - ADC 테스트 dsPIC 은 10/12bit SAR ADC로 변환 속도는 최대 1.1Msps 이다. dsPIC33E에서는 약간의 변화가 있었는데 레지스터 맵이 조금 변경되어 기존코드의 수정이 필요 하다. dsPIC33E ADC블록도가장 큰 변화는 ADC1BUF가 FIFO형태로 변경된것 같다. dsPIC33E ADC초기화 코드//------------------------------------------------------------------------------// Function Routine//ADC Initializevoid AdcInit(void){//ADCON1 레지스터 설정AD1CON1bits.SAMP = 0;//ADC 샘플/홀드 홀딩AD1CON1bits.ASAM = 1..
dsPIC33E - UART 테스트 dsPIC33E - UART 테스트 dsPIC33E UART 블록도 dsPIC33E UART 초기화 코드UART도 약간의 레지스터 변화가 있어 코드수정이 필요하다. void U0_Init(unsigned char baud){U0_TXINIT();U0_RXINIT(); U0_SetBaud(baud); U1MODEbits.STSEL = 0;// 1 스톱 비트U1MODEbits.PDSEL = 0;// No 패리티, 8비트 데이터 전송U1MODEbits.ABAUD = 0;// Autobaud 중지U1MODEbits.BRGH = 1; U1STAbits.UTXISEL1 = 1;//인터럽트 사용 중지U1STAbits.UTXISEL0 = 1;//인터럽트 사용 중지U1STAbits.URXISEL = 0;//1 문자 수신..
dsPIC33E 개발환경 설정 dsPIC33E 개발환경 설정 dsPIC33E 시리즈는 70MIP의 High Performance DSCs로 업그레이드 되면서 개발환경도 업데이트가 필요하다 우선 IDE는 최소 MPLAB IDE v8.92이상되어야 하고컴파일러도 MPLAB C Compiler for PIC24 and dsPIC DSCs v3.31 이상 되어야 한다. http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2115 하드위어 적인 핀맵은 거의 (사실 약간의 주의가 필요하다.) 동일하기 때문에 소프트웨어도 약간 수정 하면 될것으로 예상 했는데...아쉽게도 수정할 부분이 꽤 있는것 같다.그래도 성능이 향상 되었다고 하니 테스트 해봐야 할것 같다.