Skip to main content

LED Brightness Control using Touch Sensor and ARM

Hey Folks,
In this tutorial, we will learn, how to change the intensity of light using touch sensor the ARM (FRDM-KL25Z).

INTRODUCTION
    • The FRDM-KL25Z is an ultra-low-cost development platform for Kinetis L Series KL1x (KL14/15) and KL2x (KL24/25) MCUs built on ARM® Cortex™-M0+ processor. 
    • The FRDM-KL25Z has been designed by NXP in collaboration with mbed for prototyping all sorts of devices, especially those requiring the size and price point offered by Cortex-M0+ and the power of USB Host and Device.
    • The FRDM-KL25Z is supported by a range of NXP and third-party development software.
    • It is packaged as a development board with connectors to break out to stripboard and breadboard and includes a built-in USB FLASH programmer.

             FEATURES
    • NXP KL25Z Kinetis KL2x MCU (MKL25Z128VLK4)
      • High-performance ARM® Cortex™-M0+ Core
      • 48MHz, 16KB RAM, 128KB FLASH
      • USB (Host/Device)
      • SPI (2)
      • I2C (2)
      • UART (3)
      • PWM (TPM)
      • ADC (16 bit)
      • DAC (1x 12bit)
      • Touch Sensor
      • GPIO (66)
               So now we are familiar with the FRDM-KL25Z let’s use it.

   Components Required:
    • FRDM-KL25Z board
    • Data Cable (USB Mini-B)
    • Capacitive touch “slider”(On Board)



Code:

#include "mbed.h"
#include "tsi_sensor.h"

/* This defines will be replaced by Pin Names soon */
#if defined (TARGET_KL25Z) || defined (TARGET_KL46Z)
  #define ELEC0 9
  #define ELEC1 10
#elif defined (TARGET_KL05Z)
  #define ELEC0 9
  #define ELEC1 8
#else
  #error TARGET NOT DEFINED
#endif

int main(void) {
    PwmOut led(LED_GREEN);
    TSIAnalogSlider tsi(ELEC0, ELEC1, 40);
    
    while (true) {
        led = 1.0 - tsi.readPercentage();
        wait(0.1);
    }
}




After dumping the code the output is shown in the video below:-

  

              

Join our hands-on training courses.

To know more visit us at Karkhana Training Portal.

Comments

Popular posts from this blog

Interfacing of Push Button With ATmega16

In this tutorial, we will learn how to interface a switch(push button) with ATMEGA16 using AVR studio. In the previous video, we learnt how to interface LEDs with ATMEGA16 using AVR studio. The push-button is a component that connects two points in a circuit when you press it. The example turns on an LED when you press the button. Here we have connected two push button to PORT C in  PC0 & PC1. And for LEDs connection please refer my previous blog. Components Required:- AVR Controller(Atmega16) LEDs Push Button Connecting Wires USBASP Programmer Dump the following code after connection  and select chip ATMEGA 16. #include<avr/io.h> #include<util/delay.h> void main()  {    DDRB=0b11111111;    int S1;    int S2;      while(1)    {     S1=PINC&0b00000001;     S2=PINC&0b00000010;     if(S1==0b00000001)     { ...

IoT Based LPG Gas Monitoring

MQ-5 Module(Overview ) In this tutorial, will learn, how to interface MQ-5 Module with Node Mcu(ESP8266). The Grove - Gas Sensor(MQ5) module is useful for gas leakage detection (in home and industry). It is suitable for detecting H2, LPG, CH4, CO, Alcohol. Due to its high sensitivity and fast response time, measurements can be taken as soon as possible. The sensitivity of the sensor can be adjusted by using the potentiometer. MQ-5 Module(backside) Components Required NodeMcu(ESP8266)  MQ-5 LPG SENSOR Module  Few male to female connecting wires  Breadboard  Follow the image below for circuit connection reference:- In this circuit, we have connected the A0 pin of the MQ-5 to the A0 pin of the NodeMcu module and D0 pin remain disconnected. After making the circuit dump the code given below:- // Karkhana Report // Analyse the volume of the gas using thingspeak.com // Hardware: NodeMCU,MQ-5 #include <ESP8266WiFi.h> String apiKey = "Ent...