Lightino Lesson 5: How fast is it spinning?

In previous lessons the code calculated the time for a revolution, so as a final exercise, let's display!

Actually, rotational speed is more often measured in revolutions per minute (RPM), but we can easily calculate that.

We calculated the time for a revolution in microseconds (revTime) and there are 60,000,000 microseconds in a minute, so the speed in RPM will be 60,000,000 / revTime. But we need to convert that to text.

The easiest way to do that is using the built-in sprint() function. This takes 3 (or more) arguments:

  1. Somewhere to put the resulting text
  2. A pattern for the text
  3. A value or values to insert into the text.

For the place to put the text we can replace the definition of textString_Up by:

char textString_Up[10];

We've made it 10 characters long, which should be plenty. It's important not to make it too small otherwise we might be overwriting who knows what!

We can now call sprintf() with something like:

sprint(textString_Up, "%4d RPM", 60000000 / revTime);

The %4d means substitute this for the parameter expressed as a 4-digit decimal number. (That's just one of many types of substitution you can specify.)

Why not change textString_Down to display the total number of revolutions?

Warning: Don't try too hard to see how fast you can get it to spin - it has hard edges and you could easily hurt your fingers! 

If you're stuck try reading the Help Sheet!

Previous article Lightino Lessons Help Sheet
Next article Lightino Lesson 4: Let's display messages!

Check out our latest products...

64Gb Micro Sd Card Memory - Class 10 With Adapter - Accessories And Breakout Boards
Resistor Colour Codes - Educational Poster - Education
Picade X Hat - Raspberry Pi Boards

Picade X HAT

£15.00 inc VAT
£12.50 ex VAT
Ohms Law - Educational Poster - Education
Pimoroni Raspberry Pi 3 B+ Starter Kit - Raspberry Pi Kits

Pimoroni Raspberry Pi 3 B+ Starter Kit

£89.99 inc VAT
£74.99 ex VAT
Touch:bit - Micro:bit

touch:bit

£10.00 inc VAT
£8.33 ex VAT
Tinkerkit Braccio Robotic Arm For Arduino - Robot

Tinkerkit Braccio Robotic Arm for Arduino

£197.99 inc VAT
£164.99 ex VAT
Arduino Yún Rev 2 - Dev Boards

Arduino Yún Rev 2

£51.59 inc VAT
£42.99 ex VAT