Какие есть либы: бесплатные: чтобы юзать моментально через excel vba arduino?
Например, ввел через ячейку A1 значение =9 и элегантно сунуть его в кошелек ардуино. Затем нажать на ардуино кнопку и в B2 уже значение 2
Какие есть либы: бесплатные: чтобы юзать моментально через excel vba arduino?
Например, ввел через ячейку A1 значение =9 и элегантно сунуть его в кошелек ардуино. Затем нажать на ардуино кнопку и в B2 уже значение 2
https://www.arduinolibraries.info/ Тут смотрели?
Нету там!!
VBA вам в помощь или PLX-DAQ и не забудьте pyserial! а может и serial.print хватит, вы так и не ответили на вопрос в другой теме, что ваша программа делает то должна ?)))
врет! на данный момент это я чекал ссылку)))
Сам ты! Не нашел - значит нету!! Да-да, значит надо было догадаться по названию что plx-daq для excel да?
Моя программа спортивный таймер!!
Можно и догадаться, что я не дурак!
вы просмотрели все 8447 библиотек и не нашли нечего для себя ?
а кто его знает, другие говорят разное…. а я склонен доверять людям… пока 2ды не обманут!
p.s. PLX-DAQ гуглится через поисковик, все устал я…. успехов!)))
Можно спросить у Вас…
По USB/ COM/ SERIAL/ UART можно ли передавать в excel напрямую без либ?
Я как-то через swith up передавал в arduion через power shell script не помню толи читал толи писал но все работало.
1.bat выглядел так:
#echo on
echo off
Powershell.exe -ExecutionPolicy Bypass -File "1.ps1"
1.ps выглядит так:
$port= New-Object System.IO.Ports.SerialPort COM3,9600,None,8,one
$port.open()
$port.Write("1")
Start-Sleep -Seconds 2
$port.Write("2")
Start-Sleep -Seconds 1
$port.Write("3")
Start-Sleep -Seconds 2
$port.Write("4")
Start-Sleep -Seconds 2
$port.Write("5")
Start-Sleep -Seconds 2
$port.Write("6")
Start-Sleep -Seconds 2
$port.Write("7")
$port.close()
В ардуино просто:
Serial.print("2");// Отправить из ардуино//
if(... >0){
String = Serial.readString(); //Принять в ардуино//
}
countervector0000 можно, кучей разных способов, особенно если создадите VBA скрипт, или гуглите PLX-DAQ и может это то что вам нужно…
Если Вы не дурак, то могли бы догадаться, что на vba можно написать чтение и запись в com порт.
Скажите по точнее, код есть минимальный?Там же нужно указывать номер порта: COM5, например.
Ребят, все норм только не вижу своей темы?
Нету у тебя больше темы…
Может поту что:
?
а может это мои завистники ? которые сопротивляются массовому внедрению моего алгоритма шифрования?)))
надо проверить…
// Функция кодирования четырёх чисел в хеш
uint32_t encodeNumbers(uint8_t A, uint8_t B, uint8_t C, uint8_t D) {
uint32_t combined = ((uint32_t)A << 24) | ((uint32_t)B << 16) | ((uint32_t)C << 8) | D;
// Битовое перемешивание (меняем местами соседние биты)
uint32_t mixed = 0;
for (uint8_t i = 0; i < 32; i++) {
uint8_t new_pos = (i % 2 == 0) ? i + 1 : i - 1;
if (new_pos < 32) { // Убедимся, что не выходим за границы
mixed |= ((combined >> i) & 0x1) << new_pos;
}
}
// XOR с 32-битной маской
mixed ^= 0x5A5A5A5A;
return mixed;
}
// Функция декодирования хеша в четыре числа
void decodeNumbers(uint32_t hash, uint8_t *A, uint8_t *B, uint8_t *C, uint8_t *D) {
uint32_t mixed = hash;
mixed ^= 0x5A5A5A5A; // Обратный XOR
// Обратное битовое перемешивание
uint32_t combined = 0;
for (uint8_t i = 0; i < 32; i++) {
uint8_t original_pos = (i % 2 == 0) ? i + 1 : i - 1;
if (original_pos < 32) { // Убедимся, что не выходим за границы
combined |= ((mixed >> original_pos) & 0x1) << i;
}
}
*A = (combined >> 24) & 0xFF;
*B = (combined >> 16) & 0xFF;
*C = (combined >> 8) & 0xFF;
*D = combined & 0xFF;
}
void setup() {
Serial.begin(9600);
// === Тест кодирования (A=12, B=97, C=45, D=200) ===
uint8_t A = 12;
uint8_t B = 97;
uint8_t C = 45;
uint8_t D = 200;
uint32_t hash = encodeNumbers(A, B, C, D);
Serial.print("Закодировано: A="); Serial.print(A);
Serial.print(", B="); Serial.print(B);
Serial.print(", C="); Serial.print(C);
Serial.print(", D="); Serial.print(D);
Serial.print(" → Хеш="); Serial.println(hash, HEX); // Вывод в HEX для удобства
// === Тест декодирования ===
uint8_t decoded_A, decoded_B, decoded_C, decoded_D;
decodeNumbers(hash, &decoded_A, &decoded_B, &decoded_C, &decoded_D);
Serial.print("Декодировано: Хеш="); Serial.print(hash, HEX);
Serial.print(" → A="); Serial.print(decoded_A);
Serial.print(", B="); Serial.print(decoded_B);
Serial.print(", C="); Serial.print(decoded_C);
Serial.print(", D="); Serial.println(decoded_D);
}
void loop() {}
вот тема пропадет, значит это все заговор!)))
Можете сказать как это полностью связать с excel: а именно, чтобы когда открываю excel нажимаю на A1 и пишу там “Привет, @”.
то в ардуино посылается в:
if(Serial.available>0){ s=A1.value, //, а ми вот так A1="Привет, @";}
И наоборот: когда в ардуино пишу:
Serial.print(A2.Value="Круть");
Т.о. нужно real time обработка!)))
Заранее, спасибо!
>> Какие есть либы: бесплатные: чтобы юзать моментально через excel vba arduino?
Это вы можете спросить у ИИ. Бонусом возможно научитесь задавать вопросы и разбираться в ответах, и ИИ не будет вам хамить (скорее всего).
Например задав вопрос https://chat.qwen.ai
“Есть ли готовые расширения Excell для связи с Arduino по COM порту?”
Вы получите несколько вариантов.
int a = 0;
int b = 0;
int c = 0;
void setup() {
Serial.begin(115200); // Инициализация последовательного порта на скорости 115200 бод
}
void loop() {
if (Serial.available() > 0) { // Проверяем, есть ли доступные данные
String input = Serial.readStringUntil('\n'); // Читаем строку до символа новой строки
// Проверяем, начинается ли строка с 'R' и содержит 'G' и 'B'
if (input.startsWith("R") && input.indexOf('G') > 1 && input.indexOf('B') > 1) {
// Извлекаем значения
int rIndex = input.indexOf('R') + 1;
int gIndex = input.indexOf('G');
int bIndex = input.indexOf('B');
// Извлекаем числа из строки
a = input.substring(rIndex, gIndex).toInt();
b = input.substring(gIndex + 1, bIndex).toInt();
c = input.substring(bIndex + 1).toInt();
Serial.print(a);
Serial.print(' ');
Serial.print(b);
Serial.print(' ');
Serial.print(c);
Serial.print(' ');
}
}
}//конец
хотел найти домик этому парсеру, как можно в больших проектах, отправляете R1G2B3 и переменные станут а=1 b=2 c=3 может и вам пригодится, данные отправлять через компорт сможете, а как сделать в связке с exel сами подумайте, и к ИИ кстате можете обратиться))) вот вам основа