# HackRF_Square **Repository Path**: gumpyang/hackrf-square ## Basic Information - **Project Name**: HackRF_Square - **Description**: 使用 HackRF One + TXCO 输出一个方波 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-25 - **Last Updated**: 2026-08-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # hackrf-square 把 HackRF One(含 TCXO 模改)当作**高精度、频率可指定、3.3V 电平的方波信号源**——例如输出 2 MHz 时钟给另一块 3.3V 逻辑板。**不需要改固件**,只用官方工具直写 Si5351C 时钟芯片寄存器。 ## 特性 - 任意频率 390.625 kHz ~ 133.333 MHz(`2M`、`2.5M`、`2000000` 都行) - 整数分频点(2/4/5/8/10/16/20…MHz)占空比精确 50%、零分数杂散 - 频率准确度直传 TCXO(~1ppm → 2MHz ±2Hz) - 写入后逐寄存器读回校验;自动识别硬件版本(≤r8 走 MS3,r9 走 MS2 + 安全预检) - `--dry-run` / `--selftest` 支持完全离线验证 ## 快速开始(Windows 11) ```powershell # 1. 安装 radioconda 获得 hackrf 工具: https://github.com/radioconda/radioconda/releases # 2. 接好 HackRF One, 看一眼硬件版本: hackrf_info # 3. 输出 2 MHz 方波 (P22 pin1 = CLKOUT, pin4 = GND 已焊线引出): python hackrf_square.py -f 2000000 ``` 常用命令: | 命令 | 作用 | |---|---| | `python hackrf_square.py -f 2M` | CLKOUT 输出 2 MHz | | `python hackrf_square.py --read` | 读回当前 CLKOUT 配置 | | `python hackrf_square.py --off` | 关闭 CLKOUT | | `python hackrf_square.py --selftest` | 离线数学自检 | ## 文档 **完整操作手册(原理 / 接线 / 验证 / 问题分析 / 故障排查)见 [docs/manual.md](docs/manual.md)。** ## 注意 - 支持 HackRF One 全部硬件版本:≤r8(Si5351C,MS3)与 r9+(Si5351A,MS2 + MCU 时钟门控预检)自动适配,已在 r9 克隆板实测。 - 设定断电即失,每次上电后重跑脚本。 - CLKOUT 为 3.3V/8mA CMOS 输出,只能接高阻逻辑输入,不能接 50Ω 负载。 - 可选升级:外接 GPSDO 10MHz 参考(~1e-11 精度),购买规格与接入流程见[手册第 9 章](docs/manual.md)。 ## 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request