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

Arduino Based Audio Spectrum Analyzer Project

This Video will illustrate you how to visualize audio left and right signals in bar-graph in 16X2 LCD Display using Arduino. Components Required: 1. Arduino UNO 2. 16X2 LCD Display 3. 3.5mm Audio Jack 4. Jumper Wires   Connection Diagram: Video Link Arduino Code #include <LiquidCrystal.h> #include <fix_fft.h> #define DEBUG 0 #define L_IN 1 // Audio input A0 Arduino #define R_IN 0 // Audio input A1 Arduino const int Yres = 8; const int gain = 3; float peaks[64]; char im[64], data[64]; char Rim[64], Rdata[64]; char data_avgs[64]; int debugLoop; int i; int load; LiquidCrystal lcd(11, 10, 7, 6, 5, 4); // pins to LCD // Custom CHARACTERS byte v1[8] = {   B00000, B00000, B00000, B00000, B00000, B00000, B00000, B11111 }; byte v2[8] = {   B00000, B00000, B00000, B00000, B00000, B00000, B00000, B11111 }; byte v3[8] = {   B00000, B00000, B00000, B00000, B00000, B11111, B11111, B11111 }; byte v4[8] = {   B0...

Servo Motor Control using ESP8266 and Blynk App

Hey folks,  In this tutorial we will learn how to interface Servo motor with NodeMcu(ESP8266)module and operate it with the Blynk app.  Servos  are controlled by sending an electrical pulse of variable width, or pulse width modulation (PWM), through the control wire. There is a minimum pulse, a maximum pulse, and a repetition rate. A  servo motor  can usually only turn 90° in either direction for a total of 180° movement. servo Motor (Back view)  Servo Motor (front view) Blynk  is a Platform with iOS and Android  apps  to control Arduino, Raspberry Pi and the likes over the Internet. It's a digital dashboard where you can build a graphic interface for your project by simply dragging and dropping widgets. (Blynk App) Components Required: Servo motor NodeMcu(ESP8266) Connecting wires(male to male) Breadboard    Follow the image below for circuit connection reference. (Servo Motor connecting wi...