【原创首发】开源基于AT32 SIP/VOIP电话

📅 2026/8/19 17:08:49
【原创首发】开源基于AT32 SIP/VOIP电话
前言本次为了反馈各位粉丝的关注特此分享 AT32_VOIP 工程此功能其实跟我之前发过的《STM32F429的VOIP功能》是一样的只是用了AT32F437。其实那个工程是一个比较Demo中的Demo很多功能和硬件依赖性太大了。后面项目中发现AT32F437单芯片就能完成这个功能就选择了AT32F437来实现这个功能。有很多朋友会问为什么不用ESP32呢当然我们实际上也用的ESP32S3因为更方便。但是我发现很多关注我的朋友更喜欢用MCU来玩这个网络会议电话。所以算是宠粉吧。这次分享会从0到编译到运行都说清楚。喂到嘴里的鸡汤。让我们开始吧 .本次开源地址https://gitee.com/seliverwang/at32_voip.git硬件我使用的一块AT32F437ZMT7的开发板它有4MB的Flash512KB的RAM.参数描述CPUAT32F437ZITx主频288MHzFlash4MBRAM512KB音频接口I2S2音频配置I2C1LOGUART1CODECWM8978以太网RMII引脚分配音频接口使用的I2S2.引脚描述PB12I2S_WS / I2S_FSPC6I2S_MCLKPB13I2S_CK / I2S_SCLK / I2S_BCKPC2I2S_EXT_SD / I2S_SINPC3I2S_SD / I2S_SOUTWM8978配置使用 I2C1.引脚描述PB6I2C_SCLPB7I2C_SDALOG输出使用UART1.引脚描述PA9UART_TXPA10UART_RX以太网配置使用RMII.引脚描述PA1RMII_REF_CLKPA2RMII_MDIOPC1RMII_MDCPD8RMII_CRS_DVPD9RMII_RXD0PD10RMII_RXD1PG11RMII_TXENPG13RMII_TXD0PG14RMII_TXD1附加由于我之前功能里面有用SPI NOR FLASH 并且和USB所以我把它也加上了。引脚描述PF6QSPI1_D3PF7QSPI1_D2PF8QSPI1_D0PF9QSPI1_D1PF10QSPI1_CLKPG6QSPI1_CS备注: 硬件就是用的AT32_START_F437 这个板子杜邦线跳了个WM8978而已。编译工程准备前提下载 RT-Thread Studio 开发工具并安装。https://www.rt-thread.org/download.html#download-rt-thread-studio导入工程打开 RT-Thread Studio, 导入 Clone 好的工程.安装工具链.导入完成之后需要选择编译工具链, 如果你是第一次打开会提示让你安装工具链 我们选择 10.2.1 版本的工具链别问为什么我用的这个版本而已 编译完成编译完成之后我们可以看到编译成功了。那么有同学会问了你这不都改了SDK了吗不合格啊我哭死我也不想改SDK但是目前只想到了这个办法。有什么好办法欢迎在Gitee上提交或者留言。软件介绍功能介绍源代码目录结构如下图所示名称描述main.c主要为一些测试 音频流回环的功能pjsip.c最主要的SIP实现协议栈filefs.c配合USB做了一些录音文件存储数据读取功能。wav.h此文件为上位机生成了一个人声测试数组测试Codec是否能够正常播放声音。debug.h测试Codec时序是否是20ms。测试软件准备工作如果你想很快的测试软件你可以使用AT32F437按照最开始的硬件接线图 连接好音频接口、CODEC、LOG保留然后把 filefs.c 的执行函数注释掉避免使用文件系统。下载SIP 服务器工具和客户端工具服务器下载 miniSIPServer 安装完成之后打开软件点击分机添加2个分机一个用于板子一个用于手机。客户端如果你没有另一台电脑可以在安卓手机上安装 MizuDroid 软件, 按照一下步骤添加如果没有注册成功需要检查是否在同一网段或者 服务器电脑开启了防火墙。那又有朋友会说我有2台电脑该怎么办啊那你就下 MicroSIP 安装之后一样只需要配置上面的参数就好了。配置板子的账号信息板子配置的参数主要有SIP服务器的IP地址、端口号、用户名、密码。SIP服务器的 认证域、认证方案不过这些我用的是通配的如果你的服务器有单独的配置需要跟服务器配合着修改。修改完成以上信息之后在硬件接好的情况下下载固件别问我为什么不是截图忘了截图了。补全一个全部Log演示视频视频地址https://www.bilibili.com/video/BV1wbXsY1EsX/后话非常感谢大家的关注让我觉得我的分享是有意义的够得到这么多人的认可。以后还会分享一些更高级的一些东西。之前好像有粉丝要求添加 3A算法不过由于没时间就没有加有兴趣的同学可以看看软件直接将一些3A的宏打开然后看看能不能正常运行如果能那么就能跑因为288Mhz主频还是应该可以跑起来的。后后话 2025/09/18经常看消息不及时因为没啥事不会看这个随心情不过留言我会尽量看看了会回复