Arduino:Примеры/Различие между char и int: различия между версиями
Myagkij (обсуждение | вклад) |
Нет описания правки |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 2: | Строка 2: | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
=Различие между char и int= | =Различие между char и int= | ||
Строка 15: | Строка 15: | ||
* '''Сравнение символов.''' Если вы хотите выполнить какое-либо действие, при получении числа, то можно просто сравнить значения символов. | * '''Сравнение символов.''' Если вы хотите выполнить какое-либо действие, при получении числа, то можно просто сравнить значения символов. | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
if(Serial.read() == '1') // одинарные кавычки, говорят о том что это символ, а не цифра | if(Serial.read() == '1') // одинарные кавычки, говорят о том что это символ, а не цифра | ||
{ | { | ||
Строка 24: | Строка 24: | ||
* '''Преобразование входящего байта в целочисленное значение, вычитаем символа '0'.''' Данный метод можно использовать только для чисел не больше 9. | * '''Преобразование входящего байта в целочисленное значение, вычитаем символа '0'.''' Данный метод можно использовать только для чисел не больше 9. | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
// Если мы считаем для примера, символ числа '9' (код 57 кодировки ASCII) | // Если мы считаем для примера, символ числа '9' (код 57 кодировки ASCII) | ||
// и затем вычтем символ '0' (код 48 кодировки ASCII) | // и затем вычтем символ '0' (код 48 кодировки ASCII) | ||
Строка 35: | Строка 35: | ||
* '''Использование функции [[Arduino:Справочник языка Arduino/Библиотеки/Serial/parseInt()|Serial.parseInt()]]'''. Данный метод можно использовать для любых целочисленных значений. | * '''Использование функции [[Arduino:Справочник языка Arduino/Библиотеки/Serial/parseInt()|Serial.parseInt()]]'''. Данный метод можно использовать для любых целочисленных значений. | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
if (Serial.parseInt() == 100) // в данном случае мы сравниваем целочисленные значения | if (Serial.parseInt() == 100) // в данном случае мы сравниваем целочисленные значения | ||
{ | { | ||
Строка 57: | Строка 57: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Портал/Arduino}} | |||
[[Категория:Пример]] | [[Категория:Пример]] | ||
[[Категория:Примеры]] | [[Категория:Примеры]] | ||
[[Категория:Пример программирования Arduino]] | [[Категория:Пример программирования Arduino]] | ||
[[Категория:Примеры программирования Arduino]] | [[Категория:Примеры программирования Arduino]] |
Текущая версия от 12:41, 8 июля 2023
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Различие между char и int
При приеме/передачи между Arduino и ПК по последовательному порту для представления букв, цифр, символов и управляющих команд используется кодировка ASCII(7-битная кодировка, 128 символов и команд). Поэтому при отправке символа или цифры, например "7" или "C", мы отправляем байт, который ПК представляет как символ.
Когда вы отправляете с ПК на Arduino какие-то данные(символ или число), вы должны сохранить их в переменную типа char(прочитать байт как символ). И только потом, если вы ожидали число, конвертировать его.
Есть несколько способов отправки числовых данных на Arduino:
- Сравнение символов. Если вы хотите выполнить какое-либо действие, при получении числа, то можно просто сравнить значения символов.
if(Serial.read() == '1') // одинарные кавычки, говорят о том что это символ, а не цифра
{
// выполнение каких либо операторов
}
- Преобразование входящего байта в целочисленное значение, вычитаем символа '0'. Данный метод можно использовать только для чисел не больше 9.
// Если мы считаем для примера, символ числа '9' (код 57 кодировки ASCII)
// и затем вычтем символ '0' (код 48 кодировки ASCII)
// мы получим символ горизонтальной табуляции с кодом 9 кодировки ASCII
// 57 - 48 = 9
// в целочисленной переменной number сохранится число 9
int number = Serial.read() - '0';
- Использование функции Serial.parseInt(). Данный метод можно использовать для любых целочисленных значений.
if (Serial.parseInt() == 100) // в данном случае мы сравниваем целочисленные значения
{
// выполнение каких либо операторов
}
Необходимые компоненты
Монтажная схема
Для данного примера не нужно собирать схему.
См.также
Внешние ссылки
Arduino продукты | |
---|---|
Начальный уровень | Arduino Uno • Arduino Leonardo • Arduino 101 • Arduino Robot • Arduino Esplora • Arduino Micro • Arduino Nano • Arduino Mini • Arduino Starter Kit • Arduino Basic Kit • MKR2UNO • TFT-дисплей Arduino |
Продвинутые функции | Arduino Mega 2560 • Arduino Zero • Arduino Due • Arduino Mega ADK • Arduino Pro • Arduino Motor Shield • Arduino USB Host Shield • Arduino Proto Shield • MKR Proto Shield • MKR Proto Large Shield • Arduino ISP • Arduino USB 2 Serial Micro • Arduino Mini USB Serial Adapter |
Интернет вещей | Arduino Yun • Arduino Ethernet • Arduino MKR1000 • Arduino WiFi 101 Shield • Arduino GSM Shield V2 • Arduino WiFi Shield • Arduino Wireless SD Shield • Arduino Wireless Proto Shield • Arduino Ethernet Shield V2 • Arduino Yun Shield • Arduino MKR1000 Bundle |
Носимые устройства | Arduino Gemma • Lilypad Arduino Simple • Lilypad Arduino Main Board • Lilypad Arduino USB • LilyPad Arduino SimpleSnap |
3D-печать | Arduino Materia 101 |
Устаревшие устройства | - |
Примеры Arduino | |
---|---|
Стандартные функции | |
Основы |
|
Цифровой сигнал |
|
Аналоговый сигнал |
|
Связь |
|
Управляющие структуры |
|
Датчики |
|
Дисплей |
Примеры, объясняющие основы управления дисплеем:
|
Строки |
|
USB (для Leonardo, Micro и Due плат) |
В этой секции имеют место примеры, которые демонстрируют использование библиотек, уникальных для плат Leonardo, Micro и Due.
|
Клавиатура |
|
Мышь |
|
Разное |
- Страницы, использующие повторяющиеся аргументы в вызовах шаблонов
- Справочник языка Arduino
- Arduino
- Проверка:myagkij
- Оформление:myagkij
- Редактирование:myagkij
- Страницы, где используется шаблон "Навигационная таблица/Телепорт"
- Страницы с телепортом
- Пример
- Примеры
- Пример программирования Arduino
- Примеры программирования Arduino