轮盘游戏机

Step1 安装wiringpi

按以下教程安装

https://projects.drogon.net/raspberry-pi/wiringpi/download-and-install/

sudo apt-get install git-core

sudo apt-get update

sudo apt-get upgrade

git clone git://git.drogon.net/wiringPi

cd wiringPi

git pull origin

cd wiringPi

./build

Step2连接电路

以下是wiringpi库的GPIO

轮盘游戏机

电路图

轮盘游戏机

轮盘游戏机

Step3实现代码

#include <wiringPi.h>

#include <stdio.h>

#include <stdlib.h>

int led_digit[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; 

int gpio_ucf[10]={0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

void shownum(int num){

//num=num/10;

num=num%100;

int high=led_digit[num/10];

int low=led_digit[num%10];

//high digit

digitalWrite(9,LOW);

        digitalWrite(8,HIGH);

        for(int i=0;i<8;i++){

                if((high>>i)&1){

                        digitalWrite(gpio_ucf[i],LOW);

                //      printf ("%d-----%d\n",low,i);

                }

                else

                        digitalWrite(gpio_ucf[i],HIGH);

                

        }

        delay(10);

//low digit

digitalWrite(8,LOW);

        digitalWrite(9,HIGH);

        for(int i=0;i<8;i++){

                if((low>>i)&1){

                        digitalWrite(gpio_ucf[i],LOW);

// printf ("%d-----%d\n",low,i);

}

                else

                        digitalWrite(gpio_ucf[i],HIGH);

        }

delay(10);

}

int main (void)

{

int number=0 ;

int flag=1;

printf ("Raspberry Pi  program\n") ;

if (wiringPiSetup () == -1)

exit (1) ;

for(int i=0;i<10;i++)

pinMode (gpio_ucf[i], OUTPUT);

pinMode (13,INPUT);

pinMode (14,INPUT);

  for(;;){

shownum(number);

if (digitalRead (13) == 0)

{

flag=0;

printf("Stop\n");

}

if (digitalRead (14) == 0)

{

flag=1;

printf("Start\n");

}

if(flag==1)

number++;

}

return 0 ;

}

编译命令

gcc -o LPD lpd.cpp -lwiringPi

视屏地址:

http://v.youku.com/v_show/id_XNTY5NTcxMDI0.html

你可能感兴趣的:(树莓派,数码管,GPIO)