본문 바로가기

[Microchip]

(132)
dsPIC33 와치독 타이머 테스트 dsPIC33 와치독 타이머 테스트 dsPIC33 와치독 타이머 블록도 와치독 옵션비트 _FWDT(WDTPRE_PR32 & WDTPOST_PS2048 & WINDIS_OFF & FWDTEN_ON); /*** Watchdog postscaler:** WDTPOST_PS1 1:1** WDTPOST_PS2 1:2** WDTPOST_PS4 1:4** WDTPOST_PS8 1:8** WDTPOST_PS16 1:16** WDTPOST_PS32 1:32** WDTPOST_PS64 1:64** WDTPOST_PS128 1:128** WDTPOST_PS256 1:256** WDTPOST_PS512 1:512** WDTPOST_PS1024 1:1,024** WDTPOST_PS2048 1:2,048** WDTPOST_PS4..
[PIC32MZ EVM] 타이머 인터럽트 테스트 [PIC32MZ EVM] 타이머 인터럽트 테스트 PIC32MZ 시리즈의 타이머/카운터는 9개가 있고 MPLAB 코드 생성 툴을 이용하면 쉽게 사용 할 수 있다.한가지 아쉬운점은 기본 16비트 타이머 이고 32비트 타이머를 사용하려면 16비트 타이머2개를 조합해서 사용해야 되는것 같다.STM32의 경우 별도의 32비트 타이머가 존재해서 편리 했는데... MPLAB Harmony Configurator 를 이용하여 타이머드라이버 생성 할 수 있고 각종 파라미터를 설정하면 쉽게 초기화 할 수 있다. 자동으로 생성된 코드를 보면 아래와 같이 PIC32MZ의 타이머 설정부분의 코드가 생성된다.void SYS_Initialize ( void* data ){ /* Core Processor Initialization..
[PIC32MZ EVM] UART 테스트 [PIC32MZ EVM] UART 테스트 PIC32MZ에서 UART를 사용하려면 MPLAB Harmony Configurator 를 실행해서 UART를 활성화 하고 설정해 주면 쉽게 사용가능하다. [PIC32MZ EVM] 보드의 UART는 RD14->TXD, RD15-RXD에 할당되어 있다.핀 다이어그램 에서 원하는 핀을 클릭해서 설정 할 수 있다. 그러면 아래와 같은 코드들을 자동으로 생성해 준다.void SYS_Initialize ( void* data ){ /* Core Processor Initialization */ SYS_CLK_Initialize( NULL ); sysObj.sysDevcon = SYS_DEVCON_Initialize(SYS_DEVCON_INDEX_0, (SYS_MODULE_..
PIC32MZ 개발 환경 설정 PIC32MZ 개발 환경 설정 PIC32MZ 개발을 위해서는 MCU펌웨어 개발 프레임워크인 MPLAB® Harmony 라는 툴이 필요하다.이거 언제 또 공부하나? 그런데 막상 사용해 보니 상당히 간단하고 편리한것 같다. 우선 프로그램을 다운로드 하고 설치 해보자MPLABhttp://www.microchip.com/mplab/mplab-ide-home 하모니 페키지http://www.microchip.com/mplab/mplab-harmony MPLABX 프로그램 실행하고 새로운 프로젝트롤 생성한다.하모니 프로젝트를 선택하고 위자드로 클릭 몇번하면 쉽게 새로운 프로젝트 생성이 가능하다. 디바이스 선택[PIC32MZ EVM] 보드는 PIC32MZ 시리즈 PIC32MZ2048EFM144 이므로 이 장치를 선택..
[PIC32MZ EVM] 보드 제작 - PIC32MZ2048EFM14 [PIC32MZ EVM] 보드 제작 - PIC32MZ2048EFM14 마이크로칩사의 PIC32MZ 시리즈 테스트 보드를 제작 했다. 200 MHz/330 DMIPS, microAptiv core 32bit MCU로 PIC시리즈 중 최고 사양의 MCU이다. [L-Type EVM] 형태로 표준화 된 핀맵으로 제작 하여 여러 확장 보드에서 쉽게 테스트 가능하도록 했다. L-Type 확장 테스트 보드 [PIC32MZ EVM] 핀맵 회로도
PIC32MZ 시리즈 검토 마이크로 칩사에서 32 비트 MCU PIC32MZ 시리즈가 출시 되었다.PIC32MZ 임베디드 연결 기능(EC) 제품군은 330DMIPS와 3.28 CoreMarks/MHz 속도를 지원하고, 최신 애플리케이션 대응을 위해 듀얼 패널, 최대 2MB의 라이브 업데이트 플래시, 512 KB의 대형 RAM을 지원한다. 차량용 인증등급인 AEC-Q100을 지원하는 PIC32MZ EF 시리즈도 동일하게 사용할수 있어서 차량용 제품 개발의 인증문제를 해결 할 수도 있다.PIC32MZ EF 제품군은 최대 250MHz의 우수한 코어 성능, 부동소수점 유닛(FPU), 다양한 주변장치와 함께 CAN(Controller Area Network) 등의 뛰어난 연결 옵션을 제공한다. 이 확장 온도 지원 제품은 고온에서도 신뢰성 ..
dsPIC33 PWM 테스트 dsPIC33 PWM 테스트 dsPIC33FJ32MC302/304, dsPIC33FJ64MCX02/X04 and dsPIC33FJ128MCX02/X04 시리즈는 Motor Control PWM (MCPWM)을 제공하기 때문에 모터 제어용 PWM만 테스트 했는데 이번에 일반 dsPIC33은 MCPWM모듈을 제공하지 않기 때문에 Output Compare module를 이용하여 PWM을 출력 할수 가 있다. 블록도를 보면 Timer2, 3을 기준으로 PWM을 생성할 수 있다. PWM출력은 OCFA(OC1:PD0~OC4:PD3) 핀과 OCFB(OC5:PD4~OC8:PD7) 핀에 할당되어 있다. OCxCON: Output Compare x Control Register OCTSEL: Output Compare ..
dsPic33 내부 클럭 사용시 설정하기 dsPic33 내부 클럭 사용시 설정하기 외부 8Mhz 클럭 사용시 설정_FOSCSEL(FNOSC_PRIPLL);// 제1 오실레이터(XT, HS, EC)와 PLL 사용_FOSC(FCKSM_CSECME & OSCIOFNC_OFF & POSCMD_XT);// OSC2 핀 클럭 출력, 제1 오실레이터 XT 크리스탈 모드//클럭 스위칭(Clock Switching)과 Fail Safe Clock Monitor 사용 설정_FWDT(FWDTEN_OFF); // 왓치독 타이머 사용 중지 void SystemInit(void){//Fcy(인스트럭션 클럭) 클럭 계산 : 4.3.4절 동작 주파수 계산 참조//Fcy = Fosc / 2 = [ Fxtal X M / (N1 x N2 ) ] / 2//Fcy = [ 8MHz ..