Draadloze temperatuursensor (3 / 4 stap)

Stap 3: Schrijven van de Code van de ontvanger


De ontvanger code is een beetje meer gecompliceerd vanwege de 7 segment I2c-module, maar het converteren sub doet het meeste van het harde werk.

'------------------------------------------------------------
' 18 X - ontvanger
SYMBOOL RCV_PIN = 7
SYMBOOL DATA_RCVD = w3
SYMBOOL DATA_RCVD_SIGN = b3
SYMBOOL CHECK_DATA = b1
SYMBOOL BAUDRATE = N1200 ' moet b T2400 als met behulp van USB-serieel

symbool temp = b12
symbool Cnt w2 = ' teller
symbool Digit0 = b8 ' digit0 gegevens bevatten
symbool Digit1 = b9 ' digit1 gegevens bevatten
symbool Digit2 = b10 ' digit2 gegevens bevatten
symbool Digit3 = b11 ' digit3 gegevens bevatten
symbool slvAddrWR = $70 ' I2C adres schrijven
symbool slvAddrRD = $71 ' I2C Lees het adres

PAUZE 1000

i2cslave slvAddrWR, i2cslow, i2cbyte ' I2C-7SEG initialiseren
writei2c 0,(%01000111)

NXT:
LAAG 5
LAAG 6

KANARIE RCV_PIN, BAUDRATE,("TP"), DATA_RCVD_SIGN, DATA_RCVD, CHECK_DATA

Als CHECK_DATA = "x" dan

SERTXD ("Val", DATA_RCVD_SIGN, #DATA_RCVD, 13, 10)

' groen
LAAG 5
HOGE 6
onderbreken van 100

Anders ' controleren bit niet goed ontvangen
sertxd ("slecht.", "teken", DATA_RCVD_SIGN, "-", #DATA_RCVD_SIGN, ", rcvd1", DATA_RCVD, "-" #DATA_RCVD, ", chk", CHECK_DATA, "-", #CHECK_DATA, 13, 10)

' Zet rood
LAAG 6
HOGE 5

Eind als

onderbreken van 100
laat cnt = DATA_RCVD

GOSUB converteren ' Converteer decimaal in elk segment LED

' Schakel de eerste 2 cijfers
Digit3 = $0
Digit2 = $0
writei2c 1,(Digit0,Digit1,Digit2,Digit3) ' schrijven van elk cijfer 7-segment

GOTO NXT

CONVERTEREN: ' opzoektabel voor 7-segment

Temp = cnt % 10
LOOKUP temp, ($3F$ 06, $5B, $4F, $66, 6D$, 7D$, $07, $7F, $6F, $77, $7 C, $39, $5E, $79, $71), Digit0
Temp = cnt / 10 10%
LOOKUP temp, ($3F$ 06, $5B, $4F, $66, 6D$, 7D$, $07, $7F, $6F, $77, $7 C, $39, $5E, $79, $71), Digit1
Temp = cnt / 100% 10
LOOKUP temp, ($3F$ 06, $5B, $4F, $66, 6D$, 7D$, $07, $7F, $6F, $77, $7 C, $39, $5E, $79, $71), Digit2
Temp = cnt / 1000% 10
LOOKUP temp, ($3F$ 06, $5B, $4F, $66, 6D$, 7D$, $07, $7F, $6F, $77, $7 C, $39, $5E, $79, $71), Digit3

TERUGKEER
'------------------------------------------------------------

Toen ik begon met behulp van de module mij watertje getting sommige storing en dus soms het niet zou laten zien de juiste waarde, dus ik heb een selectievakje byte toegevoegd aan het einde, om te controleren dat de gegevens correct werd ontvangen. Wanneer de gegevens worden goed ontvangen de LED knippert groen, als "slecht" gegevens ontvangen het zal rood knipperen.

De lijnen
Digit3 = $0
Digit2 = $0
worden toegevoegd om te stoppen met de eerste 2 cijfers op het display weergegeven, terwijl ze niet hoeven te worden op.

Gerelateerde Artikelen

Mapping The Mangroves draadloze temperatuursensor

Mapping The Mangroves draadloze temperatuursensor

Mangroves zijn zeer gevoelig voor veranderingen in temperatuur na verloop van tijd. Wij willen voor het meten van de lucht en de temperatuur van het water rond Mangrovebomen beter begrijpen deze correlatie.Dit leerprogramma zal u tonen hoe de Mapping
Eenvoudige draadloze temperatuursensor bijwerken website met elektrische GMB en Thermistor

Eenvoudige draadloze temperatuursensor bijwerken website met elektrische GMB en Thermistor

[Edit 2014] De planner die werd gebruikt door elektrische Imp is niet langer gebruikt en niet beschikbaar meer. [/Edit]Dit is een klein project om te beginnen met het elektrische GMB en een Thermistor zodat u kunt zien hoe kunt u temperatuur lezingen
IR draadloze temperatuursensor met ATtiny85

IR draadloze temperatuursensor met ATtiny85

Arduino is eenvoudig en zeer krachtige open source/hardware platform waar alleen uw verbeelding kan u tegenhouden. Een paar dagen geleden las ik een instructable die inspireren mij om te doen mijn eigen. De instructable is over hoe u tekenreeksen van
ESP8266-12 blynk draadloze temperatuur, vochtigheid DHT22 sensor

ESP8266-12 blynk draadloze temperatuur, vochtigheid DHT22 sensor

in dit project met behulp van een esp8266, zodat de temperatuur en de vochtigheid DHT22 sensor op uw smartphone of tablet.DHT22 sensor is veel nauwkeuriger dan de DHT11, maar is ook duurder.maar als u alleen de DHT11 kunt gebruikenESP8266-12 blynk dr
HestiaPi - Open slimme thermostaat

HestiaPi - Open slimme thermostaat

/ * Eerste instructable hier, dus mooi :) * /Oke, er zijn teveel opensource huis automations daar maar wanneer ik probeerde te kijken naar het maken van een van deze ik eindigde met een bittere smaak vanwege één of een paar van de volgende redenen:He
ESP8266-12 blynk draadloze LM35 temperatuursensor

ESP8266-12 blynk draadloze LM35 temperatuursensor

ESP8266-12 blynk draadloze LM35 temperatuursensorin dit project met behulp van een esp8266, zodat de LM35 temperatuursensor op uw smartphone of tablet.Als u beschikbare sensoren kunt DHT11 DHT22 of u de volgende InstructableDHT11 sensorESP8266-12 bly
Edison en Arduino/waar 101 draadloze weerstation

Edison en Arduino/waar 101 draadloze weerstation

Dit Instructable beschrijft een Intel(r) Edison- en Arduino/waar 101 gebaseerde modulaire Draadloos weerstation die ik onlangs voor mijn privé-gebruik gemaakt heb.Fundamentele begrippen, die gedefinieerd de setup en oplossingen, waren:Als u wilt een
Home Control Center via BeagleBone groen draadloze

Home Control Center via BeagleBone groen draadloze

SeeedStudio BeagleBone groene Wireless(SeeedStudio BBG Wireless) is een gezamenlijke inspanning van BeagleBoard.org en het Seeed Studio. De draadloze BBG heeft opgenomen twee Grove connectoren en support mraa bibliotheek, waardoor het makkelijker te
Programmering ESP8266 ESP-12E NodeMCU v1.0 met Arduino IDE in draadloze temperatuur logger

Programmering ESP8266 ESP-12E NodeMCU v1.0 met Arduino IDE in draadloze temperatuur logger

Terug in eind 2014 en begin 2015, uw echt kwamdeze handige WiFi Chip ESP8266 (de ESP-01) en moeten vechten onder de inconsistente documentatie uit verschillende bronnen. Vooralsnog uitloper gedocumenteerd hij zijn frustraties (bevindingen) als een in
Goedkope draadloze transmissie tussen twee Arduinos met infrarood

Goedkope draadloze transmissie tussen twee Arduinos met infrarood

Hoi allemaalVoor een project, was ik op zoek naar een goedkope oplossing voor het verzenden van gegevens van een Arduino met een andere. De seriële poort was al genomen en mijn transmissie (unidirectioneel) moest worden draadloze.Mijn onderzoek heeft
Draadloze outdoor Arduino-weerstation met PC houtkap en grafieken

Draadloze outdoor Arduino-weerstation met PC houtkap en grafieken

ik wilde een logboek van buiten weer met PC houtkap en grafieken voor geruime tijd nu. Er zijn dergelijke apparaten in de markt, maar hun kosten is echt hoog. Zo, besliste te bouwen door mijzelf en de ervaring te genieten.FunctiesTemperatuur, luchtvo
Draadloze Mesh met grafische LCD

Draadloze Mesh met grafische LCD

16 knooppunten mesh, tot 1000m proeven tussen knooppunten, twee analoge spanningen per knooppunt een willekeurig knooppunt naar andere knooppunten koppelen, gegevens op een willekeurig knooppunt met de afbeeldingen of tekst weergeven, schakel Relais
Arduino draadloze weerstation & webserver

Arduino draadloze weerstation & webserver

doelMijn PC (die al jarenlang op 24-7 6) en de weerstationsoftware vervangen door een Arduino – lager energieverbruik, minder onderhoud en kleinere fysieke voetafdruk.  Minimale PC-functionaliteit vereisen dubbel:• Registratie van weergegevens (winds
Draadloze thermometer voor binnen & buiten

Draadloze thermometer voor binnen & buiten

Graag wil ik u kennismaken met een van mijn interessante projecten. Het is een draadloze thermometer, die de binnen en buiten temperatuur meet. Het apparaat bestaat uit twee delen. Een is een zender die een digitale temperatuursensor en een zendermod