Microsoft PowerPoint - ccs33_bios_PRD.ppt [호환 모드]

Similar documents
Microsoft PowerPoint - ccs33_bios_com1_semaphore.ppt [호환 모드]

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

슬라이드 1

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

슬라이드 1

KEY 디바이스 드라이버

Microsoft PowerPoint - CPLD_수정1.pptx

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -

2009년2학기 임베디드시스템 응용

ATmega128

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

K&R2 Reference Manual 번역본

Microsoft PowerPoint - es-arduino-lecture-03

API 매뉴얼

Microsoft PowerPoint - polling.pptx

윈도우시스템프로그래밍

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

Microsoft Word - Armjtag_문서1.doc

PRO1_09E [읽기 전용]

슬라이드 1

인터럽트 * 인터럽트처리메커니즘 ATmega128 인터럽트 2

IAR_IDE_LM3S8962_Config_v3.doc

윈도우시스템프로그래밍

Microsoft Word doc

슬라이드 1


CANTUS Evaluation Board Ap. Note

Section 03 인터럽트활성화와인터럽트서비스루틴연결 34/82 장치에대한인터럽트설정과활성화 내부장치에대한특수레지스터존재 장치의특성을반영한동작설정용또는상태관찰용비트로구성 인터럽트사건의발생패턴을설정해야함 인터럽트활성화비트를 1 로셋하여, 인터럽트발생을허락» 전제, 전역

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

T100MD+

슬라이드 1

Chapter #01 Subject

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터

2009년2학기 임베디드시스템 응용

ISP and CodeVisionAVR C Compiler.hwp

4S 1차년도 평가 발표자료

UI TASK & KEY EVENT

C. KHU-EE xmega Board 에서는 Button 을 2 개만사용하기때문에 GPIO_PUSH_BUTTON_2 과 GPIO_PUSH_BUTTON_3 define 을 Comment 처리 한다. D. AT45DBX 도사용하지않기때문에 Comment 처리한다. E.

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

정보보안 개론과 실습:네트워크

임베디드시스템설계강의자료 6 system call 1/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

인터럽트 (Interrupt) 범용입출력포트에서입출력의내용을처리하기위해매번입출력을요구하는플래그를검사하는일 (Pollong) 에대하여마이크로컨트롤러에게는상당한시간을소비하게만든다. 인터럽트란 CPU가현재처리하고있는일보다급하게처리해야할사건이발생했을때, 현재수행중인일을중단하고

JDK이클립스

PRO1_04E [읽기 전용]

Microsoft PowerPoint os2.ppt [호환 모드]

UART.h #ifndef _UART_H_ #define _UART_H_ #define DIR_TXD #define DIR_RXD sbi(portd,4) cbi(portd,4) #define CPU_CLOCK_HZ UL UART PORT1 void UAR

PowerPoint 프레젠테이션

*Revision History 날짜 내용 최초작성 Tel Fax [2] page

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

Microsoft Word - CooCox

EWAVR 5.1x 프로젝트 옵션 설정(1_2) 2. Project -> > Option -> > General Option -> > Output / Library Configuration Library Configuration 은 사용하게 될 Library file을

WebPACK 및 ModelSim 사용법.hwp

2009년2학기 임베디드시스템 응용

Microsoft Word ARM_ver2_0a.docx

슬라이드 제목 없음

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202831C1D6C2F72C2032C1D6C2F729>

슬라이드 1

게임 기획서 표준양식 연구보고서

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

PowerPoint 프레젠테이션

untitled

PowerPoint 프레젠테이션

(8)

tut_modelsim(student).hwp

Microsoft PowerPoint - 안드로이드 개발 환경 구축(170411)

[8051] 강의자료.PDF

Microsoft PowerPoint - additional01.ppt [호환 모드]

TMS320F28335 칩과 SYNCWORKS 사에서제작한 SMC150 기판을사용하기로결정하였다. 마지막으로소리출력부분에대해서는 MP3 모듈과스피커를사용, 해당구간에해당하는음원파일을재생하기위한장치로네오틱스사에서나온 NA-EMP3 보드와 NA-EMP3M 칩을사용하여소리를

ADP-2480

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

PRO1_02E [읽기 전용]

MPLAB C18 C

Leader in Electrics & Automation GIPAM MANAGER Electric Equipment

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

네트워크 설정

PRO1_14E [읽기 전용]

Flowchart 작성법

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

PowerPoint 프레젠테이션

1 01 [ ] [ ] plus 002

Microsoft PowerPoint - 07_04_s7기초기술교육_simatic_manager_operation.ppt [호환 모드]

(Microsoft PowerPoint - \270\266\300\314\305\251\267\316\304\250USB_Host_Device_\272\316\306\256\267\316\264\365\275\307\275\300_Philip.ppt)

2009년2학기 임베디드시스템 응용

Title Here

RVC Robot Vaccum Cleaner

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

HBE-MCU-Multi 로배우는 마이크로컨트롤러 (AVR 편 ) 마이크로컨트롤러기능 제 6 장타이머와카운터

KARAAUTO_4¿ù.qxd-ÀÌÆå.ps, page Normalize

Microsoft PowerPoint - T1 ERS (Elevator Reservation System)SASD2.pptx

YPS1-KOREAN indd

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

UI TASK & KEY EVENT

DE1-SoC Board

Microsoft Word - PEB08_USER_GUIDE.doc

AN2629

2. GCC Assembler와 AVR Assembler의차이 A. GCC Assembler 를사용하는경우 i. Assembly Language Program은.S Extension 을갖는다. ii. C Language Program은.c Extension 을갖는다.

슬라이드 1

<4D F736F F F696E74202D C465F4B6F F6E662DB8AEB4AABDBABFA1BCADC0C7BDC7BDC3B0A3C1F6BFF8>

슬라이드 1

Transcription:

1. CCS3.3 DSP/BIOS PRD(periodic fuction manager) 생성 1. 디렉토리구성.. cmd..dsp2833x_headers.. include.. testprj_2.. testsrc_2 : Linker 컴맨드파일 : Chip관련헤더파일및헤더용 Linker 컴맨드파일 : 사용자인쿠르드파일 : 사용자프로젝트파일및실행파일 (.HEX) : 사용자소스파일 2. 디렉토리설명다른디렉토리는기존 Task 생성예제파일을그대로사용하고 testprj_2, testsrc_2 디렉토리만복사에서사용하거나기존의 testprj_1,testsrs_1 의소스만아래진행에따라추가수정하여 사용하시면됩니다. 3. Setup CCStudio v3.3 을실행합니다. 프로젝트 Open 사용법은 Task 생성예제를참조하시기바랍니다.

4. 소스코드설명 (Main_Bios.c) #include "DSP2833x_Device.h <- DSP 초기화및설정관련 #include "F28335_example.h <- 사용자외부함수, 변수, 정의관리 void main(void) { InitSysCtrl(); <- CPU 클럭설정 ((30*10) / 2 = 150M) InitPieCtrl(); <- 인터럽트관련초기화 InitWatchdog(); <- watch-dog 설정및초기화 InitGpio(); <- CPU I/O 설정 (IN,OUT, 기본기능..) _EX_BUS_ON정의에따라외부버스 ON InitXintf(); <- 내부주변디바이스클럭설정및외부버스타이밍설정 ** DSP/BIOS 관련설정 ** ifdef EXAMPLE_FLASH memcpy(&secureramfuncs_runstart, &secureramfuncs_loadstart,&secureramfuncs_loadend - &secureramfuncs_loadstart); InitFlash(); #endif asm(" EALLOW"); <- Enable EALLOW protected register access GpioCtrlRegs.GPBMUX1.bit.GPIO32 = 0;<- GPIO032 GPIO GpioCtrlRegs.GPBDIR.bit.GPIO32 = 1; <- GPIO32 output GpioDataRegs.GPBSET.bit.GPIO32 = 1; <- GPIO32 pin is set to 1 asm(" EDIS"); // Disable EALLOW protected register access ** DSP/BIOS에서 TINT2,DLOGINT를사용하므로 BIOS사용인터럽트허가 ** SetDBGIER(IER 0x6000); <- Enable everything in IER, plus TINT2 and DLOGINT *(volatile unsigned int *)0x00000C14 = 0x0C00;<- Set TIMER2 FREE=SOFT=1 ** 아래 main() 를종료하면 DSP/BIOS 가동작.. ** } void UserInit(void){ <- 이함수는리셋시 DSP/BIOS 초기화부분에서한번수행후 DSP/BIOS 관련및사용자초기화함수추가 } void task1_proc(void){ <- 이함수는스케줄러에관리되는 TASK } * GPIO 설명 DSP 는특수기능레지스터에접근하기위해서는 EALLOW Bit 를 Set 후접근후사용한다. 사용후 EALLOW Bit 를 Clear 한다. - GPIO 필터설정레지스터 ( 입력시몇클럭동안유지시입력핀을유효시킬것인지사용할때 ) GPxCTRL : GPIO에 Qualification 를사용할때 CLK 종류지정 GPxQSELn : GPIO에 Qualification 를사용할때값설정 - GPIO 설정레지스터 GPxMUXn : 0-3값으로 GPIO 또는특정기능핀으로 I/O핀을정의 GPxDIRn : GPIO핀을입력 (0) 또는출력 (1) 으로설정 GPxPAUn : GPIO핀에 PULL UP 저항을설정 - GPIO 데이터레지스터 GPxDATn : GPIO 입출력데이터레지스터 GPxSETn : 해당비트가 1이면 GPIO 핀을 High로유지시킴 GPxCLEARn : 해당비트가 1이면 GPIO 핀을 Low로유지시킴 GPxTOGGLEn: GPIO 해당핀을 TOGGLE 함.

- CCS3.3 DSP/BIOS PRD 생성 * PRD 란스케줄링에서 Clock Manager 의기본클럭을사용하여주기적인시간마다발생되는 Time Task 로서이루틴은타이머인터럽트의일종이므로소스코딩시정체되는코드나너무긴시간이소요되는코딩은자제해주시기바랍니다. TASK Task1_proc 사용자프로그램 Taskxx_proc 사용자프로그램 Software Interrupt TASK Com_SWI 통신인터럽트처리 Scheduling Task 반환 TI-BIOS Event Scheduling BIOS Timer PRD TIMER Tick 서비스 500Tick. GPIO32 Toggle ntick. 사용자프로그램 AD_SWI A/D 인터럽트처리 H/W Interrupt -> SWI 로변환 통신 SWI_post(&com_swi) A/D SWI_post(&AD_SWI) 1. Main_Bios.c 를 open 후아래소스코드를입력후저장한다. 아래함수에있는실행코드는 C 소스의타이머인터럽트와유사하므로최대한간단명료하게코딩하고 while() 문처럼무한루프에빠지는코드는작성하지않는것이원칙이다다른스케줄러에영향을줌. void Io_Blink(void) <- PRD 스켈줄함수명 { GpioDataRegs.GPBTOGGLE.bit.GPIO32 = 1; <- GPIO32 토글 }

2. DSP/BIOS Config->*.tcf 를실행한다. 더블클릭 3. 스케줄링기본스케줄클럭을확인한다. 오른쪽마우스 선택 ( 왼쪽마우스 )

4. DSP/BIOS 에설정된기본클럭은 1ms 이다. 이클럭은아래 PRD(Periodic Function Manager) 에기본클럭 (1 Tick) 으로사용된다. 5. 스케줄링 PRD(Periodic Function Manager) 에서아래와같이 PRD 를생성한다. 오른쪽마우스 선택 ( 왼쪽마우스 )

* PRD TASK 관리명을입력한다 입력후확인 * Task 관리자생성확인 * 생성한 PRDTask 에사용자환경을설정한다.(blink_PRD0 선택후오른쪽버튼 ) 오른쪽마우스 선택 ( 왼쪽마우스 )

* General 에서기본정보를설정한다. 실행할 Tick 수 (1ms*500 = 500ms) 실제실행할함수명앞에 _ 를붙임. * Task Manager 에서생성된 PRDTask 를확인후 *.tcf 파일을종료합니다.

- CCS3.3 DSP/BIOS PRD TASK 실행 1. JTAG 및에뮬레이터를연결합니다. 선택후마우스왼쪽버튼클릭 2. 내부램으로프로그램을실행할경우아래와같이설정합니다.(Option->Customize) 체크

3. 컴파일하기 (Project->Rebuild All) 에러확인

4. FLASH 에프로그램하기 * 아래 CLOCK 설정메뉴를사용자에맞게설정합니다. * API Interface 파일을등록합니다. 선택

Browe.. 창에서파일을선택후 Excute Operation 탭을실행합니다. * TI 실행파일은 *.OUT 로현재작업디렉토리.. debug 에있습니다. 체크후확인 닫음

5. 프로그램을로딩후 Debug 탭에서 Go Main 기능을실행합니다. Main( ) 함수위치로이동

6. Main_Bios.c 의 Io_Blink() 에 break mode 를설정합니다. 1. 커저를위치시킨후 F9 키를누른다.( 한번더누르면삭제 ) 2. F5 를눌르면노란화살표가나오며정지한다. 그러면현재 PRD Task 스케줄링정상. 3. RUN 시킨후 GPIO32 핀을스코프로관찰한다. - F5 : Debuf->Run - F9 : Debuf->Break Point Toggle