Jump to content

    

Entomo

Участник
  • Content Count

    76
  • Joined

  • Last visited

Community Reputation

0 Обычный

About Entomo

  • Rank
    Частый гость

Recent Profile Visitors

286 profile views
  1. У меня уже все получилось... но только после того как я исправил в предоставленном мне коде один фрагмент: вместо (mystring-1) я написал (mystring)-1 . Как я должен к этому относится ?
  2. Но там еще другая проблема: если использовать Ваш фрагмент то при контроле содержимого string после введения каждого символа тут же отображается только этот символ. То есть у меня по Вашему коду не формируется строка хотя бы из двух символов. Символ введенный с терминала (он же string) тут же отображается. То есть размер string никогда не превышает одного символа То есть я по-прежнему могу вводить в качестве управляющего только один символ а не строку
  3. Я пробовал вводить и 0 и 1. При этом после ввода я для проверки тут же вывожу массив mystring (туда же - в терминал). Действительно - введенные символы в массиве содержатся. Вы можете это увидеть на скриншоте: в строке ввода 0 и 1 и в поле вывода то же. Но светодиод погасить/зажечь не удается. Вот фрагмент кода: while(1) //Infinite loop { // get_value = UART_get_char(); char mystring[20]; // выбираете размер так, чтобы с самой большой гипотетической строкой не было переполнения, хотя такое и невозможно int idx = 0; memset(mystring, 0, sizeof(mystring)); while(idx < sizeof(mystring-1)) { char c = UART_get_char(); if(c == '\0' || c == '\r' || c == '\n') break; mystring[idx++] = c; } UART_send_string(mystring); if (mystring == '1') //If the user sends "1" { RB3=1; //Turn on LED UART_send_string("RED LED -> ON"); //Send notification to the computer UART_send_char(10);//ASCII value 10 is used for carriage return (to print in new line) } if (mystring == '0') //If the user sends "0" { RB3=0; //Turn off LED UART_send_string("RED -> OFF"); //Send notification to the computer UART_send_char(10);//ASCII value 10 is used for carriage return (to print in new line) } }
  4. Я неспроста дал исходную ссылку дважды. Там полностью то что мне удалось воспроизвести. В коде прописано что при сравнении принятого символа с заданным загорается или выключается светодиод. Привожу ссылку в третий раз: https://circuitdigest.com/microcontroller-projects/uart-communication-using-pic16f877a
  5. Да Нет и с Вашим кодом не работает. А исходный код по ссылке ниже нормально выполняется. Но это чтение только одного байта https://circuitdigest.com/microcontroller-projects/uart-communication-using-pic16f877a
  6. Запустил с рекомендованным выше кодом - не работает
  7. Как называется раздел форума в котором я задал вопрос ? Нельзя ли как "для начинающего" ? - возможно ли написать код на С чтобы прочесть строку ?
  8. Доброго времени суток В приведенном по ссылке примере читается только один байт. А как прочесть строку из нескольких символов ? Я что-то не могу найти примеров https://circuitdigest.com/microcontroller-projects/uart-communication-using-pic16f877a //**Function to get one byte of date from UART**// char UART_get_char() { if(OERR) // check for Error { CREN = 0; //If error -> Reset CREN = 1; //If error -> Reset } while(!RCIF); // hold the program till RX buffer is free return RCREG; //receive the value and send it to main function } //_____________End of function________________//
  9. Не страшная беда что я выше некорректно сформулировал, но правильно было бы: ...при помощи PBS (поляризационного делителя луча) легко решить и задачу передачи фотонов имеющих одну определенную поляризацию ... ...есть специальные виды оптоволокна позволяющие сохранить поляризацию фотонов на выходе такой же какую они имели при входе в оптоволокно... Думаю понятно - фотоны всегда "поляризованы", вопрос в том что в обычном (неполяризованном) свете это хаотическая "смесь" фотонов имеющих различную поляризацию
  10. Шерклиф У. Поляризованный свет / пер. с англ. Ш.Д. Хан-Магометовой под редакцией Н.Д. Жевандрова. М.: Издательство «Мир», 1965. 264 с. Жевандров Н.Д. Поляризация света. М.: Издательство «Наука», 1969. 190 с. Килин С. Я., Хорошко Д.Б., Низовцев А.П. Квантовая криптография: идеи и практика. Минск: Беларуская навука, 2007. 391 с. Липкин Г. Квантовая механика. Новый подход к некоторым проблемам 1977 https://scholar.google.com/scholar?cluster=8961108089845725270&hl=ru&as_sdt=0,5 https://scholar.google.com/scholar?cluster=12481713880970896136&hl=ru&as_sdt=0,5
  11. Как один из очень хороших примеров - светоделители в интерферометре Маха-Цендера https://www.youtube.com/watch?v=v_43sM9_aDQ&list=PLnbH8YQPwKbnofSQkZE05PKzPXzbDCVXv&index=15 в следующем видео там не сразу, а с 5:20 https://www.youtube.com/watch?v=bz8wA0pb3-Q&list=PLnbH8YQPwKbnofSQkZE05PKzPXzbDCVXv&index=31 Но это простейшие примеры. Если Вас интересуют выпускаемые промышленно, то это нужно гуглить на английском сайты производителей
  12. Фотодиоды используются не сами по себе а совместно с поляризационным разделителем луча (как на рисунке который я привел). С конструкцией поляризаторов в передающих устройствах я мало знаком - моя специализация протоколы (тамошняя математика-физика) и анализ атак (поэтому я и знаком с принимающей частью этих систем - фотодиоды и светоделители). Но я думаю что при помощи PBS (поляризационного делителя луча) легко решить и задачу передачи поляризованных фотонов