切换到宽版
  • 11470阅读
  • 158回复

[无线]感光法做掌上数字收音机~彩屏+stm8+si4730(全开源) [复制链接]

上一主题 下一主题
离线2545889167
 

发帖
11472
M币
45927
专家
222
粉丝
4471
— 本帖被 香瑶 设置为精华,作者+3000M币+5专家(2017-11-03) —
这个帖子是感光制版+全开源系列的第三个帖子
前两个:
感光法做低成本数显936控制板 stm8+数码管+1321发热芯[开源]|http://bbs.mydigit.cn/read.php?tid=2247923
感光法单面板制作UP9616快充DC-USB小板,支持全协议快充,已上传pcb文件欢迎仿制|http://bbs.mydigit.cn/read.php?tid=2238191

事情的起源是首先得感谢坛友 @cushion   给的大榴莲包裹。



大榴莲其中有的五菱车机,拆开后发现一枚数字收音机芯片
silicon labs(芯科)家的Si4730-D60芯片
这颗芯片支持AM(520–1710 kHz)和FM(64–108 MHz)。看到他想玩的主要原因就是这货外围极其简单;
天线部分没有复杂的滤波等等电路,天线过来,一颗电容就能进芯片;
型号加入芯片以后先过LNA(低噪放)和AGC(自动增益控制,用于控制低噪放的增益)放大信号,然后过AFC(自动频率控制)、VOC(压控振荡器)和混频器,滤波,接着就直接进ADC(将信号进行数字化)了,剩下的就是DSP(数字信号处理)的事情。处理后输出的信号接DAC和低通滤波器就可以输出广播音乐了~~当然这一堆都是在芯片内部一片集成实现的 ,实际使用起来就是单片机配置芯片的寄存器,然后听广播就行。这也是数字技术给带来的便利

而且据说数字收音机效果蛮好的,以前没玩过,就像玩玩看看。

原装车机板子上这这货外围相当简单


拉近了看型号4730D60



拆掉芯片分别跑线路
结果发现没啥线路



画原理图。这次的东西有点多,看着复杂

收音机芯片和音频输出部分的低通滤波还有耳放


左边是用74hc595驱动彩屏(因为stm8引脚不够用)
右边是耳机插座



画好PCB
考虑综合屏幕和锂电池占用的地方。设计的板子大小是42mm*36mm


因为东西紧凑,好多线都是没走通的。整个板子需要飞线12根,恐怖吧?
图上白色虚线就是没走通的线


打印出来看看效果不赖


感光


腐蚀。因为中间有事突然出去了一下,回来发现腐蚀过头了
大概断了7-8根线。再做一次又嫌麻烦。只好硬着头皮继续。这次要飞20+根线了


准备器材元件开工
左到右 耳机座 pos电池 96*96小彩屏 74hc595 si4730 stm8 开关按钮
什么的绿色板子上是在某论坛商家买电子垃圾的时候顺手带的几片的废板,整个耳放电路元件全部拆自这板


先焊单片机stm8和595


放大了图来看,一堆飞线。还好大部分都是从芯片肚子下面过,不怎么太影响美观


点亮屏幕,一次成功。有了继续做下去的动力。讲道理当时写好屏幕驱动程序下载前就在想。要是gg了,就去打PCB,不玩这破板了
还好这货蛮给面子的


焊接收音机和耳放部分电路
除了调试IIC费了点时间(硬件IIC弄了两个小时还是搞不定。一气之下换了软件IIC)
后面的部分也是一次成功。插上耳机就有清晰的广播了


调试状态的各种乱七八糟,飞线横行



楼下继续
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共46条打赏M币+657专家+6
366261061 M币 +1 原創內容 11-13
阿甲 M币 +9 兄弟有空帮我写个STM8S003的软件好不 11-07
98xpj M币 +8 優秀文章,非常强,期待32推出很多作品。 11-07
pand200 M币 +30 以資鼓勵 11-07
wjhwpp M币 +13 - 11-05
wcn12 M币 +10 認真發帖 11-05
xueyuking M币 +8 認真發帖優秀文章 11-04
hover_730 专家 +1 謝謝分享,这可不是一般人玩的 11-04
hover_730 M币 +13 謝謝分享,这可不是一般人玩的 11-04
吴鹏930 M币 +10 優秀文章 11-04
离线2545889167

发帖
11472
M币
45927
专家
222
粉丝
4471
只看该作者 1楼 发表于: 11-02
继续
开始折腾界面
这是开机界面
在开机界面,输出音量会渐渐增大


这是一开始的台频率显示界面


吧整个电路焊接完
剩下的东西主要是电源管理部分
图上正在测试 给怀孕的pos电池充电。成功吧电池给从怀孕充到漏液


还没洗板的样子


这张能看清芯片mark


为了看起来不空 界面上增加两条信息
SNR是信噪比
RSSI是接收的信号强度


完成装配,屏幕翻贴到背面



后来换了个电池,绿色那个线太硬,不贴板
然后用热熔胶简单加固个部分
现在显示的是低电量,电池变红(低于3.3V将强制关机)


正常电量


充电中

充电满不满主要还是得看背面的提示灯。毕竟没弄复杂的电量算法


充电电流设定40-50ma。LTC4054充电芯片 电流设定脚用20K


本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共27条打赏M币+427专家+1
mjgzdnw M币 +3 優秀文章 11-08
番长猫 M币 +8 優秀文章 11-07
niub0 M币 +1 这个,有点儿忒高端了。。。 11-06
0720 M币 +5 優秀文章 11-06
dgh M币 +22 - 11-04
xu6965319 M币 +20 優秀文章 11-04
moontree M币 +13 謝謝分享 11-04
trg13 M币 +20 謝謝分享 11-03
vicdoo M币 +20 優秀文章 11-03
挣钱买刀 M币 +20 謝謝分享 11-03
离线2545889167

发帖
11472
M币
45927
专家
222
粉丝
4471
只看该作者 2楼 发表于: 11-02
程序方面
前前后后写了一两个星期、
全寄存器实现,这次只有非常少量的汇编,99.9%都是C

写了一堆子功能

最佳优化编译后主程序大小5670+1952=7622=7.5K
差不多块吧8k空间占满了。主要是字库占用空间比较多,用了1.7k的样子


后期如果要加功能,就只能吧部分字库移动到EEPROM里面,最多还能腾出1K左右的空间
配置头文件负责配置整体的功能


刷屏部分用了部分汇编+硬件SPI来实现。目的是为了减小拉窗帘的效应



刷屏部分还有个更极端的方法是不等待spi的状态位,靠精确延时来实现最紧密的时序。不过这个方法虽然快但是不太稳定。
主要问题是stm8流水线不对齐取值延时的问题造成的,造成的结果就是一次编译能对,下一次加了一堆程序后,这段代码位置发送了变化,屏幕显示又不对了。所以最终没采用这个方法。



刷屏效果测试。spi速度均为8M;如果用保守方法实现,刷一个任意颜色全屏需要30+ms,如果用激进方法实现,只需要18-19ms。50hz多的刷新速度,应该是看不到拉窗帘了~~


按键操作方法:
上键负责调台(频率增加和音量增加),下键负责调台(频率减小和音量减小)
中间短按切换是调音量还是频率。
调台使用自动搜台方法,台频率调到头又会折头到另外一头


功耗与休眠:
首先来说,收音机芯片不省电(而且市面上常见几款的收音机芯片,工作电流也在16-28ma之间,所以都差不多)
自身工作功耗20ma

正常运行的时候(亮屏显示)
电流消耗32-36ma左右,随音量高低有不同
耗电大致推算分析(部分来自手册,未实际测量;部分实测)

si4730---------------------------------20ma
stm8(全速运行16m)-------------4ma
耳放静态功耗-------------------------2ma
屏幕背光-------------------------------2ma
屏幕、595、其他乱七八糟-----约1ma
放音-------------------------------约4-8ma

所以设定了屏幕亮5秒自动熄灭,同时mcu加入活跃停机状态,可以用按键唤醒按键唤醒后5s无操作再次休眠
休眠电流24-27ma。100mah的pos电池差不多能听4个小时

电量低于3.3V 关闭所有东西,同时mcu加入停机状态,可以通过插入充电唤醒


音量:0-63级可调



记忆功能:
可以记忆关机前最后一次调的台的频率和音量


芯片支持am和fm,但是我只写了fm部分。am没弄。因为1是天线弄起来麻烦,2是am干扰多,效果不好


后期希望加入的功能:收藏电台频率。不过难度不小,程序空间相当紧张



[ 此帖被2545889167在2017-11-03 23:20重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共17条打赏M币+279专家+2
shiyb M币 +15 優秀文章 11-08
xu6965319 M币 +20 優秀文章 11-04
ppyuyi M币 +15 優秀文章 11-04
nnbuchicao M币 +6 666,板子做出了古朴的风格,噗~ 懒 11-04
moontree 专家 +1 謝謝分享 11-04
vicdoo M币 +20 原創內容 11-03
sotovo M币 +30 叫声好! 11-03
挣钱买刀 M币 +20 謝謝分享 11-03
无语·回忆 M币 +20 感谢分享 11-03
潜隆 M币 +13 謝謝分享 11-03
12
离线2545889167

发帖
11472
M币
45927
专家
222
粉丝
4471
只看该作者 3楼 发表于: 11-02
最后一楼发资料~

附件包括:程序源代码、pcb和原理图(使用Altium Designer14)、几段录音效果



百度云盘:提供pcb和原理图(使用Altium Designer14)、几段录音效果、切换台的小视频
链接:http://pan.baidu.com/s/1gf0ATWn 密码:i32c

注意:PCB仅供参考,如果要制作成品PCB,强烈建议重新画板。双面板走线肯定是不需要飞线的,而且能得到更好的布局规划


最后:不出套件、没有绘制成品pcb的计划
喜欢就猛砸m币吧~~
[ 此帖被2545889167在2017-11-02 16:35重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共29条打赏M币+320专家+5
seleone M币 +8 原創內容 2小时前
七月的阳光 M币 +3 優秀文章 11-08
liujian12 M币 +1 原創內容 11-08
cao57508 M币 +8 不是谁都有那个收音机芯片,我就没有,咋样仿制?完全没法玩。 11-06
hxr-dc M币 +15 - 11-06
newnet1234 M币 +20 優秀文章 11-04
girlstorm 专家 +1 謝謝分享 11-04
girlstorm M币 +13 謝謝分享 11-04
骑着狗溜达 专家 +1 厉害,谢谢分享。 11-04
骑着狗溜达 M币 +13 厉害,谢谢分享。 11-04
离线penguinki001

发帖
881
M币
1732
专家
0
粉丝
5
只看该作者 4楼 发表于: 11-02
  大神 有一门手艺真牛逼
本帖最近打赏记录:共2条打赏M币+13
铁皮屋 M币 +8 最后:不出套件、没有绘制成品pcb的计划 11-04
2545889167 M币 +5 - 11-02
离线tiangongliuy

发帖
158
M币
-363
专家
0
粉丝
1
只看该作者 5楼 发表于: 11-02
  大神 有一门手艺真牛逼
本帖最近打赏记录:共1条打赏M币+5
2545889167 M币 +5 - 11-02
离线lzlsl

发帖
81
M币
26
专家
1
粉丝
0
只看该作者 6楼 发表于: 11-02
太牛B了吧,手艺
本帖最近打赏记录:共1条打赏M币+5
2545889167 M币 +5 - 11-02
离线zgl135

发帖
4227
M币
4577
专家
1
粉丝
47
只看该作者 7楼 发表于: 11-02
就羡慕有技术动手能力强的人
本帖最近打赏记录:共1条打赏M币+5
2545889167 M币 +5 - 11-02
离线韩小羽

发帖
6194
M币
2728
专家
4
粉丝
22
只看该作者 8楼 发表于: 11-02
我的pos电池也怀孕了
本帖最近打赏记录:共1条打赏M币+5
2545889167 M币 +5 - 11-02
离线xiaoxiang116

发帖
1424
M币
3636
专家
0
粉丝
17
只看该作者 9楼 发表于: 11-02
神 有一门手艺真牛逼
本帖最近打赏记录:共1条打赏M币+5
2545889167 M币 +5 - 11-02
快速回复
限80 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
上一个 下一个