Advantech Windows CE.net Application Hand on Lab

Size: px
Start display at page:

Download "Advantech Windows CE.net Application Hand on Lab"

Transcription

1 Advantech Windows CE.net Application Hand on Lab

2 Lab : Serial Port Communication Objectives After completing this lab, you will be able to: Create an application to open, initialize the serial port, and use it to transmit data to another computer. Prerequisites Before working on this lab, you must have: Familiarity with Win32 programming. Estimated time to complete this lab: 30 minutes 1

3 Exercise Implementing Serial Communication In this exercise, you will create a new application to communicate with another computer through serial port. To create a new application. 1. Start evc++ v On the File menu, click New. 3. On the Projects tab, click WCE Application. 4. Specify the project name as Serial. 5. From the CPU s list, select only the processor you wish to use. For this lab, use Win32 (WCE x86). 2

4 6. Click OK. 7. Select the A typical Hello World application and click Finish. 8. On the New Project Information window, click OK. 3

5 To modify the Serial application 1. In this demo, we want to create an application to transmit data to another computer through serial port. For this purpose, we have created a simple serial library for you to use. 2. Copy SerLib.cpp and SerLib.h from \Lab\ to your project directory. For example, C:\Lab\Serial\. 3. Select the FileView tab in the Workspace window. Navigate to the Source Files folder. 4. Right Click on the Source Files item, a menu will popup. Select Add Files to Folder. 4

6 5. A dialog box Insert Files into Project - will appear. Select SerLib.cpp and click OK to add this file into source files. 5

7 6. Right Click on the Header Files item, a menu will popup. Select Add Files to Folder. 6

8 7. A dialog box Insert Files into Project - will appear. Select SerLib.cpp and click OK to add this file into header files. 8. Double click on the Serial.cpp file to open it in the editor. 9. Include the header file SerLib.h into your source code as follows. #include "SerLib.h" 10. Select the ClassView tab in the Workspace window. Navigate to the Globals folder. 11. Double click on the WndProc item to change caret location. 7

9 12. Add a static handle variable for serial port. It s for use in the library we provide. static HANDLE hcomdev; 13. We need to initialize serial port when program starts and close it when program terminate, so we add code to the WM_CREATE message switch statement and to the WM_DESTROY message switch statement. case WM_CREATE: hwndcb = CommandBar_Create(hInst, hwnd, 1); CommandBar_InsertMenubar(hwndCB, hinst, IDM_MENU, 0); CommandBar_AddAdornments(hwndCB, 0, 0); InitRs232 (TEXT("COM1:"), &hcomdev); break; case WM_DESTROY: CloseHandle (hcomdev); CommandBar_Destroy(hwndCB); PostQuitMessage(0); break; 14. Finally, when we get keyboard input, we send the character through the serial port. To do this, we add a new WM_CHAR message switch statement as follows. case WM_CHAR: TransmitCommChar(hComDev, wparam); break; 8

10 To build the application 1. On the WCE Configuration toolbar, in the Active WCE Configuration dropdown, make sure your SDK name is selected. You can also set the SDK by clicking the Set Active Platform option from the Build menu. 9

11 2. To verify that you are building a DEBUG x86 application, from the Set Active Configuration dropdown, select Win32 (WCE x86) Debug. You can also set this by selecting the Set Active Configuration option from the Build menu. To build the application, on the Build menu, click Build Serial.exe. 10

12 To download the application 1. To start the executable, click Execute Serial.exe. The platform builder will notify you to launch CEMGRC.EXE on the device. 2. On the target device, run CMD.exe to get a console window. 3. In the console window, execute cemgrc /S /T:TCPIPC.DLL /Q /D: :5000 you should modify the ip according to the host ip shown on the platform builder. 4. On the platform builder, Manual Server Action, click OK. The application should download to the target and launch 11

13 5. On host computer, open hyper terminal and create an new session to com1, with settings N1. 6. On the target device, click any character and see if the character shown on the host. 12

14 Lab : Using Registry Objectives After completing this lab, you will be able to: Create an application to read data from registry and write data to registry. Prerequisites Before working on this lab, you must have: Familiarity with Win32 programming. Estimated time to complete this lab: 30 minutes 1

15 Exercise Implementing Registry In this exercise, you will create a new application to read data from registry and write data to registry. To create a new application. 1. Start evc++ v On the File menu, click New. 3. On the Projects tab, click WCE Application. 4. Specify the project name as Registry. 5. From the CPU s list, select only the processor you wish to use. For this lab, use Win32 (WCE x86). 2

16 6. Click OK. 7. Select the A typical Hello World application and click Finish. 8. On the New Project Information window, click OK. 3

17 To modify the Registry application 1. To demo the registry read/write function, we want to create a registry key HKEY_CURRENT_USER\Software\LabReg and a value Count to retain a counter. When we want to increase the counter, we read the Count value from registry, increase it by one, and then write it back to the registry. 2. Select the ResourceView tab in the Workspace window. Navigate to the Menu folder. 3. Double Click on the IDM_MENU item to open it in the editor. 4

18 4. Click on the File item, then the menu will expand. Click on the Exit item, and press INS key to add a new empty one. 5

19 5. Double click on the new empty item, and a dialog box will popup. Enter IDM_FILE_INC as ID, and &Increase as Caption. 6

20 6. Repeat again to add a Reset item. Enter IDM_FILE_RESET as ID, and &Reset as Caption. 7. Now to modify the source code. First, we would like to change window attribute to WS_OVERLAPPED and size to 320x240. Select the ClassView tab in the Workspace window. Navigate to the Globals folder. 7

21 8. Double Click on the InitInstance item to open it in the editor. 9. The following is the code for the case modified. hwnd = CreateWindow(szWindowClass, sztitle, WS_OVERLAPPED, CW_USEDEFAULT, CW_USEDEFAULT, 320, 240, NULL, NULL, hinstance, NULL); 10. Double Click on the WndProc item to change location in the editor. 11. Add variables for registry operation, function return value and counter. 8

22 12. The following is the code for the case added. HDC hdc; int wmid, wmevent; PAINTSTRUCT ps; TCHAR szhello[max_loadstring]; HKEY hkey; DWORD dwret, len = sizeof(int); static int Count; 13. Add new message switch statement for IDM_FILE_INC and IDM_FILE_RESET that we created in the resource. Because the behavior of these two functions are similar, we write it in the same switch statement. 14. The following is the code for the case added. case IDM_FILE_INC: case IDM_FILE_RESET: RegCreateKeyEx (HKEY_CURRENT_USER, TEXT("Software\\LabReg"), 0, NULL, 0, 0, NULL, &hkey, &dwret); if (hkey) { if(wmid==idm_file_inc) { RegQueryValueEx (hkey, TEXT("Count"), NULL, NULL, (BYTE *)&Count, &len); ++ Count; } else Count = 0; RegSetValueEx (hkey, TEXT("Count"), 0, REG_DWORD, (const BYTE *)&Count, sizeof(count)); RegCloseKey (hkey); } InvalidateRect (hwnd, NULL, true); break; 9

23 15. To let this application can show correct value when it start, we need to modify the WM_CREATE message switch statement. case WM_CREATE: hwndcb = CommandBar_Create(hInst, hwnd, 1); CommandBar_InsertMenubar(hwndCB, hinst, IDM_MENU, 0); CommandBar_AddAdornments(hwndCB, 0, 0); RegCreateKeyEx (HKEY_CURRENT_USER, TEXT("Software\\LabReg"), 0, NULL, 0, 0, NULL, &hkey, &dwret); if (hkey) { RegQueryValueEx (hkey, TEXT("Count"), NULL, NULL, (BYTE *)&Count, &len); RegCloseKey (hkey); } InvalidateRect (hwnd, NULL, true); break; 16. Finally, modify the WM_PAINT message switch statement to show the counter value. case WM_PAINT: RECT rt; hdc = BeginPaint(hWnd, &ps); GetClientRect(hWnd, &rt); wsprintf (szhello, TEXT("%d"), Count); DrawText(hdc, szhello, _tcslen(szhello), &rt, DT_SINGLELINE DT_VCENTER DT_CENTER); EndPaint(hWnd, &ps); break; 10

24 To build the application 1. On the WCE Configuration toolbar, in the Active WCE Configuration dropdown, make sure your SDK name is selected. You can also set the SDK by clicking the Set Active Platform option from the Build menu. 11

25 2. To verify that you are building a DEBUG x86 application, from the Set Active Configuration dropdown, select Win32 (WCE x86) Debug. You can also set this by selecting the Set Active Configuration option from the Build menu. To build the application, on the Build menu, click Build Registry.exe. 12

26 To download the application 1. To start the executable, click Execute Registry.exe. The platform builder will notify you to launch CEMGRC.EXE on the device. 2. On the target device, run CMD.exe to get a console window. 3. In the console window, execute cemgrc /S /T:TCPIPC.DLL /Q /D: :5000 you should modify the ip according to the host ip shown on the platform builder. 4. On the platform builder, Manual Server Action, click OK. The application should download to the target and 13

27 launch 5. On the target device, click on the menu, and use Increase and Reset the watch the action of read/write registry. 6. Close and re-execute the same program, and to see if the last counter value is retained. 14

28 Lab : Thread, Critical Section Objectives After completing this lab, you will be able to: Create and use threads in your application. Use critical section to synchronize multiple threads Prerequisites Before working on this lab, you must have: Familiarity with Win32 programming. Estimated time to complete this lab: 30 minutes 1

29 Exercise Implementing Threads In this exercise, you will create a new application with three threads to claim for a single critical section. To create a new application. 1. Start evc++ v On the File menu, click New. 3. On the Projects tab, click WCE Application. 4. Specify the project name as Thread. 5. From the CPU s list, select only the processor you wish to use. For this lab, use Win32 (WCE x86). 2

30 6. Click OK. 7. Select the A typical Hello World application and click Finish. 8. On the New Project Information window, click OK. 3

31 To modify the Thread application 1. Select the FileView tab in the Workspace window. Navigate to the Source Files folder. 2. Double Click on the Thread.cpp file to open it in the editor. 3. We need to add some definitions and global variables in the beginning of file. They are for critical section, font and window handle. 4

32 4. The following is the code for the case added. #define MAX_LOADSTRING 100 #define DEMOINTERVAL 500 // Global Variables: HINSTANCE hinst; HWND hwndcb; // The current instance // The command bar handle CRITICAL_SECTION GlobalCriticalSection; DWORD g_dwcsowner; // ID of thread that currently owns Critical Section. HFONT g_hfont; HWND g_hwnd; // Forward declarations of functions included in this code module: ATOM MyRegisterClass (HINSTANCE, LPTSTR); BOOL InitInstance (HINSTANCE, int); LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK About (HWND, UINT, WPARAM, LPARAM); DWORD WINAPI DemoThread(LPVOID lpparameter); 5. Select the ClassView tab in the Workspace window. Navigate to the WndProc callback function. 5

33 6. Double Click on the WndProc function to switch the file location. 7. We don t need szhello any more, delete it. Add some variables needed to the same place. 8. The following is the code for the case modified. HDC hdc; int wmid, wmevent; PAINTSTRUCT ps; DWORD dwthreadid; int x; TCHAR szbuffer[50]; 6

34 9. Create threads and critical section in message switch statement WM_CREATE. This message will be called when the window is created. case WM_CREATE: hwndcb = CommandBar_Create(hInst, hwnd, 1); CommandBar_InsertMenubar(hwndCB, hinst, IDM_MENU, 0); CommandBar_AddAdornments(hwndCB, 0, 0); g_hwnd=hwnd; CreateDemoStuff( ); InitializeCriticalSection(&GlobalCriticalSection); for(x=0; x<3;x++) { CreateThread (NULL, 0, (LPTHREAD_START_ROUTINE)DemoThread, (LPVOID)(x+1), 0, &dwthreadid); } break; 10. Modify WM_PAINT message switch statement to show the thread which currently own the critical section. This message will be called when the window need to be refresh. case WM_PAINT: hdc = BeginPaint(hWnd, &ps); SelectObject(ps.hdc,g_hFont); for (x=0;x < 3;x++) { wsprintf(szbuffer,l"criticalsection - Thread %d",x+1); ExtTextOut(ps.hdc, 30, (x+1)*30, ETO_OPAQUE, NULL, szbuffer, lstrlen(szbuffer), NULL); } ExtTextOut(ps.hdc, 0, g_dwcsowner*30, ETO_OPAQUE, NULL, L">>", 2, NULL); EndPaint(hWnd, &ps); break; 7

35 11. In WM_CREATE message switch statement, we call CreateDemoStuff function. This is not win32 api but our routine to change font and font size. 12. To implement it, add the following code to the end of file. void CreateDemoStuff( ) { LOGFONT lf; } memset(&lf,0x00,sizeof(logfont)); lf.lfheight=24; wcscpy(lf.lffacename,l"arial"); g_hfont=createfontindirect(&lf); 13. Finally, to implement the thread routine. Each thread try to get into the critical section, and do something, then leave the critical section. 14. The following is the code for the case added. DWORD WINAPI DemoThread(LPVOID lpparameter) { DWORD dwthreadid=(dword)lpparameter; while(true) { EnterCriticalSection(&GlobalCriticalSection); g_dwcsowner=dwthreadid; InvalidateRect(g_hWnd,NULL,TRUE); Sleep(dwThreadID*DEMOINTERVAL); LeaveCriticalSection(&GlobalCriticalSection); } } return 0L; 8

36 To build the application 1. On the WCE Configuration toolbar, in the Active WCE Configuration dropdown, make sure your SDK name is selected. You can also set the SDK by clicking the Set Active Platform option from the Build menu. 9

37 2. To verify that you are building a DEBUG x86 application, from the Set Active Configuration dropdown, select Win32 (WCE x86) Debug. You can also set this by selecting the Set Active Configuration option from the Build menu. To build the application, on the Build menu, click Build Thread.exe. To download the application 1. To start the executable, click Execute Thread.exe. The platform builder will notify you to launch 10

38 CEMGRC.EXE on the device. 2. On the target device, run CMD.exe to get a console window. 3. In the console window, execute cemgrc /S /T:TCPIPC.DLL /Q /D: :5000 you should modify the ip according to the host ip shown on the platform builder. 4. On the platform builder, Manual Server Action, click OK. The application should download to the target and launch 5. The application will show the thread which is in critical section, and switch to and fro continuously. 11

We display some text in the middle of a window, and see how the text remains there whenever the window is re-sized or moved.

We display some text in the middle of a window, and see how the text remains there whenever the window is re-sized or moved. 1 Programming Windows Terry Marris January 2013 2 Hello Windows We display some text in the middle of a window, and see how the text remains there whenever the window is re-sized or moved. 2.1 Hello Windows

More information

Programming in graphical environment. Introduction

Programming in graphical environment. Introduction Programming in graphical environment Introduction The lecture Additional resources available at: http://www.mini.pw.edu.pl/~maczewsk/windows_2004 Recommended books: Programming Windows - Charles Petzold

More information

Introduction to Computer Graphics (CS602) Lecture No 04 Point

Introduction to Computer Graphics (CS602) Lecture No 04 Point Introduction to Computer Graphics (CS602) Lecture No 04 Point 4.1 Pixel The smallest dot illuminated that can be seen on screen. 4.2 Picture Composition of pixels makes picture that forms on whole screen

More information

MOBILE COMPUTING Practical 1: Graphic representation

MOBILE COMPUTING Practical 1: Graphic representation MOBILE COMPUTING Practical 1: Graphic representation Steps 2) Then in class view select the Global, in global select the WINMAIN. 3) Then write the below code below #define MAX_LOADSTRING 100 enum Shapes

More information

Hands-On Lab. Multitouch Gestures - Native. Lab version: Last updated: 12/3/2010

Hands-On Lab. Multitouch Gestures - Native. Lab version: Last updated: 12/3/2010 Hands-On Lab Multitouch Gestures - Native Lab version: 1.0.0 Last updated: 12/3/2010 CONTENTS OVERVIEW... 3 EXERCISE 1: BUILD A MULTITOUCH APPLICATION... 7 Task 1 Create the Win32 Application... 7 Task

More information

Introduction. Key features and lab exercises to familiarize new users to the Visual environment

Introduction. Key features and lab exercises to familiarize new users to the Visual environment Introduction Key features and lab exercises to familiarize new users to the Visual environment January 1999 CONTENTS KEY FEATURES... 3 Statement Completion Options 3 Auto List Members 3 Auto Type Info

More information

Aspect-Oriented Programming with C++ and AspectC++ AOSD 2007 Tutorial. Part V Examples. Examples V/1

Aspect-Oriented Programming with C++ and AspectC++ AOSD 2007 Tutorial. Part V Examples. Examples V/1 Aspect-Oriented Programming with C++ and AspectC++ AOSD 2007 Tutorial Part V V/1 AspectC++ in Practice - Applying the observer protocol Example: a typical scenario for the widely used observer pattern

More information

LSN 4 GUI Programming Using The WIN32 API

LSN 4 GUI Programming Using The WIN32 API LSN 4 GUI Programming Using The WIN32 API ECT362 Operating Systems Department of Engineering Technology LSN 4 Why program GUIs? This application will help introduce you to using the Win32 API Gain familiarity

More information

Chapter 15 Programming Paradigm

Chapter 15 Programming Paradigm Chapter 15 Programming Paradigm A Windows program, like any other interactive program, is for the most part inputdriven. However, the input of a Windows program is conveniently predigested by the operating

More information

Computer Programming Lecture 11 이윤진서울대학교

Computer Programming Lecture 11 이윤진서울대학교 Computer Programming Lecture 11 이윤진서울대학교 2007.1.24. 24 Slide Credits 엄현상교수님 서울대학교컴퓨터공학부 Computer Programming, g, 2007 봄학기 Object-Oriented Programming (2) 순서 Java Q&A Java 개요 Object-Oriented Oriented Programming

More information

Windows and Messages. Creating the Window

Windows and Messages. Creating the Window Windows and Messages In the first two chapters, the sample programs used the MessageBox function to deliver text output to the user. The MessageBox function creates a "window." In Windows, the word "window"

More information

Binghamton University. EngiNet. State University of New York

Binghamton University. EngiNet. State University of New York Binghamton University EngiNet State University of New York 1 Thomas J. Watson School of Engineering and Applied Science EngiNet WARNING All rights reserved. No Part of this video lecture series may be

More information

hinstance = ((LPCREATESTRUCT)lParam)->hInstance obtains the program's instance handle and stores it in the static variable, hinstance.

hinstance = ((LPCREATESTRUCT)lParam)->hInstance obtains the program's instance handle and stores it in the static variable, hinstance. 1 Programming Windows Terry Marris Jan 2013 6 Menus Three programs are presented in this chapter, each one building on the preceding program. In the first, the beginnings of a primitive text editor are

More information

Module 8: Customizing the OS Design

Module 8: Customizing the OS Design Module 8: Customizing the OS Design Catalog 1 Module 8: Customizing the OS Design 8-1 Catalog Overview 8-2 The CE 6.0 Shell 8-3 The SDK Module 8: Customizing the OS Design Catalog 2 Information in this

More information

Hands-On Lab. Multi-Touch WMTouch - Native. Lab version: Last updated: 12/3/2010

Hands-On Lab. Multi-Touch WMTouch - Native. Lab version: Last updated: 12/3/2010 Hands-On Lab Multi-Touch WMTouch - Native Lab version: 1.0.0 Last updated: 12/3/2010 CONTENTS OVERVIEW... 3 EXERCISE 1: BUILD A MULTI-TOUCH APPLICATION... 5 Task 1 Create the Win32 Application... 5 Task

More information

Developing a Prototype Window s Mobile Application

Developing a Prototype Window s Mobile Application Developing a Prototype Window s Mobile Application (Part 1 of Snoozing Soundly through Snore recognition ) Riley Kotchorek, Mike Smith, Vahid Garousi University of Calgary, Canada Contact: Michael Smith,

More information

Windows Programming. 1 st Week, 2011

Windows Programming. 1 st Week, 2011 Windows Programming 1 st Week, 2011 시작하기 Visual Studio 2008 새프로젝트 파일 새로만들기 프로젝트 Visual C++ 프로젝트 Win32 프로젝트 빈프로젝트 응용프로그램설정 Prac01 솔루션 새항목추가 C++ 파일 main.cpp main0.cpp cpp 다운로드 솔루션빌드 오류 Unicode vs. Multi-Byte

More information

Alisson Sol Knowledge Engineer Engineering Excellence June 08, Public version

Alisson Sol Knowledge Engineer Engineering Excellence June 08, Public version Alisson Sol Knowledge Engineer Engineering Excellence June 08, 2011 Public version Information about the current inflection point Mature Mainframe, desktop, graphical user interface, client/server Evolving

More information

Get detailed information from

Get detailed information from MS Windows API for Processes/Threads In MS Windows, the system call interface is not documented. Instead the MS Windows API is documented, which helps with being able to run programs portably across muliple

More information

Developer Documentation

Developer Documentation Developer Documentation Development of Scanner Applications for ACD Windows CE Second Edition Devices Version: 3.0 Copyright ACD Gruppe This document may not be duplicated or made accessible to third parties

More information

Win32 Multilingual IME Overview for IME Development

Win32 Multilingual IME Overview for IME Development 1 Win32 Multilingual IME Overview for IME Development Version 1.41 04-01-1999 This documentation introduces the basics on how to develop an IME for Windows 95, Windows 98, and Windows NT/2000. It is also

More information

Lab 1: Introduction to C Programming. (Creating a program using the Microsoft developer Studio, Compiling and Linking)

Lab 1: Introduction to C Programming. (Creating a program using the Microsoft developer Studio, Compiling and Linking) Lab 1: Introduction to C Programming (Creating a program using the Microsoft developer Studio, Compiling and Linking) Learning Objectives 0. To become familiar with Microsoft Visual C++ 6.0 environment

More information

Lab 4-1: Replacing the Shell with a Custom Full Screen Browser Based UI

Lab 4-1: Replacing the Shell with a Custom Full Screen Browser Based UI Lab 4-1: Replacing the Shell with a Custom Full Screen Browser Based UI Objectives Prerequisites After completing this lab, you will be able to: Replace the Windows CE shell with a custom HTML based shell

More information

Windows Programming in C++

Windows Programming in C++ Windows Programming in C++ You must use special libraries (aka APIs application programming interfaces) to make something other than a text-based program. The C++ choices are: The original Windows SDK

More information

Game Programming I. Introduction to Windows Programming. Sample Program hello.cpp. 5 th Week,

Game Programming I. Introduction to Windows Programming. Sample Program hello.cpp. 5 th Week, Game Programming I Introduction to Windows Programming 5 th Week, 2007 Sample Program hello.cpp Microsoft Visual Studio.Net File New Project Visual C++ Win32 Win32 Project Application Settings Empty project

More information

Lab 3-2: Exploring the Heap

Lab 3-2: Exploring the Heap Lab 3-2: Exploring the Heap Objectives Become familiar with the Windows Embedded CE 6.0 heap Prerequisites Completed Lab 2-1 Estimated time to complete this lab: 30 minutes Lab Setup To complete this lab,

More information

Window programming. Programming

Window programming. Programming Window programming 1 Objectives Understand the mechanism of window programming Understand the concept and usage of of callback functions Create a simple application 2 Overview Windows system Hello world!

More information

WinCE-Kit phycore -i.mx350

WinCE-Kit phycore -i.mx350 QuickStart Instructions WinCE-Kit phycore -i.mx350 Using Microsoft Visual Studio 2005 Software Development Tool Chain Note: The PHYTEC WinCE-i.MX350-Disc includes the electronic version of the English

More information

Win32 Programming. Jim Fawcett CSE775 Distributed Objects Spring 2012

Win32 Programming. Jim Fawcett CSE775 Distributed Objects Spring 2012 Win32 Programming Jim Fawcett CSE775 Distributed Objects Spring 2012 References Programming Applications for Microsoft Windows, 4 th Edition, Jeffrey Richter, Microsoft Press, 1999 Unicode, More Unicode

More information

WinCE-Kit phycore -i.mx31

WinCE-Kit phycore -i.mx31 QuickStart Instructions WinCE-Kit phycore -i.mx31 Using Microsoft Visual Studio 2005 Software Development Tool Chain Note: The PHYTEC WinCE-i.MX31-Disc includes the electronic version of the English phycore

More information

Files, Registry and Databases for storing data

Files, Registry and Databases for storing data REAL TIME OPERATING SYSTEM PROGRAMMING-II: II: Windows CE, OSEK and Real time Linux Lesson-4: Files, Registry and Databases for storing data 1 1. WCE Files 2 File Creation function arguments CreateFile

More information

EL-USB-RT API Guide V1.0

EL-USB-RT API Guide V1.0 EL-USB-RT API Guide V1.0 Contents 1 Introduction 2 C++ Sample Dialog Application 3 C++ Sample Observer Pattern Application 4 C# Sample Application 4.1 Capturing USB Device Connect \ Disconnect Events 5

More information

Integrator /CP Board Support Package for Microsoft Windows CE.NET

Integrator /CP Board Support Package for Microsoft Windows CE.NET Integrator /CP Board Support Package for Microsoft Windows CE.NET Revision: r0p0 Application Developer s Guide Copyright 2004 ARM Limited. All rights reserved. ARM DUI 0272A Integrator/CP Board Support

More information

Hello World on the ATLYS Board. Building the Hardware

Hello World on the ATLYS Board. Building the Hardware 1. Start Xilinx Platform Studio Hello World on the ATLYS Board Building the Hardware 2. Click on Create New Blank Project Using Base System Builder For the project file field, browse to the directory where

More information

TI mmwave Labs. Vital Signs Measurement

TI mmwave Labs. Vital Signs Measurement TI mmwave Labs Vital Signs Measurement Contents Overview Requirements Software setup Pre-requisites Downloading the Lab Project Building the project Hardware setup Preparing the EVM Connecting the EVM

More information

QuickStart Instructions. WinCE-Kit. phycard -L. Using Microsoft Visual Studio 2005 Software Development Tool Chain

QuickStart Instructions. WinCE-Kit. phycard -L. Using Microsoft Visual Studio 2005 Software Development Tool Chain QuickStart Instructions WinCE-Kit phycard -L Using Microsoft Visual Studio 2005 Software Development Tool Chain Note: The PHYTEC WinCE-phyCARD-L-Disc includes the electronic version of the English phycard

More information

Mobile Application Development (Part 1)-Program a Sound-Monitoring Prototype

Mobile Application Development (Part 1)-Program a Sound-Monitoring Prototype See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/293654427 Mobile Application Development (Part 1)-Program a Sound-Monitoring Prototype Article

More information

Using DAQ Event Messaging under Windows NT/95/3.1

Using DAQ Event Messaging under Windows NT/95/3.1 Application Note 086 Using DAQ Event Messaging under Windows NT/95/3.1 by Ken Sadahiro Introduction The NI-DAQ language interface for PCs is mostly a "polling-oriented" Application Programming Interface,

More information

Input and Interaction

Input and Interaction Input and Interaction 5 th Week, 2011 Graphical Input Devices Mouse Trackball Light Pen Data Tablet Joy Stick Space Ball Input Modes Input devices contain a trigger which can be used to send a signal to

More information

HANNAH HOWARD #ABOUTME

HANNAH HOWARD #ABOUTME HANNAH HOWARD #ABOUTME Personal @techgirlwonder hannah@carbon Anecdote: I have ve.com a dog she/her REACTIVE PROGRAMMING: A Better Way to Write Frontend Applications 1. PROBLEM STATEMENT WHAT IS A COMPUTER

More information

Using Windows XP Visual Styles

Using Windows XP Visual Styles Using Microsoft Windows XP, you can now define the visual style or appearance of controls and windows from simple colors to textures and shapes. You can control each defined part of a control as well as

More information

Call DLL from Limnor Applications

Call DLL from Limnor Applications Call DLL from Limnor Applications There is a lot of computer software in the format of dynamic link libraries (DLL). DLLCaller performer allows your applications to call DLL functions directly. Here we

More information

2. On the main menu, click File -> New... or File -> New -> Other... Windows Fundamentals

2. On the main menu, click File -> New... or File -> New -> Other... Windows Fundamentals Windows Fundamentals http://www.functionx.com/win32/index.htm http://www.functionx.com/visualc/index.htm Introduction to windows Overview Microsoft Windows is an operating system that helps a person interact

More information

27 Designing Your Own Program

27 Designing Your Own Program 27 Designing Your Own Program 27.1 Using API s...27-2 27.2 Device Access APIs...27-19 27.3 Cache Buffer Control APIs...27-30 27.4 Queuing Access Control APIs...27-36 27.5 System APIs...27-39 27.6 SRAM

More information

5.4.8 Optional Lab: Managing System Files with Built-in Utilities in Windows Vista

5.4.8 Optional Lab: Managing System Files with Built-in Utilities in Windows Vista 5.4.8 Optional Lab: Managing System Files with Built-in Utilities in Windows Vista Introduction Print and complete this lab. In this lab, you will use Windows built-in utilities to gather information about

More information

Carleton University Department of Systems and Computer Engineering SYSC Foundations of Imperative Programming - Winter 2012

Carleton University Department of Systems and Computer Engineering SYSC Foundations of Imperative Programming - Winter 2012 Carleton University Department of Systems and Computer Engineering SYSC 2006 - Foundations of Imperative Programming - Winter 2012 Lab 1 - Introduction to Pelles C Objective To become familiar with the

More information

Windows 2000 Safe Mode

Windows 2000 Safe Mode LAB PROCEDURE 29 Windows 2000 Safe Mode OBJECTIVES 1. Restart and try various startup options. RESOURCES Troubleshooting 1. Marcraft 8000 Trainer with Windows 2000 installed 2. A PS2 mouse 3. A LAN connection

More information

TP : System on Chip (SoC) 1

TP : System on Chip (SoC) 1 TP : System on Chip (SoC) 1 Goals : -Discover the VIVADO environment and SDK tool from Xilinx -Programming of the Software part of a SoC -Control of hardware peripheral using software running on the ARM

More information

QuickStart Instructions. WinCE-Kit. phycard -S. Using Microsoft Visual Studio 2005 Software Development Tool Chain

QuickStart Instructions. WinCE-Kit. phycard -S. Using Microsoft Visual Studio 2005 Software Development Tool Chain QuickStart Instructions WinCE-Kit phycard -S Using Microsoft Visual Studio 2005 Software Development Tool Chain Note: The PHYTEC WinCE-phyCARD-S-Disc includes the electronic version of the English phycard

More information

Getting Started. 1 st Week, Sun-Jeong Kim. Computer Graphics Applications

Getting Started. 1 st Week, Sun-Jeong Kim. Computer Graphics Applications OpenGL Programming Getting Started 1 st Week, 2008 Sun-Jeong Kim Visual Studio 2005 Windows Programming 2 Visual C++ Win32 Application New Project 3 Empty project Application Settings 4 Solution Prac01

More information

Profiling Applications and Creating Accelerators

Profiling Applications and Creating Accelerators Introduction Program hot-spots that are compute-intensive may be good candidates for hardware acceleration, especially when it is possible to stream data between hardware and the CPU and memory and overlap

More information

IT Essentials v6.0 Windows 10 Software Labs

IT Essentials v6.0 Windows 10 Software Labs IT Essentials v6.0 Windows 10 Software Labs 5.2.1.7 Install Windows 10... 1 5.2.1.10 Check for Updates in Windows 10... 10 5.2.4.7 Create a Partition in Windows 10... 16 6.1.1.5 Task Manager in Windows

More information

IFE: Course in Low Level Programing. Lecture 5

IFE: Course in Low Level Programing. Lecture 5 Lecture 5 Windows API Windows Application Programming Interface (API) is a set of Windows OS service routines that enable applications to exploit the power of Windows operating systems. The functional

More information

TI mmwave Training. mmwave Demo

TI mmwave Training. mmwave Demo TI mmwave Training mmwave Contents Overview Requirements Software setup Pre-requisites Downloading the Lab Project Building the project Hardware setup Preparing the EVM Connecting the EVM Running the 2

More information

TI mmwave Training. xwr16xx mmwave Demo

TI mmwave Training. xwr16xx mmwave Demo TI mmwave Training xwr16xx mmwave Contents Overview Requirements Software setup Pre-requisites Downloading the Lab Project Building the project Hardware setup Preparing the EVM Connecting the EVM Running

More information

Introduction to Eclipse Rich Client Platform Support in IBM Rational HATS. For IBM System i (5250)

Introduction to Eclipse Rich Client Platform Support in IBM Rational HATS. For IBM System i (5250) Introduction to Eclipse Rich Client Platform Support in IBM Rational HATS For IBM System i (5250) 1 Lab instructions This lab teaches you how to use IBM Rational HATS to create a rich client plug-in application

More information

RVDS 4.0 Introductory Tutorial

RVDS 4.0 Introductory Tutorial RVDS 4.0 Introductory Tutorial 402v02 RVDS 4.0 Introductory Tutorial 1 Introduction Aim This tutorial provides you with a basic introduction to the tools provided with the RealView Development Suite version

More information

Lab 3b: Scheduling Multithreaded Applications with RTX & uvision

Lab 3b: Scheduling Multithreaded Applications with RTX & uvision COE718: Embedded System Design Lab 3b: Scheduling Multithreaded Applications with RTX & uvision 1. Objectives The purpose of this lab is to introduce students to RTX based multithreaded applications using

More information

Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial

Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial Embedded Processor Hardware Design October 6 t h 2017. VIVADO TUTORIAL 1 Table of Contents Requirements... 3 Part 1:

More information

uvi ... Universal Validator Interface Software Developers Kit Revision /29/04 Happ Controls

uvi ... Universal Validator Interface Software Developers Kit Revision /29/04 Happ Controls Happ Controls 106 Garlisch Drive Elk Grove, IL 60007 Tel: 888-289-4277 / 847-593-6130 Fax: 847-593-6137 www.happcontrols.com uvi Universal Validator Interface Software Developers Kit.......... Revision

More information

EZ Touchscreen CE Computer. User Manual

EZ Touchscreen CE Computer. User Manual EZ Touchscreen CE Computer User Manual Page 1 of 27 7/22/2005 Using EZ Touchscreen CE Computer The EZ Touchscreen CE Computer (or EZ-CE for short) can be used by any one who is familiar with using of Windows

More information

Introduction to Eclipse Rich Client Platform Support in IBM Rational HATS For IBM System i (5250)

Introduction to Eclipse Rich Client Platform Support in IBM Rational HATS For IBM System i (5250) Introduction to Eclipse Rich Client Platform Support in IBM Rational HATS For IBM System i (5250) Introduction to Eclipse Rich Client Platform Support in IBM Rational HATS 1 Lab instructions This lab teaches

More information

Lab 3a: Scheduling Tasks with uvision and RTX

Lab 3a: Scheduling Tasks with uvision and RTX COE718: Embedded Systems Design Lab 3a: Scheduling Tasks with uvision and RTX 1. Objectives The purpose of this lab is to lab is to introduce students to uvision and ARM Cortex-M3's various RTX based Real-Time

More information

Windows Socket Message-Driven/WSAAsyncSelect Model. Prof. Lin Weiguo Copyleft 2009~2015, College of Computing, CUC

Windows Socket Message-Driven/WSAAsyncSelect Model. Prof. Lin Weiguo Copyleft 2009~2015, College of Computing, CUC Windows Socket Message-Driven/WSAAsyncSelect Model Prof. Lin Weiguo Copyleft 2009~2015, College of Computing, CUC Dec 2015 Note You should not assume that an example in this presentation is complete. Items

More information

Lab - System Utilities in Windows

Lab - System Utilities in Windows Introduction In this lab, you will use Windows utilities to configure operating system settings. Recommended Equipment The following equipment is required for this exercise: A computer running Windows

More information

CS410 Visual Programming Solved Online Quiz No. 01, 02, 03 and 04. For Final Term Exam Preparation by Virtualians Social Network

CS410 Visual Programming Solved Online Quiz No. 01, 02, 03 and 04. For Final Term Exam Preparation by Virtualians Social Network CS410 Visual Programming Solved Online Quiz No. 01, 02, 03 and 04 For Final Term Exam Preparation by Virtualians Social Network 1. Ptr -> age is equivalent to *ptr.age ptr.age (ptr).age (*ptr).age 2. is

More information

Adobe ColdFusion Documentation. September 2014

Adobe ColdFusion Documentation. September 2014 September 2014 Using ColdFusion Builder..................................................................................... 3 1 About ColdFusion Builder.................................................................................

More information

/*********************************************************************

/********************************************************************* Appendix A Program Process.c This application will send X, Y, Z, and W end points to the Mx4 card using the C/C++ DLL, MX495.DLL. The functions mainly used are monitor_var, change_var, and var. The algorithm

More information

Getting Started. 1.1 A look at Developer Studio

Getting Started. 1.1 A look at Developer Studio Getting Started 1 1.1 A look at Developer Studio Compaq Visual Fortran (Visual Fortran) uses the same development environment as Microsoft Visual C++. This development environment is shown in Figure 1.1,

More information

Laboratory 0 Week 0 Advanced Structured Programming An Introduction to Visual Studio and C++

Laboratory 0 Week 0 Advanced Structured Programming An Introduction to Visual Studio and C++ Laboratory 0 Week 0 Advanced Structured Programming An Introduction to Visual Studio and C++ 0.1 Introduction This is a session to familiarize working with the Visual Studio development environment. It

More information

BASICS OF THE RENESAS SYNERGY TM

BASICS OF THE RENESAS SYNERGY TM BASICS OF THE RENESAS SYNERGY TM PLATFORM Richard Oed 2018.11 02 CHAPTER 9 INCLUDING A REAL-TIME OPERATING SYSTEM CONTENTS 9 INCLUDING A REAL-TIME OPERATING SYSTEM 03 9.1 Threads, Semaphores and Queues

More information

QNX Software Development Platform 6.6. Quickstart Guide

QNX Software Development Platform 6.6. Quickstart Guide QNX Software Development Platform 6.6 QNX Software Development Platform 6.6 Quickstart Guide 2005 2014, QNX Software Systems Limited, a subsidiary of BlackBerry. All rights reserved. QNX Software Systems

More information

C Windows 16. Visual C++ VC Borland C++ Compiler BCC 2. Windows. c:\develop

C Windows 16. Visual C++ VC Borland C++ Compiler BCC 2. Windows. c:\develop Windows Ver1.01 1 VC BCC DOS C C Windows 16 Windows98/Me/2000/XP MFC SDL Easy Link Library Visual C++ VC Borland C++ Compiler BCC 2 2 VC MFC VC VC BCC Windows DOS MS-DOS VC BCC VC BCC VC 2 BCC5.5.1 c:\develop

More information

Application Note: AN00152 xscope - Bi-Directional Endpoint

Application Note: AN00152 xscope - Bi-Directional Endpoint Application Note: AN00152 xscope - Bi-Directional Endpoint This application note shows how to create a simple example which uses the XMOS xscope application trace system to provide bi-directional communication

More information

Debugging in AVR32 Studio

Debugging in AVR32 Studio Embedded Systems for Mechatronics 1, MF2042 Tutorial Debugging in AVR32 Studio version 2011 10 04 Debugging in AVR32 Studio Debugging is a very powerful tool if you want to have a deeper look into your

More information

An Introduction to Windows Programming Using VC++ Computer Graphics. Binghamton University. EngiNet. Thomas J. Watson

An Introduction to Windows Programming Using VC++ Computer Graphics. Binghamton University. EngiNet. Thomas J. Watson Binghamton University EngiNet State University of New York EngiNet Thomas J. Watson School of Engineering and Applied Science WARNING All rights reserved. No Part of this video lecture series may be reproduced

More information

RVDS 3.0 Introductory Tutorial

RVDS 3.0 Introductory Tutorial RVDS 3.0 Introductory Tutorial 338v00 RVDS 3.0 Introductory Tutorial 1 Introduction Aim This tutorial provides you with a basic introduction to the tools provided with the RealView Development Suite version

More information

CS520 Setting Up the Programming Environment for Windows Suresh Kalathur. For Windows users, download the Java8 SDK as shown below.

CS520 Setting Up the Programming Environment for Windows Suresh Kalathur. For Windows users, download the Java8 SDK as shown below. CS520 Setting Up the Programming Environment for Windows Suresh Kalathur 1. Java8 SDK Java8 SDK (Windows Users) For Windows users, download the Java8 SDK as shown below. The Java Development Kit (JDK)

More information

Font. Overview. ID3DXFont. ID3DXFont. ID3DXFont 인터페이스를이용해텍스트를렌더링하는방법

Font. Overview. ID3DXFont. ID3DXFont. ID3DXFont 인터페이스를이용해텍스트를렌더링하는방법 Overview Font 인터페이스를이용해텍스트를렌더링하는방법 클래스를이용해텍스트를렌더링하는방법 초당렌더링되는프레임수 (fps) 를계산하는방법 D3DXCreateText 함수를이용해 3D 텍스트를만들고렌더링하는방법 305890 2009년봄학기 5/6/2009 박경신 글꼴출력방법 내부적으로 GDI를이용. 복잡한글꼴과포맷을지원함. GDI가아닌Direct3D를이용.

More information

BASICS OF THE RENESAS SYNERGY PLATFORM

BASICS OF THE RENESAS SYNERGY PLATFORM BASICS OF THE RENESAS SYNERGY PLATFORM TM Richard Oed 2017.12 02 CHAPTER 9 INCLUDING A REAL-TIME OPERATING SYSTEM CONTENTS 9 INCLUDING A REAL-TIME OPERATING SYSTEM 03 9.1 Threads, Semaphores and Queues

More information

Tutorial 9:Child Window Controls

Tutorial 9:Child Window Controls Tutorial 9:Child Window Controls This win32 tutorial was created and written by Iczelion for MASM32. It was translated for use by HLA High Level Assembly) users by Randall Hyde. All original copyrights

More information

CANape ASAM-MCD3 Interface Version Application Note AN-AMC-1-103

CANape ASAM-MCD3 Interface Version Application Note AN-AMC-1-103 Version 3.2 2018-06-19 Application Note AN-AMC-1-103 Author Restrictions Abstract Vector Informatik GmbH Public Document This is document is a general introduction explaining the CANape ASAM-MCD3 Interface

More information

We take a look at implementing some file menu options: New, Open, Save, Save As and Exit.

We take a look at implementing some file menu options: New, Open, Save, Save As and Exit. 1 Programming Windows Terry Marris Jan 2013 7 Files We take a look at implementing some file menu options: New, Open, Save, Save As and Exit. 7.1 Header File The header file is largely unchanged from chapter

More information

Tools Basics. Getting Started with Renesas Development Tools R8C/3LX Family

Tools Basics. Getting Started with Renesas Development Tools R8C/3LX Family Getting Started with Renesas Development Tools R8C/3LX Family Description: The purpose of this lab is to allow a user new to the Renesas development environment to quickly come up to speed on the basic

More information

ICL02: Security Analytics: Discover More in your Endpoint Protection Dashboard Hands-On Lab

ICL02: Security Analytics: Discover More in your Endpoint Protection Dashboard Hands-On Lab ICL02: Security Analytics: Discover More in your Endpoint Protection Dashboard Hands-On Lab Description In this lab you will learn how to install and create custom reports and dashboards using IT Analytics

More information

ADC Data Capture using Capture Demo and CCS Memory Browser IWR14xx/AWR14xx example. Document Version V

ADC Data Capture using Capture Demo and CCS Memory Browser IWR14xx/AWR14xx example. Document Version V ADC Data Capture using Capture Demo and CCS Memory Browser IWR14xx/AWR14xx example Document Version V1.00 0821 1.1 Flashing CCS debug firmware 1. Put the EVM in flashing mode by connecting jumpers on SOP0

More information

Enterprise Architect. User Guide Series. Hybrid Scripting. Author: Sparx Systems. Date: 26/07/2018. Version: 1.0 CREATED WITH

Enterprise Architect. User Guide Series. Hybrid Scripting. Author: Sparx Systems. Date: 26/07/2018. Version: 1.0 CREATED WITH Enterprise Architect User Guide Series Hybrid Scripting Author: Sparx Systems Date: 26/07/2018 Version: 1.0 CREATED WITH Table of Contents Hybrid Scripting 3 C# Example 5 Java Example 7 Hybrid Scripting

More information

Introduction to C/C++ Programming

Introduction to C/C++ Programming Chapter 1 Introduction to C/C++ Programming This book is about learning numerical programming skill and the software development process. Therefore, it requires a lot of hands-on programming exercises.

More information

Required Setup for 32-bit Applications

Required Setup for 32-bit Applications 1 of 23 8/25/2015 09:30 Getting Started with MASM and Visual Studio 2012 Updated 4/6/2015. This tutorial shows you how to set up Visual Studio 2012 (including Visual Studio 2012 Express for Windows Desktop)

More information

Threads in Java. Threads (part 2) 1/18

Threads in Java. Threads (part 2) 1/18 in Java are part of the Java language. There are two ways to create a new thread of execution. Declare a class to be a subclass of Thread. This subclass should override the run method of class Thread.

More information

HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS

HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS INTRODUCTION A program written in a computer language, such as C/C++, is turned into executable using special translator software.

More information

Copyright 2012 Pulse Systems, Inc. Page 1 of 29

Copyright 2012 Pulse Systems, Inc. Page 1 of 29 Use the CCD Control to receive and distribute a patient's "Continuity of Care Document" which contains the recorded medical history from a particular facility. Click anywhere to continue Copyright 2012

More information

Tutorial 7: Mouse Input

Tutorial 7: Mouse Input Tutorial 7: Mouse Input This win32 tutorial was created and written by Iczelion for MASM32. It was translated for use by HLA (High Level Assembly) users by Randall Hyde. All original copyrights and other

More information

Hands-On Lab. Version Checking - Native. Lab version: 1.0.0

Hands-On Lab. Version Checking - Native. Lab version: 1.0.0 Hands-On Lab Version Checking - Native Lab version: 1.0.0 Last updated: 12/3/2010 CONTENTS OVERVIEW... 3 EXERCISE 1: UNDERSTANDING VERSION CHECKING... 4 Task 1 Review and Compile the Broken Application...

More information

5.4.8 Lab: Managing System Files with Built-in Utilities in Windows XP

5.4.8 Lab: Managing System Files with Built-in Utilities in Windows XP 5.4.8 Lab: Managing System Files with Built-in Utilities in Windows XP Introduction Print and complete this lab. In this lab, you will use Windows built-in utilities to gather information about the system

More information

Figure 1. Simplicity Studio

Figure 1. Simplicity Studio SIMPLICITY STUDIO USER S GUIDE 1. Introduction Simplicity Studio greatly reduces development time and complexity with Silicon Labs EFM32 and 8051 MCU products by providing a high-powered IDE, tools for

More information

Getting Started with Visual Studio

Getting Started with Visual Studio Getting Started with Visual Studio Visual Studio is a sophisticated but easy to use integrated development environment (IDE) for C++ (and may other languages!) You will see that this environment recognizes

More information

CSE 101 Introduction to Computers Development / Tutorial / Lab Environment Setup

CSE 101 Introduction to Computers Development / Tutorial / Lab Environment Setup CSE 101 Introduction to Computers Development / Tutorial / Lab Environment Setup Purpose: The purpose of this lab is to setup software that you will be using throughout the term for learning about Python

More information

As CCS starts up, a splash screen similar to one shown below will appear.

As CCS starts up, a splash screen similar to one shown below will appear. APPENDIX A. CODE COMPOSER STUDIO (CCS) v6.1: A BRIEF TUTORIAL FOR THE DSK6713 A.1 Introduction Code Composer Studio (CCS) is Texas Instruments Eclipse-based integrated development environment (IDE) for

More information

Visual Studio.NET. Although it is possible to program.net using only the command OVERVIEW OF VISUAL STUDIO.NET

Visual Studio.NET. Although it is possible to program.net using only the command OVERVIEW OF VISUAL STUDIO.NET Chapter. 03 9/17/01 6:08 PM Page 35 Visual Studio.NET T H R E E Although it is possible to program.net using only the command line compiler, it is much easier and more enjoyable to use Visual Studio.NET.

More information