Inhoudsopgave:
- Stap 1: De toegevoegde BLE-machtigingen
- Stap 2: Het Bluetooth.swift-bestand
- Stap 3: De ViewControllers
- Stap 4: Dat is zo'n beetje het
Video: Eenvoudige IOS-app voor BLE-modules: 4 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Deze Instructable laat zien hoe u een iOS-app kunt maken met zeer basisfunctionaliteit. Deze Instructable zal niet het hele proces van het maken van een iOS BLE-app doorlopen. Het geeft alleen een overzicht op hoog niveau van enkele belangrijke elementen in de app. Van daaruit kun je hopelijk het project downloaden en zelf met de code spelen om meer te weten te komen over de implementatie.
Ik communiceer met een RN4871 BLE-module in mijn project. Specifiek de RN4871 Click Board die is gemaakt door MikroElektronika. Deze Click Boards zijn te vinden op de Mikro-website en ook op websites van andere distributeurs zoals DigiKey, Mouser, enz. Toegegeven, deze Click Boards zijn duurder dan andere modules die u kunt vinden, maar ik gebruik ze graag in mijn projecten omdat uit de doos zijn ze klaar om gegevens te verzenden en te ontvangen zonder enige configuratie. Ik heb veel te vaak gehad dat ik een goedkope module van $ 5 online heb gekocht en de hele datasheet moest lezen om erachter te komen hoe ik deze moest configureren. Voor mij is dat ongeveer 2-4 uur werk om de module te configureren voordat ik zelfs maar gegevens kan verzenden! Deze klikborden lijken direct uit de doos te werken zonder hoofdpijn, dus ze krijgen een duim omhoog van mij!
Hoewel deze iOS-app is gemaakt om te communiceren met de RN4871 en RN4870, kan dezelfde code ook worden gebruikt voor andere BLE-modules (met enige codeaanpassing natuurlijk).
Voel je vrij om de code te gebruiken zoals je wilt! Ik ben geen professionele app-ontwikkelaar, dus vergeef me als iets erin je doet ineenkrimpen:)
Stap 1: De toegevoegde BLE-machtigingen
Een belangrijke functie is de toegevoegde toestemming om BLE binnen de app te gebruiken.
De broncode van deze app heeft een toegevoegde sleutel in het info.plist-bestand. De toets Privacy - Bluetooth Peripheral Usage Description moet worden toegevoegd om BLE te kunnen gebruiken. Zonder deze Bluetooth-sleutel toe te voegen, geeft Xcode u een foutmelding wanneer u de app probeert uit te voeren.
Stap 2: Het Bluetooth.swift-bestand
Dit is misschien wel het belangrijkste bestand in dit project. Binnen dit Bluetooth.swift-bestand wordt een globaal object van het type BluetoothClass gemaakt. Dit globale object wordt geïnitialiseerd door de BluetoothHomeViewController wanneer het verschijnt.
Het object bevat zowel een centralManager-variabele als een perifere variabele. Zodra deze variabelen zijn gedefinieerd, worden ze in de rest van de app gebruikt. Door onze eigen klasse te implementeren, vermijden we dat we meerdere instanties van de centralManager en randapparatuur moeten initialiseren, daarom kunnen we hetzelfde object gebruiken, ongeacht hoeveel viewControllers of bestanden worden toegevoegd. Bovendien hoeven we ons geen zorgen te maken over het doorgeven van een enkel object aan meerdere bestanden en viewControllers. Dat kan rommelig worden!
Dit bestand bevat alles wat wordt gebruikt om randapparatuur te ontdekken, te verbinden en ermee te praten.
Het bevat ook de serviceUUID waarnaar we zullen scannen, samen met de rxUUID (ontvangen) en txUUID (verzenden). Als u een andere module met deze app wilt gebruiken, hoeft u alleen deze waarden te wijzigen zodat ze overeenkomen met de UUID's van de nieuwe module die u gebruikt.
Stap 3: De ViewControllers
Deze app is uiterst eenvoudig. Er zijn slechts twee ViewControllers: een om gegevens heen en weer te sturen en een om te scannen naar randapparatuur.
BluetoothHomeViewController belangrijke dingen om op te merken:
- We maken meldingen voor wanneer ons Bluetooth-object een randapparaat vindt en wanneer ons Bluetooth-object een bericht ontvangt.
-
We abonneren ons op de ontvangen berichtmelding.
Dit genereert in feite een interrupt, wanneer we in deze viewController altijd iets ontvangen. In het tekstveld geven we vervolgens weer wat we hebben ontvangen
ScannerViewController belangrijke dingen om op te merken:
-
We abonneren ons op de gevonden perifere melding.
Dit creëert een onderbreking wanneer in deze viewController telkens een nieuw randapparaat wordt gevonden dat overeenkomt met onze serviceUUID, zodat we de tabel met de beschikbare randapparatuur opnieuw kunnen laden
Stap 4: Dat is zo'n beetje het
Natuurlijk zijn er andere dingen aan de hand binnen de app. Ik heb echter alleen de dingen beschreven die misschien niet erg duidelijk zijn binnen de implementatie. Hopelijk spreekt de rest van de code waar ik het niet over had voor zich.
Nogmaals, deze code moet kunnen worden gebruikt met andere BLE-modules buiten de RN4871. U hoeft alleen maar de UUID's in het bestand Bluetooth.swift te wijzigen.
Download het project en speel zelf met de code om precies te leren hoe alles wordt geïmplementeerd. De code is heel eenvoudig, zodat u deze kunt toevoegen en aanpassen aan uw eigen toepassing.
Veel plezier met coderen!
-ChocoladeMotregen
Aanbevolen:
Een eenvoudige handleiding voor CANBUS: 8 stappen
Een eenvoudige tutorial voor CANBUS: ik bestudeer CAN al drie weken en heb nu een aantal toepassingen voltooid om mijn leerresultaten te valideren. In deze tutorial leer je hoe je Arduino kunt gebruiken om CANBUS-communicatie te implementeren. Als je suggesties hebt, laat dan een
Autocorrectie voor slechts één woord uitschakelen (iOS): 3 stappen
Autocorrectie uitschakelen voor slechts één woord (iOS): Soms corrigeert Autocorrectie iets dat u niet wilt corrigeren, bijvoorbeeld. tekstafkortingen beginnen zichzelf allemaal hoofdletters te maken (imo corrigerend naar IMO bijvoorbeeld). Hier leest u hoe u het kunt dwingen om te stoppen met het corrigeren van één woord of zin, zonder aut
Idee voor doe-het-zelf-activiteit voor weerstations voor 12+ jaar: 4 stappen
Idee voor doe-het-zelf-weerstationactiviteit voor 12-plussers: in deze activiteit zullen deelnemers hun weerstation opzetten, de lucht in sturen en de opnames (licht, temperatuur, vochtigheid) in realtime volgen via de Blynk-app. Bovendien leert u hoe u de geregistreerde waarden publiceert
Maak een veilige zone voor Android/IOS/WIN10-apparaten om ontgrendeld te blijven: 6 stappen
Maak een veilige zone voor Android/IOS/WIN10-apparaten om ontgrendeld te blijven: in dit artikel willen we een coole gadget maken die een veilige zone kan maken voor je apparaten om te worden ontgrendeld. Aan het einde van dit project: leer je hoe je een vingerafdruksensor gebruikt. leer je hoe je je apparaten kunt koppelen met je safe zone-gadget
Eenvoudige oplossingen voor de Timbuktu-pendeltas V.1, voor fietsen - Ajarnpa
Eenvoudige oplossingen voor de Timbuktu-pendeltas V.1, voor fietsen: als een Timboektoe-tasfan die de gewoonte had om te fietsen met een laptop in mijn koerierstas, toen ze met de pendeltas kwamen, dacht ik 'perfect' en bestelde er een online. Ik had zoiets van woo hoo, dit wordt cool. Maar toen ik het kreeg, was ik geschokt en ontzet