Inhoudsopgave:
- Stap 1: Kies een bestaande wetenschappelijke rekenmachine
- Stap 2: Componentselectie
- Stap 3: Ontwerp van stroomcircuits
- Stap 4: Ontwerp van besturingsschakelingen
- Stap 5: PCB-ontwerp
- Stap 6: Code weg
Video: SMS-calculator: 6 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Nu een product!
Het behalen van een Masters Degree in Electrical Engineering kostte wat moeite. Het was een lange weg van vijf jaar waar ik enorm van heb genoten. Eind 2015 studeerde ik af aan de universiteit en had ik 3 maanden vakantie voor de boeg. Wat is een betere manier om het te besteden dan een beetje Engineering R&D! Laten we een SMS-calculator maken!
Stap 1: Kies een bestaande wetenschappelijke rekenmachine
Deze stap is vrijwel verplicht.
Het is zeer onwaarschijnlijk dat iemand een bedrijf zou kunnen vinden om voor een goedkope prijs een paar rekenmachinebehuizingen en -knoppen te maken.
Nu is het gewoon een kwestie van de binnenkant eruit halen en onze eigen circuits erin stoppen.
Stap 2: Componentselectie
De drie meest cruciale componenten voor het project zijn de LCD, MCU en Bluetooth-module.
Voor de LCD heb ik de "162COG-BA-BC" van Displaytech gebruikt. Het LCD-scherm moet superdun zijn om in de rekenmachinebehuizing te passen en dit LCD-scherm voldeed aan die eis. Bovendien is het een reflecterend LCD-scherm en zal het dus niet veel stroom verbruiken. Ten slotte maakt dit LCD-scherm gebruik van een controller die compatibel is met de bekende Hitachi HD44780 en maakt het programmeren een fluitje van een cent met de grote overvloed aan online documentatie.
Voor de MCU is een groot aantal algemene I/O-pinnen nodig om plaats te bieden aan het aantal wetenschappelijke rekenmachineknoppen. Een behoorlijke hoeveelheid flash-geheugen en een UART-interface voor de Bluetooth-module zijn ook vereist.
Voor de Bluetooth-module is de noodzakelijke vereiste dat de module zowel als master als als slave kan fungeren. Dat wil zeggen, niet alleen kunnen andere apparaten verbinding maken met de module, maar de module kan ook scannen naar andere Bluetooth-apparaten en zelf verbindingen initialiseren. Zonder deze mogelijkheid zouden rekenmachines geen verbinding met elkaar kunnen maken en zouden ze alleen verbindingsverzoeken van slimmere apparaten zoals smartphones kunnen accepteren.
Stap 3: Ontwerp van stroomcircuits
Als we door de datasheets kijken, weten we dat we twee spanningsrails nodig hebben. We hebben een 3,3 V-rail nodig voor de Bluetooth-module en een 5,0 V-rail voor het LCD-scherm.
We hebben een 3,0 V-voeding van de twee alkalinebatterijen die in serie staan. Om de vereiste spanningen te krijgen, gebruiken we een Boost Converter en een Low Dropout Regulator (LDO). De uitgangsspanning van de Boost Converter wordt bepaald door de weerstandsverhouding van R3 en R4 in het diagram. De Boost Converter zal de spanning verhogen van 3,0 V naar 5,0 V met de aangegeven waarden.
We kunnen dan de 5,0 V-rail gebruiken om met behulp van een LDO een 3,3 V-rail te maken. Zorg er wel voor dat u een paar behoorlijk grote SMD-condensatoren op de in- en uitgangen van deze regelaars plaatst, omdat deze van cruciaal belang zijn voor een succesvolle werking.
Ten slotte gooien we een flip-flop in voor wat slim schakelen, die we zullen gebruiken met de aan- en uit-knoppen die horen bij de behuizing van de rekenmachine.
Stap 4: Ontwerp van besturingsschakelingen
Het schema voor de besturingsschakeling is relatief eenvoudig.
We gebruiken de JTAG van ATmega voor het debuggen van het apparaat.
We verbinden de Bluetooth-module met een van de UART-interfaces van de MCU's en gooien er enkele veiligheidsweerstanden in om ervoor te zorgen dat we nooit een spanning van meer dan 3,3 V op de Bluetooth-module zien. De weerstandsdeler is nodig omdat de MCU vanaf de 5 V-rail loopt (de MCU kan niet vanaf de 3,3 V-rail worden aangestuurd omdat 3,3 V onvoldoende is voor de LCD-logica hoog).
Het LCD-scherm maakt rechtstreeks verbinding met I/O's voor algemene doeleinden op de MCU. Voor de contrastpin wordt een spanningsdeler gebruikt. Als alternatief zou hier een potentiometer kunnen worden gebruikt. Ik hou echter van de robuustheid van een statisch product dat wordt geleverd met afzonderlijke weerstanden om het contrast aan te passen.
Voeg wat ontkoppelingscondensatoren toe, een 16 MHz-kristal voor de MCU, trekweerstanden voor de knoppen en het schematische ontwerp is klaar.
Stap 5: PCB-ontwerp
Voor het PCB-ontwerp heb ik Altium Designer gebruikt. Het belangrijkste en lastigste onderdeel van het PCB-ontwerp was het meten van de fysieke afmetingen van de rekenmachine. Het bord moet niet alleen de perfecte breedte en hoogte hebben om goed in de rekenmachinebehuizing te passen, maar er moet ook aan een aantal andere fysieke afmetingen worden voldaan. De LCD-gaten moeten de juiste positie op de PCB hebben om goed uit te lijnen met het venster in de behuizing. De PCB heeft verschillende gaten nodig voor waar de schroeven doorheen gaan van de achterkant van de behuizing naar de voorkant van de behuizing. Ten slotte moet de printplaat pads voor de knoppen hebben die goed uitgelijnd zijn.
Het padontwerp voor de knoppen maakt gebruik van een standaard doorschotvorm om een hoge betrouwbaarheid te garanderen wanneer de geleidende knopmat wordt ingedrukt.
Zorg ervoor dat u het koper uit de printplaat snijdt met behulp van een "Keep Out Area" rond de antenne van de Bluetooth-module om ervoor te zorgen dat er geen compromis is in de signaalconnectiviteit. Mijn fabrikant besloot onverwachts om het hele bord uit te snijden waar ik had gemarkeerd, maar gelukkig leverde dit geen problemen op voor mij.
Stap 6: Code weg
Ik gebruikte AVR Studio met een oude JTAG ICE debugger om al mijn codering te doen. Mijn code was zeker niet elegant geschreven, maar uiteindelijk werkte het allemaal prima. Uiteindelijk gebruikte ik 64 Kbytes van de 128 Kbytes aan flash-geheugen die beschikbaar waren.
De Bluetooth-module is echt behoorlijk krachtig. Ik heb mijn apparaat de mogelijkheid gegeven om verbinding te maken met andere rekenmachines, iPhones en Androids.
De vereisten voor codering zijn kennis van Hitachi LCD-controllers, basis AVR-programmeervaardigheden en een begrip van hoe te communiceren met een randapparaat via AT-commando's en UART.
Heel erg bedankt voor het lezen!
www.rubydevices.com.au/productSelect/RubyCalculator
www.ebay.com.au/itm/Text-Messaging-Calculat…
Aanbevolen:
Sms verzenden als er rook wordt gedetecteerd (Arduino+GSM SIM900A: 5 stappen)
Sms verzenden als rook wordt gedetecteerd (Arduino+GSM SIM900A: Hallo allemaal! In mijn eerste instructable zal ik een gasalarm maken dat een bericht naar de gebruiker stuurt als er vervuiling wordt gedetecteerd. Dit zal een eenvoudig prototype zijn met behulp van Arduino, GSM-module en elektrochemische rooksensor.In de toekomst kan dit worden uitgebreid tot
Een sms verzenden met een ESP8266: 5 stappen
Een sms verzenden met een ESP8266: deze instructie leidt u door de stappen om sms-berichten via internet te verzenden vanaf een ESP8266 NodeMCU-modulekaart naar een mobiele telefoon. Om het bericht te kunnen verzenden, moet u de stappen doorlopen om een virtueel telefoonnummer te krijgen van
SMS versturen met Arduino -- TC35 GSM-module: 5 stappen
SMS versturen met Arduino || TC35 GSM-module: In dit kleine project laat ik je zien hoe je een TC35 GSM-module correct gebruikt en hoe je deze gebruikt met een Arduino Uno om er een sms mee te verzenden
Brandalarm met sms-melding: 3 stappen
Brandalarm met sms-melding: GSM 800H, op Arduino gebaseerde brandsensor en sms-meldingssysteem, het gebruikt een IR-sensor om het vuur in de donkere kamer te detecteren. Het verzendt sms via GSM 800H-modem die is aangesloten op Serial Rx- en Tx-pinnen van Arduino. Stel uw mobiele nummer in de code in
Hoe SIM800L te gebruiken om sms en stuurrelais per sms te verzenden: 3 stappen:
Hoe SIM800L te gebruiken om sms en besturingsrelais per sms te verzenden: Beschrijving: Deze tutorial laat zien hoe u SIM800L kunt gebruiken om sms te verzenden en sms te ontvangen om relais te besturen. SIM800L-module is klein van formaat en kan worden gebruikt om te communiceren met Arduino om sms te verzenden, sms te ontvangen, te bellen, oproepen te ontvangen en meer. In deze zelfstudie