首长电话(Elder Phone) - 嘉立创EDA开源硬件平台

编辑器版本 ×
标准版 Standard

1、简单易用,可快速上手

2、流畅支持300个器件或1000个焊盘以下的设计规模

3、支持简单的电路仿真

4、面向学生、老师、创客

专业版 professional

1、全新的交互和界面

2、流畅支持超过3w器件或10w焊盘的设计规模,支持面板和外壳设计

3、更严谨的设计约束,更规范的流程

4、面向企业、更专业的用户

标准版 首长电话(Elder Phone)

简介:Elderphone是一个使用4G模块用来驱动老式拨号盘电话机来实现电话基本功能的开源项目

开源协议: MIT

(未经作者授权,禁止转载)

创建时间: 2020-09-07 14:48:41
更新时间: 2021-05-21 12:25:40
描述
Elderphone固件是用来驱动老式拨号盘电话机用来实现电话的基本功能。 基本工作工作原理如下: 1)电话两端通过 DC-DC 升压模块提供10V直流电,经过1/20分压,进行线路电压检测,当电话挂机状态,检测电压约为500mV,此时线路电压约为10V。 摘机后电压下降为约3V,此时检测电压为150mV。检测端口为ADC2 2)当拨号盘转动时,周期性短接线路两侧,产生拨号脉冲被GPIO9检测,当号码满11位,或用半拨号方式手动结束,拨打电话。 3)当外部电话接入,铃音电路开启,GPIO19设置为高电平切换线路升压变压器初级到25Hz信号发生器,同时GPIO18输出25Hz方波脉冲驱动产生振铃信号。 ## 目录组成部分 ### 组装示意图 assembly 电话可以在闲鱼上购得同款 ![1.jpg](//image.lceda.cn/pullimage/5GgPuANn5WLTXU9pZbarvOs2VdPwobyr3KX1kh0y.jpeg) 系统由软硬件两部分组成 电话核心板在淘宝搜索Air724电话核心板购买,购买链接: [https://item.taobao.com/item.htm?spm=a230r.1.14.16.7842a199WLhFUA&id=624610770134&ns=1&abbucket=10#detail](https://item.taobao.com/item.htm?spm=a230r.1.14.16.7842a199WLhFUA&id=624610770134&ns=1&abbucket=10#detail) 底板部分图纸完全开源,暂无电路板销售,本项目中提供图纸的源文件 硬件部分 baseboard&coreboard ![2.jpg](//image.lceda.cn/pullimage/bUjro8nG37X4ysjddMVF0ahE2Mxjv9mrPSL8EstN.jpeg) ### 软件部分 lua 采用lua编程,源码开源,MIT授权欢迎取用 [https://gitee.com/miuser00/elderphone](https://gitee.com/miuser00/elderphone) ## 基本原理 1 基于Elderphone硬件,各个模块完成指定的功能。 2 通过Luatask消息机制完成模块间通讯 3 各个模块间无代码级依赖关系,可以独立运行,无公有变量 4 模块间互相可以通过消息通讯进行协作 ## 代码运行逻辑(状态机) 1)监测联网状态,如果收到底层发布的联网成功消息,则电话状态为[已联网]。 2)如果联网后摘机,则电话状态转化为[拨号检测] 3. 如果收到底层发布的电话挂断消息,当前状态为[响铃] (响铃但未接听电话),状态切换为[扣机],否则(当前状态为摘机),播放语音“通话已结束。 4. 如果检测到摘机消息,则 如果当前为[响铃],则状态改为[通话],如果状态为[拨号检测]且已经联网,则播放450Hz音频,未联网则播放语音“正在初始化” 5)如果收到要拨号盘发出的拨打电话消息,则关闭振铃,拨打电话 6)如果收到挂机消息,且当前状态为[通话],则挂断电话,状态转化为扣机,停止播放450Hz音频 7)如果来电终止,则振铃关闭 8)当电话状态机发生变化,从串口打印当前状态 ## 模块消息订阅 sys.publish(...)发布消息 sys.subscribe(id, callback) 订阅消息 sys.publish("UARTOUT",msg) 发布串口调试消息 ## 例子 1)打开振铃 require "Alarm" sys.publish("ALARM_ON) 2)拨打电话 require "Call" sys.publish("CALL",117) 打号码为117的电话 ## 模块消息定义: ## Alarm ### 接收消息 "ALARM_ON" 打铃 "ALARM_OFF" 关闭铃声 ### 发布消息 "AMARM_ON OK" 打铃成功 "AMARM_OFF OK" 铃声关闭成功 "AMARMING" 正在振铃 "AMARMING STOP" 振铃停止 ### 串口调试消息 "打铃" "振铃停止" ## Call 模块 ### 接收消息 "CALL"\,s\_TEL 打号码为s\_TEL的电话 "OVER" 挂断电话 "ANSWER" 接听当前来电 ### 发布消息 "CALL OK"\,s\_TEL 拨打s\_TEL的电话成功 "OVER OK" 挂断电话成功 "ANSWER OK" 接听当前电话成功 ### 串口调试信息 "已联网" "电话接通" "通话断开" "有来电,号码为"..num ## dialdetect 模块 ### 发布消息 "PLATE_MOVING" 拨号盘在移动 "PLATE_STOP" 拨号盘停止 "DIALING",paulseCount 拨打脉冲计数 "DIALOUT", dialNum 拨出号码 ### 串口调试消息 "正在拨号:"..dialNum "拨号盘转动" "拨号盘停止" "拨号"..paulse ## hookdetect 模块 ### 发布消息 "OFF_HOOK" 摘机 "ON_HOOK" 挂机 ### 串口调试消息 "摘机" "挂机" ## tone 模块 ### 接收消息 "PLAY_450Hz" 播放450Hz拨号音 "STOP_450Hz" 停止播放拨号音 ### 发布消息 "PLAY_450Hz OK" 播放450Hz拨号音成功 "STOP_450Hz OK" 停止播放拨号音成功 ### 串口调试消息 "播放450Hz拨号音" "停止播放拨号音" ## uartcomm 模块 ### 接收消息(目前映射硬件串口1,可以改为USB虚拟串口及其他硬件串口) "UARTOUT", uartrsv 从串口输出调试信息 ### 发布消息 msg,[arg1],[arg2] 发布任意系统消息,并可包含最多两个参数 ## system 模块 ### 接收消息 "NET\_STATE\_REGISTERED" 网络已连接 "CALL_INCOMING",incoming 有来电 "OFF_HOOK" 摘机 "ON_HOOK" 挂机 "CALL_DISCONNECTED" 通话挂断 "DIALOUT",num 拨打号码num "PLATE_MOVING" 拨号盘移动 ### 发布消息 "PLAY_450Hz" 播放拨号音 "ALARM_ON" 打铃 "ANSWER" 接听电话 "ALARM_OFF" 关闭铃音 "ANSWER" 接听电话 "CALL",num 拨打号码 "OVER" 扣机 "STOP_450Hz" 停止播放拨号音
设计图
原理图
1 /
PCB
1 /
未生成预览图,请在编辑器重新保存一次
ID Name Designator Footprint Quantity
1 PhoneLine JP1 KF2ROUND ANGLE 5.08-2P 1
2 DC Input JP2 KF2ROUND ANGLE 5.08-2P 1
3 200K R1 R 0805 1
4 10K R7,R5,R2,R4,R9,R12,R14,R11,R10,R6 R 0805 10
5 红色 LED1 LED 0805R 1
6 100K R3,R8 R 0805 2
7 18:1,1W 铁芯 T1 AC220V-12V 1W-1 1
8 1K R13,R15,R16,R17 R 0805 4
9 1N4007 D1,D2 SMA 2
10 5V-24V M2 MI_DC-DC 5-24VADJ-16X23 1
11 470uF 16V E2,E1 M-7343 2
12 47uF 35V E5,E6,E7 M-7343 3
13 104 C2,C3,C1 C 0805 3
14 绿色 LED2,LED3 LED 0805G 2
15 1uf C4,C5 C 0805 2
16 MI_Air724_PBV2B * MI__AIR724PB_V2B-2 1
17 AOD516 Q4 LC-TO-252-2 1
18 SS8550 Y2 Q1 SOT-23(SOT-23-3) 1
19 SS8050 Y1 Q3,Q2 SOT-23(SOT-23-3) 2
20 Relay-DPDT K1 G6K-2F 1
21 LED-RGB LED4 LED 5050 1

展开

工程视频/附件
暂无
工程成员
侵权投诉
相关工程
换一批
加载中...
添加到专辑 ×

加载中...

温馨提示 ×

是否需要添加此工程到专辑?

温馨提示
动态内容涉嫌违规
内容:
  • 153 6159 2675

服务时间

周一至周五 9:00~18:00
  • 技术支持

support
  • 开源平台公众号

MP