Բովանդակություն:

Պարզ IOS ծրագիր BLE մոդուլների համար. 4 քայլ
Պարզ IOS ծրագիր BLE մոդուլների համար. 4 քայլ

Video: Պարզ IOS ծրագիր BLE մոդուլների համար. 4 քայլ

Video: Պարզ IOS ծրագիր BLE մոդուլների համար. 4 քայլ
Video: ЛЮБОВЬ С ДОСТАВКОЙ НА ДОМ (2020). Романтическая комедия. Хит 2024, Նոյեմբեր
Anonim
Պարզ IOS ծրագիր BLE մոդուլների համար
Պարզ IOS ծրագիր BLE մոդուլների համար

Այս Instructable- ը պատմում է, թե ինչպես կարող եք ստեղծել iOS ծրագիր ՝ շատ հիմնական ֆունկցիոնալությամբ: Այս Instructable- ը չի անցնի iOS BLE հավելված պատրաստելու ամբողջ գործընթացով: Դա միայն բարձր մակարդակի ակնարկ կտա հավելվածի որոշ կարևոր տարրերի վերաբերյալ: Այնտեղից, հուսով եմ, կարող եք ներբեռնել նախագիծը և ինքներդ խաղալ ծածկագրի հետ ՝ իրականացման մասին ավելին իմանալու համար:

Ես իմ նախագծում շփվում եմ RN4871 BLE մոդուլի հետ: Մասնավորապես, RN4871 Click Board- ը, որը պատրաստվում է MikroElektronika- ի կողմից: Այս կտտոցները կարելի է գտնել Mikro կայքում, ինչպես նաև այլ դիստրիբյուտոր կայքեր, ինչպիսիք են DigiKey- ը, Mouser- ը և այլն: mittedիշտ է, այս կտտոցներն ավելի թանկ են, քան դուք կարող եք գտնել այլ մոդուլներ, սակայն ես սիրում եմ դրանք օգտագործել իմ նախագծերում, քանի որ տուփից դուրս նրանք պատրաստ են փոխանցել և ստանալ տվյալներ ՝ առանց որևէ կազմաձևման կարիք ունենալու: Ես շատ անգամ եմ հանդիպել, երբ առցանց գնել եմ էժան $ 5 մոդուլ և ստիպված եմ եղել կարդալ տվյալների ամբողջ թերթիկը `պարզելու համար, թե ինչպես այն կարգավորել: Ինձ համար դա մոտ 2-4 ժամ տևողությամբ աշխատանք է ՝ մոդուլը կազմաձևելու համար, մինչև որ ես նույնիսկ կարողանամ տվյալներ ուղարկել: Այս կտտոցները, կարծես, աշխատում են տուփից դուրս ՝ առանց գլխացավերի, այնպես որ նրանք ինձանից բութ մատ են ստանում:

Թեև այս iOS ծրագիրը ստեղծված է RN4871- ի և RN4870- ի հետ հաղորդակցվելու համար, այս նույն ծածկագիրը կարող է օգտագործվել նաև այլ BLE մոդուլների համար (իհարկե, որոշ կոդի փոփոխություններով):

Ազատորեն օգտագործեք ծածկագիրը, ինչպես ցանկանում եք: Ես պրոֆեսիոնալ հավելվածի մշակող չեմ, այնպես որ ներիր ինձ, եթե դրա մեջ ինչ -որ բան ստիպում է քեզ ցնցել:)

Քայլ 1: Ավելացված BLE թույլտվություններ

Ավելացված BLE թույլտվություններ
Ավելացված BLE թույլտվություններ

Կարևոր առանձնահատկություններից մեկը հավելվածում BLE օգտագործելու լրացուցիչ թույլտվությունն է:

Այս հավելվածի աղբյուրի ծածկագիրն ունի info.plist ֆայլում ավելացված բանալին: Գաղտնիություն - Bluetooth ipայրամասային օգտագործման նկարագրության բանալին պետք է ավելացվի BLE- ն օգտագործելու համար: Առանց Bluetooth- ի այս բանալին ավելացնելու, Xcode- ը ձեզ սխալ կտա, երբ փորձում եք գործարկել ծրագիրը:

Քայլ 2: Bluetooth.swift ֆայլը

Սա, թերևս, այս նախագծի ամենակարևոր ֆայլն է: Այս Bluetooth.swift ֆայլի մեջ ստեղծվում է BluetoothClass տիպի գլոբալ օբյեկտ: Այս գլոբալ օբյեկտը սկզբնավորվում է BluetoothHomeViewController- ի կողմից, երբ այն հայտնվում է:

Օբյեկտը պահում է և՛ CentralManager փոփոխականը, և՛ ծայրամասային փոփոխականը: Այս փոփոխականները սահմանելուց հետո դրանք օգտագործվում են հավելվածի մնացած մասում: Իրականացնելով մեր սեփական դասը, մենք խուսափում ենք կենտրոնական կառավարչի և ծայրամասային սարքի բազմաթիվ օրինակներ նախաստորագրելու անհրաժեշտությունից, հետևաբար կարող ենք օգտագործել նույն օբյեկտը, անկախ նրանից, թե քանի դիտիչ կամ ֆայլեր են ավելացվել: Բացի այդ, մենք կարիք չունենք անհանգստանալու մեկ օբյեկտ բազմաթիվ ֆայլերի և ViewControllers- ի փոխանցման համար: Դա կարող է խառնաշփոթ լինել:

Այս ֆայլը պարունակում է այն ամենը, ինչ օգտագործվում է ծայրամասային սարքի հայտնաբերման, կապի և խոսակցության համար:

Այն պարունակում է նաև serviceUUID, որը մենք փնտրելու ենք rxUUID- ի (ստացման) և txUUID- ի (փոխանցման) հետ միասին: Եթե կցանկանայիք օգտագործել այս ծրագրի հետ մեկ այլ մոդուլ, այն ամենը, ինչ դուք պետք է անեք, դա է ՝ փոխել այս արժեքները ՝ ձեր օգտագործած նոր մոդուլի UUID- ներին համապատասխանելու համար:

Քայլ 3: ViewControllers

Այս ծրագիրը չափազանց պարզ է: Կան միայն երկու ViewController ՝ մեկը ՝ տվյալները հետ ու առաջ ուղարկելու, և մեկը ՝ ծայրամասային սարքերի որոնման համար:

BluetoothHomeViewController- ը կարևոր է նշել.

  • Մենք ստեղծում ենք ծանուցումներ այն ժամանակ, երբ մեր Bluetooth օբյեկտը գտնում է ծայրամասային և երբ մեր Bluetooth օբյեկտը հաղորդագրություն է ստանում:
  • Մենք բաժանորդագրվում ենք ստացված հաղորդագրության ծանուցմանը:

    Սա հիմնականում առաջացնում է ընդհատում, երբ այս դիտարկիչում ցանկացած պահի մենք ինչ -որ բան ենք ստանում: Այնուհետեւ մենք ցուցադրում ենք այն, ինչ ստացել ենք տեքստային դաշտում:

ScannerViewController- ը նշելու կարևոր բաներ.

  • Մենք բաժանորդագրվում ենք գտնված ծայրամասային ծանուցմանը:

    Սա ստեղծում է ընդհատում, երբ այս viewController- ում ցանկացած պահի գտնվի նոր ծայրամասային սարք, որը համապատասխանում է մեր serviceUUID- ին, որպեսզի մենք կարողանանք վերաբեռնել սեղանը ՝ ցուցադրելով առկա ծայրամասային սարքերը:

Քայլ 4: Դա բավականին շատ է:

Իհարկե, հավելվածում այլ բաներ են կատարվում: Այնուամենայնիվ, ես նկարագրեցի միայն այն բաները, որոնք իրականացման ընթացքում գուցե այնքան էլ պարզ չեն: Հուսով եմ, որ մնացած ծածկագիրը, որի մասին ես չեմ խոսել, ինքնաբացատրելի է:

Կրկին այս կոդը պետք է կարողանա օգտագործվել այլ BLE մոդուլների հետ, RN4871- ից դուրս: Պարզապես պետք է փոփոխեք Bluetooth.swift ֆայլի UUID ֆայլերը:

Խնդրում ենք ներբեռնել նախագիծը և ինքներդ խաղալ ծածկագրի հետ ՝ ճշգրիտ իմանալու համար, թե ինչպես է ամեն ինչ իրականացվում: Կոդը շատ պարզ է, որպեսզի կարողանաք ավելացնել և փոփոխել այն ՝ ձեր սեփական ծրագրին համապատասխան:

Շնորհավոր կոդավորում:

-Շոկոլադե կաթիլ

Խորհուրդ ենք տալիս: