Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Metoden
- Trinn 2: Koble ting opp
- Trinn 3: Her er oppsettet mitt
- Trinn 4: Tinkercad -versjon
Video: En nøkkelforfatter: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
Husker du Stephen Hawking? Han var professor i Cambridge og berømt matematiker i rullestolen med en datagenerert stemme. Han led av motorneuronsykdom og mot slutten av livet, etter at han mistet talen, var han i stand til å kommunisere gjennom en talegenererende enhet-først ved bruk av en håndholdt bryter, og til slutt ved å bruke en enkelt kinnmuskel.
Jeg trodde jeg skulle prøve å lage en tekstbryter med én bryter. Bare en bryter - PÅ eller AV. Hva kan du gjøre med det?
Vi må vurdere tiden. Hvis du lukker en bryter og deretter åpner den noen øyeblikk senere, har du kontroll over en annen variabel. Vi kan bruke tidsforsinkelsen mellom lukking og åpning av bryteren for å generere forskjellige innganger og gjøre dem til tekststrenger eller meldinger. Jeg vil kunne skrive "HELLO, WORLD!" og send den til Serial Monitor - alt fra en enkelt knapp.
Det er en millisekund timer som kjører i Arduino. Den klikker med 1 hvert 0,001 sekund. Du kan lese verdien med uttalelsen
int t = millis ();
// Gjør noe
int tt = millis ();
int timeDiff = tt - t;
Rekvisita
Jeg kommer til å bruke varer som de fleste Arduino -brukere allerede vil ha og er ganske billige å kjøpe:
- Arduino UNO
- 16 x 2 LCD
- 220 Ohm og 10K Ohm motstander
- 10K Ohm potensiometer
- Knappbryter
- Brødbrett eller stripebrett
- Tilkobling av ledninger
Trinn 1: Metoden
Her har vi et rutenett som inneholder alle bokstavene, sifrene 0 til 9 og kommer med skilletegn. Bokstaven "A" er i rad 1 og kolonne 2. Sifferet "9" er i rad 7 og kolonne 1. (Du vil kanskje skrive ut denne skjermen for å ha foran deg mens du kjører skriptet senere.)
Instruksjonene forteller deg hvordan du bruker bryteren. Hvis du holder knappen nede, teller radverdien sakte fra null. Løft fingeren fra knappen når radverdien er 1.
Hold knappen inne igjen, og kolonnetallet begynner å telle opp fra null. Løft fingeren når den viser 2, og du har valgt "A" fra rad: 1 og kolonne: 2.
Vi må nå overføre "A" til meldingen på nederste rad. Hold nede knappen og løft fingeren på handling 1 - legg til karakteren.
For å sette inn "9" velger vi rad 9 og kolonne 1 og legger den til med handling 1.
Handling 2 fjerner hele meldingen.
Handling 3 Dumper et feil valgt tegn uten å legge det til meldingsstrengen. (Feilvalg er vanlige!)
Handling 4 sender meldingen fra LCD -skjermen til Serial Monitor.
Trinn 2: Koble ting opp
Hvis du har en Liquid Crystal Display -skjerm, vil du sannsynligvis bruke den hele tiden. Det er en god idé å bygge et lite tilkoblingskort som inneholder LCD -skjermen, potensiometer (for justering av skjermens lysstyrke) og beskyttelsesmotstanden med enkeltledninger for 5 volt og GND. Sporet er kuttet på baksiden av brettet, under 220 Ohm motstand. Jeg la senere til utgangsstikkontakter til brettet for 5V og GND fordi Arduino bare har en enkelt 5V -kontakt. Dette sparer tid, ledninger og testing neste gang du trenger LCD -skjermen i et annet prosjekt. Den "offisielle metoden" er her:
www.arduino.cc/en/Tutorial/HelloWorld
Knappen var koblet til pinne 8 med en 10K opptrekkmotstand og til GND.
Trinn 3: Her er oppsettet mitt
På neste side er en lenke til Tinkercad -versjonen du kan prøve.
Bruk musepekeren og knappen for å lukke og åpne knappbryteren i midten av diagrammet. Du må åpne kodevinduet og deretter den serielle skjermen nederst på siden for å kunne sende en melding fra LCD -skjermen til den serielle skjermen. "Start simulering" -knappen starter kjøring av kode.
Du vil sannsynligvis synes det er ganske vanskelig i begynnelsen. Tenk bare hvor frustrerende det ville være hvis dette var din eneste kommunikasjonsmetode.
Trinn 4: Tinkercad -versjon
Jeg innebygde en Tinkercad -versjon her, men det var for mange buffer- og timingproblemer for å gi en god opplevelse. Vinduet var også for lite til at kretsen, koden og det essensielle serielle monitorvinduet kunne vises riktig.
www.tinkercad.com/things/daSgRAOl0g1-oneke…
Her er lenken til Tinkercad -originalen som sannsynligvis er en god del større og mye lettere å ha kodevinduet åpent under simuleringen, slik at du kan se Serial Monitor. De viktigste timene fungerer som de skal.
Jeg håper du har hatt glede av denne instruksen og lært noe underveis.
Jeg deltok i denne instruksen i Arduino -konkurransen og ville være takknemlig for stemmen din hvis du likte den.
Anbefalt:
Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn
Arduino Car Reverse Parking Alert System | Trinn for trinn: I dette prosjektet skal jeg designe en enkel Arduino Car Reverse Parking Sensor Circuit ved hjelp av Arduino UNO og HC-SR04 Ultrasonic Sensor. Dette Arduino -baserte bilreverseringssystemet kan brukes til autonom navigasjon, robotavstand og andre områder
Trinn for trinn PC -bygging: 9 trinn
Steg for trinn PC -bygging: Rekvisita: Maskinvare: HovedkortCPU & CPU -kjøler PSU (strømforsyningsenhet) Lagring (HDD/SSD) RAMGPU (ikke nødvendig) CaseTools: Skrutrekker ESD -armbånd/mathermal pasta m/applikator
Tre høyttalerkretser -- Trinn-for-trinn opplæring: 3 trinn
Tre høyttalerkretser || Trinn-for-trinn opplæring: Høyttalerkretsen styrker lydsignalene som mottas fra miljøet til MIC og sender den til høyttaleren der forsterket lyd produseres. Her vil jeg vise deg tre forskjellige måter å lage denne høyttalerkretsen på:
RC -sporet robot ved hjelp av Arduino - Trinn for trinn: 3 trinn
RC -sporet robot ved bruk av Arduino - Steg for trinn: Hei folkens, jeg er tilbake med et annet kult Robot -chassis fra BangGood. Håper du har gått gjennom våre tidligere prosjekter - Spinel Crux V1 - Gesture Controlled Robot, Spinel Crux L2 - Arduino Pick and Place Robot with Robotic Arms og The Badland Braw
Hvordan lage et nettsted (en trinn-for-trinn-guide): 4 trinn
Hvordan lage et nettsted (en trinn-for-trinn-guide): I denne veiledningen vil jeg vise deg hvordan de fleste webutviklere bygger nettstedene sine og hvordan du kan unngå dyre nettstedbyggere som ofte er for begrenset til et større nettsted. hjelpe deg med å unngå noen feil som jeg gjorde da jeg begynte