본문 바로가기

임베디드

[VPL 강좌 03] 기본적인 변수 선언과 처리 – 입력 값 처리하기 [VPL 강좌 03] 기본적인 변수 선언과 처리 – 입력 값 처리하기 작성자: Microsoft Robotics Group 김영준 수석 (yjoonkim@microsoft.com) 이번 회차에서는 이전 회차의 내용에 이어서, 사용자로부터 이름을 입력받은 후에 화면에 나의 이름은 … 입니다 라고 표시를 하는 예제를 구현합니다. [과제] 이름을 사용자로부터 입력 받은 후에 화면에 “나의 이름은 … 입니다.” 라고 표시합니다. 위의 과제를 수행하기 위해서 이번 예제에서는 두 개의 Simple Dialog 액티버티와 한 개의 Calculate 액티버티를 사용합니다. Calculate 액티버티는 입력된 값들에 대한 연산을 수행하는 것 외에도 Simple Dialog 액티버티에서 문자열 값을 읽어내는 기능도 수행합.. 더보기
[VPL 강좌 02] 기본적인 변수 선언과 처리 – 변수 값 처리하기 [VPL 강좌 02] 기본적인 변수 선언과 처리 – 변수 값 처리하기 작성자: Microsoft Robotics Group 김영준 수석 (yjoonkim@microsoft.com) VPL에서는 기존 프로그램 언어에서와 같이 다양한 형태의 변수를 선언할 수 있습니다. 본 강좌에서는 다양한 형태의 변수를 선언하고 해당 변수를 사용하는 방법에 대해 설명을 합니다. 변수의 값을 처리하는 방법 이전 회차에서는 아주 기본적인 변수의 선언과 값을 표시하는 방법을 알아 보았습니다. 이번에는 변수의 값을 변화시키는 방법에 대해 알아 보도록 하겠습니다. 자 먼저, 이전 예제를 활용하여 화면에 “당신의 이름은 홍길동입니다.” 라고 표시해 보도록 하겠습니다. 우선 이전 예제 파일에서 Variable 액티버티와 Simple D.. 더보기
[VPL 강좌 01] 기본적인 변수 선언과 처리 – 변수선언 및 사용 기본적인 변수 선언과 처리 – 변수 선언 및 사용 작성자: Microsoft Robotics Group 김영준 수석 (yjoonkim@microsoft.com) VPL에서는 기존 프로그램 언어에서와 같이 다양한 형태의 변수를 선언할 수 있습니다. 본 강좌에서는 다양한 형태의 변수를 선언하고 해당 변수를 사용하는 방법에 대해 설명을 합니다. 변수를 선언하고 값을 지정하는 방법 먼저 변수를 선언해 보도록 하겠습니다. 우선 Basic Activities 창에서 Variable 엑티버티를 더블클릭 하거나 또는 마우스로 끌어다가 Diagram 창에 놓습니다. 해당 엑티버티의 하단에 보면 “…” 아이콘을 볼 수 있는데, 이 아이콘을 클릭하여 원하는 타입과 변수 이름을 지정합니다. 그림 1 Add 버튼을 클릭하여 S.. 더보기
한글화된 VPL 사용자 가이드 및 기술자료입니다 한글화된 VPL 사용자 가이드 및 기술자료입니다 더보기
MSRS의 DSS와 CCR이란? http://cafe.naver.com/msrskorea 여러분이 나중에 C#을 이용해 좀 더 고급기능인 MSRS 서비스 프로그램을 개발하게 되면, DSS와 CCR이라는 개념을 접하게 됩니다. DSS는 일종의 웹서비스 또는 WCF와 유사한 개념입니다만, 이 보다 더 가볍고 간단한 구조를 가집니다. 물론 성능도 더 빠르구요. DSS는 기존 SOAP 방식과 HTTP 방식의 장점 만을 모아서 MS의 연구소에서 개발한 인터페이스 기술이며, 서비스 기반 프로그램밍에 적합하도록 만들어진 기술입니다. DSS가 WCF나 다른 웹서비스 프로그래밍과 다른 점은 항상 비동기 방식만을 지원한다는 것입니다. 이러한 비동기 방식은 서비스 기반 프로그래밍 환경에 적합하며, 서비스 수준에서의 재사용성을 최적화 시킵니다. DSS에 대.. 더보기
로보틱스 스튜디오 소개입니다. 로보틱스 스튜디오는 MS에서 2006년 말에 새롭게 출시한 로봇 애플리케이션 개발 툴입니다. 이제는 로봇 S/W 개발 시대입니다. 로봇 S/W 개발은 더이상 로봇 전문 분야의 개발자들에게만 국한된 영역이 아니라 일반 S/W 개발자 모두가 참여할 수 있는 애플리케이션 개발의 한 형태로서 발전하고 있습니다. 로봇 S/W 개발을 어렵게 생각하지 마시고 이제 한번 새롭게 시작해 보시기 바랍니다. MS의 로보틱스 스튜디오 (이하 MSRS)에서는 기본적으로는 별도의 프로그래밍 언어를 습득하지 않아도 쉽게 로봇 애플리케이션을 개발할 수 있도록 VPL(Visual Programming Language) 이라는 새로운 툴을 제공하며, 고급 개발자들의 경우 C#을 이용하여, 다양한 형태의 서비스들이나 시뮬레이션 프로그래밍.. 더보기
S3C2410 카메라 인터페이스 http://cafe.naver.com/robotall.cafe 23. 카메라 인터페이스 개요 카메라 인터페이스에 대해서 설명한다. S3C2440X의 카메라 인터페이스는 3개의 포트로 구성된다. 첫 번째 포트는 카메라 입력 신호를 캐슁하는 로직이다. 2번째 포트는 로직 포맷 을 변환하고 크기를 줄이는 로직이다. 3번째 포트는 DMA 부분 전용으로 쓰인다. 카메라 인터페이스는 ITU BT.601/656 8-bit 모드를 지원한다. 카메라 인터페이스의 스 케일러는 XGA(수평 1016 픽셀까지 업이 가능) 입력 이미지 이하를 SVGA, VGA, QVGA, CIF, QCIF나 그 이하의 사이즈로 줄인다. 2개의 마스터 포트는 DSC, JPEG, MEEG self 이미지 등의 다양한 어플리케이션에 이용된다. 카.. 더보기
S3C2410 IIS http://cafe.naver.com/robotall.cafe 21. IIS-BUS INTERFACE OVERVIEW 현재, 많은 디지털 오디오 시스템들은 compact disc, 디지털 오디오 테이프, 디지털 사운드 프로세서, 그리고 디지털 TV 사운드 형태로 시장에서 고객들을 유혹하고 있다. S3C2410X Inter-IC Sound(IIS) 버스 인터페이스는 CODEC 인터페이스를 미니 디스크와 휴대용 어플리케이션에 쓰이는 외부 8/16 비트 스테레오 오디오 코덱으로 구현되는데 쓰일 수 있다. IIS 버스 인터페이스는 IIS 버스데이터 포멧과 MSB-justified 데이터 포맷 모두를 지원한다. 인터페이스는 인터럽트 대신에 FIFO 엑세스 하는데 쓰이는 DMA transfor 모드를 제공한다. .. 더보기
S3C2410 IIC-BUS INTERFACE2 http://cafe.naver.com/robotall.cafe S3C2410X RISC 마이크로 프로세서는 Multi-master IIC-Bus 시리얼 인터페이스를 지원한다 전용되어지는 한개의 Serial Data Line(SDA)과 한개의 Serial Clock Line(SCL)은 IIC Bus에 연결되어진 버스 마스터들과 주변장치사이에서 데이터(정보)를 이동시킨다. SDA와 SCL은 양방향(bi-direction)라인이다. Mulit Master IIC-Bus에서 Mulitple S3C2410X RISC 마이크로 프로세서는 Slave Device로 Serial Data를 주거나 받을수 있다. S3C2410X RISC 마이크로 프로세서는 IIC-bus를 통한 데이터전송을 개시 할 수 있고, 중지시킬 .. 더보기
S3C2410 프로그래머의 모델 http://cafe.naver.com/robotall.cafe 제2장 프로그래머의 모델 개요 S3C2410X는 Advanced RISC Machines, Ltd에서 개발한 성능이 향상된 ARM920T 코어를 내장하고 있다. 프로세서 동작 상태 프로그래머의 관점에서 보면, ARM920T는 아래와 같은 2가지 상태 중 하나에 있게 된다: ☞ 32-bit, word-단위의 ARM 명령어를 실행할 수 있는 ARM 상태. ☞ 16-bit, halfword-단위의 THUMB 명령어를 실행할 수 있는 THUMB 상태. 이 상태에서, PC 는 halfword 단위를 변경 및 선택하는데 bit 1을 이용한다. 주의할 점 이러한 2가지 상태의 상호변경은 프로세서의 모드나 레지스터의 내용에 영향을 미치지는 않는다. 상태의.. 더보기
S3C2410 개요 제1장 개요 소개 이 문서는 16/32-bit 마이크로프로세서인 삼성 S3C2410X에 대한 매뉴얼이다. 이 제품은 소형 사이즈이면서, 저가격, 저전력, 고성능의 마이크로컨트롤러로써, 휴대형 장치와 범용 기기에 탑재되도록 설계되었다. 시스템 제작 비용을 줄이기 위해서, S3C2410X는 각각 분리된 16KB의 명령어 캐쉬, 16KB의 데이터 캐쉬, 가상의 메모리 관리 유닛을 핸들링하는 MMU, LCD 컨트롤러(STN & TFT), NAND 플래쉬 부트 로더, 시스템 관리자(칩 선택 로직과 SDRAM 컨트롤러), 3채널의 UART, 4채널의 DMA, 4채널의 PWM 타이머, I/O 포트, RTC, 8채널의 10-bit ADC와 터치 스크린 인터페이스, IIC-BUS 인터페이스, IIS-BUS 인터페이스, .. 더보기
S3C2800번역본 리모트 제어 13 리모트 제어 신호 수신기 개괄 S3C2800 은 8개의 리모트 제어 신호들을 8비트 해상도로 캡처하고 저장할 수 있다. 리모트 제어 신호 수신기는 리모트 제어 신호의 상승 에지, 하강 에지 또는 상승/하강 에지를 검출할 수 있고, 펄스 에지의 폭을 캡처할 수 있다. 리모트 제어 신호의 최소 펄스 폭이 (1/32768)*5초보다는 커야만 한다; 그렇지 않으면, 리모트 제어 신호 수신기는 펄스 폭을 캡처하지 못할 수 있다. 그림 13-1은 수신기 블록내의 구성요소를 보여준다. 그림 13-1. 리모트 제어 신호 수신기 블록 구성도 리모트 제어 신호 수신기 블록 동작 리모트 제어 신호가 IRIN 핀에 입력되면, 현재의 8비트 카운터 값이 신호의 에지(상승 또는 하강)일 때에 FIFO에 써지고, 카운터는 ‘.. 더보기
S3C2800번역본 UART S3C2800번역본 UART 2007/11/02 - [임베디드/ARM] - S3C2800번역본 리모트 제어 2007/11/02 - [임베디드/ARM] - S3C2800번역본 IIC 2007/11/02 - [임베디드/ARM] - S3C2800번역본 WATCHDOG 더보기
S3C2800번역본 IIC IIC-버스 인터페이스 개괄 S3C2800 RISC 마이크로프로세서는 2채널 멀티-마스터 IIC 버스 serial 인터페이스를 지원한다. 양방향 serial 데이터 라인(IICSDAn)과 serial 클럭 라인(IICSCLKn)을 통해서 버스 마스터와 IIC 버스에 연결된 페리페럴(peripheral) 디바이스 사이에 정보가 전달된다. 멀티-마스터 IIC-버스 모드에서, 여러 개의 S3C2800 RISC 마이크로프로세서는 슬래이브 디바이스들에게/로부터 serial 데이터를 수신/전송할 수 있다. 마스터 S3C2800 cpu는 IIC-버스를 통한 데이터 전송을 초기화할 수 있고, 전송의 마무리를 책임지고 있다. 표준적인 버스 조정(arbitration) 과정이 S3C2800 IIC-버스에 사용되고 있다. .. 더보기
S3C2800번역본 WATCHDOG 와치독 타이머 개괄 S3C2800 와치독 타이머는, 콘트롤러의 동작이 노이즈나 시스템 에러 등의 오동작으로 방해를 받았을 때, 콘트롤러를 재가동하는 데 사용된다. 와치독 타이머의 리셋 신호는 128 PCLK 싸이클 동안 발생한다. 디버깅 환경에 대한 고려 S3C2800이 Embedded ICE를 사용하는 디버그 모드일 때, 와치독 타이머는 반드시 동작되지 않아야 한다. 와치독 타이머는 CPU 코어 신호(DBGACK 신호)로부터 현재 모드가 디버그 모드인지 아닌지를 결정할 수 있다. 일단 DBGACK 신호가 ASSERT되면, 와치독 타이머가 종료되어도 와치독 타이머의 리셋 신호 출력이 활성화 되지 않는다. 와치독 타이머 동작 와치독 타이머의 기능 블록별 구성도가 그림 15-1에 나타나 있다. 와치독 타이머.. 더보기