My default image

Target Side Firmware experience

Most embedded systems nowadays consist of a CPU (MCU, MPU DSP, FPGA,) and a variety of sensor ICs (WiFi, NFC, ECG, PPG, Temperature) which give the PCB target board capabilities. Furthermore, variouse architectures.

My default image

CPU Architectural Experience

Although a PCB contains a variety of sensors, it contains just one CPU. The CPU is the part of the embedded system that makes decisions based on that data collected by the PCB sensors and external commands received from the user. There are a variety of architectures (MPU, MCU, DSP, GPU, FPGA) to choose from. Each architecture is built for a specific purpose and has its advantage and disadvantages. It is vital that CPU programmers know the differences when writing their application program and/or firmware. It is not the same thing writing a MPU application program as writing a MCU firmware application. Here at Embedded System Solution we have experience with the most popular CPU architectures.

Card image cap

MCU

MCUs are dedicated purpose processors which means their behavior and sense of purpose is set in stone from the factory. MCUs are low cost alternatives to MPUs.

Card image cap

MPU

MPUs is a general purpose processor which means its behavior and sense of purpose is not set in stone but instead dictated by which application is currently executing.

Card image cap

DSP

DSP are specific purpose processors that were invented for the real-time processing of continuously varying signals (audio, image, etc )that make up the real world.

My default image

GPU

GPU are specific purpose processors. They are designed to render 3D objects in real-time. Typical application include 3D gaming.


Standard on-chip Peripherals

Peripherals (a.k.a. hardware modules, hardware accelerators) are tiny independent micro-circuits embedded in a CPU die that give the CPU extra capabilities, reduces its power consumption and/or increase its processing efficiency. Constructive use of peripherals results not only reduction in embedded system power consumption but also increases CPU instruction execution throughput. Peripherals were invented/designed for off-loadable CPU tasks (simple, mundane, repetitive, sequential and non-conditinal). Whenever possible it is better to offload a off-loadable task from the CPU to the peripherals as peripherals consume much less energy than a CPU.

Card image cap

Timer

Timer peripheral generates a Timer Interrupt every x clock cycles. It can be sourced from either from CPU clock or external clock.

My default image

RTC

Real-Time Clock is a peripheral keeps track of the current time through the use of an external 32.768 quartz crystal.

My default image

WDT

WDT is a counter/timer like circuit that resets the CPU. The WDT should be used in situations where the firmware could hang.

My default image

PWM

Pulse width modulation peripheral generates a configurable square wave with configurable frequency and duty cycle.

My default image

GPIO

Digital-to-analog converter is a mixed signal peripheral which takes an CPU digital signal converts it into its analog counterpart.

My default image

ADC

Analog-to-digital converter is a mixed signal peripheral which takes an analog signal and converts it into digital counterpart for the CPU.

My default image

DAC

Digital-to-analog converter is a mixed signal peripheral which takes an CPU digital signal converts it into its analog counterpart.

My default image

Comparator

One of the most simplest and basic peripherals, a comparator compares the two analog voltages and determines which is the highest.

My default image

OpAmp

Pulse width modulation peripheral generates a configurable square wave with configurable frequency and duty cycle.

My default image

DMA

Direct memory access is an advance peripheral that handles peripheral-to-memory and memory-to-peripheral inform transfer.

My default image

LCD

Liquid Crystal Display is a hardware driver that handles the signals needed to drive a LCD.

My default image

USB

Timer peripheral generates a Timer Interrupt every x clock cycles. It can either from CPU clock, external clock or INT.


On-chip Serial Communication Peripherals for off-chip Peripherals

In many instances, its impossible to find the exact CPU-peripheral combo needed for your PCB project; either there is an excess (no problem) or absence (problem) of peripherals. Typically, the missing peripherals are either too specific or too complex. A typical solution is to use external discrete off-chip peripherals and use an on-chip serial communication peripheral. Common on-chip serial communication protocols include I2C, SPI, UART, CAN, etc.

Card image cap

I2C

CPU requires exactly two pins (CLK and DATA) to cummunicate with slave devices. CPU can communicate with up to 172 slave devices.

Card image cap

UART

CPU requires exactly two pins (TX and RX) to cumminicate with slave device. The CPU can only communicate with exactly one device.

Card image cap

SPI

CPU requires only four pins to cumminicate (MISO, MOSI, CLK & CS) with initial slave device and one additional pin for each slave device after that.

My default image

CAN

CPU requires only two pins to cumminicate (TX and RX) with slave device however it can communicate only with one.


Off-Chip Wireless transceiver peripherals

Many times it is necessary for the PCB board to communicate with the outside word. There are a variety of wireless communication protocols technologies available. Typically, the PCB "target board" communicates with a "host side" computer application. Each protocol had its advantages and disadvantages. Typically the trade off is between power consumption and data throughput. Each communication protocol has it advantages and disadvantages.

Card image cap

Bluetooth

Bluetooth communication protocol is a low power, short-range, mid data througput wireless communication protocol.

Card image cap

WiFi

WiFi communication protocol is a high power, mid-range, mid data throughput wireless communication protocol.

Card image cap

NFC

NFC communication protocol is a low power, short range, mid data throughput wireless communication protocol.

My default image

ZigBee

ZigBee communication protocol is a mid power, mid range, mid data throughput, wireless communication protocol


Off-Chip MEMS peripherals

MEMS (micro-electromechanical system) are specialized integrated circuits packages which contain a conventional electrical circuit and a non-conventional mechanical system. The electrical circuit directly controls the mechanical side system. Furthermore, the mechanical system within a MEMS is created using the same semiconductor manufacturing techniques which is used to manufacturer electrical side circuit.

Card image cap

Accelerometer

Accelerometer is a class of MEMS IC which measures acceleration, typically, in all three axis. The acceleration can be static (gravity) or dynamic.

Card image cap

Gyroscopes

Gyroscope is a class of MEMS IC which measures angular velocity, typically, in three axis. The Gyroscope measures Roll, Pitch and Yaw.

Card image cap

Compass

Compass is a class of MEMS IC which is used to measure the earths magnetic poles. The compass measures west, east, north and south.

My default image

GPS

Not technically a MEMS IC however GPS technology is typically lumped together with MEMS ICs. Its provides precise geographical location.


Off-Chip environment peripherals

There are a varaety of environment chips which measure the enviroment in which they PCB board is

Card image cap

Temperature

Probably the most simple of the enviroment peripherals, a temperature IC measures the temperature where the PCBA board.

Card image cap

Pressure

WiFi communication protocol is a high power, mid-range, mid data throughput wireless communication protocol.

Card image cap

Humidity

NFC communication protocol is a low power, short range, mid data throughput wireless communication protocol.

My default image

Barometer

ZigBee communication protocol is a mid power, mid range, mid data throughput, wireless communication protocol


Off-Chip Bio-signal peripherals

Bio-signals are electrical-analog signals inherently produced by the human body and which can be used to help asses the physiological health status of the person. Bio-signal peripherals are electrical circuits that both measure and record bio-signals. Electrocardiography, photoplethysmography, electromyography, galvanic skin response, etc, are just some of the bio-signals generated by the body which can be both measured and recorded by bio-signal peripherals.

Card image cap

ECG

Electrocardiography (ECG) is bio-signal generated by the heart. The primary usage/application is to physician the physiological health status of the patient’s heart

Card image cap

PPG

Photoplethysmography (PPG) is a bio signal generated by the blood circulatory system. Its primary usage/application is to determine heart rate.

Card image cap

GSR

Galvanic skin response (GSR) is a bio-signal which measure the resistance of the skin. The resisitance is caused by perspiration of the skin.

My default image

EMG

ZigBee communication protocol is a mid power, mid range, mid data throughput, wireless communication protocol


Product Software Assistance

Here at Embedded System Solution we not only provide software assistance for different types of software technologies, but we also provide different types of assistance. Whether the customer is looking for training assistance, consultation assistance or contractual assistance, we can help.


My default image

Web application

My default image

Android

My default image

Windows

My default image

Linux