element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Digital Fever
  • Challenges & Projects
  • Project14
  • Digital Fever
  • More
  • Cancel
Digital Fever
Blog Rotary LED Blinker #2- RLB with PSOC 4200M
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Digital Fever requires membership for participation - click to join
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: fyaocn
  • Date Created: 14 Apr 2021 7:33 AM Date Created
  • Views 921 views
  • Likes 4 likes
  • Comments 1 comment
  • digitalfeverch
Related
Recommended

Rotary LED Blinker #2- RLB with PSOC 4200M

fyaocn
fyaocn
14 Apr 2021

    • Rotary LED Blinker with PSOC 4200M
      • 1 Introduction
      • 2 Hardware
      • 3 Software
      • 4 Coding
      • 5 Summary

Rotary LED Blinker with PSOC 4200M

1 Introduction

Finger fidget spinner is proposed with application of PSoC 4200, once receiving the kits, the embedded kitprog3 makes the size longer and can not fit for rotation between fingers. I shift the idea into rotary led blinker. Similar coding logic make this project can change to patterned led spinner with LUT functions(LookUp Table)

Herein I shall show how it works.

 

2 Hardware

2.1 CY8CKIT-043 PSoCRegistered 4 M-Series Prototyping Kit Guide

One tiny lovely dev board, I guess. One of my most favorite with special magic.

Logic Blocks,

image

and pinouts,

image

What is in my hands,

image

image

With 11 head soft wires, connected with the LED rings in my #1 blog. But the P7.0 and P7.1 can not be configuration of output pins , and the wires is not long enough for further ones. As demo purpose, this shall not harm much with several blind eyes.

This ex-store application is breathing LED,

image

Here is the video,

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

2.2 LED rings

Remove 555 and CD4701 wiring Pin 1~7 and 9~11, 8 for GND, not so good with welding work. But have checked with magnified lens, it is OK.

image

 

3 Software

3.1 PSoC Creator 3.2

Even PSoC Creator 4.0 is available, this version works fine. In fact I prefer it to Modus Toolbox. This is definitely more fun.

With hardware_bitstream_plugins_applications.

 

4 Coding

4.1 Create one new project from one example, that is fine from blank project.

image

4.2 Design topDesign.cysch from building block from right sidebars. With quick manual, you need zero training to do the job,

image

4.3 Edit the LUT  and control Register

image

4.4 Select LED pinout for each output Pins, from drop-down selections, self-correction for any wrong selection, totally error-free.

image

4.5 First build and Program

Select BUILD->Program step by step, the ring led blinks in dark But irregularly not in turns. That is what I meant for.

image

image

 

4.6 Revise LUT and design your own patterns

Revise the LUT, the Ring pattern can be set more easy, just click-click, test-and-go.

image

Then bingo, the LED ring blinks in turns ,except some blinding eyes.

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

5 Summary

This project include Core element of FPGA in form of LUT. In fact, most FPGA bitstream are based on LUT. This PSoC 4 M-Series Prototyping Kit embedded with two block only, but already enough for everyone's imagination fly around.

Here is the program main.c for review.

#include <device.h>
uint8 i;


int main()
{
    /* Test each of the LUT input combinations */
    for(i = 0u; i < 128u; i++ )
    {
        Control_Reg_Write(i);
        CyDelay(1000u);
    }
        
    for(;;)
    {
    }
}

The counting of number every second make the LED blink one by one. Edit the LUT can change the order and pattern of blinkers. Change the CyDelay(*parameters) can change the speed. That all can be  attributed to the magic of FPGA.

  • Sign in to reply

Top Comments

  • navadeepganeshu
    navadeepganeshu over 4 years ago +1
    Cool Project! I like the way in which bits are set diagonally for the rotary action and its customisation. What other ways can it be implemented,... running a counter? using delay loops between LEDs?.…
  • navadeepganeshu
    navadeepganeshu over 4 years ago

    Cool Project! I like the way in which bits are set diagonally for the rotary action and its customisation. 

    What other ways can it be implemented,... running a counter? using delay loops between LEDs?........add if you have more ideas!

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube