Innholdsfortegnelse:

Mikro binær klokke: 10 trinn (med bilder)
Mikro binær klokke: 10 trinn (med bilder)

Video: Mikro binær klokke: 10 trinn (med bilder)

Video: Mikro binær klokke: 10 trinn (med bilder)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, November
Anonim
Mikro binær klokke
Mikro binær klokke
Mikro binær klokke
Mikro binær klokke

Tinkercad -prosjekter »

Etter å ha opprettet en instruerbar (binær DVM), som bruker det begrensede visningsområdet ved å bruke binært.

Det var bare et lite skritt etter å ha opprettet hovedkodemodulen for desimal til binær konvertering til å lage en binær klokke, men det eneste som manglet var en RTC (sanntidsklokke).

Imidlertid har Microbit ikke en innebygd RTC.

RTC muliggjør realisering av klokkeprosjekter med batteribackup.

Som sådan bruker følgende prosjekt en Microbit og en Kitronik RTC for å lage en 24 -timers klokke med en binær skjerm og har i tillegg et alarmalternativ.

Prosjektprogramvaren som skal kjøres på Microbit vil bli opprettet i Makecode Blocks.

Rekvisita:

MicroBit V1 eller V2

MicroBit beskyttelsesetui (valgfritt)

Lag kode

Kitronik RTC

CR2032

Kodeblokker

Cura

3D -skriver

1 * SPDT (på - på) bryter

1 * SPDT (på - av - på) bryter

2 * SPST (normalt åpen), momentan bryter

4 * M3 (10+6 mm), M/F -avstand med M3 -muttere

4 * M3 (8 mm), skruer

Stikkontakt M/F-kontakt, 100 mm, 28AWG forhåndsdefinert med plugg og stikkontakt.

1 * Piezo -summer (ingen stasjon)

Disse forsyningene er tilgjengelige fra en rekke utsalgssteder, og du kan ha din egen foretrukne leverandør.

Trinn 1: Definere visningsområdet

Definere visningsområdet
Definere visningsområdet
Definere visningsområdet
Definere visningsområdet

Selv om visningsområdet er begrenset i mengden data som kan vises til enhver tid, egner det seg ideelt til visning av bitdata.

Som sådan er det tilstrekkelig område til å vise 4 x 4 bit binære ord for å representere tid med varsler og valgmoduser.

Displayet er delt inn i 3 hovedområder; Tid, valg og modus.

Tid

Seksten LED er tildelt Time, hver kolonne med 4 LED er tilordnet et tidsintervall, intervallene er i form H, H, M & M.

Hver bit av det binære ordet har en vekting på 1, 2, 4 og 8 med LSB på rad 4 og MSB på rad 1

Hvert binært 4 -bits ord tillater en telling på 0 til 15, noe som er mer enn tilstrekkelig for 24 -timers formatet, og krever en maksimal telling per kolonne på 2, 9, 5 og 9.

Valg

En rad med 4 lysdioder i rad 0 brukes til å identifisere tidskolonnen som ble valgt når du angir tid.

Modi

En kolonne med 5 lysdioder i kolonne 4 brukes til å identifisere moduser, funksjoner og drift.

Kryss - LED 4, 0 blinkende på og av brukes for å indikere sekunder og drift.

Tid - LED 4, 1 indikerer tidsmodus når den er på. (Standardmodus ved innkobling)

Alarm - LED 4, 2 indikerer alarmmodus når den er på.

Alarmvarsling - LED 4, 3 og LED 4, 4 blinker når alarmen utløses.

Trinn 2: RTC (sanntidsklokke)

RTC (sanntidsklokke)
RTC (sanntidsklokke)
RTC (sanntidsklokke)
RTC (sanntidsklokke)
RTC (sanntidsklokke)
RTC (sanntidsklokke)
RTC (sanntidsklokke)
RTC (sanntidsklokke)

RTC er applikasjonens bankende hjerte, som gjør det mulig å angi og beholde nøyaktig tid.

Ytterligere detaljer om RTC finnes på Kitronik.

RTC gir en regulert forsyning som opphever behovet for å drive Microbit med sin egen USB- eller JST -kontakt, og batteribackup tilbys for å beholde tiden i tilfelle strømtap.

Før du bruker RTC, må du laste inn utvidelsespakken.

Ved å bruke Makecode fra Innstillinger -ikonet, velger du Extensions og skriver Kitronik RTC i søket.

Velg pakken for å installere den, og den blir lagt til i de andre utvidelsene.

Det er en rekke kodeblokker å lese fra og skrive til RTC.

Vi trenger bare 4 av disse kodeblokkene for den binære klokken.

Disse vil bli brukt til å skrive den angitte tiden til RTC og til å lese tiden tilbake for å oppdatere klokkevisningen.

Trinn 3: Koder klokken

Koder klokken
Koder klokken
Koder klokken
Koder klokken
Koder klokken
Koder klokken

Den første delen av koden er programinitialisering av variabler, matriser og informativ tekst.

I det

Bclk - Binær klokke

<Sel - En knapp velger kolonnen som skal justeres for tidsinnstilling.

Inc - B -knappen øker tiden.

Ved å trykke på begge A & B -knappene samtidig endres modusen mellom Tid og alarm.

Strval - er strengverdien som inneholder tiden i formen "HH: MM: SS" returnert fra RTC

Bare HH & MM brukes til å vise eller stille klokken.

Mode - beholder modusverdien for Time = 1 og Alarm = 2 valgt med A+B -knappekombinasjonen.

Periode - er verdien for tidskolonnen, valgt med A -knappen.

0 = kolonne 0 (H), 1 = kolonne 1 (H), 2 = kolonne 2 (M), 3 = kolonne 3 (M)

Tick_en - Aktiverer = 1 eller Deaktiverer = 0 haken (sekunder), indikator.

Inc - Mellomlagring av verdien for tidsinnstilling.

Tm_list - lagrer verdien av hver tidskolonne under innstillingen.

Alarm - Aktiverer eller deaktiverer alarmindikatoren.

The forever kaller kontinuerlig flåttfunksjonen.

Sett kryss

Kryssfunksjonen som normalt er aktivert, viser en vekslende på/av -LED i øverste høyre hjørne for å indikere drift og sekunder.

I tillegg kaller den showtm -funksjonen som leser RTC og behandler dette for å bli vist i binær, mens også alarm_mode kalles, hvis dette er aktivert, viser alarmvarsel -LED -ene nederst i høyre hjørne.

Showtm

Funksjon showtm, anrop rdtime og verdien som brukes fra dette er strval som inneholder tidstrengen.

Det opprettes en løkke som øker gjennom strval som trekker ut hvert enkelt tall og ignorerer separatoren ":"

Hvert enkelt tall blir deretter konvertert til sin binære ekvivalent med funksjonen dec2bin og tilordnet den riktige kolonnen.

Rdtime

Funksjon rdtime, leser de første 5 tegnene i strengen som returneres fra RTC (ignorerer sekondelen), og sender den til strval.

Hvis alarmen ble angitt (modus = 2), blir alarminnstillingsverdiene sammenlignet med verdiene som returneres av RTC, hvis det er en kamp, er alarmen = 1 hvis det ikke er noen matchalarm = 0.

Alarm_mode når den er aktivert, viser to på/av vekslende lysdioder i nedre høyre hjørne av kolonne 4.

Dec2bin

Funksjon dec2bin konverterer et desimaltall til binært og viser det i riktig kolonne.

Tallet som skal konverteres sendes inn via verdi og visningskolonnen sendes inn via kol.

List2 er matrisen der det 4-biters binære ordet fra den binære konverteringsprosessen er lagret.

Det startes en sløyfe som fortsetter å dele verdien med 2 resten blir lagret i matriseelementet heltallverdien er delt med 2, dette gjentas til heltallverdien er <= 1 og denne siste verdien plasseres i matrisen.

Den største enkeltsifrede desimalverdien er 9 og i binær er dette 1001 som et 4-bits ord.

Arrayen må deretter behandles i motsatt rekkefølge for riktig resultat.

En sløyfe initieres deretter for å slå på riktig LED i den aktuelle kolonnen, dette oppnås for hver forekomst av en i det 4-bits binære ordet.

Det menneskelige grensesnittet oppnås med knapper.

A -knappen

Dette velger kolonnen som tidsverdien skal legges inn i og viser en opplyst LED over den valgte kolonnen på rad 4.

Når alle tidskolonnene har blitt oppdatert, oppdateres tidsvariabelen ved å øke valget til den femte kolonnen.

Hvis modus = 1 blir RTC oppdatert ellers blir alarmtiden oppdatert.

B -knappen

Dette er trinnknappen og øker den valgte tidskolonnen.

For å redusere feil og spare tid for å komme til riktig verdi, er maksimumsverdien som kan angis per kolonne begrenset basert på tidsverdien for et 24-timers tidssystem.

Disse maksimalverdiene lagres i tm_max , en per tidskolonne og velges automatisk basert på tidskolonnen.

Maksimumsverdiene er H = 2, H = 9, M = 5, M = 9

Økningsverdien konverteres til binær i dec2bin og displayet oppdateres.

Knapp A+B Modusvalg

Ved å trykke begge knappene samtidig kan du velge mellom klokkeslettmodus eller alarmmodus, den riktige modusen vises på displayet.

Avhengig av hvilken modus som er valgt, oppdateres skjermen for å vise enten klokkeslettet eller alarmtiden.

Trinn 4: Drift

Operasjon
Operasjon
Operasjon
Operasjon
Operasjon
Operasjon

Last ned Hex -filen til Microbit, sett inn et CR2032 -batteri i RTC.

Koble Microbit til RTC og strøm RTC -kortet via USB eller skrueterminalene.

Kryss -LED -en begynner å blinke, og kort tid etter dette vises tiden.

Hvis dette er første gang du bruker, er det sannsynlig at den viste tiden er feil og må settes til riktig tid.

Valg av modus

Hvis du trykker Selection (A) & Increment (B) -knappene sammen, kan du velge mellom alternativene mellom tid og alarm.

Angi tid

Tidsinnstillingen er i 24 -timers modus.

Bruk markeringsknappen (A), for å flytte lysdioden over den øverste raden, dette indikerer kolonnen der tiden kan endres. Utvalgskolonnene tilsvarer H, H, M & M.

Hvor H = timer og M = minutter.

Etter å ha valgt en kolonne, trykker du på Inkrement -knappen (b) flere ganger for å øke antallet med én for hvert trykk. Tellingene er angitt i binær, tross alt er det en binær klokke.

Inkrementsknappen øker bare tellingen, og når maksimumet er nullstilt, vil ytterligere trykk øke antallet igjen.

Når den første kolonnetiden er angitt, trykker du på Selection -knappen for den neste kolonnen, og deretter bruker du knappen Inkrement til å angi kolonnetiden.

Merk: *** Når du angir tid eller alarm, må du angi et klokkeslett i den valgte kolonnen, selv om tiden i kolonnen skal forbli uendret når du hopper over en kolonne setter kolonnetiden til null ****

Gjenta prosessen til tiden er angitt med alle fire kolonnene.

Trykk på valgknappen for femte gang for å flytte den til den femte kolonnen, og tiden er angitt.

Stille inn alarmen

Innstilling av alarmtid gjøres på nøyaktig samme måte som for tiden.

For at alarmen skal utløses på den nødvendige tiden, må du stille modusen til alarm.

For å slå av alarmen, sett modusen til Tid.

For å vise innstilt alarmtid, bytt modus mellom tid og alarm, og alarmtiden vises i en kort periode før du går tilbake til å vise gjeldende tid.

Alarmtiden lagres ikke i RTC, så hvis strømmen fjernes, vil det kreve tilbakestilling.

Trinn 5: Box It

Box It
Box It
Box It
Box It

Prosjektet vil sitte i riktig vinkel for å se klokken, men en boks gir en følelse av permanentitet.

Du kan kjøpe en eske i passende størrelse og kutte og bore ut de riktige områdene slik at Microbit får plass i kontakten.

Derimot; I tillegg ønsket jeg å kopiere Microbit -knappene sammen med andre kontroller og indikatorer.

Vanligvis må legender brukes på boksen for å identifisere knapper.

Disse kan påføres for hånd; malt, gravert eller påført etiketter.

En metode for å realisere alle disse alternativene vil være å skrive ut boksen i 3D, men først må vi lage en CAD -fil for å lage skriverfilen.

Alternativene for filopprettelse er håndtegnet eller tegnet med kode.

Jeg valgte "tegnet med kode" ved å bruke Tinkercad CodeBlocks

Filene for esken og esken finner du på Tinkercad CodeBlocks

Trinn 6: Block Code Design

Blokkode Design
Blokkode Design
Blokkode Design
Blokkode Design

Boksen er en todelt design bestående av en base og et lokk.

Fire hjørne skruehull vil bli brukt til å feste lokket med en utskjæring på venstre side for å tillate inngang for USB-kontakten.

Lokket vil ha en utskjæring for Microbit-kontakten og de nødvendige bryterne. I tillegg skrives all tekst ut direkte på lokket og skruehullene er i tråd med basissøylene.

RTC -kortet festes til undersiden av lokket med 4 søyler og 4 skruer.

Størrelsen på esken pluss lokket er 70 x 105 x 31 mm

Koden for lokket og basen er tilgjengelig i TinkerCad CodeBlocks.

Trinn 7: 3D -utskrift

3D -utskrift
3D -utskrift
3D -utskrift
3D -utskrift
3D -utskrift
3D -utskrift
3D -utskrift
3D -utskrift

Last inn filene i Cura og bruk de foretrukne skiverinnstillingene.

Anvendte innstillinger.

Kvalitet: 0,15 mm

Fyll: 80%, Tri-sekskant

Base: Brim

Lagre filene dine, og skriv dem deretter ut.

Med Cura kan du laste begge filene sammen på samme utskriftsområde og skrive ut på en gang.

Trinn 8: Fyll ut

Fyll ut
Fyll ut
Fyll ut
Fyll ut
Fyll ut
Fyll ut

Bokslokket er trykt med innfelt tekst som fylles med farget 2 -delt epoxyharpiks.

Harpiksen blandes med et forhold på 2 deler harpiks til 1 del herder, og deretter blandes et ugjennomsiktig fargepigment inn.

Fargen som ble valgt var gul i kontrast til bakgrunnen. Hvitt ville ha vært et annet valg.

Etter blanding dryppes harpiksen ned i fordypningen ved hjelp av en cocktailpinne for å overføre små klatter harpiks som brukes til å gradvis fylle fordypningen i bokstavene.

Motstå å sette inn for mye harpiks på en gang, da du sannsynligvis vil ende opp med luftbobler og eller skape for mye overløp til overflaten rundt, noe som betyr at du vil ha mer å fjerne rensing og sliping når den er herdet.

Så fyll sakte og sørg for at bunnen av brevet er dekket, og bygg det opp etterbehandling med en lett hevet overflate.

Når harpiksen har herdet, vil det være nødvendig med litt lett sliping for å jevne ut overflaten. Start med P240 -gradering til finere karakterer etter behov for å få en jevn finish til slutt med en polering.

Ikke påfør for mye trykk og for mye hastighet, ellers overopphetes PLA og harpiksen som resulterer i en kjedelig overflate på grunn av oppsamling av korn, litt vann påført under slipeprosessen vil fungere som smøremiddel og kjølevæske.

Trinn 9: Montering

montering
montering
montering
montering
montering
montering

Microbit vil passe inn i kontakten i to retninger, vendt mot hoveddelen av RTC for å vende bort.

Hvis du vender mot hoveddelen av RTC, kan imidlertid ikke koblingene brukes, hvis Microbit vender bort fra hoveddelen av brettet, kan vi bruke disse tilkoblingene.

Monteringen starter med å lodde en rettvinklet SIL -pinneoverskrift på RTC, dette er for å gjøre det mulig å lage tilkoblinger med push fit -kontakter.

RTC er utstyrt med 4 * M3 (10+6mm), M/F -avstander med M3 -muttere som festes til lokket med 4 * M3 (8mm), skruer i de prefabrikkerte hullene.

Bryterne er montert i de prefabrikkerte hullene i lokket.

Tilkoblingene som kreves er:

GND, 3V, P1 (sett), P2 (varsel), P5 (sel) og P11 (inkl.)

Merk *** Motstander (1R), på diagrammet for P5 og P11 er ganske enkelt referansetilkoblingspunkter ettersom direkte tilkobling til disse pinnene på Microbit i Code -blokker ikke er tilgjengelig for øyeblikket. ***

P5 er den eksterne tilkoblingen for knapp A som er tilkoblet med en SPST momentary switch. Den ene tilkoblingen til P5 og den andre pinnen er koblet til GND, denne knappen er for valg av kolonne under tidsinnstilling.

P11 er den eksterne tilkoblingen for knapp B, som er tilkoblet med en SPST momentary switch. Den ene tilkoblingen til P11 og den andre pinnen er koblet til GND, knappen hans er for nummerøkning under tidsinnstilling.

P1 er en SPDT (on-on) -bryter som brukes til å aktivere eller deaktivere innstillingsalternativene. Midtpinnen går til P1 mens den ene pinnen er koblet til GND og den andre til 3V via en 10k motstand. Dette gjør at en H (3V) og L (0V) kan påføres denne pinnen. Når P1 er koblet til 3V, aktiverer dette tidsinnstillingsalternativene og når 0V deaktiverer tidsinnstillingen. På den måten kan du kontrollere om A & B -knappene har noen effekt.

P2 er en SPDT-bryter (på-av-på) som brukes til å aktivere eller deaktivere varslingslyden og valgfrie eksterne lys.

Varslingslyden er en Piezo Buzzer (ganske enkelt festet med en dobbeltsidig klebrig pute), som krever en pulsdrift som leveres av Microbit.

Trinn 10: Til slutt

Du har satt sammen elementene i esken, programmert Microbit og montert den i kontakten på esken.

Påfør deretter strømmen og angi klokkeslettet.

Nyt.

Blokkodekonkurranse
Blokkodekonkurranse
Blokkodekonkurranse
Blokkodekonkurranse

Runner Up i Block Code Contest

Anbefalt: