분류 전체보기 (245) 썸네일형 리스트형 VxWorks에서의 RTI DDS의 Thread 관련 설정 RTI DDS를 Vxworks에서 구동할 때 쓰레드 생성 기본 설정으로 VX_FP_TASK가 빠져있어 해당 Listener에서 실수 연산시 예기치 못한 에러가 발생할 수 있다. 이에 아래의 옵션을 켜주어야 한다. C:\Program Files\RTI\ndds.4.5c\include\ndds\osapi 폴더의 osapi_thread.h 을 열어 아래를 수정한다. /* #define RTI_OSAPI_THREAD_OPTION_DEFAULT 0x00 */ #define RTI_OSAPI_THREAD_OPTION_DEFAULT 0x01 /* modified by Joohyun Lee 2010.11.15 */ 와 같이 수정을 한다. QoS를 설정하는 더 좋은 방법이 있겠지만.. 일단은 이렇게 땜빵을 ㅎ; vxWorks Standalone 시스템 구축 vxWorks로 개발한 이후에 Stand-alone 으로 시스템을 구동시키고자 할때 쓰이는 방법을 소개하고자 한다. 흔히 사용하는 방법으로는 vxWorks의 커널 프로젝트에서 usrAppInit.c 함수에 사용자의 Entry-point를 적으면 된다. 하지만, 이 방법을 사용하고자 하려면 사용자의 이미지가 vxWorks 커널에 포함되어야 하는 단점이 존재한다. 목표로하는 Stand-alone 시스템은 사용자이미지를 .out 의 형태로 유저 플래쉬에 저장하며 커널 로드시 해당 라이브러리를 동적으로 로딩하고, Entry-point의 심볼을 동적으로 찾아 수행하도록 하는데 있다. 볼드체로 된 부분이 추가된 부분이다. define 문으로 동작형태를 구분하고 있다. /* usrAppInit.c - stub app.. PPC9A 부트롬 복구 1. PPC9A 점퍼세팅을 바꿔 Recovery Boot로 부팅하도록 세팅한다. E14는 In으로 E12는 out으로 설정 2. PPC9A 점퍼세팅을 바꿔 Boot Flash와 User Flash Write를 활성화한다. E15를 In으로 설정 3. Recovery Boot로 부팅하여 U-Boot가 뜨는것을 확인한다. 4. Host컴퓨터에서 tftp 설정을 한다. C:\WindRiver\vxworks-6.6\host\x86-win32\bin\Tftpd32.exe 를 실행한다. Browse로 bootrom.bin 이 있는 곳을 가르키도록 한다. 5. U-Boot의 IP를 설정한다. set serverip X.X.X.X set ipaddr X.X.X.X 6. Flash의 Write Protect를 비활성화한.. VxWorks 5.5 - Expat으로 XML 프로그래밍 Expat? Expat은 SAX형 XML파서로 이벤트 기반으로 데이터 처리를 한다. XML 파싱할 때 DOM과 같이 XML 크기와 비례하여 메모리가 증가하지 않아, 메모리 제약이 상대적으로 큰 임베디드 장비에서 사용하기 적합하다. 본 문서는 1553 Framework의 일환으로 개발중인 XML 파서에서 사용된 Expat을 소개하는 것을 목적으로 한다. 더 자세한 DOM과 SAX의 차이는 아래의 표를 참고한다. 구분 DOM SAX 파싱 기반 트리 기반 이벤트 기반 데이터 접근 방식 랜덤 순차 메모리 사용 방식 데이터 크기에 비례해서 증가 데이터 크기와 상관없이 일정 메모리 사용 적합한 데이터 경량 데이터 경량/대용량 데이터 데이터 재사용 가능 불가능(재파싱해서 사용할 수 있음) License MIT 라이센.. VxWorks 5.5 - TFFS를 사용하여 Stand-alone으로 부팅하기 목차 목적 방법 Stand-Alone 용 커널이미지 작성 Start-up Script 작성 타켓 보드로의 파일 복사 커널 이미지 복사 작성된 라이브러리 및 어플리케이션 복사 Start-up 스크립트 복사 파일 복사 스크립트 부트 파라미터 수정 목적# Downloadable 이미지로 충분한 테스트를 거치고 나면, Stand-Alone 이미지를 해당 보드에 올려 자체 부팅이 되어 원하는 Entry-Point를 실행시켜야 할 필요성이 있다. 이 때 사용되는 방법으로, TFFS 파일시스템에 커널, 라이브러리, 실행 코드등을 저장하여 startup script로 실행하는 방법을 설명한다. 방법# Stand-Alone 용 커널이미지 작성# Stand-Alone용 커널이미지를 작성한다. Start-up Script .. VxWorks 6.6에서 Static Library 만들기 VxWorks 6.6에서 사용할 Statc Library 만드는 법이다. 프로젝트에는 따로 Static Library를 위한 메뉴는 없다. 일단 Downloadable Kernel Module 프로젝트를 생성한다. 그러면 기본적으로 XXX.out 과 같은 형태의 아웃풋이 생성된다. Project Explorer 트리에서 Build Targets를 찾아들어가 XXX.out 파일을 선택하고 Properties 메뉴를 선택한다. 팝업으로 뜬 설정메뉴에서 Build Target 탭을 선택한 후 Build Tool을 Librarian으로 변경하면 된다. 변경된 내용을 적용하면 아래와 같이 바로 적용되는 것을 확인할 수 있다. 이 글은 스프링노트에서 작성되었습니다. SBC310 AMP 설정 SBC310에서 AMP 모드로 동작시 각각의 코어들이 메모리를 공유하여 데이터를 주고 받을 수 있다. 커널 Configuration에서는 설정을 할수 없고(BSP Version 2.0/1.3 버전까지는...) BSP 폴더내의 rsSBC310.h를 열어 조작해야한다. 코드를 열어 INCLUDE_SM_HIGH_MAP을 설정해 주면된다. 이로써 Core0과 Core1은 SBC_SHARED_MEM_ADRS 주소를 통해 SBC_SHARED_MEM_SIZE 만큼의 공유 영역을 가지게 된다. /* Define to move the intercore shared */ /* memory component to the top of */ /* core 1 physical memory */ #define INCLUDE_SM_.. SBC310 GPIO 설정 SBC310에서 GPIO 제어를 하기위한 설정을 설명한다. 1. GPIO제어를 위해서 ge fanuc에서 제공한 ESP에서 GPIO 관련된 커널 컴포넌트를 추가해야 한다. hardware >> BSP configuration variants >> ESP >> GPIO 2. 커널을 재컴파일한 이후 부팅한 후 아래의 커맨드로 GPIO 핀 상태를 확인한다. 보드에 장착된 GPIO 핀들 정보를 일목요연하게 확인할 수가 있다. [0]->gefGpioShow |--------------------------------------------------------------------------------------| | | | Out | Data | Interrupt | intr |Intr Enabl | ISR Co.. 이전 1 ··· 17 18 19 20 21 22 23 ··· 31 다음