본문 바로가기

DSP(28335)/기초다치기..

LED ON, OFF 및 Shift

LED 회로도

 

 

 

 

 

-NC7WZ14P6X은 Dual Inverter with Schmitt Trigger 소자 입니다.

 

 

 

 

 

디지털 신호 1이 들어왔을 경우, 0으로 반전하고 신호를 보다 명확히 해주는 기능을 해주는 소자 입니다.

슈미트 트리거란 대략적으로 정형회로라고도 불리며, 신호에 노이즈가 섞여 신호가 전달되게 되면 1 및 0으로 정확한 판단이 될 수 없기때문에 슈미트트리거라는 소자를 사용하여 1, 0의 신호를 명확하게 구분하기 위하여 사용된다.

 

 

이를 응용하여 LED ON, OFF 및 쉬프트를 간략히 해보도록 하자 

 

 

레지스터 간략 설명

 

 레지스터

 내용 

DINT

 전역 인터럽트 스위치 ON

EINT

 전역 인터럽트 스위치 OFF

EALLOW

 Protected 영역에 쓰기를 하기 위해 Procet를 해제

EDIS

 Protected 다시 걸기 (보호해제 후 설정이 변경됬다면 다시 보호로 설정해줘야함)

GpioCtrlRegs.GPAMUX

 GPxMUX 입출력 기능 또는 핀 특별기능 사용 ( 0 : GPIO 1: 핀기능 PWM, SCI....) 

GpioCtrlRegs.GPADIR

 GPxDIR 입출력을 정의하는 레지스터 (0 : 입력 1 : 출력)

GpioDataRegs.GPADAT

 GPxDAT 해당비트에 0을 써 넣으면 0V 레벨때 감지 , 1을 써 놓으면 3.3V 레벨 감지

ERTM

 디버그 이벤트 ON

 

 

동영상

 

 

 

 

<< LED 토글>>

#include "DSP28x_Project.h"      // Device Headerfile and Examples Include File

#define usec_delay 1000000

void main(void)
{
 DINT;
 InitSysCtrl();

 EALLOW;
 GpioCtrlRegs.GPAMUX1.all = 0;
 GpioCtrlRegs.GPADIR.all = 0x00003F;
 EDIS;
 
 GpioDataRegs.GPADAT.all = 0x00003F;

 EINT;  
 ERTM; 

 for(;;)
 { 
  GpioDataRegs.GPATOGGLE.bit.GPIO0 = 1;
  GpioDataRegs.GPATOGGLE.bit.GPIO1 = 1;
  GpioDataRegs.GPATOGGLE.bit.GPIO2 = 1;
  GpioDataRegs.GPATOGGLE.bit.GPIO3 = 1;
  GpioDataRegs.GPATOGGLE.bit.GPIO4 = 1;
  GpioDataRegs.GPATOGGLE.bit.GPIO5 = 1;
  DELAY_US(usec_delay);  
 }
}

 

 

 

 

<<LED 쉬프트>>

#include "DSP28x_Project.h"      // Device Headerfile and Examples Include File

#define usec_delay 1000000

void main(void)
{
 DINT;
 InitSysCtrl();

 EALLOW;
 GpioCtrlRegs.GPAMUX1.all = 0;
 GpioCtrlRegs.GPADIR.all = 0x00003F;
 EDIS;
 
 GpioDataRegs.GPADAT.all = 0x00003F;

 EINT;  
 ERTM; 

 for(;;)
 { 
  GpioDataRegs.GPATOGGLE.bit.GPIO0 = 1;
  DELAY_US(usec_delay);
  GpioDataRegs.GPATOGGLE.bit.GPIO1 = 1;
  DELAY_US(usec_delay);
  GpioDataRegs.GPATOGGLE.bit.GPIO2 = 1;
  DELAY_US(usec_delay);
  GpioDataRegs.GPATOGGLE.bit.GPIO3 = 1;
  DELAY_US(usec_delay);
  GpioDataRegs.GPATOGGLE.bit.GPIO4 = 1;
  DELAY_US(usec_delay); 
  GpioDataRegs.GPATOGGLE.bit.GPIO5 = 1;
  DELAY_US(usec_delay);  
 }
}

 

 

 

'DSP(28335) > 기초다치기..' 카테고리의 다른 글

TR28335 Volt_ADC  (0) 2014.07.09
TR28335 SW1, SW2 LED 기능  (0) 2014.07.08
Code Composer Studio4 설치방법  (0) 2014.07.02
TR28335 트레이닝 키트  (0) 2014.07.01
DSP320F28335를 이용한 GPS 파싱.  (0) 2013.07.27