Table des matières:
- Étape 1: Circuit
- Étape 2: Faire pivoter l'image de la règle
- Étape 3: bip
- Étape 4: Démarrez sur le bouton enfoncé
- Étape 5: programmer
Vidéo: Roulette graphique avec Obniz : 5 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
J'ai fait une roulette graphique. Si vous appuyez sur le bouton, la roulette commence à tourner. Si vous appuyez à nouveau, la roulette arrête de tourner et émet un bip !
Étape 1: Circuit
Nous utilisons uniquement un haut-parleur filaire et un bouton.
Les numéros de broches du filaire sont écrits sur le programme.
button = obniz.wired("Bouton", {signal:6, gnd:7 });haut-parleur = obniz.wired("Haut-parleur", {signal:0, gnd: 1});
Étape 2: Faire pivoter l'image de la règle
En HTML, vous pouvez utiliser la "transformation CSS". Par exemple, il s'agit du code de rotation de l'image à 90 degrés.
document.getElementById("roulette").style = "transform:rotate(90deg);";
Pour démarrer et arrêter la rotation lentement, ajoutez une vitesse var pour le degré de rotation par image.
laissez vitesse = 0; laissez deg = 0; fonction rotation (){ deg += vitesse; document.getElementById("roulette").style = "transform:rotate("+deg+"deg);";
}
setInterval(rotation, 10);
Étape 3: bip
Voulez-vous émettre un bip sur la roulette sans changement ? Avec cela, vous pouvez émettre un bip sur 440 Hz 10 ms.
haut-parleur.play(440); attendre obniz.wait(10); haut-parleur.stop();
C'est comment savoir sur le changement de roulette no.
if(Math.floor((deg + speed) / (360/7.0)) - Math.floor(deg / (360/7.0)) >= 1){ onRouletteChange(); }
Donc, c'est le code de rotation et de bip.
laissez vitesse = 0; laissez deg = 0; function rotate(){ //on change la valeur if(Math.floor((deg + speed) / (360/7.0)) - Math.floor(deg / (360/7.0)) >= 1){ onRouletteChange(); } deg += vitesse; document.getElementById("roulette").style = "transform:rotate("+deg+"deg);";
}
setInterval(rotation, 10);
fonction asynchrone onRouletteChange(){
if(!speaker){return;} speaker.play(440); attendre obniz.wait(10); haut-parleur.stop(); }
Étape 4: Démarrez sur le bouton enfoncé
Pour connaître l'état du bouton, ajoutez var buttonStateet définissez la valeur de l'état actuel du bouton.
button.onchange = function(pressed){ buttonState = pressed; };
Et ajoutez également var phase pour l'état actuel de la roulette.phase est défini sur l'un de ceux-ci.
const PHASE_WAIT_FOR_START = 0; const PHASE_ROTATE = 1; const PHASE_STOPPING = 2; const PHASE_STOPPED = 3;
Par exemple, lorsque la phase est PHASE_WAIT_FOR_START et que vous souhaitez passer à la phase suivante.
if(phase == PHASE_WAIT_FOR_START){ vitesse = 0; if(buttonState){ phase = PHASE_ROTATE; } }
Pour accélérer la règle, changez var speed.
if(phase == PHASE_ROTATE){ vitesse = vitesse+0,5; }
Pour accélérer la règle, changez var speed.
:
if(phase == PHASE_STOPPING){ vitesse = vitesse-0,2; }
Ceux-ci font partie de la roulette. Faisons-le!
Étape 5: programmer
Veuillez vous référer ici pour le programme
Conseillé:
Graphique à barres bicolore avec CircuitPython : 5 étapes (avec images)
Graphique à barres bicolore avec CircuitPython : j'ai vu ce graphique à barres à LED sur le site de Pimoroni et j'ai pensé qu'il pourrait s'agir d'un projet peu coûteux et amusant tout en entreprenant le verrouillage de covid-19. Il contient 24 LED, une rouge et une verte, dans chacun de ses 12 segments, donc en théorie vous devriez pouvoir afficher r
Horloge graphique à barres IOT (ESP8266 + boîtier imprimé en 3D): 5 étapes (avec photos)
Horloge graphique à barres IOT (ESP8266 + boîtier imprimé en 3D) : Salut, sur ce Instructables, je vais vous expliquer comment construire une horloge graphique à barres IOT 256 LED. Cette horloge n'est pas très difficile à fabriquer, pas très chère mais vous aurez besoin d'être patient pour donner l'heure ^^ mais c'est agréable à faire et plein d'enseignement.Pour ma
Station météo : ESP8266 avec sommeil profond, SQL, représentation graphique par Flask&Plotly : 3 étapes
Station météo : ESP8266 avec Deep Sleep, SQL, Graphing by Flask&Plotly : Serait-ce amusant de connaître la température, l'humidité ou l'intensité lumineuse sur votre balcon ? Je sais que je le ferais. J'ai donc fait une simple station météo pour collecter de telles données. Les sections suivantes sont les étapes que j'ai suivies pour en créer un. Commençons
Bitcoin Ticker avec graphique: 8 étapes
Bitcoin Ticker With Graph: J'ai fait cela sur la base d'un projet de téléscripteur de prix BTC, qui obtient des informations sur les prix de coinmarketcap.com écrit à l'origine par Brian Lough. Il a utilisé l'ESP8266, une carte compatible Arduino livrée avec le WiFi intégré. Comme il le décrit
Bouclier graphique Arduino TFT : 4 étapes (avec photos)
Bouclier graphique Arduino TFT : a.articles {taille de la police : 110,0 % ; font-weight : gras ; style de police : italique ; texte-décoration : aucun; background-color: red;} a.articles:hover {background-color: black;} Cette instructable explique comment faire un graphique couleur 240 x 320 pixels (QVGA)