summaryrefslogtreecommitdiffstats
path: root/Sensor Watch Starter Project/hal/documentation
diff options
context:
space:
mode:
Diffstat (limited to 'Sensor Watch Starter Project/hal/documentation')
-rw-r--r--Sensor Watch Starter Project/hal/documentation/adc_sync.rst74
-rw-r--r--Sensor Watch Starter Project/hal/documentation/calendar.rst72
-rw-r--r--Sensor Watch Starter Project/hal/documentation/ext_irq.rst39
-rw-r--r--Sensor Watch Starter Project/hal/documentation/i2c_master_sync.rst87
-rw-r--r--Sensor Watch Starter Project/hal/documentation/pwm.rst53
-rw-r--r--Sensor Watch Starter Project/hal/documentation/slcd_sync.rst82
6 files changed, 0 insertions, 407 deletions
diff --git a/Sensor Watch Starter Project/hal/documentation/adc_sync.rst b/Sensor Watch Starter Project/hal/documentation/adc_sync.rst
deleted file mode 100644
index d189565a..00000000
--- a/Sensor Watch Starter Project/hal/documentation/adc_sync.rst
+++ /dev/null
@@ -1,74 +0,0 @@
-======================
-ADC Synchronous driver
-======================
-
-An ADC (Analog-to-Digital Converter) converts analog signals to digital values.
-A reference signal with a known voltage level is quantified into equally
-sized chunks, each representing a digital value from 0 to the highest number
-possible with the bit resolution supported by the ADC. The input voltage
-measured by the ADC is compared against these chunks and the chunk with the
-closest voltage level defines the digital value that can be used to represent
-the analog input voltage level.
-
-Usually an ADC can operate in either differential or single-ended mode.
-In differential mode two signals (V+ and V-) are compared against each other
-and the resulting digital value represents the relative voltage level between
-V+ and V-. This means that if the input voltage level on V+ is lower than on
-V- the digital value is negative, which also means that in differential
-mode one bit is lost to the sign. In single-ended mode only V+ is compared
-against the reference voltage, and the resulting digital value can only be
-positive, but the full bit-range of the ADC can be used.
-
-Usually multiple resolutions are supported by the ADC, lower resolution can
-reduce the conversion time, but lose accuracy.
-
-Some ADCs has a gain stage on the input lines which can be used to increase the
-dynamic range. The default gain value is usually x1, which means that the
-conversion range is from 0V to the reference voltage.
-Applications can change the gain stage, to increase or reduce the conversion
-range.
-
-The window mode allows the conversion result to be compared to a set of
-predefined threshold values. Applications can use callback function to monitor
-if the conversion result exceeds predefined threshold value.
-
-Usually multiple reference voltages are supported by the ADC, both internal and
-external with difference voltage levels. The reference voltage have an impact
-on the accuracy, and should be selected to cover the full range of the analog
-input signal and never less than the expected maximum input voltage.
-
-There are two conversion modes supported by ADC, single shot and free running.
-In single shot mode the ADC only make one conversion when triggered by the
-application, in free running mode it continues to make conversion from it
-is triggered until it is stopped by the application. When window monitoring,
-the ADC should be set to free running mode.
-
-Features
---------
-* Initialization and de-initialization
-* Support multiple Conversion Mode, Single or Free run
-* Start ADC Conversion
-* Read Conversion Result
-
-Applications
-------------
-* Measurement of internal sensor. E.g., MCU internal temperature sensor value.
-* Measurement of external sensor. E.g., Temperature, humidity sensor value.
-* Sampling and measurement of a signal. E.g., sinusoidal wave, square wave.
-
-Dependencies
-------------
-* ADC hardware
-
-Concurrency
------------
-N/A
-
-Limitations
------------
-N/A
-
-Knows issues and workarounds
-----------------------------
-N/A
-
diff --git a/Sensor Watch Starter Project/hal/documentation/calendar.rst b/Sensor Watch Starter Project/hal/documentation/calendar.rst
deleted file mode 100644
index 8a3de6e8..00000000
--- a/Sensor Watch Starter Project/hal/documentation/calendar.rst
+++ /dev/null
@@ -1,72 +0,0 @@
-===============================
-The Calendar driver (bare-bone)
-===============================
-
-The Calendar driver provides means to set and get current date and time.
-After enabling, an instance of the driver starts counting time from the base date with
-the resolution of one second. The default base date is 00:00:00 1st of January 1970.
-Only the base year of the base date can be changed via the driver API.
-
-The current date and time is kept internally in a relative form as the difference between
-current date and time and the base date and time. This means that changing the base year changes
-current date.
-
-The base date and time defines time "zero" or the earliest possible point in time that the calender driver can describe,
-this means that current time and alarms can not be set to anything earlier than this time.
-
-The Calendar driver provides alarm functionality.
-An alarm is a software trigger which fires on particular date and time with particular periodicity.
-Upon firing the given callback function is called.
-
-An alarm can be in single-shot mode, firing only once at matching time; or in repeating mode, meaning that it will
-reschedule a new alarm automatically based on repeating mode configuration.
-In single-shot mode an alarm is removed from the alarm queue before its callback is called. It allows an application to
-reuse the memory of expired alarm in the callback.
-
-An alarm can be triggered on the following events: match on second, minute, hour, day, month or year.
-Matching on second means that the alarm is triggered when the value of seconds of the current time is equal to
-the alarm's value of seconds. This means repeating alarm with match on seconds is triggered with the period of a minute.
-Matching on minute means that the calendars minute and seconds values has to match the alarms, the rest of the date-time
-value is ignored. In repeating mode this means a new alarm every hour.
-The same logic is applied to match on hour, day, month and year.
-
-Each instance of the Calendar driver supports infinite amount of software alarms, only limited by the amount of RAM available.
-
-Features
---------
-* Initialization and de-initialization
-* Enabling and disabling
-* Date and time operations
-* Software alarms
-
-Applications
-------------
-* A source of current date and time for an embedded system.
-* Periodical functionality in low-power applications since the driver is designed to use 1Hz clock.
-* Periodical function calls in case if it is more convenient to operate with absolute time.
-
-Dependencies
-------------
-* This driver expects a counter to be increased by one every second to count date and time correctly.
-* Each instance of the driver requires separate hardware timer.
-
-Concurrency
------------
-The Calendar driver is an interrupt driven driver.This means that the interrupt that triggers an alarm may occur during
-the process of adding or removing an alarm via the driver's API. In such case the interrupt processing is postponed
-until the alarm adding or removing is complete.
-
-The alarm queue is not protected from the access by interrupts not used by the driver. Due to this
-it is not recommended to add or remove an alarm from such interrupts: in case if a higher priority interrupt supersedes
-the driver's interrupt, adding or removing an alarm may cause unpredictable behavior of the driver.
-
-Limitations
------------
-* Only years divisible by 4 are deemed a leap year, this gives a correct result between the years 1901 to 2099.
-* The driver is designed to work outside of an operating system environment, the software alarm queue is therefore processed in interrupt context which may delay execution of other interrupts.
-* If there are a lot of frequently called interrupts with the priority higher than the driver's one, it may cause delay in alarm's triggering.
-* Changing the base year or setting current date or time does not shift alarms' date and time accordingly or expires alarms.
-
-Knows issues and workarounds
-----------------------------
-Not applicable
diff --git a/Sensor Watch Starter Project/hal/documentation/ext_irq.rst b/Sensor Watch Starter Project/hal/documentation/ext_irq.rst
deleted file mode 100644
index 7dcdc7c5..00000000
--- a/Sensor Watch Starter Project/hal/documentation/ext_irq.rst
+++ /dev/null
@@ -1,39 +0,0 @@
-==============
-EXT IRQ driver
-==============
-
-The External Interrupt driver allows external pins to be
-configured as interrupt lines. Each interrupt line can be
-individually masked and can generate an interrupt on rising,
-falling or both edges, or on high or low levels. Some of
-external pin can also be configured to wake up the device
-from sleep modes where all clocks have been disabled.
-External pins can also generate an event.
-
-Features
---------
-* Initialization and de-initialization
-* Enabling and disabling
-* Detect external pins interrupt
-
-Applications
-------------
-* Generate an interrupt on rising, falling or both edges,
- or on high or low levels.
-
-Dependencies
-------------
-* GPIO hardware
-
-Concurrency
------------
-N/A
-
-Limitations
------------
-N/A
-
-Knows issues and workarounds
-----------------------------
-N/A
-
diff --git a/Sensor Watch Starter Project/hal/documentation/i2c_master_sync.rst b/Sensor Watch Starter Project/hal/documentation/i2c_master_sync.rst
deleted file mode 100644
index 77b4f6e9..00000000
--- a/Sensor Watch Starter Project/hal/documentation/i2c_master_sync.rst
+++ /dev/null
@@ -1,87 +0,0 @@
-=============================
-I2C Master synchronous driver
-=============================
-
-I2C (Inter-Integrated Circuit) is a two wire serial interface usually used
-for on-board low-speed bi-directional communication between controllers and
-peripherals. The master device is responsible for initiating and controlling
-all transfers on the I2C bus. Only one master device can be active on the I2C
-bus at the time, but the master role can be transferred between devices on the
-same I2C bus. I2C uses only two bidirectional open-drain lines, usually
-designated SDA (Serial Data Line) and SCL (Serial Clock Line), with pull up
-resistors.
-
-The stop condition is automatically controlled by the driver if the I/O write and
-read functions are used, but can be manually controlled by using the
-i2c_m_sync_transfer function.
-
-Often a master accesses different information in the slave by accessing
-different registers in the slave. This is done by first sending a message to
-the target slave containing the register address, followed by a repeated start
-condition (no stop condition between) ending with transferring register data.
-This scheme is supported by the i2c_m_sync_cmd_write and i2c_m_sync_cmd_read
-function, but limited to 8-bit register addresses.
-
-I2C Modes (standard mode/fastmode+/highspeed mode) can only be selected in
-Atmel Start. If the SCL frequency (baudrate) has changed run-time, make sure to
-stick within the SCL clock frequency range supported by the selected mode.
-The requested SCL clock frequency is not validated by the
-i2c_m_sync_set_baudrate function against the selected I2C mode.
-
-Features
---------
-
- * I2C Master support
- * Initialization and de-initialization
- * Enabling and disabling
- * Run-time bus speed configuration
- * Write and read I2C messages
- * Slave register access functions (limited to 8-bit address)
- * Manual or automatic stop condition generation
- * 10- and 7- bit addressing
- * I2C Modes supported
- +----------------------+-------------------+
- |* Standard/Fast mode | (SCL: 1 - 400kHz) |
- +----------------------+-------------------+
- |* Fastmode+ | (SCL: 1 - 1000kHz)|
- +----------------------+-------------------+
- |* Highspeed mode | (SCL: 1 - 3400kHz)|
- +----------------------+-------------------+
-
-Applications
-------------
-
-* Transfer data to and from one or multiple I2C slaves like I2C connected sensors, data storage or other I2C capable peripherals
-* Data communication between micro controllers
-* Controlling displays
-
-Dependencies
-------------
-
-* I2C Master capable hardware
-
-Concurrency
------------
-
-N/A
-
-Limitations
------------
-
-General
-^^^^^^^
-
- * System Managmenet Bus (SMBus) not supported.
- * Power Management Bus (PMBus) not supported.
-
-Clock considerations
-^^^^^^^^^^^^^^^^^^^^
-
-The register value for the requested I2C speed is calculated and placed in the correct register, but not validated if it works correctly with the clock/prescaler settings used for the module. To validate the I2C speed setting use the formula found in the configuration file for the module. Selectable speed is automatically limited within the speed range defined by the I2C mode selected.
-
-Known issues and workarounds
-----------------------------
-
-N/A
-
-
diff --git a/Sensor Watch Starter Project/hal/documentation/pwm.rst b/Sensor Watch Starter Project/hal/documentation/pwm.rst
deleted file mode 100644
index 71785c63..00000000
--- a/Sensor Watch Starter Project/hal/documentation/pwm.rst
+++ /dev/null
@@ -1,53 +0,0 @@
-The PWM Driver(bare-bone)
-=========================
-
-Pulse-width modulation (PWM) is used to create an analog behavior
-digitally by controlling the amount of power transferred to the
-connected peripheral. This is achieved by controlling the high period
-(duty-cycle) of a periodic signal.
-
-User can change the period or duty cycle whenever PWM is running. The
-function pwm_set_parameters is used to configure these two parameters.
-Note these are raw register values and the parameter duty_cycle means
-the period of first half during one cycle, which should be not beyond
-total period value.
-
-In addition, user can also get multi PWM channels output from different
-peripherals at the same time, which is implemented more flexible by the
-function pointers.
-
-Features
---------
-
-* Initialization/de-initialization
-* Enabling/disabling
-* Run-time control of PWM duty-cycle and period
-* Notifications about errors and one PWM cycle is done
-
-Applications
-------------
-
-Motor control, ballast, LED, H-bridge, power converters, and
-other types of power control applications.
-
-Dependencies
-------------
-
-The peripheral which can perform waveform generation like frequency
-generation and pulse-width modulation, such as Timer/Counter.
-
-Concurrency
------------
-
-N/A
-
-Limitations
------------
-
-The current driver doesn't support the features like recoverable,
-non-recoverable faults, dithering, dead-time insertion.
-
-Known issues and workarounds
-----------------------------
-
-N/A
diff --git a/Sensor Watch Starter Project/hal/documentation/slcd_sync.rst b/Sensor Watch Starter Project/hal/documentation/slcd_sync.rst
deleted file mode 100644
index e18aa9dd..00000000
--- a/Sensor Watch Starter Project/hal/documentation/slcd_sync.rst
+++ /dev/null
@@ -1,82 +0,0 @@
-
-SLCD Synchronous driver
-=======================
-
-An LCD display is made of several segments (pixels or complete symbols) which
-can be block light or let light through. In each segment is one electrode
-connected to the common terminal (COM pin) and one is connected to the segment
-terminal (SEG pin). When a voltage above a certain threshold level is applied
-across the liquid crystal, it will change orientation and either let light
-through or block it.
-
-The driver supports segment on/off/blink, animation and character display.
-
-Each segment has a unique int32 segment id which is used by the driver. The id is
-combined by common number(COM) and segment number(SEG), the COM and SEG start from 0.
-The unique segment id is calculated by this formula: (COM << 16) | SEG
-For example a 8(coms)*8(segments)SLCD, the unique segment id for segment should be
-
- +-----+-----+---------+
- | COM | SEG | ID |
- +-----+-----+---------+
- | 0 | 0 | 0x00000 |
- +-----+-----+---------+
- | 1 | 0 | 0x10000 |
- +-----+-----+---------+
- | 7 | 7 | 0x70007 |
- +-----+-----+---------+
-
-Segment ID can be calculated using the pre-defined macro SLCD_SEGID(com, seg).
-
-For character display, the "segment character mapping table" and "character mapping table"
-should be setup in configuration. The driver have no API to setup/change those
-mapping setting.
-There are two pre-defined "segment character mapping table" in this driver, 7 segments
-and 14 segments. The 7 segment character mapping can display 0-9 and a-f, the 14
-segments character mapping can display 0-9, A-Z and some special ASCII, for more
-details please refer to hpl_slcd_cm_7_seg_mapping.h and hpl_slcd_cm_14_seg_mapping.h.
-Application can also adjust this mapping table in the configuration header file,
-to add more character mapping or remove some unused character.
-
-The "character mapping" is used to setup each character in SLCD display screen.
-The driver supports multiple character mapping, the max number varies on different
-MCU/MPU. For example if an LCD display screen has five "7-segments character" and
-eight "14-segments character", and the MCU support max 44 characters setting, then
-the 13 character should be setup in configuration. Application can select any
-position from those 44 characters setting to save those 13 character.
-The index of character setting will be used in the driver API. For example:
-five "7-segments character" setting to 0 to 4 and eight "14-segments character" setting
-to 10 to 17. Then the application can use index from 0 to 4 to display the
-"7-segments character" and use index from 10 to 14 to display "14-segments character".
-
-Features
---------
-
-* Initialization and de-initialization
-* Enabling and Disabling
-* Switching segment on/off
-* Set segment blink
-* Autonomous animation
-* Character display
-
-Applications
-------------
-* SLCD display control, segment on/off/blink
-* Play battery animation, running wheel, wifi signal, etc.
-* Display Time Clock by 7 segments character mapping
-* Display ASCII character by 14 segments character mapping
-
-Dependencies
-------------
-* SLCD capable hardware
-
-Concurrency
------------
-N/A
-
-Limitations
------------
-
-Known issues and workarounds
-----------------------------
-N/A