Час 5 - Читање података са сензора¶
На овом часу говорићемо о:
блоковима за читање података са сензора;
блоковима за чување података са сензора.
Сада када смо креирали свој први програм и покренули га на микробиту, можемо креирати програм којим ћемо искористити једну од функција микробита као улазног уређаја. Тачније микробит врши одређене радње на основу информација које добија од корисника или околине (начин стартовања програма).
Категорија Input садржи наредбе, које на основу информација, које микробит уређај добија од корисника или околине путем притиска на дугме A, B или A+B, као и сензора за светлост, температуру, акцелометар, покрећу одређени програм.
Притиском на дугме А, прикажите ниво осветљења у просторији, док притиском на дугме B се приказује температура у целзијусима.
Фаза 1
Разумевање проблема: Програм приказује ниво осветљења, када корисник притисне тастер А, и температуру када притисне тастер B.
Корак 1: Притисни тастер A
Корак 2: Прикажи тренутно очитавање нивоа осветљења у просторији
Корак 3: Притисни тастер B
Корак 4: Прикажи тренутно очитавање температуре у просторији
Фаза 2
Покрени МејкКод за одабир и слагање блокова у простор за програмирање.
На интернет страници на адреси https://makecode.microbit.org покрени нов пројекат кликом на дугме New Project .
Да бисмо омогућили да микробит прими информацију од корисника, притиском корисника на тастер A, из категорије Input бирамо и превлачимо у простор за програмирање блок:. Из падајуће листе бирамо тастер A.
Да бисмо приказали ниво осветљења у просторији најпре треба да у горњи блок превучемо блок из категорије Basic, који се користи за приказивање нумеричких вредности. Користимо овај блок за приказ јер је тренутни ниво осветљења у просторији представљен као нумеричка вредност од 0 до 255, где 0 означава да је мрак у просторији, а 255 означава јако осветљење.
Изглед кода:
Вредност нивоа осветљења у просторији „чува“ се у блоку одређено за нумеричку вредност. Још једном да те подсетимо да блок чува очитану вредност сензора за светлост који је у ствари екран (дисплеј) микробита (мрежа лед диода на дисплеју микробита предсравља сензор светлости).
Коначан изглед кода:
Да бисмо омогућили да микробит прими информацију од корисника, притиском корисника на тастер A, из категорије Input бирамо и превлачимо у простор за програмирање блок:.
Из падајуће листе бирамо тастер B. Да бисмо приказали температуре у просторији најпре треба да у горњи блок превучемо блок из категорије Basic, који се користи за приказивање нумеричких вредности.
Изглед кода:
Вредност тренутне температуре у просторији „чува“ се у блоку одређено за нумеричку вредност.
Блок чува очитану вредност сензора за температуру микробитовог процесора, јер не постоји посебан сензор за температуру који је уграђен у микробиту. Вредност очитана са сензора се приказује у целзијусима.
Изглед готовог дела кода:
Коначан изглед програма:
Фаза 3
Тестирање и анализа програма.
Да бисмо тестирали програм имамо две могућности: 1 да га покренемо у симулатору кликом на дугме . 2 да га пребацимо на микробит. Да бисмо програм пребацили на микробит треба да га прикачимо на рачунар коришћењем USB кабла. Кликом на дугме преузмите .hex фајл на ваш рачунар. Превлачењем фајла на микробит, уређај је спреман за рад.
Програм можете да проверите и преко симулатора:
- Шта смо научили?
да се блокови за читање и приказивање стања сензора налазе у категорији .
да је ниво осветљења представљен као нумеричка вредност од 0 до 255, где 0 означава да је мрак у просторији, а 255 означава јако осветљење;
да блок чува очитану вредност сензора за температуру микробитовог процесора;
да се температура мери у степенима целзијуса;
да блок чува убрзање када се микробит помера у правцу лево или десно (x), или чува убрзање када се микробит помера напред-назад (y), или чува убрзање када се микробит помера горе и доле (z) или чува убрзање у све три димензије (правца) (strength).
Квиз¶
- Скролује се текст „Здраво, свете!“ преко лед диода на екрану микробита када корисник притисне тастер А+B.
- Браво! Твој одговор је тачан.
- Скролује се текст „Здраво, свете!“ преко лед диода на екрану када корисник потресе микробит.
- Твој одговор није тачан. Покушај поново!
- Скролује се текст „Здраво, свете!“ преко лед диода на екрану када корисник притисне тастер А+B.
- Твој одговор није тачан. Покушај поново!
- Неће бити приказано ништа.
- Твој одговор није тачан. Покушај поново!
Q-37: Шта ће бити приказано на микробиту по извршавању доњег кода:
Изабери један од тачних одговора.
- Скролује се текст „Здраво, свете!“ преко лед диода на екрану микробита када корисник притисне тастер А+B.
- Твој одговор није тачан. Покушај поново!
- Скролује се текст „Здраво, свете!“ преко лед диода на екрану када корисник потресе микробит.
- Твој одговор није тачан. Покушај поново!
- Скролује се текст „Здраво, свете!“ преко лед диода на екрану када корисник притисне тастер А+B.
- Твој одговор није тачан. Покушај поново!
- Неће бити приказано ништа.
- Браво! Твој одговор је тачан.
Q-38: Шта ће бити приказано на микробиту по извршавању доњег кода:
Изабери један од тачних одговора.
- Приказује на екрану који тастер је притиснут А, B или оба у исто време.
- Браво! Твој одговор је тачан.
- Приказује А и B на екрану насумичним редоследом.
- Твој одговор није тачан. Покушај поново!
- Приказује слово А, а потом слово B.
- Твој одговор није тачан. Покушај поново!
- Неће бити приказано ништа.
- Твој одговор није тачан. Покушај поново!
Q-39: Шта ће бити приказано на микробиту по извршавању доњег кода:
Изабери један од тачних одговора.