электроника сәнгате
657 subscribers
664 photos
72 videos
56 files
331 links
сәлам дуслар! здесь схемотехника, pcb дизайн, микроконтроллеры, линукс встроенный и десктопный
Download Telegram
void Process_UART_Data(void)
{
static uint8_t temp_buffer[UART_BUF_SIZE];
uint32_t data_length = 0;

if (data_ready_flag) {
data_ready_flag = 0;

// Выключаем прерывания, чтобы безопасно получить доступ к данным в буффере (так мы заверяем себя, что отправим актуальные данные)
__disable_irq();

// Рассчет количества байт для отправки
if (uart_rx_head >= uart_rx_tail) {
data_length = uart_rx_head - uart_rx_tail;
} else {
data_length = (UART_BUF_SIZE - uart_rx_tail) + uart_rx_head;
}

// Копируем данные во временный буффер
for (uint32_t i = 0; i < data_length; i++) {
temp_buffer[i] = uart_rx_buffer[(uart_rx_tail + i) % UART_BUF_SIZE];
}

// Обновим указатель на конец данных
uart_rx_tail = (uart_rx_tail + data_length) % UART_BUF_SIZE;

__enable_irq(); // Включаем прерывания

// Отправляем данные с помощью функции USB CDC
if (data_length > 0) {
uint8_t result = CDC_Transmit_FS(temp_buffer, data_length);
if (result != USBD_OK) {
Error_Handler(); // Затычка
}
}
}
}


Также могу описать как принимать и обрабатывать данные, т.к. в том же U-Boot можно вводить терминальные команды, а их соответственно нужно передавать через наш USB-UART конвертер. Но это уже если вам интересно :)
👍2
Media is too big
VIEW IN TELEGRAM
Explaining Docker in 60 seconds.

К сожалению, без аудиодорожки, но субтитры всё дублируют.
1
Forwarded from Господа Топологи (P|3O)
Когда все разумные решения исчерпаны в процессе отладки:
- Прошивка глючит!
- С прошивкой все в порядке, дело в аппаратной части!
А где-то в углу тихо плачет руководитель проекта... 😅
Forwarded from SCILab (NW)
Новое видео на канале.
Интерфейс CAN. Что нужно знать для использования и разработки. Практический пример кода.
Первоначально ролик создавался для слушателей нашей программы обучения как дополнительный материал с которого можно начинать освоение шины CAN.


Платформа - https://plvideo.ru/watch?v=X4OxNF_5q4S8

YouTube - https://youtu.be/xkZ5sTRkfzU

RuTube - https://rutube.ru/video/private/125bd75b80197e83aba8de4468f46555/?p=-rP4I_Pu4t95oBL_r_O42w
👍2
На одном из разобранных вейпов нашел решение которым не могу не поделиться.

Если делать платы 0.7mm - прямо на них можно рисовать USB-C разьем.

JLcPcb предлагает по умолчанию 1.6mm, а ближайшие толщины к целевой 0.6 и 0.8. Наверно это плата 0.6, а сверху ещё маска добавляет сотку.
🔥74
Вера не вывезла тарантиновский диалог, поэтому в пору обратиться к уважаемым подписчикам.

Ищу проектную работу, предпочтительно трассировка плат на микроконтроллерах. В целом могу брать любые задачи по схемотехнике/топологии средней сложности, включая силовые и ВЧ-тракты.

Могу так же в задачи организационного характера, такие как ведение библиотек, перевод ваших проектов в свободное ПО и тд.
Altium / KiCad.

А, еще для работы в РФ у меня открыта самозанятость, для работы в других странах так же проконсультирую по белым способам оплаты.
🔥8
Forwarded from Limowski' Precious Little Life (Limows 0xDD)
😁7
Forwarded from shelly
Creature
6
Forwarded from Хабр
Домашние эксперименты с радиолампами. Часть первая. Теория

Эта статья написана для тех, кто хочет не только узнать про радиолампы, но и попробовать провести с ними эксперименты, создать различные ламповые устройства, например, усилитель низкой частоты или электроскоп. В первой части узнаем, какие бывают радиолампы, как они устроены и как работают.
👍1