File: sine_wave.pl

package info (click to toggle)
libhipi-perl 0.93-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 20,048 kB
  • sloc: perl: 471,917; ansic: 22; makefile: 10
file content (29 lines) | stat: -rwxr-xr-x 522 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/perl
use strict;
use warnings;

use Time::HiRes ();
use HiPi::Interface::MicroDotPHAT;

my $phat = HiPi::Interface::MicroDotPHAT->new();

print q(Sine Wave
Displays a sine wave across your pHAT.
Press Ctrl+C to exit.
);

my $x = 0;

while (1) {
    $phat->clear();
    my $t = Time::HiRes::time() * 10;
    for ( my $x = 0; $x < $phat->width; $x ++) {
        my $y = int((sin($t + ($x/2.5)) + 1) * 3.5);
        $phat->set_pixel($x, $y, 1);
    }
    $phat->show();
    $phat->sleep_milliseconds( 50 );
}


1;