Здравствуйте. У меня глупый вопрос :) Итак: пытаюсь использовать CyberLib, там у UART буфер в 1 байт (аппаратный, как я понял). Как сделать буфер побольше и вывести из библиотеки сигнал о пришедших данных? (про существование регистров знаю, весь вечер разбирал инициализацию UARTа, не понял только как задаётся скорость). Собственно вопрос - как сделать? И даже если будет готовый код, неплохо бы объяснить как он работает
Комментарии: 21
Prilichie
нихуя не понял, но очень интересно)
Tora
нужен буфер приёма-передачи по UART. Как его сделать?
Prilichie
гугл, не?)
Tora
не гуглится
Anonim
какой проц?
Tora
атмега 328
Anonim
сек
Tora
и после доков на атмегу, я понял, что стм не потяну
Anonim
стм не сложный, если не слушать тех кто говорит что использовать либы плохо и настоящие мужики должны работать с регистрами напрямую
Tora
в данный момент у меня атмега так по прерыванию писать байты в массив, написать функции чтения, очистки буфера?..
Anonim
угу или найти готовую либу где это уже сделали
Tora
чего-то я накодил, но в железе не знаю как проверить работает ли
Anonim
А ты без железки кодишь?
Tora
есть либа CyberLib и она для ускорения работы с пинами и уменьшения размера кода. Потому uart там на самом примитивном уровне
Anonim
ну возьми стандартную ардуиновскую либу, или ты с ней не вмещаешься по памяти?
Tora
можно узнать как называется файл?
Anonim
https://github.com/pythonista/CyberLib это типа?
Tora
она
Anonim
3 года без поддержки. Откуда ты это отрыл и зачем? Хочешь просто - юзай стандартные либы ардуины. Хочешь бысмтрее - напрямую в регистр, это не сложно
Tora
через дефайны киберлиб и работает с регистрами
Anonim
на регистрах, в ардуине сходу не заведется, надо чуть поправить имена функций, но смысл, думаю, понятен https://pastebin.com/petRSrFw