Software API Library. User s Manual V1.3

Similar documents
User Manual SUSI 4.0. Secured & Unified Smart Interface Software APIs

User Manual. SUSI IoT. Secured & Unified Smart Interface Software for Internet of Things APIs

This resource describes how to program the myrio in C to perform timer interrupts.

Anybus CompactCom. Host Application Implementation Guide. Doc.Id. HMSI Doc. Rev Connecting DevicesTM

EMBEDDED SOFTWARE DEVELOPMENT WITH ECOS. Other ecos Architecture Components

Interrupts in Zynq Systems

User Manual. SUSI Library

Dotstack Porting Guide.

SIMATIC Industrial software Readme SIMATIC S7-PLCSIM Advanced V2.0 SP1 Readme

SISTEMI EMBEDDED AA 2012/2013. SOPC Nios II Interval Timer Core

USB BF70x Audio 1.0 Library v.1.2 Users Guide Users Guide Revision 1.3. For Use With Analog Devices ADSP-BF70x Series Processors

Anybus CompactCom. Host Application Implementation Guide HMSI ENGLISH

Chapter 2. Overview of Architecture and Microcontroller-Resources

CLD BF70x CDC Library v.1.3 Users Guide Users Guide Revision 1.3. For Use With Analog Devices ADSP-BF70x Series Processors. Closed Loop Design, LLC

SAM4 Reset Controller (RSTC)

ECE 372 Microcontroller Design Parallel IO Ports - Interrupts. ECE 372 Microcontroller Design Parallel IO Ports - Interrupts

Talend User Component truntask

Lab Assignment: Interrupt + Lookup Tables + Binary

Vive Input Utility Developer Guide

dotstack integration with STM32F4 & FreeRTOS.

Visual Profiler. User Guide

Configuring Embedded Event Manager

CLD SC58x CDC Library v.1.00 Users Guide Users Guide Revision For Use With Analog Devices ADSP-SC58x Series Processors. Closed Loop Design, LLC

Developer Documentation

Module 1. Introduction:

DALI 2 Framework Design Document Introduction System Requirements Hardware Requirements Software Requirements...

USB BF70x Bulk Library v.1.1 Users Guide Users Guide Revision 1.1. For Use With Analog Devices ADSP-BF70x Series Processors. Closed Loop Design, LLC

System Monitoring Library Windows driver software for Classembly Devices

Power Profiles V2 Framework Module Guide

AFRecorder 4800R Serial Port Programming Interface Description For Software Version 9.5 (Last Revision )

RX Family APPLICATION NOTE. Simple I 2 C Module Using Firmware Integration Technology. Introduction. Target Device.

Nano102/112 Series Errata Sheet

SECTION 7 SYSTEM INTEGRATION MODULE

Configuring Embedded Event Manager

Connectivity Framework Reference Manual

SpiNNaker Application Programming Interface (API)

Real Time Embedded Systems. Lecture 1 January 17, 2012

Tape Channel Analyzer Windows Driver Spec.

Input/Output Programming

Data Structures. Home

AD916x API Specification Rev 1.0

USB-910H API DLL and Include File Reference Manual

System Monitoring Library Linux Driver Software for Classembly Devices(R)

User Manual imanager & Software API

AD9164 API Specification Rev 1.0

Console Framework Module Guide

BASICS OF THE RENESAS SYNERGY PLATFORM

TMS320F28335, 28334, Flash APIs

TMS320F2810, TMS320F2811, and TMS320F2812 Flash APIs. Version 2.10

AT03255: SAM D/R/L/C Serial Peripheral Interface (SERCOM SPI) Driver. Introduction. SMART ARM-based Microcontrollers APPLICATION NOTE

EEL 4744C: Microprocessor Applications. Lecture 7. Part 2. M68HC12 Interrupt. Dr. Tao Li 1

SISTEMI EMBEDDED. (Software) Exceptions and (Hardware) Interrupts. Federico Baronti Last version:

4) In response to the the 8259A sets the highest priority ISR, bit and reset the corresponding IRR bit. The 8259A also places

CUDA Toolkit CUPTI User's Guide. DA _v01 September 2012

Creating a New USB project with KSDK and Processor Expert support in KDS

AET60 BioCARDKey. Application Programming Interface. Subject to change without prior notice

LotOS Framework. Getting Started Guide for Banana Pi. Copyright (C) 2015 ilbers GmbH Revision 1.1,

Watchdog User Guide. Document type: Manual, Version: 1.2, Date: DEWESoft d.o.o. Gabrsko 11a, 1420 Trbovlje, Slovenia

Airence C Library v1.2 for Windows

TIP670-SW-95. QNX-Neutrino Device Driver. User Manual. The Embedded I/O Company. Digital I/O. Version 1.0.x. Issue August 2008.

Programming Guide. WISE-PaaS/RMM 3.2. Wireless IoT Sensing Embedded Agent WISE-Agent Programming Guide

Mark Redekopp, All rights reserved. EE 357 Unit 10b. Interrupts Timers

VS10XX REAL-TIME MIDI INPUT

SPI Framework Module Guide

Configuring WO Automation for Radio for TuneGenie

BASICS OF THE RENESAS SYNERGY TM

COEN-4720 Embedded Systems Design Lecture 4 Interrupts (Part 1) Cristinel Ababei Dept. of Electrical and Computer Engineering Marquette University

Grundlagen Microcontroller Interrupts. Günther Gridling Bettina Weiss

AN433: CP2110/4 HID-to-UART API Specification

PICkit Serial DLL (PICkitS.dll) Function Prototypes

PICkit Serial DLL (PICkitS.dll) Function Prototypes

CS12020 for CGVG. Practical 2. Jim Finnis

CENG-336 Introduction to Embedded Systems Development. Timers

USB BF70x HID Library v.1.1 Users Guide Users Guide Revision 1.1. For Use With Analog Devices ADSP-BF70x Series Processors. Closed Loop Design, LLC

Design Brief 205 Understanding the Anadigm Boot Kernel (ABK)

Module Introduction. PURPOSE: The intent of this module is to explain MCU processing of reset and interrupt exception events.

UM2379. The BlueNRG-1, BlueNRG-2 radio driver. User manual. Introduction

FACULTY OF ENGINEERING LAB SHEET

Technical Note. Software Driver for M29EW NOR Flash Memory. Introduction. TN-13-12: Software Driver for M29EW NOR Flash Memory.

The system has sixteen mailboxes. They are accessed through 32 register.

original M68K requests/priorities Interrupts to execute important code interrupts (n will always be I) I-bits bits in SR accomplish this

CUDA DEBUGGER API. TRM _v7.0 March API Reference Manual

User Application. HID to UART Library. HID Driver (Provided by OS) USB Root Hub USB. CP2114 USB Audio-I2S Digital Audio Bridge

INTERRUPTS in microprocessor systems

F2MC-8FX EEPROM Library

PD215 Mechatronics. Week 3/4 Interfacing Hardware and Communication Systems

Architectural Support for Operating Systems. Jinkyu Jeong ( Computer Systems Laboratory Sungkyunkwan University

CUDA DEBUGGER API. TRM _v8.0 February API Reference Manual

Interrupts and Low Power Features

Development Board (Quick start) LDM-MCp Q208 Evolution

VueMetrix Firmware Uploader

One 32-bit counter that can be free running or generate periodic interrupts

Developing Reusable Device Drivers for MCU's

SPI topics: watchdog, serial output and parity check

Bare Metal Application Design, Interrupts & Timers

QCOM Reference Guide

Programming with the Service Control Engine Subscriber Application Programming Interface

SIM900_Embedded AT Application Note_V1.01

Wait 456±10ms. Unscrambled ONES in high band. Fig. 1. V.22 Connect Handshake. * Guard tones are country dependent

Embedded Systems. 3. Hardware Software Interface. Lothar Thiele. Computer Engineering and Networks Laboratory

Transcription:

Software API Library User s Manual V1.3

1

Introduction When developers want to write an application that involves hardware access, they have to study the specifications to write the drivers. This is a time-consuming job and requires lots of expertise. Pro-face has done all the hard work for our customers with the release of a suite of APIs (Application Programming Interfaces), called the Pro-face Software API. Pro-face Software API provides not only the underlying drivers required but also a rich set of user-friendly, intelligent and integrated interfaces, which speeds development, enhances security and offers add-on value for Pro-face platforms. Pro-face Software API plays the role of catalyst between developer and solution, and makes Pro-face embedded platforms easier and simpler to adopt and operate with customer applications. \Program Files\Pro-face\SDK\SUSI4\lib\x86\Susi4.dll \Program Files\Pro-face\SDK\SUSI4\lib\x86\Susi4.lib \Program Files\Pro-face\SDK\SUSI4\include\OsDeclarations.h \Program Files\Pro-face\SDK\SUSI4\include\Susi4.h Software API Functions Initialization Functions 1. SusiLibInitialize uint32_t SUSI_API SusiLibInitialize(void) General initialization of the SUSI API. Prior to calling any SUSI API function the library needs to be initialized by calling this function. The status code for all SUSI API function will be unless this function is called. None Library initialized SUSI_STATUS_INITIALIZED 2

Library initial fail 2. SusiLibUninitialize uint32_t SUSI_API SusiLibUninitialize(void) General function to uninitialized the SUSI API library that should be called before program exit. In a dynamic library environment this function is not expected to replace the native uninitialized routines. It is expected that in this environments this function has no functionality. None GPIO Functions (Support only N2600 model) Programmable GPIO allows developers to dynamically set the GPIO input or output status Table 1 GPIO ID SUSI_ID_GPIO(X) SUSI_ID_GPIO_BANK(Y) Description X is GPIO pin number, definition as below: #define SUSI_ID_GPIO(x) (0x0000 x) This ID control single pin only. Y is GPIO bank number, definition as below: #define SUSI_ID_GPIO_BANK(Y) (0x10000 Y) This ID control maximum 32 pins per bank. N2600 support only BANK 0(0x10000). 1. SusiGPIOGetCaps uint32_t SUSI_API SusiGPIOGetCaps(uint32_t, uint32_t Item, uint32_t *pvalue) Reads the capabilities of the current GPIO implementation from the selected GPIO interface. 3

Selects target device. See Table 1. Item Selects target capability. See Table 2. pvalue Pointer to a buffer that receives the target capability. pvalue==null Unknown Table 2 GPIO capabilities item Item SUSI_ID_GPIO_INPUT_SUPPORT SUSI_ID_GPIO_OUTPUT_SUPPORT Description Get GPIO input support state Get GPIO output support state 2. SusiGPIOGetDirection uint32_t SUSI_API SusiGPIOGetDirection(uint32_t, uint32_t Bitmask, uint32_t *pdirection) Reads the capabilities of the current GPIO implementation from the selected GPIO interface. Selects target device. See Table 1. Bitmask Value for a bit mask. Only selected bits are changed, unselected bits remain unchanged. This parameter will be ignored when single pin mode.. pdirection Pointer to a buffer that receives the direction of the selected GPIO ports. pdirection==null Bitmask==0 when bank mode Unknown 4

3. SusiGPIOSetDirection uint32_t SUSI_API SusiGPIOSetDirection(uint32_t, uint32_t Bitmask, uint32_t Direction) Sets the configuration for the selected GPIO ports. Selects target device. See Table 1. Bitmask Value for a bit mask. Only selected bits are changed, unselected bits remain unchanged. This parameter will be ignored when single pin mode. Direction Sets the direction of the selected GPIO ports. Bitmask==0 when bank mode Unknown 4. SusiGPIOGetLevel uint32_t SUSI_API SusiGPIOGetLevel(uint32_t, uint32_t Bitmask, uint32_t *plevel) Read level the from GPIO ports. Selects target device. See Table 1. Bitmask Value for a bit mask. Only selected bits are changed, unselected bits remain unchanged. This parameter will be ignored when single pin mode. plevel Pointer to a buffer that receives the GPIO level. plevel==null Bitmask==0 when bank mode Unknown 5

5. SusiGPIOSetLevel uint32_t SUSI_API SusiGPIOSetLevel(uint32_t, uint32_t Bitmask, uint32_t Level) Write level to GPIO ports. Depending on the hardware implementation writing multiple GPIO ports with the bit mask option does not guarantee a time synchronous change of the output levels.. Selects target device. See Table 1. Bitmask Value for a bit mask. Only selected bits are changed, unselected bits remain unchanged. This parameter will be ignored when single pin mode. Level Input level of the selected GPIO port. Bitmask==0 when bank mode Unknown Watchdog Functions After the watchdog timer has been start function it must be triggered within (Delay + Event Timeout) milliseconds as set with the start function, following the initial trigger every subsequent trigger must occur within (Event Timeout) milliseconds. Should trigger not be called within the relevant time limit a system reset will occur. The SUSI watchdog timer may support two stages. If the watchdog is not triggered within the event timeout, an NMI, IRQ, or hardware output will be generated. Then the reset timeout becomes active. If the watchdog timer is not triggered within the reset timeout a reset will be generated Initial timing: 6

Timing after trigger: Where: Stage A Watchdog is started. Stage B Initial Delay Period is exhausted. Stage C/F Event is triggered, NMI, IRQ, or PIN is Triggered. To Allow for possible Software Recovery. Stage D/G System is reset. Stage E Watchdog is Triggered. Trigger / Stop must be called before Stage C/F to prevent event from being generated. Trigger / Stop must be called before Stage D/G to prevent The system from being reset. Table 3 Watchdog ID SUSI_ID_WATCHDOG_1 SUSI_ID_WATCHDOG_2 SUSI_ID_WATCHDOG_3 Description First watchdog timer Second watchdog timer Third watchdog timer 1. SusiWDogGetCaps uint32_t SUSI_API SusiWDogGetCaps(uint32_t, uint32_t Item, uint32_t *pvalue) Gets watchdog capabilities. 7

Selects target device. See Table 3. Item Selects target capability. See Table 4. pvalue Pointer to a buffer that receives the target capability. pvalue==null Unknown or Item Table 4 Watchdog capabilities item Item Description SUSI_ID_WDT_DELAY_MAXIMUM The maximum delay time value SUSI_ID_WDT_DELAY_MINIMUM The minimum delay time value SUSI_ID_WDT_EVENT_MAXIMUM The maximum event time value SUSI_ID_WDT_EVENT_MINIMUM The minimum event time value SUSI_ID_WDT_RESET_MAXIMUM The maximum reset time value SUSI_ID_WDT_RESET_MINIMUM The minimum reset time value SUSI_ID_WDT_UNIT_MINIMUM The minimum unit value SUSI_ID_WDT_DELAY_TIME Current delay time setting SUSI_ID_WDT_EVENT_TIME Current event time setting SUSI_ID_WDT_RESET_TIME Current reset time setting SUSI_ID_WDT_EVENT_TYPE Current event type (Table 5) 2. SusiWDogStart uint32_t SUSI_API SusiWDogStart(uint32_t, uint32_t DelayTime, uint32_t EventTime, uint32_t ResetTime, uint32_t EventType) Start the watchdog timer and set the parameters. To adjust the parameters, the watchdog must be stopped and then start again with the new values. If the hardware implementation of the watchdog timer does not allow a setting at the exact time selected, the SUSI API selects the next possible longer timing. Selects target device. See Table 3. DelayTime Initial delay for the watchdog timer in milliseconds. EventTime Watchdog timeout interval in milliseconds to trigger an event. ResetTime Watchdog timeout interval in milliseconds to trigger a reset. EventType To select one kind of event type. See Table 5. 8

Unknown Wrong time range Table 5 Watchdog timer event type Event Type SUSI_WDT_EVENT_TYPE_NONE SUSI_WDT_EVENT_TYPE_SCI SUSI_WDT_EVENT_TYPE_IRQ SUSI_WDT_EVENT_TYPE_PWRBTN Description No event SCI event IRQ event Power button event 3. SusiWDogStop uint32_t SUSI_API SusiWDogStop(uint32_t ) Stops the operation of the watchdog timer. Selects target device. See Table 3. Unknown 4. SusiWDogTrigger uint32_t SUSI_API SusiWDogTrigger(uint32_t ) Trigger the watchdog timer. Selects target device. See Table 3. 9

Unknown 5. SusiWDogSetCallBack uint32_t SUSI_API SusiWDogSetCallBack(uint32_t, SUSI_WDT_INT_CALLBACK pfncallback, void *Context) The call back function pointer can be transmit from Application when IRQ triggered. Selects target device. See Table 3. pfncallback Call back function pointer, SUSI_WDT_INT_CALLBACK is function pointer type, it can set NULL to clear. The type definition just like show below, typedef void (*SUSI_WDT_INT_CALLBACK)(void*); Context Pointer to a user context structure for callback function. Unknown 10