From df179829bf4ef0724eec1371c174f9cf554aac6e Mon Sep 17 00:00:00 2001 From: nikit3s Date: Mon, 17 Aug 2026 18:01:01 +0300 Subject: [PATCH] =?UTF-8?q?UART=20=D0=BD=D0=B0=20C3:=20G5=20=D0=BD=D0=B8?= =?UTF-8?q?=D0=BA=D1=83=D0=B4=D0=B0=20=D0=BD=D0=B5=20=D0=BF=D0=BE=D0=B4?= =?UTF-8?q?=D0=BA=D0=BB=D1=8E=D1=87=D1=91=D0=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit На Dock-плате приёмник встроенного моста BL616 заведён на C3 (IOB56B, подписан FPGA_UART_TX, контакт 21 гребёнки, банк 4 с фиксированными 3.3 В). G5 -- это просто контакт 22, он годится только для внешнего моста, посаженного на гребёнку. Прошивка исправно передавала кадры в неподключённый вывод, отсюда полное отсутствие байт на ПК при живом тракте. В README распиновка дополнена номерами контактов гребёнки и заметкой про VCCIO6/7, которое на этой плате подаётся снаружи. --- README.md | 26 ++++++++++++++++---------- src/DigMic.cst | 7 ++----- 2 files changed, 18 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 545c2e9..b6e08a7 100644 --- a/README.md +++ b/README.md @@ -64,17 +64,23 @@ SYNC в CRC не входит: он нужен приёмнику для рес ## Распиновка -| Цепь | Назначение | Пин ПЛИС | -|:--|:--|:--:| -| clk_50m | тактовый генератор платы | E2 | -| uart_tx | UART на внешний мост, ПЛИС -> ПК | G5 | -| led0 | светодиод | E8 | -| MIC_CLK | тактирование микрофона, 3.125 МГц | при разводке | -| MIC_DAT | однобитный поток PDM | при разводке | -| MIC_SEL | вывод SELECT микрофона | при разводке | +| Цепь | Назначение | Пин ПЛИС | Контакт J1 | +|:--|:--|:--:|:--:| +| clk_50m | тактовый генератор платы, 50 МГц | E2 | — | +| UART_TX | на встроенный мост BL616, ПЛИС -> ПК | **C3** | 21 | +| LED | индикация | E8 | 17 | +| MIC_CLK | тактирование микрофона, 3.125 МГц | J11 | 33 | +| MIC_DAT | однобитный поток PDM | J10 | 35 | +| MIC_SEL | вывод SELECT микрофона | K7 | 34 | -Выводы микрофона в `src/DigMic.cst` закомментированы, номера подставляются при -разводке. Банк 3.3 В, питание микрофона 1.65...3.6 В. +C3 (IOB56B) — это то, что на Dock-плате подписано `FPGA_UART_TX` и заведено на +приёмник моста BL616, банк 4 с фиксированными 3.3 В. Обычный контакт гребёнки +для UART не годится: мост туда не смотрит. Под внешний мост, посаженный прямо +на гребёнку, вывод меняется на нужный контакт. + +Микрофон сидит в банке 7, а VCCIO банков 6/7 на этой плате подаётся снаружи +через контакты 29 и 31 гребёнки — без 3.3 В на них выводы микрофона не работают. +Питание самого микрофона 1.65...3.6 В. `MIC_SEL` прошивка держит в `'0'`: микрофон выставляет бит по спаду MIC_CLK, выборка идёт в середине низкой фазы. Если вывод SELECT посажен на питание diff --git a/src/DigMic.cst b/src/DigMic.cst index ae84417..76f6886 100644 --- a/src/DigMic.cst +++ b/src/DigMic.cst @@ -5,20 +5,17 @@ //Part Number: GW5A-LV25MG121NC1/I0 //Device: GW5A-25 //Device Version: B -//Created Time: Fri 08 14 17:19:41 2026 +//Created Time: Mon 08 17 17:26:24 2026 IO_LOC "LED" E8; IO_PORT "LED" IO_TYPE=LVCMOS33 PULL_MODE=NONE DRIVE=8 BANK_VCCIO=3.3; -IO_LOC "UART_TX" G5; +IO_LOC "UART_TX" C3; IO_PORT "UART_TX" IO_TYPE=LVCMOS33 PULL_MODE=NONE DRIVE=8 BANK_VCCIO=3.3; IO_LOC "MIC_SEL" K7; IO_PORT "MIC_SEL" IO_TYPE=LVCMOS33 PULL_MODE=NONE DRIVE=8 BANK_VCCIO=3.3; IO_LOC "MIC_CLK" J11; IO_PORT "MIC_CLK" IO_TYPE=LVCMOS33 PULL_MODE=NONE DRIVE=8 BANK_VCCIO=3.3; IO_LOC "MIC_DAT" J10; -// DATA -- шина с третьим состоянием: микрофон отпускает её на половину периода. -// Подтяжка вниз держит её определённой и даёт однозначный признак "микрофона -// нет": сплошной ноль на входе -> постоянная минус полная шкала в кадрах. IO_PORT "MIC_DAT" IO_TYPE=LVCMOS33 PULL_MODE=DOWN BANK_VCCIO=3.3; IO_LOC "clk" E2; IO_PORT "clk" IO_TYPE=LVCMOS33 PULL_MODE=NONE BANK_VCCIO=3.3;