vault backup: 2025-12-29 21:21:53

This commit is contained in:
Alexey Baranov
2025-12-29 21:21:53 +03:00
parent 7aa0cb8235
commit fa42c10625
@@ -1,5 +1,5 @@
### i2C # i2C
1. **I2C - Общие принципы работы** 1. **I2C - Общие вопросы и принцип работы**
1. Шина _двухпроводная_: SDA (данные) и SCL (тактовый). OpenDrain линия + pull up резисторы. 1. Шина _двухпроводная_: SDA (данные) и SCL (тактовый). OpenDrain линия + pull up резисторы.
1. Что означает Open Drain? 1. Что означает Open Drain?
Устройства могут только тянуть линию вниз (0), а “1” формируется резистором подтяжки. Устройства могут только тянуть линию вниз (0), а “1” формируется резистором подтяжки.
@@ -54,10 +54,11 @@
3. Тест на шум/помехи 3. Тест на шум/помехи
5. Linux и I²C 5. Linux и I²C
1. 1.
### UART (Universal Asynchronous Receiver/Transmitter) # UART (Universal Asynchronous Receiver/Transmitter)
1. **Общие вопросы и принцип работы.**
1. Что такое UART? 1. Что такое UART?
1. Асинхронный последовательный интерфейс передачи данных “точка-точка" 1. Асинхронный последовательный интерфейс передачи данных “точка-точка"
2. Двупроводная шина (RX, TX, GND) 2. Двухпроводная шина (RX, TX, GND)
3. Уровни (TTL 3.3 В / TTL 5 В) 3. Уровни (TTL 3.3 В / TTL 5 В)
2. Что значит асинхронный последовательный интерфейс? 2. Что значит асинхронный последовательный интерфейс?
1. Линии не содержат тактового сигнала. Синхронизация происходит по битам START/STOP. 1. Линии не содержат тактового сигнала. Синхронизация происходит по битам START/STOP.
@@ -91,87 +92,21 @@
10. Что такое аппаратный flow-control (RTS/CTS)? 10. Что такое аппаратный flow-control (RTS/CTS)?
1. RTS (Ready To Send) — устройство готово принимать данные 1. RTS (Ready To Send) — устройство готово принимать данные
2. CTS (Clear To Send) — разрешение на передачу. Используется для предотвращения переполнения буфера. 2. CTS (Clear To Send) — разрешение на передачу. Используется для предотвращения переполнения буфера.
11. 11. Что будет, если не использовать flow-control при высоких скоростях?
1. Переполнение FIFO / Потеря данных / Framing errors
--- 2. **Проблемы и диагностика.**
1. Способы тестирования UART?
### **Вопрос 16:** Что будет, если не использовать flow-control при высоких скоростях? 1. Проверить сигнал осциллографом
2. Запустить loopback тест
**Ответ:** 3. Отправить известную последовательность и сравнить (проверка UART - USB конвертором)
4. Проверить стресс/нагрузку
- Переполнение FIFO 2. Что такое loopback тест
1. Соединение TX → RX, чтобы проверять передачу/приём на одном устройстве.
- Потеря данных 3. Как обнаружить линии с шумом?
1. Нестабильные фронты
- Framing errors 2. Framing errors (Стоп-бит не обнаружен в ожидаемое время → нарушение кадра.)
3. Анализ сигнала на осциллографе
---
# 🔹 **5. Ошибки UART**
### **Вопрос 17:** Что такое framing error?
**Ответ:**
Стоп-бит не обнаружен в ожидаемое время → нарушение кадра.
---
### **Вопрос 18:** Что такое overrun error?
**Ответ:**
Буфер приёмника переполнен, данные потеряны.
---
### **Вопрос 19:** Что такое break condition?
**Ответ:**
TX держится в LOW дольше чем длительность кадра.
Используется для ресета некоторых устройств (например, загрузчиков MCU).
---
### **Вопрос 20:** Как обнаружить линии с шумом?
**Ответ:**
- Нестабильные фронты
- Ошибки паритета
- Framing errors
- Анализ сигнала на осциллографе
---
# 🔹 **6. Диагностика и тестирование**
### **Вопрос 21:** Как протестировать UART линию?
**Ответ:**
- Проверить сигнал осциллографом
- Запустить loopback тест
- Отправить известную последовательность и сравнить
- Проверить разные baud rates
- Тестировать передачу больших массивов данных
- Проверить стресс/нагрузку
---
### **Вопрос 22:** Что такое loopback?
**Ответ:**
Соединение TX → RX, чтобы проверять передачу/приём на одном устройстве.
--- ---