
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:05

В этом руководстве мы узнаем, как сделать простой и стандартный калькулятор с CloudX. Нажмите. Если вы еще ничего не читали о взаимодействии клавиатуры с CloudX, здесь наша цель - научить вас, как вы можете разработать свой собственный аппаратный калькулятор с использованием cloudX M633.
Наша цель - разработать калькулятор, который может выполнять сложение (+), вычитание (-), умножение (*) и деление (/) с результатами в десятичных дробях от 0,0000001 до целых чисел до 90000000. Калькулятор обладает способностью обнаруживать математические ошибки и т. д. Каждый ребенок, студент или любитель должен уметь выполнить этот фантастический проект.
Шаг 1: АППАРАТНЫЕ ТРЕБОВАНИЯ


1x микроконтроллер CloudX
1x SoftCard CloudX
1x USB-кабель
1x матричная клавиатура 4x4
1x 16x2 перемычки для ЖК-дисплея
1x резистор 1 кОм
4 резистора 10 кОм
Шаг 2: ПОДКЛЮЧЕНИЕ ПИН-кода



Контакты подключения CloudX с ЖК-дисплеем и контакты подключения CloudX с клавиатурой
Шаг 3: ЦЕПНАЯ СХЕМА

Шаг 4: ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
/ * * Файл: Smart KeyPad Lock System.c
* Автор: толстовка
*
* Создано 20 марта 2018 г., 11:21
*/
#включают
#включают
#включают
#включают
#define NumberOfRows 4 // установить отображение четырех строк
#define NumberOfColumns 4 // установить отображение трех столбцов
char KeypadCharacters [NumberOfRows] [NumberOfColumns] = {
'1', '2', '3', '+', '4', '5', '6', '-', '7', '8', '9', '*', 'C', '0', '=', '/'
};
char RowPins [NumberOfRows] = {7, 8, 9, 10};
char ColumnsPins [NumberOfColumns] = {11, 12, 13, 14};
char Keys, a = 0, check = 0, operation = 0, signa = 0, signb = 0;
подписанный плавающий ответ;
char * Panswer;
char Aanswer [10];
подписанный длинный ввод;
char Ainputa [10];
подписанный длинный вводb;
char Ainputb [10];
настраивать(){
KeypadSetting (PULLDOWNCOL, RowPins, ColumnsPins, NumberOfRows, NumberOfColumns, KeypadCharacters);
lcdSetting (1, 2, 3, 4, 5, 6);
lcdCmd (lcd_clear);
lcdCmd (cursor_off);
lcdWriteText (1, 1, «КАЛЬКУЛЯТОР С»);
lcdWriteText (2, 1, «CLOUDX»);
delayMs (2000);
lcdCmd (lcd_clear);
lcdCmd (курсор_blink);
петля(){
Ключи = getKey ();
if (Keys! = 0 && Keys == 'C') {
lcdCmd (lcd_clear);
lcdCmd (курсор_blink);
for (a = 0; a <10; a ++) {
Аинпута [а] = 0;
Ainputb [a] = 0;
Ответ [a] = 0;
}
а = 0;
операция = 0;
check = 0;
signa = 0;
signb = 0;
}
if (check == 1 && Keys! = 0 && Keys == '=') {
lcdCmd (курсор_выкл);
inputa = atoi (Аинпута);
inputb = atoi (Ainputb);
if (signa == '-') {
inputa = - (inputa);
}
if (signb == '-') {
inputb = - (inputb);
}
if (operation == '+') {
ответ = inputa + inputb;
longTostr (Aanswer, ответ, DEC);
}
if (operation == '-') {
answer = inputa - inputb;
longTostr (Aanswer, ответ, DEC);
}
if (operation == '*') {
answer = inputa * inputb;
longTostr (Aanswer, ответ, DEC);
}
if (operation == '/') {
answer = (float) inputa / (float) inputb;
Panswer = floatTostr (ответ);
if (inputa> inputb) {
Panswer [5] = 0;
}
}
if (operation == '/') {
lcdWriteText (2, 1, «ANS:»);
lcdWriteTextCP (Panswer);
}
еще {
lcdWriteText (2, 1, «ANS:»);
lcdWriteTextCP (Ответ);
}
}
if (Keys! = 0 && (Keys == '+' || Keys == '-' || Keys == '*' || Keys == '/')) {
if (operation! = 0 && a == 0 && signb == 0 && (Keys == '-' || Keys == '+')) {
lcdWriteCP (Ключи);
if (Keys == '-' || Keys == '+') {
signb = Ключи;
}
}
if (operation == 0 && a == 0 && signa == 0 && (Keys == '-' || Keys == '+')) {
lcdWriteCP (Ключи);
if (Keys == '-' || Keys == '+') {
signa = Ключи;
}
}
if (operation == 0 && a! = 0) {
lcdWriteCP (Ключи);
operation = Ключи;
а = 0;
}
}
if (Keys! = 0 && (Keys == '0' || Keys == '1' || Keys == '2' || Keys == '3' || Keys == '4' || Keys = = '5' || Клавиши == '6' || Клавиши == '7' || Клавиши == '8' || Клавиши == '9')) {
if (operation! = 0) {
lcdWriteCP (Ключи);
Ainputb [a] = Ключи;
а ++;
check = 1;
}
if (operation == 0) {
lcdWriteCP (Ключи);
Ainputa [a] = Ключи;
а ++;
}
}
}
}
Рекомендуемые:
Калькулятор сбережений на банковском счете: 18 шагов

Калькулятор сбережений на банковском счете: Спасибо, что выбрали мой калькулятор сбережений. Сегодня мы узнаем, как запрограммировать класс BankAccount для отслеживания ваших личных расходов и сбережений. Чтобы открыть банковский счет для отслеживания ваших расходов, вам сначала понадобится базовый ун
Как сделать простой калькулятор на Java: 10 шагов

Как сделать простой калькулятор на Java: это простое введение в язык программирования Java, предназначенное для людей, практически не разбирающихся в программировании. Материалы: компьютер или ноутбук (с установленным Eclipse). Можно установить eclipse по адресу https: // www. eclipse.org/downloads
Введение в простой калькулятор Java: 9 шагов

Simple Java Calculator Intro: Simple Java CalculatorIntro: В этом проекте мы научим вас создавать простой калькулятор на Java. Предположим, вы уже установили Eclipse IDE (интегрированная среда разработки). Если у вас еще нет этого софта
(Простой) простой способ получить аналоговый / pwm-звук от Raspberry PI Zero, а также подключиться к Crt TV: 4 шага

(Простой) легкий способ получить аналоговый / pwm-звук из Raspberry PI Zero, а также подключиться к Crt TV: здесь я использовал простейший метод для передачи звука на телевизор вместе с композитным видео
Самый простой калькулятор Arduino: 5 шагов

Самый простой калькулятор Arduino: вот моя версия самого простого калькулятора Arduino. Лучший для начинающих в качестве проекта для начинающих Arduino. Не только простой, но и очень дешевый в пределах 40 $ с