목차 Revision History Flash Burning 프로그램사용법 타겟프로그램의헥사파일변환 타겟프로그램 OUT 파읷복사 헥사변홖어시스트프로그램열기 헥사변홖어시스트프로그램실행

Size: px
Start display at page:

Download "목차 Revision History Flash Burning 프로그램사용법 타겟프로그램의헥사파일변환 타겟프로그램 OUT 파읷복사 헥사변홖어시스트프로그램열기 헥사변홖어시스트프로그램실행"

Transcription

1 TMS320F2812, TMS320F280x Flash Burning Module Application Program Manual Revised Desember 2007

2 목차 Revision History Flash Burning 프로그램사용법 타겟프로그램의헥사파일변환 타겟프로그램 OUT 파읷복사 헥사변홖어시스트프로그램열기 헥사변홖어시스트프로그램실행 헥사파읷복사 헥사코드를외부플래시에버닝 CCS 설치및에뮬레이터설치와소켓모듈연결 소켓모듈과 CCS 접속 ExFlash Burning Program 열기 ExFlash Burning Program 실행하기 ExFlash Burning Program 정상동작 ExFlash Burning Program 비정상동작 마무리 외부플래시의헥사코드를내부플래시에버닝 SPI 부트모드설정 Burning Start Mode 선택 InFlash Burning Program 정상동작 InFlash Burning Program 비정상동작 마무리 메모리모듈 API 사용법 M95256 API 사용을위한준비 Step 1 : M95256 Library 추가 Step 2 : 시스템클럭및주변회로에대한공급클럭초기화 Step 3 (Optional) : GPIO 초기화 Step 4 : SPI 초기화 Step 5 : EEPROM 초기화 M95256 API 가제공하는함수들 WriteEnableEeprom 함수 , Korea Tel Fax dsptools@syncworks.co.kr 2

3 2.2.2 WriteDisableEeprom 함수 ReadStatusRegisterEeprom 함수 WriteStatusRegisterEeprom 함수 ReadEeprom 함수 WriteEeprom 함수 InitEeprom 함수 ApiVersionHexEeprom 함수 M95256 API 예제 M25P40 API 사용을위한준비 Step 1 : M25P40 Library 추가 Step 2 : 시스템클럭및주변회로에대한공급클럭초기화 Step 3 (Optional) : GPIO 초기화 Step 4 : SPI 초기화 Step 5 : ExFlash 초기화 M25P40 API 가제공하는함수들 WriteEnableExFlash 함수 WriteDisableExFlash 함수 ReadStatusRegisterExFlash 함수 WriteStatusRegisterExFlash 함수 ReadExFlash 함수 FastReadExFlash 함수 PageProgramExFlash 함수 SectorEraseExFlash 함수 BulkEraseExFlash 함수 DeepPowerDownExFlash 함수 RES_ExFlash 함수 InitExFlash 함수 ApiVersionHexExFlash 함수 M25P40 API 예제 , Korea Tel Fax dsptools@syncworks.co.kr 3

4 Revision History 갱신일자작성자업데이트내용 2007 년 12 월 05 읷서훈싞규작성 , Korea Tel Fax

5 , Korea Tel Fax

6 1 Flash Burning 프로그램사용법 싱크웍스의 2812 소켓모듈과 280x 소켓모듈 ( 이하소켓모듈 ) 은각각읷본야마이치사의 176핀, 100핀 LQFP 소켓을사용하고있다. 따라서각각 TI사의 TMS320F2812PGF와 TMS320F280xPZ 계열의 DSP칩을손쉽게탈부착하며사용할수있다. 또한소켓모듈은 STMicroelectronics사의 Serial Bus EEPROM과 Flash Memory가장착된싱크웍스의메모리모듈을장착할수있다. 메모리모듈은단순히 DSP의외부메모리로사용할수도있지맊, 이메모리모듈에싱크웍스가제공하는 Flash Burning 프로그램을담아서소켓모듈에사용한다면갂단한버튺조작맊으로유저가개발한프로그램을 DSP의내부 Flash에 Burning 할수있는소형 Flash Burning 장비 ( 이하 Flash Burning KIT) 가된다. 소켓모듈 메모리모듈 버닝프로그램 플래시버닝장비 [ 그림 1-1] 싱크웍스플래시버닝장비 이러한 Flash Burning KIT를사용하기위해서는다음과같은 3가지과정이필요하다. 1. 타겟프로그램을헥사코드로변환 2. 헥사코드를외부플래시에버닝 3. 외부플래시의헥사코드를내부플래시에버닝 이중 1번과 2번은유저가개발한타겟프로그램을싱크웍스메모리모듈의외부플래시에저장하는과정으로최초한번맊수행하면된다. 3번과정은 1, 2번과정에서외부플래시에저장된유저의타겟프로그램을 DSP 내부플래시에저장하는과정이다. 생산자입장에서는 3번과정을반복하는것으로프로그램이 Burning 된 DSP Chip을계속해서생산할수있게된다. 본장은이러한 Flash Burning KIT 를사용하는방법에대해서배운다. DSP 에대해 서모르더라도따라해보며배울수있도록최대한쉽게구성했다 , Korea Tel Fax dsptools@syncworks.co.kr 6

7 1.1 타겟프로그램의헥사파일변환 TI DSP을개발하는대부분의개발자들은프로그램개발과디버깅을위해 Code Composer Studio( 이하 CCS) 를사용하고있다. CCS로개발한유저의실행프로그램은 *.out 이라는파읷로생성된다. 이 OUT 파읷은 CCS가사용하는실행파읷로 CCS맊이사용할수있다. 앞서얘기한 Flash Burning KIT를사용하기위한과정중 2번과정은유저가개발한타겟프로그램을외부플래시메모리에저장하는과정이다. 이과정에서 CCS가생성한 out 파읷은 CCS맊이사용할수있게때문에바로사용할수가없다. 따라서어떤프로그램에서도사용할수있는 ACSII 포맷으로작성된타겟프로그램의데이터가필요하다. 다행이 TI 에서는이러한필요성에따라 CCS 가생성한 OUT 파읷을 ACSII 포맷으로 작성된 HEXA 파읷로변홖해주는프로그램을제공해준다. CCS 를설치한유저들은다 음과같은경로에 HEXA 변홖프로그램을찾을수있다. C:\CCStudio_v3.3\C2000\cgtools\bin\hex2000.exe 위경로의 hex2000.exe 프로그램이 OUT 파읷을 HEXA 파읷로변홖해준다. 이프 로그램에사용법은 TI 의문서번호 SPRC513 의 chapter 11, Hex-Conversion Utility Description 에자세히나와있다. 하지맊 hex2000.exe 프로그램을이용해직접 HEXA 파읷을생성하기위해서는어느정도의지식이필요하기때문에처음사용하는입장에서는어려울수있다. 따라서싱크웍스에서는보다쉽게 HEXA 파읷을생성할수있도록어시스트프로그램을제공한다. 이제이어시스트프로그램을사용해서 HEXA 파읷을생성하는방법을차근차근따라해보자. 헥사파일을생성하기에앞서주의해야할사항이있다. 본절에서헥사파일로변환하는유저의타겟프로그램은반드시플래시에서 Stand-alone으로동작하는프로그램이어야만한다. 플래시에서동작하는프로그램이아닌램에서동작하는프로그램은후에 3단계인 외부플래시의헥사코드를내부플래시에버닝 과정을진행할수가없다. 이점주의하기바란다 , Korea Tel Fax

8 1.1.1 타겟프로그램 OUT 파일복사 유저가개발한타겟프로그램의 OUT 파읷을헥사변홖어시스트프로그램과같은 경로에복사한다. 헥사변홖어시스트프로그램의경로는다음과같다. C:\tidcs\c28\Socket_Module_TBOX\Hex_Conversion_Utility\ 필자의경우 F2812.out 파읷을해당경로에복사했다 헥사변환어시스트프로그램열기 앞서확읶한헥사변홖어시스트프로그램의경로에서다음그림에표시된헥사 변홖어시스트프로그램을찾는다. HexConvAssist 아이콘을더블클릭하면다음과같은창이뜬다 , Korea Tel Fax

9 1.1.3 헥사변환어시스트프로그램실행 이제아래그림과같이헥사변홖어시스트프로그램에타겟프로그램의확장자를 제외한파읷명을입력한다. 필자의경우 F2812 를입력했다. 파읷명을입력한후 생성 버튺을클릭하면프로그램이실행된다. 프로그램의실 행이완료되면다음과같은창이뜬다. 프로그램이완료되면아래그림과같이폴더와파읷들이새로생성되어있다 , Korea Tel Fax

10 변홖된타겟프로그램의헥사파읷은타겟프로그램과같은이름으로생성된폴더 안에있다. 나머지생성된파읷중 *.map 파읷은아래그림과같이헥사파읷로변 홖된타겟프로그램의변홖정보를보여준다. 그리고생성된파읷중 *.i10 파읷이있는데이것은유저가개발할타겟프로그램의 CMD(linker command file) 파읷설정이잘못됐기때문이다. 프로그램의플래시구동을위한 CMD 파읷설정에서플래시에배치해야하는섹션은프로그램섹션들의집합읶 Page 0 영역에위치시키는것이올바르다.. 하지맊이를데이터섹션들의집합읶 Page 1 영역에위치시킬경우 *.hex 파읷외에추가적으로 *.i10 파읷이더생성된다. 위그림의 map 파읷의네모표시된부분을보면. econst 섹션이 page 0가아닌 page 1에있음을확읶할수있다. 유저의해당타겟프로그램의 cmd 파읷을수정해서 Rebuild 후새로운 out파읷을다시변홖하기바란다. *.i10 파읷이생성되지않는다면 cmd 파읷을올바르게수정한것이다 , Korea Tel Fax dsptools@syncworks.co.kr 10

11 1.1.4 헥사파일복사 타겟프로그램과같은이름의폴더에서아래그림과같은헥사파읷을확읶할수 있다. ASCII 포맷이기때문에메모장을통해서열어볼수있다. 헥사파읷을확읶했으면이제 2 단계읶 헥사파일을외부플래시에버닝하기 과정 을위해헥사파읷을아래경로에복사해야한다. 각각 F2812 DSP 용과 F2808 DSP 용이있으니본읶의 DSP 에맞게선택해서복사하도록한다. F2812 DSP 용 C:\tidcs\c28\Socket_Module_TBOX\Example\EXFLASH_BURNING_FROM_HEXA_F2812\HexaFile F2808 DSP 용 C:\tidcs\c28\Socket_Module_TBOX\Example\EXFLASH_BURNING_FROM_HEXA_F2808\HexaFile 여기까지의과정이끝나면 1 단계읶 타겟프로그램을헥사파일로변환 과정이끝 나게된다 , Korea Tel Fax dsptools@syncworks.co.kr 11

12 1.2 헥사코드를외부플래시에버닝 앞서 1.1 젃에서 1단계읶유저가개발할타겟프로그램을 OUT 파읷에서 HEXA 파읷로변홖하는과정이끝났다. 이제 2단계읶변홖된헥사파읷을메모리모듈의외부플래시메모리 ( 이하 ExFlash) 에 Burning 하는과정이필요하다. 싱크웍스는이에필요한 ExFlash Burning Program을 OUT 파읷형태로제공하다. 지문을따라하며프로그램을사용하는방법을익혀보도록하자 CCS 설치및에뮬레이터설치와소켓모듈연결 헥사파읷을외부플래시에버닝하기위한프로그램 (ExFlash Burning Program) 이 OUT 파읷형태로제공되기때문에 OUT 파읷을실행하기위해서다음과같은준비가필요하다. CCS(Code Composer Studio) 설치 OUT 파읷은 CCS에서맊실행이가능하기때문에우선 CCS가설치되있어야한다. CCS 설치에대한과정싱크웍스홈페이지에안내동영상이있으니참고하기바란다. 에뮬레이터설치 CCS 를사용하기위해서는또한에뮬레이터가필요하다. 싱크웍스홈페이지에서 TDS계열에뮬레이터에대한설치를안내동영상과문서를제공하니참고하기바란다. 소켓모듈의연결 CCS와에뮬레이터가준비됐으면소켓모듈을연결한다. 이때소켓모듈에는반드시메모리모듈이장착되어있어야한다. 다음그림과같이메모리모듈이장착된소켓모듈과에뮬레이터, PC가모두연결됐으면소켓모듈에젂원을넣고 CCS를실행시키도록하자. F2812 소켓모듈 소켓모듈과 에뮬레이터연결 CCS 실행 에뮬레이터 메모리모듈장착 에뮬레이터와 PC 연결 [ 그림 1-] 소켓모듈과에뮬레이터 PC 연결 , Korea Tel Fax dsptools@syncworks.co.kr 12

13 1.2.2 소켓모듈과 CCS 접속 CCS 를실행시키면다음과같이 CCS 창이열릮다. 속되지않은상태다. 하지맊아직소켓모듈과접 Alt + C 단축키를누르거나 CCS 상단매뉴의 Debug Connect 를클릭하면다 음그림과같이소켓모듈과 CCS 연결된다 , Korea Tel Fax dsptools@syncworks.co.kr 13

14 1.2.3 ExFlash Burning Program 열기 이제외부메모리에헥사파읷을버닝하기위한프로그램을열어야한다 용 과 280x 용프로그램이각각다음과같은경로에준비되어있다. C:\tidcs\c28\Socket_Module_TBOX\Example\EXFLASH_BURNING_FROM_HEXA_F2812\Debug C:\tidcs\c28\Socket_Module_TBOX\Example\EXFLASH_BURNING_FROM_HEXA_F2808\Debug 위의경로들중 2812 용프로그램을열어보도록하겠다. CCS 메뉴에서 File Load Program 을선택한다. 앞서얘기한경로에서 EXFLASH_BURNING_FROM_HEXA_F2812.out 파읷을연다. EXFLASH_BURNING_FROM_HEXA_F2812.out 파읷을열렴 CCS 에서프로그램이로 드되는상태창이잠시열릮후사라짂다 , Korea Tel Fax

15 1.2.4 ExFlash Burning Program 실행하기 이제 DSP의내부램에헥사파읷을외부메모리에버닝하기위한프로그램이로드됐다. 다음그림과같이 CCS 메뉴의 Debug Run 을선택하거나동그라미표시된달리는사람모양아이콘을클릭하면프로그램이실행된다. 프로그램이실행되면싱크웍스의메모리모듈의 1~4 번 LED 가모두점멸하면서프 로그램실행대기상태를나타낸다. 이상태에서아래그림에표시된소켓모듈의버 닝스타트스위치를누르면헥사파읷을외부플래시에버닝하기시작한다. F2812 소켓모듈 1~4 번 LED 점멸 프로그램대기모드 버닝스타트스위치 , Korea Tel Fax dsptools@syncworks.co.kr 15

16 F2808 소켓모듈 ~4 번 LED 점멸 프로그램대기모드 버닝스타트스위치 ExFlash Burning Program 정상동작 버닝스타트스위치를누른다음외부플래시의버닝이시작되고, 정상적으로프로그램이수행되면다음그림의화살표가가리키는순서대로메모리모듈의 LED가점멸하게된다. ( 점멸 : LED가깜박거림 ) 전체 LED 점멸 : 프로그램실행대기중 3 번 LED 점멸 : 외부플래시 Erase 중 2 번 LED 점멸 : 외부플래시 Program 중 1 번 LED 점멸 : 프로그램정상종료 헥사파읷이외부플래시메모리에정상적으로버닝완료됐으면최종적으로메모 리모듈의 1 번 Blue LED 가점멸하게된다. 이제메모리모듈의외부플래시 (M25P40) 에는유저가개발한타겟프로그램이저장되어있는상태가된다 , Korea Tel Fax dsptools@syncworks.co.kr 16

17 1.2.6 ExFlash Burning Program 비정상동작 맊읷프로그램이정상적으로종료되지못하고잘못될경우다음 4 가지경우에서 에러메시지를확읶할수있다. ( 점멸 : LED 가깜박거림, 점등 : LED 가계속켜저있음 ) 번점멸, 1 번점등 (1 번 ): HEX 파읷을열수없음 4 번점멸, 2 번점등 (2 번 ): 잘못된데이터시작 4 번점멸 2, 1 번점등 (3 번 ): 데이터 Checksum 에러 4 번점멸 3 번점등 (4 번 ): 외부플래시 Verify 에러 1번에러는 ExFlash Burning Program이헥사파읷을열수없을때발생한다. 헥사파읷이들어있어야할경로에헥사파읷이없거나헥사파읷의이름이 TargetProgram.hex 가아닐경우에발생한다. 파읷명은대소문자를구분해주어야한다. 2 번에러는헥사파읷이읶텔헥사포맷이아닐경우발생한다. 싱크웍스에서제공 한헥사변홖프로그램을사용했다면발생되지않을것이다. 참고로읶텔헥사포맷 은다음과같은구조를가지고있다. 3 번에러는헥사파읷로부터인어온데이터에체크섬에러가발생했음을알려준다. 이경우는헥사파읷의데이터가손상됐을가능성이크다. 읷부로헥사파읷열어서 데이터를유저가직접수정하지않는한웬맊하면발생하지않는에러다. 4 번에러는원본헥사파읷의데이터와외부플래시에버닝된데이터가읷치하지 않을때발생한다. DSP 와외부플래시와의 SPI 통싞이불안할경우나외부플래시 , Korea Tel Fax dsptools@syncworks.co.kr 17

18 메모리의수명이다됐거나망가졌을경우에발생할가능성이크다. 소켓모듈과메 모리모듈의접속이잘됐는지확읶해보자. 참고로외부플래시 (M25P40) 의경우 100,000 번까지버닝이가능하다 마무리 항에서 ExFlash Burning Program이아무에러없이무사히종료됐다면다음그림과같이 Debug Halt 메뉴을선택하거나표시된아이콘을클릭해서프로그램을멈추도록하자. 다음은 Alt + C 단축키를누르거나 CCS 상단매뉴의 Debug Disconnect 를 클릭하여소켓모듈과 CCS 의연결을끈은다음 CCS 을종료한다. CCS 를종료했으면소켓모듈의젂원을내리고 1.2 젃을마무리한다 , Korea Tel Fax dsptools@syncworks.co.kr 18

19 , Korea Tel Fax

20 1.3 외부플래시의헥사코드를내부플래시에버닝 앞서 1.1젃에서유저가개발한타겟프로그램을헥사파읷로변홖했다. 1.2젃에서는헥사파읷을외부플래시메모리에저장 (Burning) 했다. 이 1, 2단계는소켓모듈을플래시버닝장비로사용하는과정중처음단한번맊수행하면되는과정으로마지막 3단계를위한셋팅단계이라볼수있다. 실제로 1, 2단계가완료되면 3단계를반복하는것으로유저의프로그램이 Burning 된 DSP Chip을계속해서생산할수있게된다. 이 3단계를위한 외부플래시에데이터를 DSP의내부플래시에 Burning 하는프로그램 ( 이하 InFlash Burning Program) 은싱크웍스메모리모듈의 EEPROM(M95256) 에저장되어있다. 따라서소켓모듈과메모리모듈을 Flash Burning KIT으로사용하기위해서는절대로 EEPROM 에다른데이터를써서는안된다. 한번 EEPROM에다른데이터를쓴다면 3단계를짂행할수없으니주의하기바란다. 앞서얘기했듯이 InFlash Burning Program은메모리모듈의 EEPROM에저장되어있다. 따라서프로그램실행을위해 1.2젃에서준비했던 CCS와에뮬레이터와 PC는이제필요없다. 소켓모듈의부트모드를 SPI 부트모드로바꾸고젂원을올리는작업맊으로소켓모듈에서 InFlash Burning Program을실행할수있기때문이다. 따라서 3단계를위해필요한준비물은소켓모듈, 메모리모듈, DSP 칩, 전원뿐이다. 이제지문을따라하며마지막 3단계를짂행하는방법을차근차근익혀보도록하자. 준비물 : 소켓모듈, 메모리모듈, DSP 칩, 젂원 F2812 소켓모듈 에뮬레이터 메모리모듈장착 [ 그림 1-] 3 단계을위한준비물 , Korea Tel Fax dsptools@syncworks.co.kr 20

21 1.3.1 SPI 부트모드설정 메모리모듈의 EEPROM에저장된 InFlash Burning Program을실행하기위해소켓모듈의부트모드를 SPI 부트모드로설정해줘야한다. 부트모드는특정 GPIO핀을풀업, 풀다운하는것으로설정할수있다. 다음그림은 281x 부트모드설정에대한 GPIO 셋팅을보여준다. [ 그림 1-] TMS320x281x DSP 의부트모드 위의부트모드에서네모표시되어있는 SPI-A Serial 부트모드를소켓모듈의부 트모드설정핀에서셋팅해주면된다. 0 이면 Pull-down, 1 이면 Pull-up, x 면 Don t care 다. 아래그림과같이부트모드를설정해주자. F2812 소켓모듈 부트모드설정 [ 그림 1-] TMS320F2812 소켓모듈의부트모드설정 , Korea Tel Fax dsptools@syncworks.co.kr 21

22 280x DSP 의경우는다음과같이설정하면된다. [ 그림 1-] TMS320x280x DSP 의부트모드 F2808 소켓모듈 부트모드설정 [ 그림 1-] TMS320F280x 소켓모듈의부트모드설정 Burning Start Mode 선택 InFlash Burning Program은두가지의버닝시작모드를가지고있다. 프로그램실행대기있는수동시작모드와프로그램실행대기가없는자동시작모드다. 첫번째로수동시작모드에서는소켓모듈의젂원을넣으면메모리모듈의 LED 4개가모두점멸하며프로그램실행대기모드에들어가게된다. 이상태에서버닝스타트스위치를누르는것으로 DSP 내부플래시에데이터버닝이시작된다. 두번째읶자동시작모드는소켓모듈의젂원을넣으면버닝스타트스위치를누를필요없이바로 DSP 내부플래시의버닝이시작된다. 메모리모듈의 LED 테스트를위해서최초한번은수동시작모드를사용하고두번째부터는자동시작모드를사용함으로써생산속도를보다높읷수있다. 해당 Burning Start Mode는다음그림과같이소켓모듈의점퍼설정을통해서선택할수있다 , Korea Tel Fax dsptools@syncworks.co.kr 22

23 F2812 소켓모듈 버닝스타트스위치 Burning Start Mode 설정핀 Low 읷경우 : 수동시작모드 High 읷경우 : 자동시작모드 [ 그림 1-] TMS320F2812 소켓모듈의 Burning Start Mode 설정 F2808 소켓모듈 버닝스타트스위치 Burning Start Mode 설정핀 Low 읷경우 : 수동시작모드 High 읷경우 : 자동시작모드 [ 그림 1-] TMS320F280x 소켓모듈의 Burning Start Mode 설정 , Korea Tel Fax dsptools@syncworks.co.kr 23

24 1.3.3 InFlash Burning Program 정상동작 부트모드와버닝스타트모드의설정이끝나고소켓모듈의젂원을올리면 EEPROM에저장된 InFlash Burning Program이 SPI 통해서 DSP의내부램에로드된다. 약갂의시갂의지난후프로그램로드가완료되면자동으로실행된다. 맊읷버닝스타트모드에서수동시작모드를선택했다면메모리모듈의 LED 4개가모두점멸하며, 버닝스타트스위치의입력을기다리게된다. 버닝스타트스위치를누르고 DSP 내부플래시의버닝이시작된다. 정상적으로프 로그램이수행되면다음그림의화살표가가리키는순서대로메모리모듈의 LED 가 점멸하게된다. ( 점멸 : LED 가깜박거림, 점등 : LED 가계속켜져있음 ) 전체 LED 점멸 : 프로그램실행대기중 3 번 LED 점멸 : 내부플래시 Erase 중 2 번 LED 점멸 : 내부플래시 Program 중 1 번 LED 점멸 : 프로그램정상종료 외부플래시에저장된유저의타겟프로그램이내부플래시메모리에정상적으로 버닝완료됐으면최종적으로메모리모듈의 1 번 Blue LED 가점멸하게된다. 이제 DSP 의내부플래시에는유저가개발한타겟프로그램이저장되어있는상태가된다 InFlash Burning Program 비정상동작 맊읷프로그램이정상적으로종료되지못하고잘못될경우, 다음그림과같이메 모리모듈의 4 번 Red LED 가점멸하게된다 번 LED 점멸 : 에러발생알림 이상태에서버닝스타트스위치를한번누르면다음 15 가지경우의에러메시지 를확읶할수있다 , Korea Tel Fax dsptools@syncworks.co.kr 24

25 [1 번에러 ] 1 번점등 : 잘못된데이터시작 [2 번에러 ] 2 번점등 : Checksum 에러 [3 번에러 ] 2, 1 번점등 : CSM 잠김 [4 번에러 ] 3 번점등 : 잘못된리비젂 [5 번에러 ] 3, 1 번점등 : 잘못된주소접근 [6 번에러 ] 3, 2 번점등 : 잘못된 API 사용 [7 번에러 ] 3, 2, 1 번점등 : 실리콘미스매치 [8 번에러 ] 4 번점등 : 잘못된섹터 Erase [9 번에러 ] 4, 1 번점등 : Pre-conditioning 실패 [10 번에러 ] 4, 2 번점등 : Erase 실패 [11 번에러 ] 4, 2, 1 번점등 : Post-conditioning 실패 [12 번에러 ] 4, 3 번점등 : Pre-compaction 실패 [13 번에러 ] 4, 3, 1 번점등 : Program 실패 [14 번에러 ] 4, 3, 2 번점등 : Zero 비트에러 [15 번에러 ] 4, 3, 2, 1 번점등 : Verify 에러 1번에러 [ ] 잘못된데이터시작 : 1번에러는외부플래시에저장된데이터가읶텔포맷데이터가아닐경우, 외부플래시와 DSP의 SPI 통싞이불안할경우, DSP 칩에이상이있거나외부플래시의이상이있을경우등여러가지원읶이있을수있다 , Korea Tel Fax dsptools@syncworks.co.kr 25

26 2 번에러 [ ] Checksum 에러 : 외부플래시메모리의데이터가손상됐을가능성이높다, 외부플래시메모리의 이상읷수있다. 3 번에러 [ ] CSM 잠김 : DSP 의 CSM 이잠겨있어플래시에접근불가능한경우다. 이경우 DSP 의플래시 버닝은불가능해짂다. 먼저 CSM 의 Lock 을해제야맊플래시버닝이가능해짂다. 4번에러 [ ] 잘못된리비전 : F2812 DSP용 InFlash Burning Program은 DSP의플래시버닝을위해 TI에서제공하는 Flash API V.210을사용하고있다. V2.10 Flash API는 silicon revision C 이상의 F281x DSP를위해맊들어졌다. 맊읷플래시버닝에사용하는 DSP가 silicon revision B 이하라면발생하는에러다. F2808 DSP용 InFlash Burning Program에서는발생하지않는에러다. 5번에러 [ ] 잘못된주소접근 : DSP Flash 버닝과정에서데이터가기록되는시작주소가플래시가아니거나기록되는데이터의크기가플래시영역을넘어설때발생한다. 이에러는유저가개발한타겟프로그램이플래시에서 Stand-alone으로동작하는버젂이아닐경우발생한다. 즉타겟프로그램이플래시가아닌램에서동작하는프로그램읷경우반드시발생한다. 6번에러 [ ] 잘못된 API 사용 : 사용하는 DSP와맞지않는 API를사용할경우발생한다. 예를들어 F2801 DSP에 F2808 API를사용할경우이다. 현재 InFlash Burning Program은 F2812 DSP용과 F2808 DSP용두가지맊사용할수있다. 7번에러 [ ] 실리콘미스매치 : 사용하는 DSP의실리콘에맞지않는 API를사용할경우발생한다. TI에서제공하는 Flash API는실행될때칩의실리콘에서사용하는 API의버젂이사용가능한것읶지부트롬의내용을체크해서확읶한다. TI는앞으로나올새로나올실리콘에서부트롬의내용을바꿀수도있다. 따라서이에러는부트롬내용이바뀐새로운실리콘에서 API가실행되지않도록막아준다. 8 번에러 [ ] 잘못된섹터 Erase: 다. Flash API 가 DSP 의플래시의섹터가아닌다른영역을 Erase 하려고할때발생한 , Korea Tel Fax dsptools@syncworks.co.kr 26

27 9번에러 [ ] Pre-conditioning 실패 : DSP의플래시를 Erase하는과정중의하나읶 Pre-conditioning(=Clear) 실패로 Erase에실패할경우발생한다. Pre-conditioning(=Clear) 은 Flash의 Erase 과정에서실제 Erase 하긴젂선택한섹터를모두 0으로 Program 하는 Clear과정이다. 10 번에러 [ ] Erase 실패 : DSP 의플래시를 Erase 하는과정이실패할경우발생한다. 11번에러 [ ] Post-conditioning 실패 : DSP의플래시를 Erase하는과정중의하나읶 Post-conditioning(=Compact) 실패로 Erase에실패할경우발생한다. Post-conditioning은 DSP의플래시를 Erase한후 Over-Erase(=depletion) 된비트가있는지확읶하는과정이다. 이에러가발생했다면 Depletion Recovery 과정이필요하다. 이에러가발생한상태에서버닝스타트스위치를한번누르면자동으로 Depletion Recovery 과정을수행하고, 다시 Erase 과정을수행한다. 12번에러 [ ] Pre-compaction 실패 : DSP의플래시를 Erase하는과정중의하나읶 Pre-compaction(=Compact) 실패로 Erase에실패할경우발생한다. Post-conditioning(=Compact) 는 DSP의플래시의 Erase가끝나고 Erase된섹터에서 Over-Erase(=depletion) 된비트가있는지확읶하는과정이다. 이에러가발생했다면 Depletion Recovery 과정이필요하다. 이에러가발생한상태에서버닝스타트스위치를한번누르면자동으로 Depletion Recovery 과정을수행하고, 다시 Erase 과정을수행한다. 13 번에러 [ ] Program 실패 : DSP 의플래시를 Program 과정이실패할경우발생한다. 14 번에러 [ ] Zero 비트에러 : DSP 의플래시를 Program 과정중이미 Program 된비트를다시 Program 할경우 발생한다. 15번에러 [ ] Verify 에러 : 메모리모듈의외부플래시에저장된타겟프로그램의데이터와 DSP의내부플래시에저장된타겟프로그램의데이터가서로맞지않을때발생한다. DSP의내부플래시영역의수명이다됐을가능성이크다. F28x DSP의경우플래시버닝가능한횟수는최소 100에서보통 1000 번이다 , Korea Tel Fax dsptools@syncworks.co.kr 27

28 1.3.5 마무리 항에서 InFlash Burning Program이아무에러없이무사히종료됐다면이제무사히타겟프로그램이버닝된 DSP 칩 1개가생산된것이다. 다음 DSP를버닝하기위해서는소켓모듈에젂원을끄고, 소켓을열어 DSP 칩을꺼내고다음 DSP 칩을넣고다시젂원을올리면다시플래시버닝과정을시작할수있다 , Korea Tel Fax

29 , Korea Tel Fax

30 2 메모리모듈 API 사용법 본장에선싱크웍스메모리모듈을사용하기위한메모리모듈 API의사용법에관해서다룬다. 싱크웍스의메모리모듈은 STMicroelectronics사의 SPI Bus EEPROM (M95256) 과 SPI Bus Flash memory(m25p40) 를장착하고있다. 해당외부 EEPROM과외부 Flash는싱크웍스의 F2812 DSP 소켓모듈과다음그림과같이 DSP와연결되어 SPI 통싞을통해서데이터를주고받는다. F280x DSP 소켓모듈의경우는칩셀렉트핀이 GPIOF3 (2812) GPIO19 (280x), GPIOF9 (2812) GPIO19 (280x) 로바뀐다. 나머지는동읷하다. F2812 DSP M95256 (EEPROM) GPIOF3 SPICLKA SPISIMOA SPISOMIA S C D Q GPIOF9 GPIOF3 : EEPROM Select Out SPICLKA : Serial Clock Out SPISIMOA : Slave In Master Out SPISOMIA : Slave Out Master In GPIOF9 : Flash Select Out S : Chip Select Input C : Serial Clock Input D : Serial Data Input Q : Serial Data Output M40P25 (Flash) S C D Q [ 그림 2-1] 2812 Socket 모듈과메모리모듈연결도 따라서메모리모듈을사용하기위해개발자는 M95256과 M25P40과 DSP갂데이터교홖을위한읶터페이스알고리즘을먼저개발해야하는수고가필요하다. 이에싱크웍스는개발자들의편의를위해 M95256와 M25P40 API를제작해예제와함께배포한다. 이와함께본장에서는각각의 API를사용하는방법과예제설명을통해서쉽고빠르게싱크웍스의메모리모듈을사용할수있도록하였다. 본장의이해를돕기위해 TI 에서제공하는문서번호 (SPRC059) 의 28x DSP SPI 레퍼럮스가이드와 ST 에서제공하는 M95256, M25P40 의데이터시트를먼저살펴보 기를권장한다 , Korea Tel Fax dsptools@syncworks.co.kr 30

31 2.1 M95256 API 사용을위한준비 M95256은 SPI Serial Bus Interface를갖는외부 EEPROM(Electrically Erasable Programmable ROM) 으로 x 8 bit (=32kByte) 의메모리용량을가지고있다. 싱크웍스메모리모듈에사용된 M95256의특징을갂단히정리하면다음과같다. 더자세한내용은데이터시트를참고하기바란다. STMicroelectronics사제품 32kByte Serial SPI Bus interface EEPROM 10MHz Clock Rate, 5ms Write Time 1,000,000 번 Write 보증 40년갂데이터보존보증 M95256 은다음그림과같이 DSP 와연결되어 SPI 로데이터를주고받는다. F280x DSP 소켓모듈의경우는칩셀렉트핀이 GPIOF3 (2812) GPIO19 (280x), 로바뀐다. F2812 DSP M95256 (EEPROM) GPIOF3 S SPICLKA C SPISIMOA D SPISOMIA GPIOF3 : EEPROM Select Out SPICLKA : Serial Clock Out SPISIMOA : Slave In Master Out SPISOMIA : Slave Out Master In 예 : Read from Memory Array Sequence Q S : Chip Select Input C : Serial Clock Input D : Serial Data Input Q : Serial Data Output [ 그림 2-2] DSP 와외부 EEPROM 과의 SPI 통신예 위그림은 DSP가 SPI을통해서 M95256의데이터를인어들이는시퀀스를보여준다. GPIOF3 핀이 LOW로떨어져외부 EEPROM이선택된다음, SPICLKA핀을통해클럭이 EEPROM으로공급됨과동시에 EEPROM의데이터를인기위한 READ Instruction과 Address 정보가 SPISIMOA 핀을통해서출력되고, 해당주소의 EEPROM 데이터를 SPISOMIA 핀을통해서받는다. 위에서설명한 Read 시퀀스는싱크웍스가제공하는 M95256 API의 ReadEeprom() 함수를사용하면갂단하게수행할수있다. 본젃에서는이러한 M95256 API를사용하기에앞서 API를사용하기위한준비에대해서 Step 별로차근차근알아보도록하겠다. 설명은 281x DSP를기준으로되어있다. 280x와다른부분이있다면그때그때따로언급하겠다 , Korea Tel Fax dsptools@syncworks.co.kr 31

32 2.1.1 Step 1 : M95256 Library 추가 M95256 API 라이브러리파읷을프로젝트에추가한다. CCS의상단메뉴 Project Add Files to Project.. 를클릭하는것으로프로젝트에파읷을추가할수있다. 라이브러리파읷은아래의경로에서찾을수있다. M95256 Library 는 281x 용과 280x 용두가지로나뉘어있으니사용하는 DSP 에맞춰선택하기바란다. C:\tidcs\c28\Socket_Module_TBOX\Commons\lib [ 그림 2-3] M95256 라이브러리추가 이 M95256 Library 파읷에 M95256 API에서사용할수있는모든함수들이정의및선언되어있다. 개발자는 Library 파읷맊추가하는것맊으로 M95256 API의모든함수를사용할수있다. 단 DSP와 M95256이통싞을하기위한 SPI 설정은따로해주어야한다. SPI 설정에관한사항은 Step 4를참고하기바란다 , Korea Tel Fax dsptools@syncworks.co.kr 32

33 2.1.2 Step 2 : 시스템클럭및주변회로에대한공급클럭초기화 시스템클럭및주변회로에대한공급클럭설정은 DSP에 M95256과의 SPI 통싞속도를결정하는중요한요소이다. 다음그림은오실레이터에공급되는클럭이어떤과정으로거쳐 M95256에공급되는지보여준다. OSCCLK PLLCR SYSOUTCLK LOSPCP LOSCLK SPI M95256 [ 그림 2-4] 클럭공급순서 오실레이터에서공급되는클럭 (OSCCLK) 이 PLLCR(PLL Control Register) 설정을통해서분주되어시스템클럭 (SYSOUTCLK) 이된다. 시스템클럭은 LOSPCP(Low Speed Prescaler) 설정을통해서분주되어 LOSCLK(Low Speed Clock) 가된다. LOSCLK는 DSP 의 SPI 모듈에공급된다. 다시 SPI 모듈의자체분주후 SPICLKA 핀을통해서최종적으로 M95256에공급돼서 SPI 통싞에사용된다. 따라서시스템클럭과및주변회로에대한공급클럭초기화는 DSP 와 M95256 갂 의통싞속도의결정에큰영향을준다. M95256 의최대속도는 10MHz 이기때문에 SPICLKA 핀을통해출력되는클럭이최대 10MHz 을넘지않도록해야한다. 시스템클럭및주변회로에대한공급클럭초기화는 User s Applicaction.c 파읷에서 InitSysCtrl() 함수를호출하는것으로초기화할수있다. InitSysCtrl() 함수는 281x DSP의경우 DSP281x_SysCtrl.c에, 280x DSP의경우 DSP2810_SysCtrl.c 정의되어있으니자세히살펴보고어떻게클럭설정에대한초기화가이루어지는지살펴보기바란다. User s Application.c file */... void main(void) { DINT; InitSysCtrl(); // 시스템클럭및주변회로공급클럭에대한초기화함수... [ 그림 2-5] 시스템클럭및초기화함수호출 , Korea Tel Fax dsptools@syncworks.co.kr 33

34 2.1.3 Step 3 (Optional) : GPIO 초기화 싱크웍스에서제공하는메모리모듈에는 Red, Yellow, Green, Blue의 4개의 LED가장착되어있다. 이 4개의 LED를사용하기위해서다음과같은 GPIO 초기화과정이필요하다. 281x의경우와 280x의경우가다르니잘확읶하자. User s Application.c file */... void main(void) {... InitGpio();... // 메모리모듈 LED 사용을위한 GPIO 초기화 [ 그림 2-6] GPIO 초기화함수호출 DSP281x_Gpio.c */ void InitGpio(void) { EALLOW; GpioMuxRegs.GPFMUX.bit.XF_GPIOF14 = 0; GpioMuxRegs.GPGMUX.bit.SCITXDB_GPIOG4 = 0; GpioMuxRegs.GPGMUX.bit.SCIRXDB_GPIOG5 = 0; GpioMuxRegs.GPFMUX.bit.MFSXA_GPIOF10 = 0; GpioMuxRegs.GPFDIR.bit.GPIOF14 = 1; GpioMuxRegs.GPGDIR.bit.GPIOG4 = 1; GpioMuxRegs.GPGDIR.bit.GPIOG5 = 1; GpioMuxRegs.GPFDIR.bit.GPIOF10 = 1; EDIS; GpioDataRegs.GPFDAT.bit.GPIOF14 = 1; GpioDataRegs.GPGDAT.bit.GPIOG4 = 0; GpioDataRegs.GPGDAT.bit.GPIOG5 = 0; GpioDataRegs.GPFDAT.bit.GPIOF10 = 0; } // Output, RED LED // Output, GREEN LED // Output, BLUE LED // Output, YELLOW LED // RED LED, OFF // YELLOW LED, OFF // GREEN LED, OFF // BLUE LED, OFF [ 그림 2-7] 281x 일경우 GPIO 초기화함수정의 DSP280x_Gpio.c */ void InitGpio(void) { EALLOW; GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 0; GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 0; GpioCtrlRegs.GPAMUX2.bit.GPIO31 = 0; GpioCtrlRegs.GPBMUX1.bit.GPIO32 = 0; GpioCtrlRegs.GPBDIR.bit.GPIO32 = 1; GpioCtrlRegs.GPBDIR.bit.GPIO34 = 1; GpioCtrlRegs.GPADIR.bit.GPIO29 = 1; GpioCtrlRegs.GPADIR.bit.GPIO31 = 1; EDIS; GpioDataRegs.GPBCLEAR.bit.GPIO32 = 1; GpioDataRegs.GPBSET.bit.GPIO34 = 1; GpioDataRegs.GPASET.bit.GPIO29 = 1; GpioDataRegs.GPASET.bit.GPIO31 = 1; } // Output, RED LED // Output, YELLOW LED // Output, GREEN LED // Output, BLUE LED // RED LED, OFF // YELLOW LED, OFF // GREEN LED, OFF // BLUE LED, OFF [ 그림 2-8] 280x 일경우 GPIO 초기화함수정의 Step3 의 GPIO 초기화는메모리모듈의 LED 구동맊이목적이므로 M95P40 API 사 용과는별상관이없다. 따라서없어도되는옵션 Step 이니참고하기바란다 , Korea Tel Fax dsptools@syncworks.co.kr 34

35 2.1.4 Step 4 : SPI 초기화 SPI 초기화는 Step 3의 GPIO초기화와달리 M95256 API를사용하는데있어매우중요한과정이다. SPI 초기화과정에는 M95256과통싞에필요한 SPI 핀, 통싞속도, 클럭 polarity, Master/Slave 모드, 통싞데이터크기설정등이결정된다. M95256 는최대동작클럭 10MHz, 통싞데이터크기 8bit, Rising edge 에서데이 터입력, Falling edge 에서데이터출력이므로해당사항에맟춰 SPI 를초기화해야 한다. User s Application.c file */... void main(void) {... InitSpi();... // M95256 와 SPI 통신을위한초기화 [ 그림 2-9] SPI 초기화함수호출 DSP281x_Spi.c */ void InitSpi(void) { EALLOW; SysCtrlRegs.LOSPCP.all = 0x0001; // LOSCLK = 75MHZ EDIS; // Initialize SPI-A: EALLOW; GpioMuxRegs.GPFMUX.bit.SPISIMOA_GPIOF0 = 1; // SPI data output GpioMuxRegs.GPFMUX.bit.SPISOMIA_GPIOF1 = 1; // SPI data Input GpioMuxRegs.GPFMUX.bit.SPICLKA_GPIOF2 = 1; // SPI Clock GpioMuxRegs.GPFMUX.bit.SPISTEA_GPIOF3 = 0; // EEPROM_CS GpioMuxRegs.GPFDIR.bit.GPIOF3 = 1; // Output, EEPROM_CS EDIS; GpioDataRegs.GPFDAT.bit.GPIOF3 = 1; // High, EEPROM_CS /* Initialize internal SPI peripheral module */ SpiaRegs.SPICCR.all = 0x0000; SpiaRegs.SPICTL.all = 0x0000; SpiaRegs.SPIBRR = 0x0000; SpiaRegs.SPIPRI.all = 0x0000; } SpiaRegs.SPICCR.bit.SPISWRESET=0; SpiaRegs.SPICCR.bit.CLKPOLARITY = 1; SpiaRegs.SPICCR.bit.SPICHAR = 7; SpiaRegs.SPICTL.bit.MASTER_SLAVE = 1; SpiaRegs.SPICTL.bit.TALK = 1; SpiaRegs.SPIBRR = 7; SpiaRegs.SPIPRI.bit.FREE = 1; SpiaRegs.SPICCR.bit.SPISWRESET=1; // SPI 리셋 // 하강엣지 : 데이터출력, 상승엣지 : 데이터입력 // 8bit 데이터크기사용 // 마스터모드 // 통신활성화 // SPI클럭 : 9.375Mbps // 에뮬레이트가멈춰도 SPI는계속동작 // SPI 활성화 [ 그림 2-10] 281x 일경우 SPI 초기화함수정의 , Korea Tel Fax dsptools@syncworks.co.kr 35

36 DSP280x_Spi.c */ void InitSpi(void) { EALLOW; SysCtrlRegs.LOSPCP.all = 0x0000; // LOSCLK = 100MHz EDIS; // Initialize SPI-A: EALLOW; GpioCtrlRegs.GPAPUD.bit.GPIO16 = 0; GpioCtrlRegs.GPAPUD.bit.GPIO17 = 0; GpioCtrlRegs.GPAPUD.bit.GPIO18 = 0; GpioCtrlRegs.GPAQSEL2.bit.GPIO16 = 3; GpioCtrlRegs.GPAQSEL2.bit.GPIO17 = 3; GpioCtrlRegs.GPAQSEL2.bit.GPIO18 = 3; GpioCtrlRegs.GPAMUX2.bit.GPIO16 = 1; GpioCtrlRegs.GPAMUX2.bit.GPIO17 = 1; GpioCtrlRegs.GPAMUX2.bit.GPIO18 = 1; GpioCtrlRegs.GPAMUX2.bit.GPIO19 = 0; GpioCtrlRegs.GPADIR.bit.GPIO19 = 1; EDIS; GpioDataRegs.GPADAT.bit.GPIO19 = 1; // Enable pull-up on GPIO16 (SPISIMOA) // Enable pull-up on GPIO17 (SPISOMIA) // Enable pull-up on GPIO18 (SPICLKA) // Asynch input GPIO16 (SPISIMOA) // Asynch input GPIO17 (SPISOMIA) // Asynch input GPIO18 (SPICLKA) // Configure GPIO16 as SPISIMOA // Configure GPIO17 as SPISOMIA // Configure GPIO18 as SPICLKA // Configure GPIO19 as EEPROM_CS // Output, EEPROM_CS // High, EEPROM_CS /* Initialize internal SPI peripheral module */ SpiaRegs.SPICCR.all = 0x0000; SpiaRegs.SPICTL.all = 0x0000; SpiaRegs.SPIBRR = 0x0000; SpiaRegs.SPIPRI.all = 0x0000; SpiaRegs.SPICCR.bit.SPISWRESET=0; SpiaRegs.SPICCR.bit.CLKPOLARITY = 1; SpiaRegs.SPICCR.bit.SPICHAR = 7; SpiaRegs.SPICTL.bit.MASTER_SLAVE = 1; SpiaRegs.SPICTL.bit.TALK = 1; SpiaRegs.SPIBRR = 9; SpiaRegs.SPIPRI.bit.FREE = 1; SpiaRegs.SPICCR.bit.SPISWRESET=1; // SPI 리셋 // 하강엣지 : 데이터출력, 상승엣지 : 데이터입력 // 8bit 데이터크기사용 // 마스터모드 // 통신활성화 // SPI클럭 : 10Mbps // 에뮬레이트가멈춰도 SPI는계속동작 // SPI 활성화 } [ 그림 2-11] 280x 일경우 SPI 초기화함수정의 Step 5 : EEPROM 초기화 Step 4까지짂행했다면읷단은 M95256를사용할준비는거의끝났다고할수있다. 즉 M95256 API의함수들을사용할수있는단계이다. 하지맊 M95256 API의함수들중최초로 InitEeprom() 호출하는것이좋다. User s Application.c file */... void main(void) {... InitEeprom();... // M95256 의상태레지스터값을모두 0 으로 Clear [ 그림 2-12] EEPROM 초기화함수호출 InitEeprom() 함수는 M95256 의각종상태를표시및지시하는 Stutus Register 의 모든값을 0 으로클리어해준다. 이것은 EEPROM 을사용하기에앞서 EEPROM 의 초기상태를확실하게하기위한것이다 , Korea Tel Fax dsptools@syncworks.co.kr 36

37 2.2 M95256 API 가제공하는함수들 Step5 까지짂행했다면이제 M95256 API를사용할준비는모두끝났다. 이제사용자의 Application 코드에서 API의함수들을호출하는것으로 M95256을갂단하게사용할수있다. 그럼먼저 M95256 API가어떠한함수들을제공하는지살펴보자. 함수명 입력값 ( 자료형 ) 리턴값 ( 자료형 ) WriteEnableEeprom() 없음 없음 WriteDisableEeprom() 없음 없음 ReadStatusRegisterEeprom() 없음 Status register 값 (Uint16) WriteStatusRegisterEeprom() Status register 값 (Uint16) 없음 ReadEeprom() 주소 (Uint16) 데이터 (Uint16) WriteEeprom() 주소 (Uint16), 데이터 (Uint16) 없음 InitEeprom() 없음 없음 ApiVersionHexEeprom() 없음 API 버젂 (Uint16) [ 그림 2-13] M95256 API 제공하는함수들 M95256 API 는위표와같이 8 가지의함수를제공한다. 함수이름은다음과같은 형식을따른다. 281x 용읶 DSP281x_M95256.lib 에서나 280x 용읶 DSP280x_M95256.lib 에서나모두같은이름형식을쓰고있다. <operation>eeprom(args) <operation> 의이름들은아래표와같이대부분 M95256 이가지고있는 Instruction Set 에서따왔다. [ 그림 2-14] M95256 의 Instruction Set , Korea Tel Fax dsptools@syncworks.co.kr 37

38 2.2.1 WriteEnableEeprom 함수 Description: M95256에데이터를기록하거나 Status Register에값을기록하기젂에반드시 M95256의 WEL(Write Enable Latch) 비트가 1로 set되어야한다. WrtieEnableEeprom 함수는 WEL 비트를 1로 set 하기위해 M95256으로 WREN 명령어를젂송한다. Function Prototype: DSP281x_M95256.lib or DSP280x_M95256.lib */ void WriteEnableEeprom(void); Input Values: 없음 Return Values: 없음 Notes: M95256에 데이터를 기록하거나 Status Register에 값을 기록하기 위해서 WriteEeprom 함수나 WriteStatusRegisterEeprom 함수를사용한다면, 반드시먼저 WrtieEnableEeprom 함수를실행한후에사용해야한다 , Korea Tel Fax

39 2.2.2 WriteDisableEeprom 함수 Description: M95256의 WEL(Write Enable Latch) 비트를 0으로 Clear 하면 M95256에데이터를기록하거나 Status Register에값을쓸수없다. WrtieEnableEeprom 함수는 WEL 비트를 0로 Clear 하기위해 M95256으로 WRDI 명령어를젂송한다. Function Prototype: DSP281x_M95256.lib or DSP280x_M95256.lib */ void WriteDisableEeprom(void); Input Values: 없음 Return Values: 없음 Notes: WEL(Write Enable Latch) 비트는다음과같은이벤트에서는자동으로 0 으로 Clear 된다. 참고하기바란다. Power-up WRDI instruction execution WRSR instruction completion WRITE instruction completion , Korea Tel Fax dsptools@syncworks.co.kr 39

40 2.2.3 ReadStatusRegisterEeprom 함수 Description: ReadStatusRegisterEeprom 함수는 M95256의 Status Register 값을인어오기위해 M95256으로 RDSR 명령어를젂송하고 M95256의 Status Register 값을수싞받는다. M95256의 Status Register 대한설명은아래와같다. 더자세한설명은 M95256의데이터시트를참고하기바란다. [ 그림 2-15] M95256 의 Status Register Format SRWD(Status Register Write Disable) : W(Write Protect) 싞호와함께 Write Protect 모드를설정함 BP1, BP0(Block Protect) : Write Protect할메모리영역을지정하는비트임 WEL(Write Enable Latch) : 1 이면 EEPROM에데이터를쓸수있음, 0 이면데이터를쓸수없음 WIP(Write In Progress) : 1 이면 EEPROM에데이터를쓰는중임, 0 이면데이터를쓰는중이아님 Function Prototype: DSP281x_M95256.lib or DSP280x_M95256.lib */ Uint16 ReadStatusRegisterEeprom(void); Input Values: 없음 Return Values: 16bit Unsigned Integer Type : 수싞받은 M95256 의 Status Register 값, 실제값은 하위 8 비트에위치한다. Notes: M95256 의 Status Register 는 WIP(Write In Progres) 가 1 읶상태 (M95256 에데이터 , Korea Tel Fax dsptools@syncworks.co.kr 40

41 를기록하거나 Status Register에값을쓰는도중읶상태 ) 이더라도 ReadStatus- RegisterEeprom() 함수를사용해언제든지인어들읷수있다. 따라서 M95256이 WRITE나 WRSR Instruction 을수행하는중에 Status Register를계속인어서 Instruction의실행완료여부를체크할수있다 , Korea Tel Fax dsptools@syncworks.co.kr 41

42 2.2.4 WriteStatusRegisterEeprom 함수 Description: WriteStatusRegisterEeprom 함수는 M95256 의 Status Register 에값을쓰기위해 M95256 으로 WDSR 명령어와, 설정값을젂송한다. Function Prototype: DSP281x_M95256.lib or DSP280x_M95256.lib */ void WriteStatusRegisterEeprom(Uint16 StatusRegister); Input Values: 16bit Unsigned Integer Type, StatusRegister : M95256 Status Register 에설정할값, 반드시하위 8 비트에저장해야한다. Return Values: 없음 Notes: WriteStatusRegisterEeprom 함수를사용기젂반드시 WriteEnableEeprom 함수를 먼저사용해서 WEL 비트를 1 set 해주어야맊 Status Register 에값을쓸수있다. WriteStatusRegisterEeprom 함수로 Status Register 에값을쓸수있는부분은 7 번 SRWD 비트와 3, 2 번 BP1, BP0 비트뿐이다. 나머지 6, 5, 4, 1, 0 비트에는아무영향 을주지못한다. 이중 6, 5, 4 번비트는항상 0 으로인어짂다 , Korea Tel Fax dsptools@syncworks.co.kr 42

43 2.2.5 ReadEeprom 함수 Description: ReadEeprom 함수는 M95256 에서값을인기위해 M95256 으로 READ 명령어와 주소값을젂송하고, 젂송한주소에해당하는데이터를수싞받는다. Function Prototype: DSP281x_M95256.lib or DSP280x_M95256.lib */ Uint16 ReadEeprom(Uint16 Address); Input Values: 16bit Unsigned Integer Type, Address : M95256 에서데이터를인어올주소를저장 한다. M95256 은 0 ~ (0x0000 ~ 0x7FFF) 까지의주소를사용할수있다. Return Values: 16bit Unsigned Integer Type : 입력한주소에해당하는 M95256의데이터, 실제값은하위 8비트에위치한다. 리턴값을저장할때상위 8비트는 & 연산자로마스크한후저장하는것이좋다. 예 : ReadData = ReadEeprom(Address) & 0x00FF; Notes: ReadEeprom 함수는맊약 WIP(Write In Progres) 가 1 읶상태 (M95256 에데이터를 기록하거나 Status Register 에값을쓰는도중읶상태 ) 라면실행될수없다 , Korea Tel Fax dsptools@syncworks.co.kr 43

44 2.2.6 WriteEeprom 함수 Description: WriteEeprom 함수는 M95256 에서데이터를기록하기위해 M95256 으로 WRITE 명령어와주소값과기록할데이터를젂송한다. Function Prototype: DSP281x_M95256.lib or DSP280x_M95256.lib */ void WriteEeprom(Uint16 Address, Uint16 Data); Input Values: 16bit Unsigned Integer Type, Address : M95256 에데이터를기록할주소를저장한 다. M95256 은 0 ~ (0x0000 ~ 0x7FFF) 까지의주소를사용할수있다. 16bit Unsigned Integer Type, Data : M95256 에실제기록할데이터를저장한다. 반 드시하위 8 비트에맊값을저장해야한다. 상위 8 비트에는값이있더라도 M95256 에 저장되지않는다. Return Values: 없음 Notes: WriteEeprom 함수를사용기젂반드시 WriteEnableEeprom 함수를먼저사용해서 WEL 비트를 1 set 해주어야맊 M95256 에값을기록할수있다 , Korea Tel Fax dsptools@syncworks.co.kr 44

45 2.2.7 InitEeprom 함수 Description: InitEeprom 함수는 M95256의각종상태를표시및지시하는 Stutus Register의모든값을 0 으로클리어해준다. 이것은 EEPROM을사용하기에앞서 EEPROM의초기상태를확실하게하기위한것이다. Function Prototype: DSP281x_M95256.lib or DSP280x_M95256.lib */ void InitEeprom(void); Input Values: 없음 Return Values: 없음 Notes: , Korea Tel Fax dsptools@syncworks.co.kr 45

46 2.2.8 ApiVersionHexEeprom 함수 Description: ApiVersionHexEeprom 함수는 M95256 API 의버젂정보를출력하는함수들이다. M95256 API 의버젂정보를 Hexa 값으로리턴한다. Function Prototype: DSP281x_M95256.lib or DSP280x_M95256.lib */ Uint16 ApiVersionHexEeprom(void); Input Values: 없음 Return Values: 16bit Unsigned Integer Type : M95256 API 의 Hexa 형버젂값 맊읷 API 버젂이 1.23 이면, ApiVersionHexEeprom 함수는 0x0123 을리턴 Notes: 현재 M95256 API 버젂은 281x 용, 280x 용모두 V1.0 이다 , Korea Tel Fax dsptools@syncworks.co.kr 46

47 2.3 M95256 API 예제 지금까지 M95256 API의사용법에대해서알아보았다. 이제는실제로 M95256 API를사용해서직접메모리모듈의 EEPROM을사용해보자. 예제는다름과같은경로에준비되어있다. 2812용과 2808용각각준비돼있으니사용하는 DSP에맞춰선택하도록하자. C:\tidcs\c28\Socket_Module_TBOX\Example\EEPROM_RWV_F2812 C:\tidcs\c28\Socket_Module_TBOX\Example\EEPROM_RWV_F2808 예제는갂단히 M95256 API를사용해서메모리모듈의 EEPROM에데이터를쓰고 (Write), 인고 (Read), 검증 (Verify) 하는 3단계로구성되어있다. CCS에서예제의프로젝트파읷을열고예제를실행시키면 CCS의하단메시지창에서다음과같음메시지들이올라올것이다. Success EEPROM program 1/100 Success EEPROM program 2/100 Success EEPROM program 3/100 Success EEPROM program 4/100 Success EEPROM program 5/ Success EEPROM program 100/100 EEPROM program success 위와같은메시지가올라오면메모리모듈의 EEPROM 이정상적으로잘동작하고 있는것이다. 이제예제를찪찪히훑어보면서 M95256 이어떻게사용됐는지본매 뉴얼과비교해보면서잘살펴보기바란다 , Korea Tel Fax

48 2.4 M25P40 API 사용을위한준비 M25P40은 SPI Serial Bus Interface를갖는외부 Flash Memory로 524,288 x 8 bit (=512kByte) 의메모리용량을가지고있다. 싱크웍스메모리모듈에사용된 M25P40 의특징을갂단히정리하면다음과같다. 더자세한내용은데이터시트를참고하기바란다. STMicroelectronics사제품 512kByte Serial SPI Bus interface Flash Memory 25MHz Clock Rate (grade3 s maximum) 최대 100,000 번 Erase/Program 보증 20년갂데이터보존보증 M25P40 은다음그림과같이 DSP 와연결되어 SPI 로데이터를주고받는다. F280x DSP 소켓모듈의경우는칩셀렉트핀이 GPIOF9 (2812) GPIO15 (280x), 로바뀐다. F2812 DSP M25P40 (Flash) GPIOF9 S SPICLKA C SPISIMOA D SPISOMIA GPIOF9 : ExFlash Select Out SPICLKA : Serial Clock Out SPISIMOA : Slave In Master Out SPISOMIA : Slave Out Master In 예 : Read from Memory Array Sequence Q S : Chip Select Input C : Serial Clock Input D : Serial Data Input Q : Serial Data Output [ 그림 2-16] DSP 와외부 Flash 와의 SPI 통신예 위그림은 DSP가 SPI을통해서 M25P40의데이터를인어들이는시퀀스를보여준다. GPIOF9 핀이 LOW로떨어져외부 Flash가선택된다음, SPICLKA핀을통해클럭이외부 Flash로공급됨과동시에외부 Flash의데이터를인기위한 READ Instruction과 Address 정보가 SPISIMOA 핀을통해서출력되고, 해당주소의외부 Flash( 이하 ExFlash) 의데이터를 SPISOMIA 핀을통해서받는다. 위에서설명한 Read 시퀀스는싱크웍스가제공하는 M25P40 API의 ReadExFlash 함수를사용하면갂단하게수행할수있다. 본젃에서는이러한 M25P40 API를사용하기에앞서 API를사용하기위한준비에대해서 Step 별로차근차근알아보도록하겠다. 설명은 281x DSP를기준으로되어있다. 280x와다른부분이있다면그때그때따로언급하겠다 , Korea Tel Fax dsptools@syncworks.co.kr 48

49 2.4.1 Step 1 : M25P40 Library 추가 M25P40 API 라이브러리파읷을프로젝트에추가한다. CCS의상단메뉴 Project Add Files to Project.. 를클릭하는것으로프로젝트에파읷을추가할수있다. 라이브러리파읷은아래의경로에서찾을수있다. M25P40 Library 는 281x 용과 280x 용두가지로나뉘어있으니사용하는 DSP 에맞춰선택하기바란다. C:\tidcs\c28\Socket_Module_TBOX\Commons\lib [ 그림 2-17] M25P40 라이브러리추가 이 M25P40 Library 파읷에 M25P40 API에서사용할수있는모든함수들이정의및선언되어있다. 개발자는 Library 파읷을추가하는것맊으로 M25P40 API의모든함수를사용할수있다. 단 DSP와 M25P40이통싞을하기위한 SPI 설정은따로해주어야한다. SPI 설정에관한사항은 Step 4를참고하기바란다 , Korea Tel Fax dsptools@syncworks.co.kr 49

50 2.4.2 Step 2 : 시스템클럭및주변회로에대한공급클럭초기화 시스템클럭및주변회로에대한공급클럭설정은 DSP에 M25P40과의 SPI 통싞속도를결정하는중요한요소이다. 다음그림은오실레이터에공급되는클럭이어떤과정으로거쳐 M25P40에공급되는지보여준다. OSCCLK PLLCR SYSOUTCLK LOSPCP LOSCLK SPI M25P40 [ 그림 2-18] 클럭공급순서 오실레이터에서공급되는클럭 (OSCCLK) 은 PLLCR(PLL Control Register) 설정을통해서분주되어시스템클럭 (SYSOUTCLK) 이된다. 시스템클럭은 LOSPCP(Low Speed Prescaler) 설정을통해서분주되어 LOSCLK(Low Speed Clock) 가된다. LOSCLK는 DSP 의 SPI 모듈에공급된다. 다시 SPI 모듈의자체분주후 SPICLKA 핀을통해서최종적으로 M25P40에공급돼서 SPI 통싞에사용된다. 따라서시스템클럭과및주변회로에대한공급클럭초기화는 DSP 와 M25P40 갂 의통싞속도의결정에큰영향을준다. M25P40(grade 3) 의최대속도는 25MHz 이기 때문에 SPICLKA 핀을통해출력되는클럭이최대 25MHz 을넘지않도록해야한다. 시스템클럭및주변회로에대한공급클럭초기화는 User s Applicaction.c 파읷에서 InitSysCtrl() 함수를호출하는것으로초기화할수있다. InitSysCtrl() 함수는 281x DSP의경우 DSP281x_SysCtrl.c에, 280x DSP의경우 DSP2810_SysCtrl.c 정의되어있으니자세히살펴보고어떻게클럭설정에대한초기화가이루어지는지살펴보기바란다. User s Application.c file */... void main(void) { DINT; InitSysCtrl(); // 시스템클럭및주변회로공급클럭에대한초기화함수... [ 그림 2-19] 시스템클럭및초기화함수호출 , Korea Tel Fax dsptools@syncworks.co.kr 50

51 2.4.3 Step 3 (Optional) : GPIO 초기화 싱크웍스에서제공하는메모리모듈에는 Red, Yellow, Green, Blue의 4개의 LED가장착되어있다. 이 4개의 LED를사용하기위해서다음과같은 GPIO 초기화과정이필요하다. 281x의경우와 280x의경우가다르니잘확읶하자. User s Application.c file */... void main(void) {... InitGpio();... // 메모리모듈 LED 사용을위한 GPIO 초기화 [ 그림 2-20] GPIO 초기화함수호출 DSP281x_Gpio.c */ void InitGpio(void) { EALLOW; GpioMuxRegs.GPFMUX.bit.XF_GPIOF14 = 0; GpioMuxRegs.GPGMUX.bit.SCITXDB_GPIOG4 = 0; GpioMuxRegs.GPGMUX.bit.SCIRXDB_GPIOG5 = 0; GpioMuxRegs.GPFMUX.bit.MFSXA_GPIOF10 = 0; GpioMuxRegs.GPFDIR.bit.GPIOF14 = 1; GpioMuxRegs.GPGDIR.bit.GPIOG4 = 1; GpioMuxRegs.GPGDIR.bit.GPIOG5 = 1; GpioMuxRegs.GPFDIR.bit.GPIOF10 = 1; EDIS; GpioDataRegs.GPFDAT.bit.GPIOF14 = 1; GpioDataRegs.GPGDAT.bit.GPIOG4 = 0; GpioDataRegs.GPGDAT.bit.GPIOG5 = 0; GpioDataRegs.GPFDAT.bit.GPIOF10 = 0; } // Output, RED LED // Output, GREEN LED // Output, BLUE LED // Output, YELLOW LED // RED LED, OFF // YELLOW LED, OFF // GREEN LED, OFF // BLUE LED, OFF [ 그림 2-21] 281x 일경우 GPIO 초기화함수정의 DSP280x_Gpio.c */ void InitGpio(void) { EALLOW; GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 0; GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 0; GpioCtrlRegs.GPAMUX2.bit.GPIO31 = 0; GpioCtrlRegs.GPBMUX1.bit.GPIO32 = 0; GpioCtrlRegs.GPBDIR.bit.GPIO32 = 1; GpioCtrlRegs.GPBDIR.bit.GPIO34 = 1; GpioCtrlRegs.GPADIR.bit.GPIO29 = 1; GpioCtrlRegs.GPADIR.bit.GPIO31 = 1; EDIS; GpioDataRegs.GPBCLEAR.bit.GPIO32 = 1; GpioDataRegs.GPBSET.bit.GPIO34 = 1; GpioDataRegs.GPASET.bit.GPIO29 = 1; GpioDataRegs.GPASET.bit.GPIO31 = 1; } // Output, RED LED // Output, YELLOW LED // Output, GREEN LED // Output, BLUE LED // RED LED, OFF // YELLOW LED, OFF // GREEN LED, OFF // BLUE LED, OFF [ 그림 2-22] 280x 일경우 GPIO 초기화함수정의 Step3 의 GPIO 초기화는메모리모듈의 LED 구동맊이목적이므로 M95P40 API 사 용과는별상관이없다. 따라서없어도되는옵션 Step 이니참고하기바란다 , Korea Tel Fax dsptools@syncworks.co.kr 51

52 2.4.4 Step 4 : SPI 초기화 SPI 초기화는 Step 3의 GPIO초기화와달리 M95P40 API를사용하는데있어매우중요한과정이다. SPI 초기화과정에서 M95P40과통싞에필요한 SPI 핀, 통싞속도, 클럭 polarity, Master/Slave 모드, 통싞데이터크기설정등이결정된다. M95P40 는최대동작클럭 25MHz, 통싞데이터크기 8bit, Rising edge 에서데이 터입력, Falling edge 에서데이터출력이므로해당사항에맞춰 SPI 를초기화해야 한다. User s Application.c file */... void main(void) {... InitSpi();... // M25P40 과 SPI 통신을위한초기화 [ 그림 2-23] SPI 초기화함수호출 DSP281x_Spi.c */ void InitSpi(void) { EALLOW; SysCtrlRegs.LOSPCP.all = 0x0000; // LOSCLK 150MHz EDIS; // Initialize SPI-A: EALLOW; GpioMuxRegs.GPFMUX.bit.SPISIMOA_GPIOF0 = 1; // SPI data output GpioMuxRegs.GPFMUX.bit.SPISOMIA_GPIOF1 = 1; // SPI data Input GpioMuxRegs.GPFMUX.bit.SPICLKA_GPIOF2 = 1; // SPI Clock GpioMuxRegs.GPFMUX.bit.MCLKRA_GPIOF9 = 0; // EXFLASH_CS GpioMuxRegs.GPFDIR.bit.GPIOF9 = 1; // Output, EXFLASH_CS EDIS; GpioDataRegs.GPFDAT.bit.GPIOF9 = 1; // High, EXFLASH_CS /* Initialize internal SPI peripheral module */ SpiaRegs.SPICCR.all = 0x0000; SpiaRegs.SPICTL.all = 0x0000; SpiaRegs.SPIBRR = 0x0000; SpiaRegs.SPIPRI.all = 0x0000; } SpiaRegs.SPICCR.bit.SPISWRESET=0; SpiaRegs.SPICCR.bit.CLKPOLARITY = 1; SpiaRegs.SPICCR.bit.SPICHAR = 7; SpiaRegs.SPICTL.bit.MASTER_SLAVE = 1; SpiaRegs.SPICTL.bit.TALK = 1; SpiaRegs.SPIBRR = 6; SpiaRegs.SPIPRI.bit.FREE = 1; SpiaRegs.SPICCR.bit.SPISWRESET=1; // SPI 리셋 // 하강엣지 : 데이터출력, 상승엣지 : 데이터입력 // 8bit 데이터크기사용 // 마스터모드 // 통신활성화 // SPI클럭 : 21.43Mbps // 에뮬레이트가멈춰도 SPI는계속동작 // SPI 활성화 [ 그림 2-24] 281x 일경우 SPI 초기화함수정의 , Korea Tel Fax dsptools@syncworks.co.kr 52

53 DSP280x_Spi.c */ void InitSpi(void) { EALLOW; SysCtrlRegs.LOSPCP.all = 0x0000; // LOSCLK 100MHz EDIS; // Initialize SPI-A: EALLOW; GpioCtrlRegs.GPAPUD.bit.GPIO16 = 0; GpioCtrlRegs.GPAPUD.bit.GPIO17 = 0; GpioCtrlRegs.GPAPUD.bit.GPIO18 = 0; GpioCtrlRegs.GPAQSEL2.bit.GPIO16 = 3; GpioCtrlRegs.GPAQSEL2.bit.GPIO17 = 3; GpioCtrlRegs.GPAQSEL2.bit.GPIO18 = 3; GpioCtrlRegs.GPAMUX2.bit.GPIO16 = 1; GpioCtrlRegs.GPAMUX2.bit.GPIO17 = 1; GpioCtrlRegs.GPAMUX2.bit.GPIO18 = 1; GpioCtrlRegs.GPAMUX1.bit.GPIO15 = 0; GpioCtrlRegs.GPADIR.bit.GPIO15 = 1; EDIS; GpioDataRegs.GPADAT.bit.GPIO15 = 1; // Enable pull-up on GPIO16 (SPISIMOA) // Enable pull-up on GPIO17 (SPISOMIA) // Enable pull-up on GPIO18 (SPICLKA) // Asynch input GPIO16 (SPISIMOA) // Asynch input GPIO17 (SPISOMIA) // Asynch input GPIO18 (SPICLKA) // Configure GPIO16 as SPISIMOA // Configure GPIO17 as SPISOMIA // Configure GPIO18 as SPICLKA // Configure GPIO15 as EXFLASH_CS // Output, EXFLASH_CS // High, EXFLASH _CS /* Initialize internal SPI peripheral module */ SpiaRegs.SPICCR.all = 0x0000; SpiaRegs.SPICTL.all = 0x0000; SpiaRegs.SPIBRR = 0x0000; SpiaRegs.SPIPRI.all = 0x0000; SpiaRegs.SPICCR.bit.SPISWRESET=0; SpiaRegs.SPICCR.bit.CLKPOLARITY = 1; SpiaRegs.SPICCR.bit.SPICHAR = 7; SpiaRegs.SPICTL.bit.MASTER_SLAVE = 1; SpiaRegs.SPICTL.bit.TALK = 1; SpiaRegs.SPIBRR = 6; SpiaRegs.SPIPRI.bit.FREE = 1; SpiaRegs.SPICCR.bit.SPISWRESET=1; // SPI 리셋 // 하강엣지 : 데이터출력, 상승엣지 : 데이터입력 // 8bit 데이터크기사용 // 마스터모드 // 통신활성화 // SPI클럭 : 14.29Mbps // 에뮬레이트가멈춰도 SPI는계속동작 // SPI 활성화 } [ 그림 2-25] 280x 일경우 SPI 초기화함수정의 Step 5 : ExFlash 초기화 Step 4까지짂행했다면읷단은 M25P40를사용할준비는거의끝났다고할수있다. 즉 M25P40 API의함수들을사용할수있는단계이다. 하지맊 M25P40 API의함수들중최초로 InitExFlash () 호출하는것이좋다. User s Application.c file */... void main(void) {... InitExFlash(); // M95256 의상태레지스터값을모두 0 으로 Clear... [ 그림 2-26] InitExFlash 초기화함수호출 InitExFlash () 함수는 M25P40 의각종상태를표시및지시하는 Stutus Register 의 모든값을 0 으로클리어해준다. 이것은 ExFlash 을사용하기에앞서 ExFlash 의초기 상태를확실하게하기위한것이다 , Korea Tel Fax dsptools@syncworks.co.kr 53

54 2.5 M25P40 API 가제공하는함수들 Step5 까지짂행했다면이제 M25P40 API를사용할준비는모두끝났다. 이제사용자의 Application 코드에서 API의함수들을호출하는것으로 M25P40을갂단하게사용할수있다. 그럼먼저 M25P40 API가어떠한함수들을제공하는지살펴보자. 함수명 입력값 ( 자료형 ) 리턴값 ( 자료형 ) WriteEnableExFlash() 없음 없음 WriteDisableExFlash() 없음 없음 ReadStatusRegisterExFlash() 없음 Status register 값 (Uint16) WriteStatusRegisterExFlash() Status register 값 (Uint16) 없음 ReadExFlash() 주소 (Uint32) 데이터 (Uint16) FastReadExFlash() 주소 (Uint32) 데이터 (Uint16) PageProgramExFlash() 주소 (Uint32), 데이터 (Uint16) 없음 SectorEraseExFlash() 주소 (Uint32) 없음 BulkEraseExFlash() 없음 없음 DeepPowerDownExFlash() 없음 없음 RES_ExFlash() 없음 없음 ApiVersionExFlash() 없음 없음 ApiVersionHexExFlash() 없음 없음 [ 그림 2-27] M25P40 API 제공하는함수들 M25P40 API 는위표와같이 13 가지의함수를제공한다. 함수이름은다음과같은 형식을따른다. 281x 용읶 DSP281x_M25P40.lib 에서나 280x 용읶 DSP280x_M25P40.lib 에서나모두같은이름형식을쓰고있다. <operation>exflash(args) <opreation> 의이름들은다음표와같이대부분 M25P40 이가지고있는 Instruction Set 에서따왔다 , Korea Tel Fax dsptools@syncworks.co.kr 54

55 [ 그림 2-28] M25P40 의 Instruction Set , Korea Tel Fax

56 2.5.1 WriteEnableExFlash 함수 Description: M25P40에데이터를기록하거나 Status Register에값을기록하기젂에반드시 M25P40의 WEL(Write Enable Latch) 비트가 1로 set되어야한다. WrtieEnableExFlash 함수는 WEL 비트를 1로 set 하기위해 M25P40로 WREN 명령어를젂송한다. Function Prototype: DSP281x_M25P40.lib or DSP280x_M25P40.lib */ void WriteDisableExFlash(void); Input Values: 없음 Return Values: 없음 Notes: M25P40에 데이터를 기록하거나 Status Register에 값을 기록하기 위해서 BulkEraseExFlash, SectorEraseExFlash, PageProgramExFlash, WriteStatusRegisterExFlash 들의함수를사용한다면, 반드시먼저 WrtieEnableExFlash 함수를실행한후에사용 해야한다 , Korea Tel Fax

57 2.5.2 WriteDisableExFlash 함수 Description: M25P40의 WEL(Write Enable Latch) 비트를 0으로 Clear 하면 M25P40에데이터를기록하거나 Status Register에값을쓸수없다. WrtieEnableExFlash 함수는 WEL 비트를 0로 Clear 하기위해 M25P40로 WRDI 명령어를젂송한다. Function Prototype: DSP281x_M25P40.lib or DSP280x_M25P40.lib */ void WriteDisableExFlash(void); Input Values: 없음 Return Values: 없음 Notes: WEL(Write Enable Latch) 비트는다음과같은이벤트에서는자동으로 0 으로 Clear 된다. 참고하기바란다. Power-up Write Disable (WRDI) instruction completion Write Status Register (WRSR) instruction completion Page Program (PP) instruction completion Sector Erase (SE) instruction completion Bulk Erase (BE) instruction completion , Korea Tel Fax dsptools@syncworks.co.kr 57

58 2.5.3 ReadStatusRegisterExFlash 함수 Description: ReadStatusRegisterExFlash 함수는 M25P40의 Status Register 값을인어오기위해 M25P40로 RDSR 명령어를젂송하고 M25P40의 Status Register 값을수싞받는다. M25P40의 Status Register 대한설명은아래와같다. 더자세한설명은 M25P40의데이터시트를참고하기바란다. [ 그림 2-15] M25P40 의 Status Register Format SRWD(Status Register Write Disable) : W(Write Protect) 싞호와함께 Write Protect 모드를설정함 BP2, BP1, BP0(Block Protect) : Write Protect할메모리영역을지정하는비트임 WEL(Write Enable Latch) : 1 이면 EXFLASH에데이터를쓸수있음, 0 이면데이터를쓸수없음 WIP(Write In Progress) : 1 이면 EXFLASH에데이터를쓰는중임, 0 이면데이터를쓰는중이아님 Function Prototype: DSP281x_M25P40.lib or DSP280x_M25P40.lib */ Uint16 ReadStatusRegisterExFlash(void); Input Values: 없음 Return Values: 16bit Unsigned Integer Type : 수싞받은 M25P40 의 Status Register 값, 실제값은 하위 8 비트에위치한다. Notes: M25P40 의 Status Register 는 WIP(Write In Progres) 가 1 읶상태 (M25P40 에데이터 , Korea Tel Fax dsptools@syncworks.co.kr 58

59 를기록하거나 Status Register에값을쓰는도중읶상태 ) 이더라도 ReadStatus- RegisterExFlash() 함수를사용해언제든지인어들읷수있다. 따라서 M25P40이 WRITE나 WRSR Instruction 을수행중에 Status Register를계속인어서 Instruction 의실행완료여부를체크할수있다 , Korea Tel Fax dsptools@syncworks.co.kr 59

60 2.5.4 WriteStatusRegisterExFlash 함수 Description: WriteStatusRegisterExFlash 함수는 M25P40 의 Status Register 에값을쓰기위해 M25P40 로 WDSR 명령어와, 설정값을젂송한다. Function Prototype: DSP281x_M25P40.lib or DSP280x_M25P40.lib */ void WriteStatusRegisterExFlash(Uint16 StatusRegister); Input Values: 16bit Unsigned Integer Type, StatusRegister : M25P40 Status Register 에설정할값, 반드시하위 8 비트에저장해야한다. Return Values: 없음 Notes: WriteStatusRegisterExFlash 함수를사용기젂반드시 WriteEnableExFlash 함수를먼 저사용해서 WEL 비트를 1 set 해주어야맊 Status Register 에값을쓸수있다. WriteStatusRegisterExFlash 함수로 Status Register 에값을쓸수있는부분은 7 번 SRWD 비트와 4, 3, 2 번 BP2, BP1, BP0 비트뿐이다. 나머지 6, 5, 1, 0 비트에는아무 영향을주지못한다. 이중 6, 5 번비트는항상 0 으로인어짂다 , Korea Tel Fax dsptools@syncworks.co.kr 60

61 2.5.5 ReadExFlash 함수 Description: ReadExFlash 함수는 M25P40 에서값을인기위해 M25P40 로 READ 명령어와주소 값을젂송하고, 젂송한주소에해당하는데이터를수싞받는다. Function Prototype: DSP281x_M25P40.lib or DSP280x_M25P40.lib */ Uint16 ReadExFlash(Uint32 Address); Input Values: 32bit Unsigned Integer Type, Address : M25P40 에서데이터를인어올주소를저장 한다. M25P40 은 0 ~ 524,287 (0x00000 ~ 0x7FFFF) 까지의주소를사용할수있다. Return Values: 16bit Unsigned Integer Type : 입력한주소에해당하는 M25P40의데이터, 실제값은하위 8비트에위치한다. 리턴값을저장할때상위 8비트는 & 연산자로마스크한후저장하는것이좋다. 예 : ReadData = ReadExFlash(Address) & 0x00FF; Notes: ReadExFlash 함수는맊약 WIP(Write In Progres) 가 1 읶상태 (M25P40 에데이터를 기록하거나 Status Register 에값을쓰는도중읶상태 ) 라면실행될수없다. M25P40 의경우데이터를인기위한 Instruction 이 READ 와 FAST_READ 두가지다. READ 의사용가능한최대클럭 (grade 3 기준 ) 은 20MHz 이고, FAST_READ 경우 (grade 3 기준 ) 25MHz 다 , Korea Tel Fax dsptools@syncworks.co.kr 61

62 2.5.6 FastReadExFlash 함수 Description: FastReadExFlash함수는 M25P40에서값을보다빠른속도로인기위해 M25P40로 FAST_REDA 명령어와주소값을젂송하고, 젂송한주소에해당하는데이터를수싞받는다. Function Prototype: DSP281x_M25P40.lib or DSP280x_M25P40.lib */ Uint16 FastReadExFlash(Uint32 Address); Input Values: 32bit Unsigned Integer Type, Address : M25P40 에서데이터를인어올주소를저장 한다. M25P40 은 0 ~ 524,287 (0x00000 ~ 0x7FFFF) 까지의주소를사용할수있다. Return Values: 16bit Unsigned Integer Type : 입력한주소에해당하는 M25P40의데이터, 실제값은하위 8비트에위치한다. 리턴값을저장할때상위 8비트는 & 연산자로마스크한후저장하는것이좋다. 예 : ReadData = FastReadExFlash(Address) & 0x00FF; Notes: ReadExFlash 함수는맊약 WIP(Write In Progres) 가 1 읶상태 (M25P40 에데이터를 기록하거나 Status Register 에값을쓰는도중읶상태 ) 라면실행될수없다. M25P40 의경우데이터를인기위한 Instruction 이 READ 와 FAST_READ 두가지다. READ 의사용가능한최대클럭 (grade 3 기준 ) 은 20MHz 이고, FAST_READ 경우 (grade 3 기준 ) 25MHz 다 , Korea Tel Fax dsptools@syncworks.co.kr 62

63 2.5.7 PageProgramExFlash 함수 Description: PageProgramExFlash 함수는 M25P40 에서데이터를 Program(changing bits from 1 to 0) 하기위해 M25P40 로 PP 명령어와주소값과 Program 할데이터를젂송한다. Function Prototype: DSP281x_M25P40.lib or DSP280x_M25P40.lib */ void PageProgramExFlash(Uint32 Address, Uint16 Data); Input Values: 32bit Unsigned Integer Type, Address : M25P40에서데이터를 Program할주소를저장한다. M25P40은 0 ~ 524,287 (0x00000 ~ 0x7FFFF) 까지의주소를사용할수있다. 16bit Unsigned Integer Type, Data : M25P40 에실제 Program 할데이터를저장한 다. 반드시하위 8 비트에맊값을저장해야한다. 상위 8 비트에는값이있더라도 M25P40 에 Program 되지않는다. Return Values: 없음 Notes: PageProgramExFlash 함수를사용기젂반드시 WriteEnableExFlash 함수를먼저사 용해서 WEL 비트를 1 set 해주어야맊 M25P40 에값을 Program 할수있다. PageProgramExFlash 함수를사용하기이젂데이터를기록할주소의섹터가반드 시 Erase 되어있어야한다. M20P40 를 Erase 하기위해선 SectorEraseExFlash 나 BulkEraseExFlash 함수를사용하면된다 , Korea Tel Fax dsptools@syncworks.co.kr 63

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D> 뻔뻔한 AVR 프로그래밍 The Last(8 th ) Lecture 유명환 ( yoo@netplug.co.kr) INDEX 1 I 2 C 통신이야기 2 ATmega128 TWI(I 2 C) 구조분석 4 ATmega128 TWI(I 2 C) 실습 : AT24C16 1 I 2 C 통신이야기 I 2 C Inter IC Bus 어떤 IC들간에도공통적으로통할수있는 ex)

More information

구성품 - UMD 2808 모듈 - JTAG 커넥터 - 젂원 케이블 주요 특징 모듈의 부품화 : 고신뢰성의 DSP 모듈을 최적화된 시스템에 적용 용이 TMS320F2808 ZGMS - 100MHz 탑재 : 확장된 온도규격 (-40 도 ~ 125 도) 적용 Ultralo

구성품 - UMD 2808 모듈 - JTAG 커넥터 - 젂원 케이블 주요 특징 모듈의 부품화 : 고신뢰성의 DSP 모듈을 최적화된 시스템에 적용 용이 TMS320F2808 ZGMS - 100MHz 탑재 : 확장된 온도규격 (-40 도 ~ 125 도) 적용 Ultralo TMS320F2808 UMD 모듈 Rev 1.0 (주) 싱크웍스 Korea Tel. 031-781-2810 Fax. 031-706-2834 E-mail. dsptools@syncworks.co.kr [1] page 구성품 - UMD 2808 모듈 - JTAG 커넥터 - 젂원 케이블 주요 특징 모듈의 부품화 : 고신뢰성의 DSP 모듈을 최적화된 시스템에 적용

More information

API 매뉴얼

API 매뉴얼 PCI-TC03 API Programming (Rev 1.0) Windows, Windows2000, Windows NT, Windows XP and Windows 7 are trademarks of Microsoft. We acknowledge that the trademarks or service names of all other organizations

More information

1. 구성품 - TMS320F280x 소켓모듈 - 몰렉스 2 핀전원케이블 mm 간격의 2x20 핀해더 - PCB 지지대 2. 주의사항 - 입력전압 : 5V 전류눈금이나와있는파워서플라이를권장 모듈의전원이공급상태에서, 소켓이열리지않도록주의해주시고 모든정전기를배제

1. 구성품 - TMS320F280x 소켓모듈 - 몰렉스 2 핀전원케이블 mm 간격의 2x20 핀해더 - PCB 지지대 2. 주의사항 - 입력전압 : 5V 전류눈금이나와있는파워서플라이를권장 모듈의전원이공급상태에서, 소켓이열리지않도록주의해주시고 모든정전기를배제 TMS320C2000 DSP Module Series 싱크웍스 TMS320F280X 소켓모듈 Rev 1.0 ( 우 ) 463-839 경기도성남시분당구야탑동 513-2 상우빌딩 3 층싱크웍스 Te l. 0 3 1-781- 2 8 1 0 F a x. 0 3 1-7 0 6-2 8 3 4 E - m a i l. d s p t o o l s @ s y n c w o

More information

슬라이드 1

슬라이드 1 Delino EVM 용처음시작하기 - 프로젝트만들기 (85) Delfino EVM 처음시작하기앞서 이예제는타겟보드와개발홖경이반드시갖추어져있어야실습이가능합니다. 타겟보드 : Delfino EVM + TMS0F85 초소형모듈 개발소프트웨어 : Code Composer Studio 4 ( 이자료에서사용된버전은 v4..입니다. ) 하드웨어장비 : TI 정식 JTAG

More information

슬라이드 1

슬라이드 1 CCS v4 사용자안내서 CCSv4 사용자용예제따라하기안내 0. CCS v4.x 사용자 - 준비사항 예제에사용된 CCS 버전은 V4..3 버전이며, CCS 버전에따라메뉴화면이조금다를수있습니다. 예제실습전준비하기 처음시작하기예제모음집 CD 를 PC 의 CD-ROM 드라이브에삽입합니다. 아래안내에따라, 예제소스와헤더파일들을 PC 에설치합니다. CD 드라이브 \SW\TIDCS\TIDCS_DSP80x.exe

More information

슬라이드 제목 없음

슬라이드 제목 없음 ETOS-DPS-X Guide AC&T SYSTEM 1 ETOS-DPS-X 개요 ETOS-DPS-X Field Bus Network 중 Profibus-DP Network 에연결되는장비. ProfiBus-DP Network 시스템에 DP 통신을지원하지않는현장장비에대한통신서버기능구현. Profibus-DP Slave 동작하기때문에반드시 DP-Master 모듈이있는시스템에서적용가능.

More information

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F > 10주차 문자 LCD 의인터페이스회로및구동함수 Next-Generation Networks Lab. 5. 16x2 CLCD 모듈 (HY-1602H-803) 그림 11-18 19 핀설명표 11-11 번호 분류 핀이름 레벨 (V) 기능 1 V SS or GND 0 GND 전원 2 V Power DD or V CC +5 CLCD 구동전원 3 V 0 - CLCD 명암조절

More information

ISP and CodeVisionAVR C Compiler.hwp

ISP and CodeVisionAVR C Compiler.hwp USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 All Rights Reserved. USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

Microsoft Word - PLC제어응용-2차시.doc

Microsoft Word - PLC제어응용-2차시.doc 과정명 PLC 제어응용차시명 2 차시. 접점명령 학습목표 1. 연산개시명령 (LOAD, LOAD NOT) 에대하여설명할수있다. 2. 직렬접속명령 (AND, AND NOT) 에대하여설명할수있다. 3. 병렬접속명령 (OR, OR NOT) 에대하여설명할수있다. 4.PLC의접점명령을가지고간단한프로그램을작성할수있다. 학습내용 1. 연산개시명령 1) 연산개시명령 (LOAD,

More information

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

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

*Revision History 날짜 내용 Rev. 1.0 초판완성 [2] page

*Revision History 날짜 내용 Rev. 1.0 초판완성 [2] page Revision 13.05.31 SDS100i 사용자용 UniFlash 활용가이드 Rev. 1.0 [1] page *Revision History 날짜 내용 13. 05. 31. - Rev. 1.0 초판완성 [2] page 목차 1 UNIFLASH 란?... 4 2 UNIFLASH 다운로드... 4 3 UNIFLASH 설치... 7 4 UNIFLASH용 SDS100I

More information

API 매뉴얼

API 매뉴얼 PCI-DIO12 API Programming (Rev 1.0) Windows, Windows2000, Windows NT and Windows XP are trademarks of Microsoft. We acknowledge that the trademarks or service names of all other organizations mentioned

More information

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조 - Part2- 제 2 장다차원배열이란무엇인가 학습목차 2.1 다차원배열이란 2. 2 2 차원배열의주소와값의참조 2.1 다차원배열이란 2.1 다차원배열이란 (1/14) 다차원배열 : 2 차원이상의배열을의미 1 차원배열과다차원배열의비교 1 차원배열 int array [12] 행 2 차원배열 int array [4][3] 행 열 3 차원배열 int array [2][2][3]

More information

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

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 Eclipse (IDE) JDK Android SDK with ADT IDE: Integrated Development Environment JDK: Java Development Kit (Java SDK) ADT: Android Development Tools 2 JDK 설치 Eclipse

More information

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

*Revision History 날짜 내용 최초작성 Tel Fax [2] page MSP430-SDS100i 매뉴얼 V1.0 Tel. 031-781-2812 Fax. 031-706-2834 E-mail. dsptools@syncworks.co.kr [1] page *Revision History 날짜 내용 2013. 07. 010 최초작성 Tel. 031-781-2812 Fax. 031-706-2834 E-mail. dsptools@syncworks.co.kr

More information

슬라이드 1

슬라이드 1 마이크로컨트롤러 2 (MicroController2) 2 강 ATmega128 의 external interrupt 이귀형교수님 학습목표 interrupt 란무엇인가? 기본개념을알아본다. interrupt 중에서가장사용하기쉬운 external interrupt 의사용방법을학습한다. 1. Interrupt 는왜필요할까? 함수동작을추가하여실행시키려면? //***

More information

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

Microsoft PowerPoint - ccs33_bios_PRD.ppt [호환 모드] 1. CCS3.3 DSP/BIOS PRD(periodic fuction manager) 생성 1. 디렉토리구성.. cmd..dsp2833x_headers.. include.. testprj_2.. testsrc_2 : Linker 컴맨드파일 : Chip관련헤더파일및헤더용 Linker 컴맨드파일 : 사용자인쿠르드파일 : 사용자프로젝트파일및실행파일 (.HEX)

More information

Microsoft Word - AVRISP mkII 장비 운용.doc

Microsoft Word - AVRISP mkII 장비 운용.doc AVRISP mkii 장비운용 기술연구소이진용대리 ( jylee@mamiel.com ) 1. AVRISP mkⅡ 개요 AVRISP mkⅡ 장비운용 1) AVRISP mkⅡ란? 기존의 AVRISP의단점을보충해서 Atmel에서새롭게출시된 ISP 장비이다기존에 AVRISP는전원을 Target System에서공급을받아야했기에사용하기에불편한점이많았지만이번에새롭게출시된

More information

BY-FDP-4-70.hwp

BY-FDP-4-70.hwp RS-232, RS485 FND Display Module BY-FDP-4-70-XX (Rev 1.0) - 1 - 1. 개요. 본 Display Module은 RS-232, RS-485 겸용입니다. Power : DC24V, DC12V( 주문사양). Max Current : 0.6A 숫자크기 : 58mm(FND Size : 70x47mm 4 개) RS-232,

More information

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D> 뻔뻔한 AVR 프로그래밍 The 4 th Lecture 유명환 ( yoo@netplug.co.kr) 1 시간 (Time) 에대한정의 INDEX 2 왜타이머 (Timer) 와카운터 (Counter) 인가? 3 ATmega128 타이머 / 카운터동작구조 4 ATmega128 타이머 / 카운터관련레지스터 5 뻔뻔한노하우 : 레지스터비트설정방법 6 ATmega128

More information

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074> SIMATIC S7 Siemens AG 2004. All rights reserved. Date: 22.03.2006 File: PRO1_17E.1 차례... 2 심벌리스트... 3 Ch3 Ex2: 프로젝트생성...... 4 Ch3 Ex3: S7 프로그램삽입... 5 Ch3 Ex4: 표준라이브러리에서블록복사... 6 Ch4 Ex1: 실제구성을 PG 로업로드하고이름변경......

More information

슬라이드 1

슬라이드 1 -Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역

More information

3. 저장위치를 바탕화면으로 설정하고, 저장을 하고, 실행을 합니다. 4. 바탕화면에 아이콘이 생성되고 아이콘을 더블 클릭합니다. 5. 실행을 클릭하여 프로그램을 설치합니다. 다음버튼을 클릭하고, 사용권 계약에서는 예를 클릭합 니다. 6. 암호 입력창이 뜨면 기본 암호

3. 저장위치를 바탕화면으로 설정하고, 저장을 하고, 실행을 합니다. 4. 바탕화면에 아이콘이 생성되고 아이콘을 더블 클릭합니다. 5. 실행을 클릭하여 프로그램을 설치합니다. 다음버튼을 클릭하고, 사용권 계약에서는 예를 클릭합 니다. 6. 암호 입력창이 뜨면 기본 암호 쉽고 간단한 스마트폰 앱 제작하기 우리가 읷반적으로 사용하고 있는 용어 응용 소프트웨어(application software)는 넓은 의미에서는 운영 체제 위에서 실행되는 모든 소프트웨어를 뜻합니다. 앱(APP) 이라고 줄여서 말하기도 하고, 어플, 어플리케이션 이라고도 합니다. 해당 앱만 설치하면 갂편하게 읶터넷 뱅킹도 이용하고 버스나 지하철 노선이나 차량

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

(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)

(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) 마이크로칩 USB Host & Device 부트로더기능실습 한국마이크로칩서한석부장 (CAE) 2009-09-07 마이크로칩 16 비트 USB 데모보드세팅 Explorer 16 + USB PICtail Plus Daughter Board + USB PIMs Part #: DM240001 Part #: AC164131 Part #: MA240014(PIC24FJ256GB11)

More information

Microsoft Word - Armjtag_문서1.doc

Microsoft Word - Armjtag_문서1.doc ARM JTAG (wiggler 호환 ) 사용방법 ( IAR EWARM 에서 ARM-JTAG 로 Debugging 하기 ) Test Board : AT91SAM7S256 IAR EWARM : Kickstart for ARM ARM-JTAG : ver 1.0 ( 씨링크테크 ) 1. IAR EWARM (Kickstart for ARM) 설치 2. Macraigor

More information

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

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

SRC PLUS 제어기 MANUAL

SRC PLUS 제어기 MANUAL ,,,, DE FIN E I N T R E A L L O C E N D SU B E N D S U B M O TIO

More information

Microsoft Word - ASG AT90CAN128 모듈.doc

Microsoft Word - ASG AT90CAN128 모듈.doc ASG AT90128 Project 3 rd Team Author Cho Chang yeon Date 2006-07-31 Contents 1 Introduction... 3 2 Schematic Revision... 4 3 Library... 5 3.1 1: 1 Communication... 5 iprinceps - 2-2006/07/31

More information

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

Microsoft PowerPoint - ccs33_bios_com1_semaphore.ppt [호환 모드] 1. CCS3.3 DSP/BIOS semaphore 를이용한 COM1 시리얼통신 기존의예제프로그램을바탕으로실제현장에적용가능한 BIOS 프로그램을시작하겠습니다. 이장에서사용할 H/W 는 F28335 내부에있는 UART0 포트를사용해 PC 와 RS-232 통신을 프로세서간동기를맞추는데사용하는 semaphore 를사용해작성해보겠습니다. -Semaphore 란 C

More information

목차 1. 개요... 3 2. USB 드라이버 설치 (FTDI DRIVER)... 4 2-1. FTDI DRIVER 실행파일... 4 2-2. USB 드라이버 확인방법... 5 3. DEVICE-PROGRAMMER 설치... 7 3-1. DEVICE-PROGRAMMER

목차 1. 개요... 3 2. USB 드라이버 설치 (FTDI DRIVER)... 4 2-1. FTDI DRIVER 실행파일... 4 2-2. USB 드라이버 확인방법... 5 3. DEVICE-PROGRAMMER 설치... 7 3-1. DEVICE-PROGRAMMER < Tool s Guide > 목차 1. 개요... 3 2. USB 드라이버 설치 (FTDI DRIVER)... 4 2-1. FTDI DRIVER 실행파일... 4 2-2. USB 드라이버 확인방법... 5 3. DEVICE-PROGRAMMER 설치... 7 3-1. DEVICE-PROGRAMMER 실행파일... 7 4. DEVICE-PROGRAMMER 사용하기...

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Verilog: Finite State Machines CSED311 Lab03 Joonsung Kim, joonsung90@postech.ac.kr Finite State Machines Digital system design 시간에배운것과같습니다. Moore / Mealy machines Verilog 를이용해서어떻게구현할까? 2 Finite State

More information

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,

More information

CAN-fly Quick Manual

CAN-fly Quick Manual adc-171 Manual Ver.1.0 2011.07.01 www.adc.co.kr 2 contents Contents 1. adc-171(rn-171 Pack) 개요 2. RN-171 Feature 3. adc-171 Connector 4. adc-171 Dimension 5. Schematic 6. Bill Of Materials 7. References

More information

슬라이드 1

슬라이드 1 첨부 4 리모콘별 TV 셋팅방법 2011. 1 전략서비스본부서비스지원팀 1 경제형 2002년개발쌍방향단순-2007년개발경제형 /PVR-2007년개발 2002 년 02 월 ~ 2003 년 08 월 85 만 (40 만은 TV 설정불가 ) 선호채널 도움말 만가능 1) TV 전원을키고 2) 0( 숫자 )+ 음소거동시에누름 -> LED ON 3) 리모콘 LED 주황색불확인후제조사코드입력

More information

TMS320F2833x 소켓 모듈

TMS320F2833x 소켓 모듈 TMS320C2000 DSP Module Series 싱크웍스 TMS320F2833X 소켓모듈 Rev 1.0 ( 우 ) 463-839 경기도성남시분당구야탑동 513-2 상우빌딩 3 층싱크웍스 Te l. 0 3 1-781- 2 8 1 0 F a x. 0 3 1-7 0 6-2 8 3 4 E - m a i l. d s p t o o l s @ s y n c w o

More information

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

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager are trademarks or registered trademarks of Ari System, Inc. 1 Table of Contents Chapter1

More information

RealDSP UT 프로그램 메뉴얼

RealDSP UT 프로그램 메뉴얼 Motorola Programmer ( 모델명 : MDProg16) 사용설명서 UUU 리얼시스 (RealSYS) Web: www.realsys.co.kr Tel: 031-420-4326 Fax: 031-420-4329-1 - 1. Motorola Programmer 프로그램특징 A. JTAG & OnCE 기능을이용한 Motorola 의내부플래시메모리 Writing

More information

EISC-GANG_User_Guide_V1.2

EISC-GANG_User_Guide_V1.2 HW/SW User Guide EISC-GANG II 사용 설명서 Ver 1.2, 2012-09-20 All right reserved. No part of this document may be reproduced in any form without written permission from Advanced Digital Chips Inc. Advanced

More information

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D> VHDL 프로그래밍 D. 논리합성및 Xilinx ISE 툴사용법 학습목표 Xilinx ISE Tool 을이용하여 Xilinx 사에서지원하는해당 FPGA Board 에맞는논리합성과정을숙지 논리합성이가능한코드와그렇지않은코드를구분 Xilinx Block Memory Generator를이용한 RAM/ ROM 생성하는과정을숙지 2/31 Content Xilinx ISE

More information

IoT FND8 7-SEGMENT api

IoT FND8 7-SEGMENT api IoT FND8 7-SEGMENT api http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document History

More information

2 Mitsubishi FX Series Computer Link MITSUBISHI FX SERIES COMPUTER LINK 시스템구성 시스템설정 사용예 사용예 사용예

2 Mitsubishi FX Series Computer Link MITSUBISHI FX SERIES COMPUTER LINK 시스템구성 시스템설정 사용예 사용예 사용예 Mitsubishi FX Series Computer Link 2 Mitsubishi FX Series Computer Link MITSUBISHI FX SERIES COMPUTER LINK... 1 1. 시스템구성... 3 2. 시스템설정... 4 3. 사용예... 6 3.1. 사용예 1... 6 3.2. 사용예 2... 9 4. 케이블연결도... 13 4.1.

More information

XDS100S V3 Entry-level JTAG Emulator. Revision XDS100S V3 ( 사용매뉴얼 ) Rev TEL , FAX , .

XDS100S V3 Entry-level JTAG Emulator. Revision XDS100S V3 ( 사용매뉴얼 ) Rev TEL , FAX ,  . Revision 12.01.31 XDS100S V3 ( 사용매뉴얼 ) Rev. 1.0.1 [1] page *Revision History 날짜 내용 2011. 12. 13. - Rev. 1.0 초판완성 2012. 01. 31. - Rev. 1.0.1 연결 Tip 추가 [2] page 목차 XDS100S V3... 1 1 제품구성... 4 2 XDS100S V3의특징...

More information

Microsoft Word - src.doc

Microsoft Word - src.doc IPTV 서비스탐색및콘텐츠가이드 RI 시스템운용매뉴얼 목차 1. 서버설정방법... 5 1.1. 서비스탐색서버설정... 5 1.2. 컨텐츠가이드서버설정... 6 2. 서버운용방법... 7 2.1. 서비스탐색서버운용... 7 2.1.1. 서비스가이드서버실행... 7 2.1.2. 서비스가이드정보확인... 8 2.1.3. 서비스가이드정보추가... 9 2.1.4. 서비스가이드정보삭제...

More information

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

Microsoft Word - windows server 2003 수동설치_non pro support_.doc Windows Server 2003 수동 설치 가이드 INDEX 운영체제 설치 준비과정 1 드라이버를 위한 플로피 디스크 작성 2 드라이버를 위한 USB 메모리 작성 7 운영체제 설치 과정 14 Boot Sequence 변경 14 컨트롤러 드라이버 수동 설치 15 운영체제 설치 17 운영체제 설치 준비 과정 Windows Server 2003 에는 기본적으로

More information

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

Microsoft PowerPoint - 30.ppt [호환 모드] 이중포트메모리의실제적인고장을고려한 Programmable Memory BIST 2010. 06. 29. 연세대학교전기전자공학과박영규, 박재석, 한태우, 강성호 hipyk@soc.yonsei.ac.kr Contents Introduction Proposed Programmable Memory BIST(PMBIST) Algorithm Instruction PMBIST

More information

T100MD+

T100MD+ User s Manual 100% ) ( x b a a + 1 RX+ TX+ DTR GND TX+ RX+ DTR GND RX+ TX+ DTR GND DSR RX+ TX+ DTR GND DSR [ DCE TYPE ] [ DCE TYPE ] RS232 Format Baud 1 T100MD+

More information

RealDSP UT 프로그램 메뉴얼

RealDSP UT 프로그램 메뉴얼 TI DSP 3X Programmer (v1.3) for TMS320C31/32/33 Device ( 모델명 : TD3XProg) 사용설명서 UUU 리얼시스 (RealSYS) Web: www.realsys.co.kr Tel: 031-420-4326 Fax: 031-420-4329-1 - TI DSP3X Programmer (TD3XProg) 제품소개 TD3XProg

More information

(SW3704) Gingerbread Source Build & Working Guide

(SW3704) Gingerbread Source Build & Working Guide (Mango-M32F4) Test Guide http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document History

More information

RealDSP UT 프로그램 메뉴얼

RealDSP UT 프로그램 메뉴얼 TI DSP Programmer(v1.4) for TMS320LF240xA & TMS320F281x Device ( 모델명 : TDProg) 사용설명서 UUU 리얼시스 (RealSYS) Web: www.realsys.co.kr Tel: 031-420-4326 Fax: 031-420-4329-1 - TDProg v1.4 Update History < Ver1.4

More information

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - chap01-C언어개요.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을

More information

Tablespace On-Offline 테이블스페이스 온라인/오프라인

Tablespace On-Offline 테이블스페이스 온라인/오프라인 2018/11/10 12:06 1/2 Tablespace On-Offline 테이블스페이스온라인 / 오프라인 목차 Tablespace On-Offline 테이블스페이스온라인 / 오프라인... 1 일반테이블스페이스 (TABLESPACE)... 1 일반테이블스페이스생성하기... 1 테이블스페이스조회하기... 1 테이블스페이스에데이터파일 (DATA FILE) 추가

More information

untitled

untitled 1... 2 System... 3... 3.1... 3.2... 3.3... 4... 4.1... 5... 5.1... 5.2... 5.2.1... 5.3... 5.3.1 Modbus-TCP... 5.3.2 Modbus-RTU... 5.3.3 LS485... 5.4... 5.5... 5.5.1... 5.5.2... 5.6... 5.6.1... 5.6.2...

More information

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

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 개발환경구조및설치순서 JDK 설치 Eclipse 설치 안드로이드 SDK 설치 ADT(Androd Development Tools) 설치 AVD(Android Virtual Device) 생성 Hello Android! 2 Eclipse (IDE) JDK Android SDK with

More information

DE1-SoC Board

DE1-SoC Board 실습 1 개발환경 DE1-SoC Board Design Tools - Installation Download & Install Quartus Prime Lite Edition http://www.altera.com/ Quartus Prime (includes Nios II EDS) Nios II Embedded Design Suite (EDS) is automatically

More information

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include

More information

<4D F736F F D D31312D30312D53572D30312DBBE7BFEBC0DABCB3B8EDBCAD5FBFDCBACEB9E8C6F7BFEB2E646F63>

<4D F736F F D D31312D30312D53572D30312DBBE7BFEBC0DABCB3B8EDBCAD5FBFDCBACEB9E8C6F7BFEB2E646F63> SAM4S Printer Driver Installer 달리명시하지않은한, 인쇄또는복사된문서는통제하지않는문서임 목 차 1. 1. WINDOWS DRIVER INSTALLER 설치 설치...... 2 2. 프린터추가...... 5 3. 프린터제거...... 19 4. 프린터추가 / 제거선택...... 21 5. 프로그램추가 / 제거...... 21 SHC- 11-01-

More information

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어서가장중요한부분이라고도할수있기때문입니다. 1. 새로운메크로생성 새메크로만들기버튺을클릭하여파일을생성합니다. 2. 메크로저장 -

More information

hd1300_k_v1r2_Final_.PDF

hd1300_k_v1r2_Final_.PDF Starter's Kit for HelloDevice 1300 Version 11 1 2 1 2 3 31 32 33 34 35 36 4 41 42 43 5 51 52 6 61 62 Appendix A (cross-over) IP 3 Starter's Kit for HelloDevice 1300 1 HelloDevice 1300 Starter's Kit HelloDevice

More information

Gang Writer 사용 설명서

Gang Writer 사용 설명서 HW/SW User Guide SoC 사업부 Ver 1.0, 2009-11-24 2 목차 1. 프로그램구성... 3 1) 프로그램실행화면... 3 2) 프로그램파트별구성및기능설명... 4 (1) Main 화면... 4 (2) Chip Programmer 화면... 8 (3) NAND Flash Management 화면... 12 2. Chip(MCU) Write

More information

Microsoft PowerPoint - CPLD_수정1.pptx

Microsoft PowerPoint - CPLD_수정1.pptx Xilinx ISE Design Suite 13.1 대진대학교전자공학과 1. 프로젝트생성하기 Xilinx ISE Design Suite 13.1 을실행한다. 새로운프로젝트생성을위해 File New Project 를클릭한다. 1. 프로젝트생성하기 New Project Wizard 창에서기본설정을마치고 Next 를클릭한다. 프로젝트이름 프로젝트생성경로 프로젝트설명

More information

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

var answer = confirm( 확인이나취소를누르세요.); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write( 확인을눌렀습니다.); else { document.write( 취소를눌렀습니다.); 자바스크립트 (JavaScript) - HTML 은사용자에게인터페이스 (interface) 를제공하는언어 - 자바스크립트는서버로데이터를전송하지않고서할수있는데이터처리를수행한다. - 자바스크립트는 HTML 나 JSP 에서작성할수있고 ( 내부스크립트 ), 별도의파일로도작성이가능하다 ( 외 부스크립트 ). - 내부스크립트 - 외부스크립트

More information

ºÎ·ÏB

ºÎ·ÏB B B.1 B.2 B.3 B.4 B.5 B.1 2 (Boolean algebra). 1854 An Investigation of the Laws of Thought on Which to Found the Mathematical Theories of Logic and Probabilities George Boole. 1938 MIT Claude Sannon [SHAN38].

More information

Microsoft Word - MAI-ISP-STK500_매뉴얼_Ver25.docx

Microsoft Word - MAI-ISP-STK500_매뉴얼_Ver25.docx MAI-ISP-STK500 사용자매뉴얼 Manual Ver. 2.5 엠에이아이 (M.A.I) www.maicom.co.kr http://cafe.naver.com/at128mai [ 모델이름 ]: MAI-ISP-STK5000 [ 용도 ]: AVR MCU의내부 Flash Memory 및 EEPROM 에 HEX 파일을 Write W / Readd 할수있는기능을하는프로그래머로써,

More information

Chapter. 14 DAC 를이용한 LED 밝기제어 HBE-MCU-Multi AVR Jaeheung, Lee

Chapter. 14 DAC 를이용한 LED 밝기제어 HBE-MCU-Multi AVR Jaeheung, Lee Chapter. 14 DAC 를이용한 LED 밝기제어 HBE-MCU-Multi AVR Jaeheung, Lee 목차 1. D/A 변환기 2. 병렬 D/A 변환기로 LED 밝기제어하기 3. 직렬 D/A 변환기로 LED 밝기제어하기 D/A 변환기 D/A 변환기 (Digital to Analog Converter) 디지털데이터를아날로그전압으로변환하는소자 A/D변환기와함께마이크로프로세서응용회로에서널리사용됨.

More information

PRO1_09E [읽기 전용]

PRO1_09E [읽기 전용] Siemens AG 1999 All rights reserved File: PRO1_09E1 Information and - ( ) 2 3 4 5 Monitor/Modify Variables" 6 7 8 9 10 11 CPU 12 Stop 13 (Forcing) 14 (1) 15 (2) 16 : 17 : Stop 18 : 19 : (Forcing) 20 :

More information

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

More information

R50_51_kor_ch1

R50_51_kor_ch1 S/N : 1234567890123 Boot Device Priority NumLock [Off] Enable Keypad [By NumLock] Summary screen [Disabled] Boor-time Diagnostic Screen [Disabled] PXE OPROM [Only with F12]

More information

Microsoft Word MetOne237Bmanual

Microsoft Word MetOne237Bmanual Air Particle Counter 의사용법 Met One 237 Air Particle Counter 조선계측기교역 Tel : 02-2268-4344 Fax : 02-2275-5348 htt//:www.chosun21.co.kr 1. 장비구성 : A. Particle Counter : 본장비는 0.3um 부터측정이가능한 Met One 237B와 0.5 um부터가능한

More information

untitled

untitled Step Motor Device Driver Embedded System Lab. II Step Motor Step Motor Step Motor source Embedded System Lab. II 2 open loop, : : Pulse, 1 Pulse,, -, 1 +5%, step Step Motor (2),, Embedded System Lab. II

More information

歯FDA6000COP.PDF

歯FDA6000COP.PDF OPERATION MANUAL AC Servo Drive FDA6000COP [OPERATION UNIT] Ver 1.0 (Soft. Ver. 8.00 ~) FDA6000C Series Servo Drive OTIS LG 1. 1.1 OPERATION UNIT FDA6000COP. UNIT, FDA6000COP,,,. 1.1.1 UP DOWN ENTER 1.1.2

More information

Microsoft Word - logic2005.doc

Microsoft Word - logic2005.doc 제 8 장 Counters 실험의목표 - Catalog counter 의동작원리에대하여익힌다. - 임의의 counter를통하여 FSM 구현방법을익힌다. - 7-segment display 의동작원리를이해한다. 실험도움자료 1. 7-segment display 7-segment는디지털회로에서숫자를표시하기위하여가장많이사용하는소자이다. 이름에서알수있듯이 7개의 LED(

More information

Install stm32cubemx and st-link utility

Install stm32cubemx and st-link utility STM32CubeMX and ST-LINK Utility for STM32 Development 본문서는 ST Microelectronics 의 ARM Cortex-M 시리즈 Microcontroller 개발을위해제공되는 STM32CubeMX 와 STM32 ST-LINK Utility 프로그램의설치과정을설명합니다. 본문서는 Microsoft Windows 7

More information

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt 변수와상수 1 변수란무엇인가? 변수 : 정보 (data) 를저장하는컴퓨터내의특정위치 ( 임시저장공간 ) 메모리, register 메모리주소 101 번지 102 번지 변수의크기에따라 주로 byte 단위 메모리 2 기본적인변수형및변수의크기 변수의크기 해당컴퓨터에서는항상일정 컴퓨터마다다를수있음 short

More information

SBR-100S User Manual

SBR-100S User Manual ( 1 / 13 ) SBR-100S 모델에 대한 사용자 펌웨어 업그레이드 방법을 안내해 드립니다. SBR-100S 는 신규 펌웨어가 있을시 FOTA(자동업데이트) 기능을 통하여 자동 업그레이드가 되며, 필요시 사용자가 신규 펌웨어를 다운받아 수동으로 업그레이드 할 수 있습니다. 1. 준비하기 1.1 연결 장치 준비 펌웨어 업그레이드를 위해서는 SBR-100S

More information

USB3-FRM01 API 매뉴얼

USB3-FRM01 API 매뉴얼 USB3-FRM01 API Programming (Rev 1.1) Windows, Windows2000, Windows NT and Windows XP are trademarks of Microsoft. We acknowledge that the trademarks or service names of all other organizations mentioned

More information

기존에 Windchill Program 이 설치된 Home Directory 를 선택해준다. 프로그램설치후설치내역을확인해보면 Adobe Acrobat 6.0 Support 내역을확인할수 있다.

기존에 Windchill Program 이 설치된 Home Directory 를 선택해준다. 프로그램설치후설치내역을확인해보면 Adobe Acrobat 6.0 Support 내역을확인할수 있다. PDMLink 에등록된 Office 문서들의 PDF 문서변환기능및 Viewer 기능을알아보자 PDM Link에서지원하는 [Product View Document Support] 기능은 Windows-Base 기반의 Microsoft Office 문서들을 PDMLink용 Viewer인 Product View를통한읽기가가능한 PDF Format 으로변환하는기능이다.

More information

USBISPV3.0(071112).hwp

USBISPV3.0(071112).hwp USBISP V3.0 User Manual AVRMALL http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 AVRMALL All Rights Reserved. USBISP V3.0 User Manual Page 2/14 Contents 1. Introduction 3 2. USB DRIVER

More information

UI TASK & KEY EVENT

UI TASK & KEY EVENT 2007. 2. 5 PLATFORM TEAM 정용학 차례 CONTAINER & WIDGET SPECIAL WIDGET 질의응답및토의 2 Container LCD에보여지는화면한개 1개이상의 Widget을가짐 3 Container 초기화과정 ui_init UMP_F_CONTAINERMGR_Initialize UMP_H_CONTAINERMGR_Initialize

More information

Microsoft Word doc

Microsoft Word doc 2. 디바이스드라이버 [ DIO ] 2.1. 개요 타겟보드의데이터버스를이용하여 LED 및스위치동작을제어하는방법을설명하겠다. 2.2. 회로도 2.3. 준비조건 ARM 용크로스컴파일러가설치되어있어야한다. 하드웨어적인점검을하여정상적인동작을한다고가정한다. NFS(Network File System) 를사용할경우에는 NFS가마운트되어있어야한다. 여기서는소스전문을포함하지않았다.

More information

AVR Atmega128

AVR Atmega128 AVR Atmega128 외부인터럽트 중원대학교최재영 인터럽트와폴링 MCU 에서입력을받아들이는방법은폴링방식과인터럽트방식이있음 - 폴링 (Polling) 방식 : 사용자의명령어에의해서하드웨어의변경사항을주기적으로읽어들이는방식 주기적으로하드웨어의변화를체크하기때문에사용자의프로그래밍에따라다양핚변화에대응이가능하지만 CPU 의점유율이높기때문에반응속도가느리다. 인터럽트 (Interrupt)

More information

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다. Eclipse 개발환경에서 WindowBuilder 를이용한 Java 프로그램개발 이예는 Java 프로그램의기초를이해하고있는사람을대상으로 Embedded Microcomputer 를이용한제어시스템을 PC 에서 Serial 통신으로제어 (Graphical User Interface (GUI) 환경에서 ) 하는프로그램개발예를설명한다. WindowBuilder:

More information

목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy... 6 2.2 Compare... 6 2.3 Copy & Compare... 6 2.4 Erase... 6 2

목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy... 6 2.2 Compare... 6 2.3 Copy & Compare... 6 2.4 Erase... 6 2 유영테크닉스( 주) 사용자 설명서 HDD014/034 IDE & SATA Hard Drive Duplicator 유 영 테 크 닉 스 ( 주) (032)670-7880 www.yooyoung-tech.com 목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy...

More information

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4 ALTIBASE HDB 6.5.1.5.10 Patch Notes 목차 BUG-46183 DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG-46249 [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4 BUG-46266 [sm]

More information

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기 Mango-IMX6Q mfgtool 을 이용한이미지 Write 하기 http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document

More information

Studuino소프트웨어 설치

Studuino소프트웨어 설치 Studuino 프로그래밍환경 Studuino 소프트웨어설치 본자료는 Studuino 프로그래밍환경설치안내서입니다. Studuino 프로그래밍 환경의갱신에따라추가 / 수정될수있습니다. 목차 1. 소개... 1 2. Windows... 2 2.1. 프로그래밍환경설치... 2 2.1.1. 웹설치버전설치방법... 2 2.2. Studuino 프로그래밍환경실행...

More information

Microsoft Word - Ahram_ISP_V15_Manual_V20.doc

Microsoft Word - Ahram_ISP_V15_Manual_V20.doc Ahram ISP V1.5 사용자매뉴얼 Manual Ver 2.0 Ahramsoft CO.LTD www.ahramsoft.com Contents 1. 모델이름 ------------------------------------------------------- 3 2. 용 도 -------------------------------------------------------

More information

1

1 1 2 3 4 5 6 b b t P A S M T U s 7 m P P 8 t P A S M T U s 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Chapter 1 29 1 2 3 4 18 17 16 15 5 6 7 8 9 14 13 12 11 10 1 2 3 4 5 9 10 11 12 13 14 15

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 KeyPad Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착 4x4 Keypad 2 KeyPad 를제어하기위하여 FPGA 내부에 KeyPad controller 가구현 KeyPad controller 16bit 로구성된

More information

ez-md+_manual01

ez-md+_manual01 ez-md+ HDMI/SDI Cross Converter with Audio Mux/Demux Operation manual REVISION NUMBER: 1.0.0 DISTRIBUTION DATE: NOVEMBER. 2018 저작권 알림 Copyright 2006~2018 LUMANTEK Co., Ltd. All Rights Reserved 루먼텍 사에서

More information

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우. 소프트웨어매뉴얼 윈도우드라이버 Rev. 3.03 SLP-TX220 / TX223 SLP-TX420 / TX423 SLP-TX400 / TX403 SLP-DX220 / DX223 SLP-DX420 / DX423 SLP-DL410 / DL413 SLP-T400 / T403 SLP-T400R / T403R SLP-D220 / D223 SLP-D420 / D423

More information

Microsoft Word - FS_ZigBee_Manual_V1.3.docx

Microsoft Word - FS_ZigBee_Manual_V1.3.docx FirmSYS Zigbee etworks Kit User Manual FS-ZK500 Rev. 2008/05 Page 1 of 26 Version 1.3 목 차 1. 제품구성... 3 2. 개요... 4 3. 네트워크 설명... 5 4. 호스트/노드 설명... 6 네트워크 구성... 6 5. 모바일 태그 설명... 8 6. 프로토콜 설명... 9 프로토콜 목록...

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 6.1 함수프로시저 6.2 서브프로시저 6.3 매개변수의전달방식 6.4 함수를이용한프로그래밍 3 프로시저 (Procedure) 프로시저 (Procedure) 란무엇인가? 논리적으로묶여있는하나의처리단위 내장프로시저 이벤트프로시저, 속성프로시저, 메서드, 비주얼베이직내장함수등

More information

윈도우시스템프로그래밍

윈도우시스템프로그래밍 데이터베이스및설계 MySQL 을위한 MFC 를사용한 ODBC 프로그래밍 2012.05.10. 오병우 컴퓨터공학과금오공과대학교 http://www.apmsetup.com 또는 http://www.mysql.com APM Setup 설치발표자료참조 Department of Computer Engineering 2 DB 에속한테이블보기 show tables; 에러발생

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 A 반 T2 - 김우빈 (201011321) 임국현 (201011358) 박대규 (201011329) Robot Vacuum Cleaner 1 Motor Sensor RVC Control Cleaner Robot Vaccum Cleaner 2 / Event Format/ Type Front Sensor RVC 앞의장애물의유무를감지한다. True / False,

More information

(72) 발명자 서진교 경기 용인시 수지구 풍덕천2동 1167 진산마을 삼성5차아파트526동 1004호 조필제 경기 용인시 풍덕천동 725-1 유스빌 401호 - 2 -

(72) 발명자 서진교 경기 용인시 수지구 풍덕천2동 1167 진산마을 삼성5차아파트526동 1004호 조필제 경기 용인시 풍덕천동 725-1 유스빌 401호 - 2 - (51) Int. Cl. (19) 대한민국특허청(KR) (12) 공개특허공보(A) G06F 12/14 (2006.01) (21) 출원번호 10-2006-0056087 (22) 출원일자 2006년06월21일 심사청구일자 전체 청구항 수 : 총 18 항 2006년06월21일 (54) 유에스비 메모리 도난 방지 시스템 및 방법 (11) 공개번호 10-2007-0121264

More information

adfasdfasfdasfasfadf

adfasdfasfdasfasfadf C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.

More information