Found 203 Articles for Arduino

Arduino Uno vs Arduino Mega

Yash Sanghvi
Updated on 30-Jul-2021 16:30:39
We will have a comparison of the specifications of Arduino Uno and the Arduino Mega Board.Arduino UnoArduino MegaPlease refer to the table below −Dimensions Pricing I/O PinsUnoMegaGeneralDimensions2.7¨ x 2.1¨4¨ x 2.1¨Pricing$20-23$36-39ConnectivityI/O Pins1454PWM Pins615Analog Pins616ComputingProcessorATMega328PATmega2560Flash Memory32 kB256 kBSRAM2 kB8 kBEEPROM1 kB4 kBClock speed16 MHz16 MHzVoltage Level5V5VUSB ConnectivityStandard A/B USBStandard A/B USBCommunicationHardware Serial Ports14SPI SupportYesYesI2C SupportYesYes

Components of Arduino Uno board

Yash Sanghvi
Updated on 30-Jul-2021 16:28:31
The important components of the Arduino Uno Board are shown below −The following table contains the description for each of the labels −LabelDescription17-12 V Barrel Jack2Voltage Regulator316 MHz Crystal Oscillator4USB - B Port5Reset Button6Digital Pins7ICSP Pins (SPI can be accessed from here)8ATmega328P microcontroller9Analog Pins10Serial Port TX RX LEDs11USB to UART Conversion IC12Built-in LED (connected to pin 13)

Interface Arduino with Gas Sensor

Yash Sanghvi
Updated on 30-Jul-2021 16:25:28
In this article, we will see how to interface Arduino with the MQ-2 gas sensor. MQ2 gas sensor is used for detecting smoke and some flammable gases like LPG, Methane, etc. It changes its resistance depending on the type of the gas. This principle can be used to raise an alarm based on the concentration of the gas.An image of the MQ2 gas sensor is given above. As you can see, it has 4 pins. Out of these the Aout pin gives the Analog voltage in proportion to the gas concentration. Higher the gas concentration, higher the voltage on the ... Read More

Interface Arduino with LoRa module

Yash Sanghvi
Updated on 30-Jul-2021 16:20:53
In this article we will see how to interface Arduino with the LoRa module E32. LoRa stands for Long Range. It uses license-free sub-GHz RF bands for operation. These bands are different in different countries. In India, the permissible band is 865-867 MHz. LoRa is very ideal for IoT applications thanks to its long range and low power consumption. However, the achievable data rates are limited (0.3 to 27 kbits/second). Longer the range, lower the data rate.The E32 module that we will use looks like the one below. Depending on the frequency the module variant changes. For example, the one ... Read More

Interface Zigbee with Arduino

Yash Sanghvi
Updated on 30-Jul-2021 16:17:46
Zigbee is a wireless communication protocol targeted for battery powered devices (it has both low power and low cost). It generally operates in the 2.4GHz range (although there are geographic variations), and supports data ranges from 20 to 250 kbits/s.The transmission distance though, is small compared to the likes of LoRa. It is 10 to 100 m, whereas LoRa can transmit over a few kilometers. Another thing to note is that Zigbee communication doesn’t work very well if there is no line of sight between transmitter and receiver.Even minor obstacles have been observed to significantly degrade the communication. Keep these ... Read More

Send SMS using a GSM module connected to Arduino

Yash Sanghvi
Updated on 30-Jul-2021 16:14:39
In this article, we will see how to interface Arduino with a GSM Module, and send SMS using the module. You will need the following −Arduino boardA GSM Module (SIM800C, SIM900A, are popular examples, but you can have any other module as well)A GSM (2G) SIM Card, or a 4G SIM Card with 2G fallback option (Jio SIM Cards won’t work for this project)GSM AntennaYou could also get a GSM Module development board, like the one below (the SIM Card Holder is on the other side of the board) −A GSM Module interacts with a microcontroller via UART (see the ... Read More

Queue in FreeRTOS in Arduino

Yash Sanghvi
Updated on 30-Jul-2021 16:09:29
Queue is a data structure that helps exchange data between different tasks or between tasks and interrupts. It holds a finite number of items (defined at the time of initialization) and operates in the FIFO mode.We will walk through an example that comes in with the FreeRTOS library, to understand queues.You can find the example in − File → Examples → FreeRTOS → StructQueue.In this code, two tasks read analog values from different analog pins, and pass these values in a queue. Another task reads the values from the queue and prints them onto the Serial Monitor. There is a ... Read More

How to Use isGraph() in Arduino?

Yash Sanghvi
Updated on 30-Jul-2021 12:53:49
The isGraph() function is very similar to the isPrintable() function in Arduino. The only difference is that isGraph() returns true only if the character being printed has some content.So, blank space gets excluded by isGraph() but included by isPrintable(). All normal characters, numbers, special characters, which have some content will return true when passed through isGraph().SyntaxThe syntax is −isGraph(myChar)Where myChar is the character being checked. A quick question. Will the tab and new line characters return true with isGraph().ExampleValidate your answer with a simple code like below −void setup() {    // put your setup code here, to run once: ... Read More

shiftIn() and shiftOut() in Arduino

Yash Sanghvi
Updated on 30-Jul-2021 12:52:28
shiftIn() and shiftOut() commands in Arduino are, very loosely speaking, software implementations of SPI. Of course, SPI is much faster, but SPI can work only on some specific pins of Arduino. shiftIn() and shiftOut() can use any two GPIOs of Arduino (not some specific pins like SPI).Both shiftIn() and shiftOut() require two digital pins, one dataPin and one clockPin.The dataPin will shift in or shift out a byte (8 bits) of data, 1 bit at a time. The clockPin synchronizes the data transfer. It is generally kept low, and for each bit transfer, it goes HIGH and then back to ... Read More

pulseIn() and pulseInLong() in Arduino

Yash Sanghvi
Updated on 30-Jul-2021 12:50:29
If there is an incoming pulse on a pin, and you need to measure the duration of the pulse then the pulseIn() function comes in handy.SyntaxThe syntax is −pulseIn(pin, value)Where pin is the number of the pin on which you wish to measure the pulse. The value is the level of the pulse. It can be HIGH or LOW.For example, if you set the value to HIGH, it means that as soon as the voltage on the pin goes from LOW to HIGH, the measurement of the time will start. It will stop when the voltage on the pin goes ... Read More