Dsp tms320f2812
Download
1 / 36

DSP TMS320F2812 - PowerPoint PPT Presentation


  • 220 Views
  • Uploaded on

DSP TMS320F2812. ROBOTICS LAB. http://cafe.naver.com/roboticslab. Contents. 1. DSP 28x MMR. 2. TMS320F2812 GPIO Control. 3. GPIO 를 이용한 LED 점멸 예제. DSP 28x MMR. MMR(Memory Mapped Register) 메모리처럼 조작 가능한 레지스터. DSP 28x MMR. Internal Register 레지스터에 번지를 부여하지 않는다. DSP 28x MMR.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' DSP TMS320F2812' - devlin


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Dsp tms320f2812

DSP TMS320F2812

ROBOTICS LAB.

http://cafe.naver.com/roboticslab


Contents
Contents

1. DSP 28x MMR

2. TMS320F2812 GPIO Control

3. GPIO를 이용한 LED 점멸 예제


Dsp 28x mmr
DSP 28x MMR

  • MMR(Memory Mapped Register)

    • 메모리처럼 조작 가능한 레지스터


Dsp 28x mmr1
DSP 28x MMR

  • Internal Register

    • 레지스터에 번지를 부여하지 않는다.


Dsp 28x mmr2
DSP 28x MMR

  • AVR(또는 8051) MMR 선언과 조작

    #define MCRA (volatile unsigned int *)0x7090 /* I/O mux control reg. A */

    #define MCRB (volatile unsigned int *)0x7092 /* I/O mux control reg. B */

    #define MCRC (volatile unsigned int *)0x7094 /* I/O mux control reg. C */

    • 레지스터의 비트 조작이 매우 어렵다.

    • CCS의 기능을 제대로 사용하지 못한다.

      • 자동 구문 대입 기능(auto-completion)

      • 비트 단위 관찰 기능

    • 헤더 파일 재활용이 불가능하다.


Dsp 28x mmr3
DSP 28x MMR

  • 28x DSP의 MMR 선언과 조작


Dsp 28x mmr4
DSP 28x MMR

  • 28x DSP의 MMR 선언과 조작


Dsp 28x mmr5
DSP 28x MMR

  • 28x DSP의 MMR 선언과 조작


Dsp 28x mmr6
DSP 28x MMR

  • 28x DSP의 MMR 선언과 조작

    • 1단계

      GpioMuxRegs.GPAMUX

    • 2단계

      GpioMuxRegs.GPAMUX.bit.T1PWM_GPIOA6

      GpioMuxRegs.GPAMUX.bit.T1PWM_GPIOA6 = 1;


Dsp 28x mmr7
DSP 28x MMR

  • 28x DSP의 MMR 선언과 조작


Dsp 28x mmr8
DSP 28x MMR

  • 28x DSP의 MMR 선언과 조작

    • #pragma

      • 데이터를 원하는 메모리의 영역에 주입하기 위해서 #pragma, DATA_SECTION 함수를 사용

        예) coeff배열을 L0영역인 0x8400번지에 배치

        #pragma DATA_SECTION(coeff, “m_coeff”)

        Uint coeff[[128]


Dsp 28x mmr9
DSP 28x MMR

  • 28x DSP의 MMR 선언과 조작

    ☞ GPIO 관련 MMR의 메모리 배치

    • 1단계 : MMR선언

      extern volatile struct GPIO_MUX_REGS GpioMuxRegs;

    • 2단계 : 섹션 정의

      #pragma DATA_SECTION(GpioMuxRegs, “GpioMuxRegsFile”);

    • 3단계 : 커맨드 파일 작성


Dsp 28x mmr10
DSP 28x MMR

  • 28x DSP의 MMR 선언과 조작

    ☞ GPIO 관련 MMR의 메모리 배치

    • 3단계 : 커맨드 파일 작성


Dsp 28x mmr11
DSP 28x MMR

  • 구조체 선언의 장점

    • 비트 조작이 용이하다.

      • 비트단위로 접근한 구문은 C 컴파일러에 의해 ‘R-M-W(Read-Modify-Write) Atomic 명령’체계로 바뀐다.

    • 주석문 처리가 간편해진다.

      • MMR 처리 구문 자체가 주석문이 되어 버린다.

    • 재사용이 가능하다.

      • extern volatile struct SCI_REG SciaRegs;

      • extern volatile struct SCI_REG ScibRegs;


Dsp 28x mmr12
DSP 28x MMR

  • MMR 보호 기능 : EALLOW, EDIS

    • 몇몇 특정 영역에 위치한 MMR에 일종의 보호막을 씌워 임의의 접근으로부터 보호하고 있다.


Tms320f2812 gpio control
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt


Tms320f2812 gpio control1
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

Project → Build Option에서

rts2800_ml.lib를 포함시킴

Project → Add File to Project를

통해서 포함 시킴


Tms320f2812 gpio control2
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • 소스코드

      • Defaultlsr.c

      • PieCtrl.c

      • Pievect.c

      • CodeStartBranch.asm

      • GlobalVariableDefs.c

      • Gpio.c

      • SysCtrl.c

      • 281xGpioToggle.c

인터럽트의 설정과 활용


Tms320f2812 gpio control3
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • DSP281x_CodeStartBranch.asm

  • .def – 선언용 디렉티브

  • .ref – 참고용 디렉티브

  • .sect – 섹션 디렉티브


Tms320f2812 gpio control4
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • 28x DSP에서 코드가 실행되는 과정

      : MC Mode

MC 모드 설정

리셋 신호 인가

Boot Loader 실행

> DSP281x_CodeStartBranch.asm 호출

rts2800_ml.lib 실행

> main( ) 호출


Tms320f2812 gpio control5
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • rts2800_ml.lib

      • Run Time Support Library

      • 기능

        • 스택 확보 및 스텍 포인터 설정

        • 연산 비트 설정

        • 데이터 초기화

    • DSP281x_GlobalVariableDefs.c

      • 데이터 섹션 정의


Tms320f2812 gpio control6
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • DSP281x_SysCtrl.c

      • 기능

        • Watchdog을 무력화(disable)

        • PLLCR 레지스터를 설정, 원하는 시스템 클럭을 생성

        • 주변회로에 공급 클럭 주파수를 설정

        • 주변회로에 클럭 공급 여부를 설정


Tms320f2812 gpio control7
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt


Tms320f2812 gpio control8
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt


Tms320f2812 gpio control9
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt


Tms320f2812 gpio control10
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • GPIO 회로 구조


Tms320f2812 gpio control11
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • 281x 프로세서 모듈의 LED 구성


Tms320f2812 gpio control12
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • Example_DSP281xGpioToggle.c

      • GPIO 설정


Tms320f2812 gpio control13
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • Example_DSP281xGpioToggle.c

      • Example1


Tms320f2812 gpio control14
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • Example_DSP281xGpioToggle.c

      • Example2

  • GPxSET 레지스터

  • : 이 비트가 1이면 해당 핀의 상태가 Logic High가 됨

  • 이 비트가 0이면, 아무런 영향이 없다.

  • GPxCLEAR 레지스터

  • : 이 비트가 1이면 해당 핀의 상태가 Logic Low가 됨

  • 이 비트가 0이면, 아무런 영향이 없다.


Tms320f2812 gpio control15
TMS320F2812 GPIO Control

  • Example_281xGpioToggle.pjt

    • Example_DSP281xGpioToggle.c

      • Example3

  • GPxTOGGLE레지스터

  • : 이 비트가 1이면 해당 핀의 상태가 반전된다.

  • 이 비트가 0이면, 아무런 영향이 없다.


Tms320f2812 gpio control16
TMS320F2812 GPIO Control

  • Input Qualification

    • 6개의 포트중 A, B, D, E 포트에는 Input Qualification라는 아주 특별한 회로가 탑재되어 있다.


Tms320f2812 gpio control17
TMS320F2812 GPIO Control

  • Input Qualification


Tms320f2812 gpio control18
TMS320F2812 GPIO Control

  • Input Qualification

    • GPxQUAL 레지스터



Www themegallery com

Thank You !

www.themegallery.com


ad