Search the Community

Showing results for tags 'led'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • GadgetBox Universal IoT Hardware
    • GadgetBox General Discussion
  • Papilio Platform
    • Papilio General Discussion
    • Papilio Pro
    • Papilio One
    • Papilio DUO
    • Papilio Wings
    • DesignLab IDE
    • DesignLab Libraries
    • RetroCade Synth
    • Papilio Arcade
    • Papilio Loader Application
    • Papilio Logic Sniffer
    • Retired
  • Electronics
    • Modules
  • Soft Processors
    • ZPUino
    • J1 Forth
    • AVR8 Soft Processor
  • Community
    • Gadget Factory
    • Documentation
    • FPGA Discussions
    • Community Projects
    • Pipistrello
  • Open Bench
    • Open Bench Logic Sniffer at Dangerous Prototypes
    • OpenBench Logic Sniffer at Gadget Factory
  • Gadget Factory Internal Category


  • Papilio Platform
    • Papilio One
    • Papilio Plus
    • Papilio Wings
    • LogicStart MegaWing
    • ZPUino
    • Papilio Pro
  • Papilio Arcade
  • RetroCade Synth
  • Logic Sniffer
  • FPGAs
  • DesignLab
    • Example Projects
    • Libraries


  • Papilio FPGA
    • Papilio UCF (User Constraint) Files
    • Papilio Bit Files
  • Papilio Arcade
  • RetroCade Synth
  • General
  • Beta (Test) Releases
  • Books

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start





Website URL







Found 4 results

  1. Hello,I want to share an interesting project of designing a color detector by using RGB LEDs with you. If you have any interests, then keep on reading. Have you ever wanted an automated way to detect the color of an object? By shining light of a certain color on the object and looking at how much light is reflected back, you can tell what color the object is. For example, if you shine a red light on a red object, that light will be reflected back. If you shine a blue light on a red object, the object will absorb some of that light and less of it will be reflected back. Step 1: Parts Needed I used a PIC 16F887 Microcontroller, but almost any with a pulse-width-modulation capability will work. 1 RGB LED ( 1 Microcontroller ( 1 Standard red LED 1 1k ohm resistor 1 Photoresistor (changes resistance depending on the amount of light shone on it) Some wires I only need the microcontroller and RGB LED to have a wide range of color detectors, but if you only want a circuit that detects one color, you don't need a microcontroller - you only need a bright LED of the color you want to detect. The standard red LED is the "indicator LED" - it lights up when the right color is detected. Step 2: Build the Circuit The schematic is rather simple, and in general form, is shown below. The RGB LED is externally powered by a PWM signal. I put electrical tape around the photoresistor so ambient light doesn't get in - only the light directly above it will be detected. Step 3: The Code This code was written for a Microchip PIC 16F887, but hopefully you can get the general idea. I used the built-in potentiometer on my development board to vary the color spectrum of the RGB LED (and it doesn't go through the entire spectrum because I don't have 3 PWM modules, but it's good enough) Comments included. #include <16F887.h> #include <delay.h> #include "delay.c" #include <stdlib.h> #include <STRING.h> #use delay(clock = 4000000) #FUSES INTRC,NOWDT,NOPUT,NOMCLR,NOPROTECT,NOCPD,NOBROWNOUT,NOIESO,NOFCMEN,NOLVP #byte CCP1CON = 0x17 #byte CCP2CON = 0x1D #byte PWM1CON = 0x9B int value = 128; int p1 = 0; int p2 = 0; void my_setup_ccp1(int8 value) { output_low(PIN_C2); CCP1CON = value; PWM1CON = 0; } void my_setup_ccp2(int8 value) { output_low(PIN_C1); CCP2CON = value; } //=================================== void main() { //A4 = power source for photodiode output_high(PIN_A4); output_high(PIN_B1); setup_adc(ADC_CLOCK_INTERNAL); set_adc_channel(0); setup_adc_ports(sAN0); //Timer/Interrupt setup enable_interrupts(INT_TIMER2); my_setup_ccp1(CCP_PWM); my_setup_ccp2(CCP_PWM); setup_timer_2(T2_DIV_BY_1, 128, 1); //setup_compare(2,COMPARE_PWM|COMPARE_TIMER2); while(1){ // Prevent PIC from going to sleep. //SET PWM DUTY CYCLE output_high(PIN_A5); //Pin A3 is the photodiode connection if(input(PIN_A3) == 1) output_high(PIN_A4); else output_low(PIN_A4); //Read value of potentiometer to change color of LED value = read_adc(); switch (value) { case 0: p1 = value; output_low(PIN_C0); p2 = value; break; case 50: p1 = value; output_high(PIN_C0); p2 = value; break; case 100: p1 = value; output_high(PIN_C0); p2 = value; break; case 150: output_high(PIN_C0); p1 = 50; p2 = value; break; case 200: output_low(PIN_C0); p1 = 0; p2 = value; break; case 250: p1 = 0; p2 = value; output_low(PIN_C0); break; } p1 = value; p2 = 128 - p1; set_pwm1_duty(p1); set_pwm2_duty(p2); } } Step 4: Applications! A simple color detector like this can be used in robotics, or for cool projects like separating legos by color, sorting M&Ms;, or as an aid for color blindness. Hopefully this guide was helpful in enhancing a project you had in mind! LEDs are good for so many things....
  2. I am very interested in using the Papilio to drive video and animations to multiple 32x32 LED panels. Is there any software and hardware available now to do the things demonstrated in the DUO video. it shows live generation and display of video and a spectrum analyzer? What code was used to do this Are there FPGA schematics or ZPUino C code avaialble?
  3. I am interested in using the Papilio to drive video and animations to multiple 32 x 32 RGB LED panels. This was demonstrated in the DUO video showing live video and a spectrum analyzer (actually it was implemented with the Papillio). Are there software and hardware available now to replicate what was shown in the demo video.Are there FPGA Schematics for the ZPUino and C code ? Are there wings to interface with the LED panels?
  4. hello i am new here. i just bought a papilio pro and i have a question. i connected a led to A(15) and the gnd. and just programmed in vhdl set A to out. it worked and A <= "0000000000000001" it light up. now i set the C port to output and A <= C to my suprice if i stick a wire in the C(15) slot the led turned on. also if i was just close to the wire not touching it, it turned on. i feel like something is wrong, my multimer says that port C(15) actualy gives 1.2 volts. it feels like i am grounding the curcuit when i touch the hangin wire. i am sorry for my bad english. i sum up. how do one implement an input button correctly that is hocked up to a breadboard. thanks for all your help.