论坛风格切换切换到宽版
  • 17883阅读
  • 6回复

转帖矿坛帖子:新DSP收音芯片控制板,是用stm32控制车机的nxp芯片全部开源。 [复制链接]

上一主题 下一主题
离线bh1rnn
 
发帖
193
只看楼主 倒序阅读 0楼 发表于: 2019-02-05
原贴地址:http://www.crystalradio.cn/forum.php?mod=viewthread&tid=1672438&extra=page%3D1&page=1
作者:eggplant886

这是第三代车载收音芯片控制板,用于在脱离电脑的情况下,使用单片机控制收音芯片,实现包括调频率、调音量、调收音处理细节选项、显示频率与信号质量、搜台存台等各项功能。
新控制板我命名为WTCRC,这是一个缩写,Wow!Third Car Radio Controller,表示这是第三代车机控制板,用于与第一代PC控制板和第二代Arduino控制板(名为YACRC,全名Yet Another Car Radio Controller)相区分。

简要说一下其发展历史:

第一代PC控制板,通过USB连接线将单片机连接至电脑,而单片机与被控IC直接相连,单片机根据电脑发送的指令控制收音芯片。PC端程序是直接使用的波兰人的作品,为了与PC端程序配套并兼容,单片机端的程序也是沿用了波兰人的大体框架,针对不同被控芯片修改其代码而得。
第二代控制版摆脱了需要利用PC与用户交互及显示的要求,其自带显示屏和按键,大大增加了使用的灵活性和便携性,且避免了PC这个潜在的干扰源(部分机器干扰比较大),对弱信号接受大有帮助。其一套硬件,通过烧录不同的软件,可实现对不同车机收音IC的控制。目前共支持6个系列的收音IC,参考文末的六部曲。
第一个系列是本论坛网友ace919四年前在波兰人公开作品的基础上二次开发并公开,第二个系列基本是其独立开发而得,整个框架都重构了。第三代控制板是由我在第二代的基础上改进而得到的,使用方法接近,后者的绝大多数代码在前者中依然存在并发挥作用,在此对ace919网友表示感谢!

本贴所介绍的则是第三代控制板,在此详细介绍其优点与改进之处:

先讲第二代控制板的缺点和不足:
1.最大的问题是Arduino的空间受限,尤其是程序存储器,IC内置的程序存储器容量仅32K,当年发布的时候空间便已经余量很少,因此后续升级空间十分有限
2. Arduino板子上面有晶振,对弱信号接收依然有一定干扰,例如受其谐波影响,96M附近会有假台。
3. Arduino产品客户定位是创客,所以板子的价格稍微有点贵,性价比不高。
4.Arduino性能与功能为入门级定位,缺少很多必要的选项和功能,调试开发不便。

Arduino系列也有大容量版本的,比如Arduino Mega2560,程序存储器容量256K,但也只是解决了第一个问题,晶振的干扰依然存在,开发板太大使用不便,而且价格很高,某宝山寨版开发板五十元左右,原版的三百多元。

理想的升级方案是彻底放弃Arduino平台,切换为使用STM32的微处理器,推荐型号为STM32F103C8T6,下面是其与Arduino Nano的对比:


只有STM32F103C8T6有现成的体积小、价格便宜的开发板。实际使用中MCU速度考虑种种原因设置为36MHz。

可见若使用STM32的控制平台,后续程序升级将有极大的空间,可以不断加入新的功能并改善使用体验。
因为只有C8T6尾号IC有现成开发板才使用此IC,若是自己开板,则建议高起点进行,直接上STM32F103RCT6最为合适。
目前第三代控制板选用的是STM32F103C8T6,64KB容量目前够用,有现成的开发板,且价格便宜。

若STM32F103C8T6的64K空间不够了,可更换PCB上IC为STM32F103CBT6,空间为128K,两者之间管脚定义完全兼容,程序无需修改可直接使用。

第三代控制板同样实现一个硬件控制多款车机收音IC,但解决了第二代控制板所存在的一些问题:
通过更换平台克服了Arduino容量不够的问题
STM32系列芯片可以无需外置晶振而使用内置的RC振荡时钟,最大程度避免了干扰弱信号接收
同时继承了第二代控制板功能强大的优点,并加入了多项改进,拓展了支持的芯片类别。

大大改善了用户体验,第二代控制板特色之一即为拥有比较丰富的菜单,但由于显示屏空间限制,每一个选项都只能用最多四个大写的英文缩写表示,不便于使用者理解,
我改进为细节选项占用一行;
把原先这么多选项分类为收音、音频、系统三个部分,避免同一级选项过多难以寻找;
把部分选项更改为上下文菜单,即该选项只在与其有关的条件满足下才可见,如FM收音相关的选项只有在接收FM时出现,关于特定功能的选项只在芯片支持此功能或加载的固件支持此功能时才出现,避免无用的选项占据空间影响用户寻找需要的选项;
原先第二代控制板使用单片机片内FLASH模拟的EEPROM来存储用户设置和电台列表,由于空间仅1KB为节省空间限制这两块数据是连在一起的,由于不同收音芯片设置不同,刷不同的程序后开机需要初始化设置,这样会把之前存储的电台全部覆盖掉,第三代控制板使用24C16片外存储器存储这些设置和电台频道,容量为2KB,扩大了一倍,于是把用户设置和电台频道分成两块存储,刷不同IC的程序时重新初始化仅仅删除了收音选项设置,而不会清空用户存储的电台频道;
同时大大提速了第一次开机初始化EEPROM存储空间的速度。

除了这些调整以外,修复了原先程序中存在的多处问题,这主要针对使用SAF7741的用户。RDS信息显示功能基本完成,但由于显示屏无法显示汉字会导致乱码,因此最终发布的程序中并没有显示RDS的功能,若网友呼声较高,可以后面改一个串口输出RDS等信息的方案用于在PC机上查看RDS信息。

预留支持红外遥控器和对SAF775X的SPI连接,此接口对于未来的NXP Mercury系列收音IC很可能也是可以使用的,未来可用于下载固件等操作,目前看SAF775X烧录的FLASH芯片中的内容在不同的IC上是通用的,当前此功能暂时不需要。

硬件电路:
由于STM32的MCU内部没有集成EEPROM,需要外挂一片24C16(容量为2KB)用于存储用户设置(如存储的电台、各个菜单的选项)(提醒:AHU1005车机主板底部上有一片24C16,且与SAF7751共用I2C总线,应将其拆下改焊在此控制板上,否则I2C总线上有两个从器件拥有相同的地址,这是不允许的。)



对开发板的改造:
这里以使用3.7V电池供电,显示屏为3.3V供电电压为例。
开发板上自带了晶振,需要拆除,主芯片可使用内置的RC振荡信号,STM32可同时使用两个外部晶振,分别提供高频、低频时钟信号用于不同的组件,均拆除,并同时拆除与晶振配套的电容。如果是准备使用一节3.7V锂电池供电,还要拆掉板载的3.3V稳压IC(SOT23-5封装),因为此IC输入输出压降过大,3.7V供电下,输出电压远不到3.3V。若使用5V供电,则可不拆除该稳压IC。

下面是开发板的电路图(打红叉的为已拆除的元件,黄绿色叉表示没有拆除,但没有起作用,可以拆掉的元件),可见开发板就是一个最小系统,除了微处理器芯片,外围只有复位电路、滤波电容、引出IO引脚的排针,所以如果是自己制作PCB,就不要再配STM的小板子插在上面了,直接在自己设计的PCB上使用STM32的IC即可。

若使用5V供电,则无需拆除稳压IC,5V电压接给开发板上的5V引脚,同时5V电压需要接给显示屏(2脚、15脚),24C16尽量使用3.3V供电,电压取自开发板3.3V引脚。



关于显示屏的选用:
这里支持两种显示屏,LCD1602和LCD2004,前者体积小,但显示的内容有限,适合便携机上配备,后者体积大,显示内容多,适合台式机使用。
两种屏幕均是16针接线,且针脚定义完全相同,通过刷不同的程序即可使用不同的显示屏。
目前只提供了对1602屏幕的支持,后续可以发布新的程序支持2004屏幕显示。

支持的收音IC方案:
本控制板支持的收音IC型号众多,为了方便使用,先介绍下NXP车载收音芯片有几个系列,其中哪些受本平台支持。

Q:为何只针对NXP生产的车载收音芯片
A:1.收音性能最好:灵敏度高,极其优秀的选择性。
   2.价格低且容易买到:NXP的产品市场占用率高,无论是芯片还是使用其芯片的车机容易买到,且价格便宜。

除了NXP,其他的汽车收音芯片厂家主要就是芯科和ST。
芯科的芯片,最为人熟知的是Si4734等类似的型号,这些是针对手持便携式设备开发的,功耗低,DSP的运算能力也低,性能比较低;RDA5807、AKC系列的芯片也是针对便携式设备的,对于高性能接收同样有这几个缺点。

车载接收的特点在于汽车电瓶及发动机供电,功耗不是问题。而车载接受环境恶劣,发动机点火会产生干扰信号,道路上不断移动的接收环境也决定了信号质量不断变化,同时汽车内部设备多,互相干扰比较严重。因此车载收音芯片抗干扰、灵敏度等性能一般比便携式接收的高不少。
芯科真正用于车载接受的是Si474x、Si475x、Si476x、SI477x、Si4796x等几个系列的芯片,种类没有NXP的多。这些系列中,Si474x是最低端的,性能不比Si473X高多少,Si475x性能有明显提升,且有低价的芯片可以买到,有使用该芯片的高频头或车机主板但数量稀少,芯片资料齐全,可以进行DIY开发。性能与TEF6657接近但稍微弱一些,但不及TEF6638和TEF6686等高性能的芯片。Si476x芯片很贵,没有资料。Si4796x等几个更高端的市场上完全没有用户使用也没有销售。Si477x有资料和芯片,但价格贵,需要自制PCB,性能指标不如NXP的产品,没有竞争力。

ST(意法半导体)方案也有不少,TDA7541、TDA7786、TDA7707等,其芯片用户相对也比较少,比NXP少不少,多数没有资料无法二次开发。只有TDA7541等少数型号可以DIY,这个不是DSP的方案,效果一般。高性能的DSP方案目前资料全部缺乏无法使用。根据网上的信息(如国外网友的PK、部分文档内的数据指标),ST的DSP方案性能不及NXP的高端芯片。

这里解释下为什么很多芯片都没有资料,这些高性能的收音芯片的开发资料,都是保密的(包括NXP、Si、ST在内的各个厂家,都是如此),因此世面上流传的文档很少。NXP的产品因为客户多,所以资料泄漏的多,因此基本上能找到资料并用起来的都是NXP的芯片,ST、Silicon Labs的高端芯片用的人少泄漏的也少。NXP的高性能收音芯片中,基本所有种类的芯片的资料尤其是编程部分多多少少都有泄露,很多芯片手册基本齐全,其所有收音芯片理论上都可以用第三代控制板控制,由于部分芯片比较久远或者资料比较少,使用者也比较少没有开发到底。不过下文还是提供了绝大部分NXP收音芯片的控制程序。

NXP车载收音接收芯片在市场上占有率非常高,尤其是著名的Dirana2产品(SAF7741),市场占用率一度达到80%,全球销量过亿片。市面多数车机均使用NXP的收音芯片,其中相当一部分都适用于本DIY。

讨论产品时,通常以昵称称呼,可以理解成小名,通常是产品全名的英文缩写。

Hero:全称Highly efficient radio one-chip,指代TEF663X系列芯片,TEF6635、TEF6638
Dirana:全称Digital Radio Natural Audio,指代SAF7730
Dirana2:全称Digital Radio Natural Audio 2,指代SAF7740、SAF7741,SAF7740没有模拟音频输出,使用很少,文中只针对SAF7741。
Dirana3:全称Digital Radio Natural Audio 3,指代SAF775X
Lithio:全称Low IF Tuner High performance One-chip,指代TEF668X系列,TEF6686,TEF6687、TEF6688、TEF6689
Atomic2:指代TEF665X,TEF6657、TEF6659
Tiger2:指代TEA685X,TEA6850,TEA6851、TEA6852、TEA6853
Tiger2+:指代TEA6856,仅此一个型号,该芯片性能高于Tiger2,与TEF6657功能、指标完全一样,读芯片型号的代码读出来的也是TEF6657,与TEF6657相比,没有车规认证。

从产品的代号缩写可以看出其设计理念与重点,如Dirana 3(SAF775X),Digital Radio Natural Audio,数字化收音技术自然和谐的音频,而NXP的介绍是One-chip multi-tuner car radio and audio system,单片多调谐器收音与音频系统,都是音频、收音并重的设计理念,而且根据网友实际使用,音质明显好,而Hero(TEF663X),Highly efficient radio one-chip,高效单片收音芯片,Lithio(TEF668X)Low IF Tuner High performance One-chip,高性能低中频单片收音芯片,都是只强调收音,可见收音性能优秀,而音频方面功能、音质会弱一点,事实也确实如此。

下面介绍本程序支持的系类,我针对世面上能买到能用到的性能比较好的几个产品开发:

系列一:

这几个系列旗下所有型号IC均受本系列所对应的程序支持,这几个系列的IC管脚定义兼容,控制软件基本兼容,在这里共用一个程序。
受支持的IC型号:
TEA6850HN/V102、TEA6851HN/V102、TEA6852HN/V102、TEA6853HN/V102、TEA6856HN/V102
TEF6657HN/V102、TEF6659HN/V102
TEF6686HN/V102、TEF6686HN/V102、TEF6688HN/V102、TEF6689HN/V102

这几个系列的芯片,有101 102 205三种后缀,但101 205后缀的芯片极其罕见而102尾号的十分常见,因此这里没有对101 205提供支持,但稍作修改程序即可支持其使用,有需求的可以跟帖联系。

这么多型号的芯片,程序控制兼容,其中TEF6686HN/V102芯片价格便宜容易买到、性能高,推荐使用。

附带一下这几个系列芯片印字与真实型号的关系,以TEF6686HN/V102为例,其印字:F8602,TEA6856HN/V102则是A5602,TEF6657HN/V101则是F5701。
芯片印字第一位表示型号中字母最后一位,后面四位数字中,前两位是具体型号中数字最后两位,后两位表示芯片内置的软件版本号。
芯片具体型号中,HN表示封装类型,所有的芯片都是一样的,V表示版本,102、205数字中,第一位表示硬件版本,后两位表示内置的软件版本。

这些芯片的控制公用一个程序。

系列二:
2011年NXP推出的Hero系列单调谐器车机收音IC,共用一个程序,受支持的型号有:TEF6635HW/03、TEF6638HW/03、TEF6635HW/05、TEF6638HW/05、TEF6635HW/06、TEF6638HW/08
由于使用了示例keycode,开机3小时后会自动停止工作,重新上电即可再用3小时。


系列三:
Dirana3,即SAF775X系列的IC,受支持的型号有:SAF7751HV/204、SAF7751HV/205、SAF7751HV/207、SAF7751HV/208、SAF7752HV/208、SAF7753HV/204、SAF7753HV/205、SAF7753HV/207、SAF7753HV/208、SAF7754HV/204、SAF7754HV/205、SAF7754HV/207、SAF7754HV/208、SAF7755HV/204、SAF7755HV/205、SAF7755HV/207、SAF7755HV/208、SAF7756HV/208、SAF7755HV/204、SAF7755HV/205、SAF7755HV/207、SAF7755HV/208、SAF775eHV/204、SAF775eHV/205、SAF775eHV/207、SAF775eHV/208、SAF7751EL/204、SAF7751EL/205、SAF7751EL/207、SAF7751EL/208、SAF7752EL/208、SAF7753EL/204、SAF7753EL/205、SAF7753EL/207、SAF7753EL/208、SAF7754EL/204、SAF7754EL/205、SAF7754EL/207、SAF7754EL/208、SAF7755EL/204、SAF7755EL/205、SAF7755EL/207、SAF7755EL/208、SAF7756EL/208、SAF7758EL/204、SAF7755EL/205、SAF7755EL/207、SAF7755EL/208、SAF775eEL/204、SAF775eEL/205、SAF775eEL/207、SAF775eEL/208、SAF7751HN/207、SAF7751HN/208、SAF7752HN/208、SAF7753HN/207、SAF7753HN/208、SAF7754HN/207、SAF7754HN/208、SAF7755HN/207、SAF7755HN/208、SAF7756HN/208、SAF7755HN/207、SAF7755HN/208、SAF775eHN/207、SAF775eHN/208、

生成SAF775e所用的圆晶其实和功能最多的SAF7758所用的是一样的,775e是工程样片只提供给客户开发时使用,区别仅仅在于SAF775e生产过程中芯片内部的存储区没有保存厂家安全密钥,7758出厂前保存过了。由于没有保存安全密钥,芯片内置的安全模块可以理解成被阉割了,不起作用,但不影响功能,775e功能和7758一样是最全的,与7751相比,还支持DAB接收与自定义的高级收音或音频算法。58
775e使用的固件是非加密的,而7751、7753、7755、7758使用的都是加密过的。所以有两个固件文件,分别是加密过与未加密的用于这两类芯片。


对于非SAF775e的芯片,由于使用了示例keycode,开机3小时后会自动停止工作,重新上电即可再用3小时。若要解除3小时时间限制则不能使用示例keycode,所以绝大多数高级收音功能无法使用。

SAF775e没有安全机制,无需使用示例keycode,因此没有三小时时间限制,且所有高级功能均可使用。


4. Dirana2,即SAF7741HV,搭配TEF7000,单频头或双频头。
由于使用了示例keycode,开机3小时后会自动停止工作,重新上电即可再用3小时。

SAF7741有多个版本的尾号,目前已知的有115、118、125、135、140等,不同尾号的芯片其程序互不兼容。目前受支持的是115、125,这也是使用最广泛的。

需要特别注意!SAF7741为保证性能,需要进行“对齐”操作,类似于仪表的校准,对其的具体内容与硬件电路、软件程序均相关,部分对齐操作需要对每一台机器单独操作,因此不推荐使用SAF7741,由于目前没有专门的仪器,SAF7741的性能会有降低。而上文介绍的其他系列的芯片都是免调整的,直接使用即可发挥最高性能。

SAF7741程序调整等细节非常复杂,目前还没有弄好,考虑TEF6638 TEF6686 SAF7751有不少用户正在使用先发帖供他们使用。

还有一些芯片,因为市面上没有使用的,程序没有开发到底,如Leopard(TEA6831HW/V106)、Sabre(TEF701X)前者程序与TEF6638基本兼容,后者与本文最开始的那个新一代调谐芯片的系列基本兼容,找到使用这个的车机请与我联系。

程序地址:
https://github.com/tzrui/WTCRC

这里文件可以反复修改,后续程序更新都上传到这里,并在帖子中跟帖或以补充的形式予以说明。上述网址内的程序将始终为最新。


补充内容 (2019-1-28 20:35):
H1A H1B H2A H2B应有落地电容,一段接地一段接飞梭经过1K引出端,图中遗失,实际制作需要补上。



DIY方法:
控制板支持多种控制对象:
1.        改装过的车机
2.        拆下的、买来的、自制的高频头或收音板

第一种情况主要针对三部曲中的TEF6721+SAF7730、TEF6730+SAF7730、TEF7000+SAF7741以及SAF7751HV/204,改装车机的方法与原先的相同,所引出的线在此也需要引出,接线方式基本兼容。

第二种情况包含的比较多,包括网上购得的TEF6686高频头、网友自制的TEF6638/TEF6686接收板,锯下来的车机主板等等,同样需要引出所需要的几根控制线,这些信号线与收音芯片特定的引脚相连,下文都用这个引脚的名称来指代与其相连的引出线。

控制板的接线方式与原有的YACRC控制板一致。对外提供RST、SCL、SDA、RDS四根信号线。

YACRC控制板提供了RDS接线但没有实现RDS处理功能,因此可以不接,这里已经实现了RDS解析。

对于使用了SAF7730的方案要接RDS线,对于PD方案的需要接两根RDS线,否则处理不了RDS内容显示。也就是对于这三个方案的,、RST、SCL、SDA四根全部接。

SAF7741、SAF775X、TEA6831和TEF663X,不需要接RDS,只需要RST、SCL、SDA三根线相连。RDS的处理通过程序实现。

TEA685X、TEF665X、TEF668X三个系列的IC没有RST脚,只需要接SCL、SDA两根。RDS的处理通过程序实现。

上面讲接线时,为了表达简要,都省略了地线,切记不要忘记让被控端和控制板之间共地。


程序烧录:
方法一:使用专用仿真器烧录程序,需要购买ST-Link,J-Link等设备,价格十元多一点,优点是使用方便,下载速度快,可搭配PC端开发工具调试程序,适合开发过程中使用。缺点是需要额外购买设备,且仿真器主要功能是调试芯片,仅用于下载程序是浪费。PC端软件配置复杂,只适合软件开发人员使用。

第一种方法十分简单,使用仿真器通过调试接口如JTAG连接STM32后,在Keil的开发环境中点击下载按钮即自动完成, MCU开发板上的跳线可固定为从内置FLASH启动。

方法二:使用串口烧录,也就是UART接口,在电脑上显示为诸如COM1、COM4。将STM32通过串口与PC相连后,通过串口发送待烧录的程序二进制代码。优点是不需要买仿真器,缺点是烧录前后均需要改动电路(通过修改开发板上跳线实现),下载速度慢,适合非开发人员不频繁烧录使用。

这里的串口可以是电脑自带的(旧台式机常配,笔记本少见),也可以是通过USB转接出来的,相关的设备很多,如PL2303、CH340、CH341等方案,需要安装该转接器的驱动,请先打开设备管理器,看下设备是否安装正确,如果有多个串口,通过观察设备拔插前后系统各串口的变化确定该设备的串口标号(如COM1、COM4、COM7)。如果驱动没有安装正确,在设备上右键安装并让系统自动搜索,即可从微软服务器获得与系统兼容的驱动程序。要注意USB转串口的转接板插在同一台机器不同的USB口,系统中识别的串口标号一般是不同的。

这里主要讲第二种烧录方法,即 串口烧录:

ST在出厂前会给STM32的MCU烧录一段boot loader用于串口下载程序,因此需要串口烧录的话需要先让MCU启动这段boot loader,芯片既可以从内置FLASH启动也可以启动这个特殊的boot loader,设置的方法是修改跳线为手册制定的设置,从而启动这一段特殊的boot loader,烧录完成后还需要恢复跳线设置从而是的芯片可以在复位后启动烧录的程序。

烧录前的准备:开发板上BOOT0置1(接到3.3V),BOOT1置0(接地),然后给控制板上电,注意电源正负。

烧录过程:
打开烧录软件FlyMCU,点搜索串口,选择正确的串口号(笔记本电脑通常只有一个串口),波特率不用管,选择HEX文件,点开始编程就可以了。

烧录完的后续处理:还原BOOT设置, BOOT0置0,BOOT1置0,此步骤不可忘记。

HEX文件生成:
我可以提供编译好的HEX文件,考虑到部分用户有自定义修改,或自己的硬件环境等情形有特殊导致有些小问题,需要微调程序,也提供源码下载。
简述下如何从源码获得编译后的HEX文件。

需要打开代码项目文件并进行编译操作。
安装开发环境:
Keil MDK 5.25 需要安装,可参考此地址:https://pan.baidu.com/s/1EX9I7V9ITfDwjjr84fj0Og#list/path=%2F

安装开发环境后,这个跟Arduino不一样,ARM核心的芯片很多,支持不同芯片的部分需要单独再下载,不然开发环境太大,安装完Keil
MDK 5.25后,需要安装针对STM32F103芯片的支持包,安装此支持包后才可针对此芯片开发。地址参考这个:https://blog.csdn.net/junyilao/article/details/77679702
选择F1的地址。

第一次打开Keil的时候会自动打开一个设备支持包管理的窗口,可以在此安装支持包但网络环境很慢,在此窗口内直接导入下载完的支持包即可快速安装。
该窗口打开时,默认会自动更新所有受支持的IC列表,在此操作时不能安装支持包,在上方菜单栏Packs中,取消勾选 Check For Updates On Launch,然后关闭窗口,在Keil工具栏第二行单机最后一个图标(小锤子后面第5个图标),再度打开之前的窗口,在上方菜单栏File选择Import导入之前下载的文件完成安装设备支持包的操作。

安装完设备支持包后即可打开分享的程序,点击 第二行图标中的第二个(Build 图标为一个向下箭头)即可完成编译操作。
编译完成的文件在 MDK-ARM\WTCRC文件夹下,文件名为WTCRC.hex



参考链接:

第二代控制板:三个系列,九个机型的车机增强接收性能及扩频:
http://www.crystalradio.cn/forum ... read&tid=612257

之前的帖子,及所使用的DSP IC方案:
第一部:TEF6721+SAF7730
http://www.crystalradio.cn/thread-578039-1-1.html
第二部:TEF6730+SAF7730
http://www.crystalradio.cn/thread-590585-1-1.html
第三部:TEF7000+SAF7741
http://www.crystalradio.cn/thread-606905-1-1.html
第四部:TEF6686
http://www.crystalradio.cn/forum ... ead&tid=1672500
第五部:SAF7751/SAF775e
http://www.crystalradio.cn/forum ... ead&tid=1678881
第六部:TEF6638
http://www.crystalradio.cn/forum ... ead&tid=1692404


离线bh1rnn
发帖
193
只看该作者 1楼 发表于: 2019-02-05

本帖最后由 eggplant886 于 2019-1-27 23:22 编辑


原先一个菜单只有4个字符,修改为整行显示:


菜单归纳为收音、音频、系统三块:


TEF6638HW/05在WTCRC控制板控制下工作:


介绍下控制板的使用:
复制自TEF6638 DIY的帖子并针对WTCRC有修改。
--------------------------------------------------
控制部件:
左飞梭:音量;按压为Option菜单;长按为切换Mute on/off。
右飞梭:频率/频道/搜索;按压为与选台相关的Frequency菜单;长按为Add/Del ch。

TUNE键:按压(弹起时动作,下同)循环改变调谐方式;长按为默认调谐方式FREQ/CH。
STEP键:按压循环改变步长;长按为默认步长(LW/MW为9k,SW为5k,FM为100k等)/最大步长。
BAND键:按压循环改变波段;长按为默认波段FM/MW。
FILTER键:按压循环改变滤波器带宽;长按为默认带宽(FM为Auto/193k,AM为Auto/5.2k)。
--------------------------------------------------
主工作屏显示格式:
FM100.700 -8S100
FS500 AUTO 3E52F
或:
SW 12345K -8 -99
CH012 5K2  3e- A
或:
MW   999K -8  65
CH012 9K2  VOL15
或:
FM100.700 -8M 90
FS100 AUTO 3E52X
或:
FM100.700 -8S 85
FS100 AUTO 23:59

各字段含义:
FM      波段,LW/MW/SW/FL/FM,其中FL=FM Low(低频段FM)
100.700 当前频率,带小数点的为MHz,不带小数点的为kHz
-8      信号强度,dBuv,-8~99dBuv
S       S=立体声,空白=单声道,M=强制单声道。对AM模式,总是显示:空白=单声道
100     S/N,信噪比,AM:-99~127dB,FM:-99~99dB(未校准,仅供参考)
FS 表示处于频率步进选台方式
SK 表示处于Seek选台方式;
CH 频道选台方式
SC 表示处于SCAN方式;
AN 表示处于ANY方式;
SS 表示正在扫描并存储当前波段
500    显示步长,1K/5K/9K/10K/25K/100/500。频道选台方式时,显示当前波段频道号000-999(限于EEPROM容量及一般地区信号情况,不同波段支持频道数不同);
AUTO   滤波器带宽。FM:AUTO/72K/89K/107K/124K/141K/159K/176K/193K/211K/228K/245K/262K/280K/297K/314K;AM:AUTO/1K8/2K2/2K6/3K0/3K4/4K0/4K6/5K2/6K0/7K0/8K0/9K2/10K4/12K0/13K6
3      AGC threshold,0=低,1=中,2=高, 3=最高
E      E=FM CEQ,e=未选择此项。仅用于FM。
5      FM去加重时间常数,5=50us,7=75us,-=无去加重。仅用于FM。
2      FM动态带宽,0=最窄,1=窄,2=中(推荐值),3=宽。仅用于FM。
A/F/X  模式,A=AM,F=FM,X=AUX
VOL15  音量为15
23:59  时间
--------------------------------------------------
标准可选择菜单一般显示格式:

占用第二行
0123456789012345
ELEp ELEc ELEn

对于主要菜单的各个细节选项,如Firmware选择,有EMBE、R7.1、R8.0三个选项,前后排列,中间那个为焦点项,此时按下飞梭表示选择中间那一项。

若一个菜单项前面有向右的箭头,表示此为选中项。有些菜单有选中项,比如滤波器带宽;有些菜单无选中项,只有当前菜单项,比如左飞梭主菜单

特殊菜单项:
    RET   返回上一级菜单
    EXIT  退出菜单

注:进入可选择菜单后,左右飞梭均可控制,无区别。按非飞梭键,退出选择菜单
--------------------------------------------------
左飞梭菜单Option:
Option: SQU1 SQU2 LSIG FMST FMCE FMMP FMNS FMBW DEEM AGC NB TONE BAL BKLT TSCN TANY TIME EXIT

Mute Threshold: 显示 "SQUELCH1:  nnn",nnn=-99~99,为正常收听时静噪电平。飞梭调整,按压飞梭返回上一级菜单
Search Threshold: 显示 "SQUELCH2:  nnn",nnn=-99~99,为搜索(Seek/Scan/Any调谐方式)时判断有无信号的门限电平。飞梭调整,按压飞梭返回上一级菜单。
Low Signal Thre: NORM LOW,选择LOW后,在seek/scan/any时降低对信号质量的要求。
FM Stereo: 0=强制单声道,5=芯片默认值,9=最大立体声。
FM ChannelEqu: OFF ON,FM信道均衡。
FM MultpathImprv: OFF ON,FM增强型多径抑制。
FM ClickSuppresn: OFF ON,FM咔哒噪声移植。
FM Bandwidth: 显示 "FM DYNAMIC BW: n",n=0-3,为带宽,0最窄,3最宽
Deemphasize: OFF 50US 75US  去加重时间常数。
AGC Threshold: 显示 "AGC THRESHOLD: n",n=0-3,为AGC起控电平门限,0最低,3最高
Noise Blanker: 显示 "NOISE BLANKER: n",n=0-3,为消噪灵敏度,0最低,3最高
Tone Ctrl: 显示并调整Bass/Middle/Treble值,-6 to +6,0为默认。左右飞梭调整,按压飞梭切换调整项(带冒号显示的)
Balance & Fader: 显示并调整Balance/Fader值,-15 to +15,0为默认,负值为Left/Front,正值为Right/Rear。左右飞梭调整,按压飞梭切换调整项(带冒号显示的)
BackLight: KEEP ADJ RET
BKLT->KEEP: 显示 "BKLT KEEP:  nnnS",nnn=0-255,为不操作时,背光保持秒数。飞梭调整秒数,0表示背光常亮。按压飞梭返回上一级菜单。
BKLT->ADJ: 显示 "BACKLIGHT: nnn",nn=0-255,为背光亮度。飞梭调整,按压飞梭返回上一级菜单
Time Scan:显示 "TIME SCAN:  nnnS",nnn=0-255,为SCAN频率调节方式时,在有信号处停留的秒数。飞梭调整,按压飞梭返回上一级菜单。
Time Any:显示 "TIME ANY:  nnnS",nnn=0-255,为ANY频率调节方式时,在信号电平低于静噪值后,保持当前频率的秒数,若超时,则自动搜索下一个有信号的频率。飞梭调整,按压飞梭返回上一级菜单。
Time Set: 显示 "TIME:  hh:mm:ss",左飞梭调整小时,右飞梭调整分钟。按压飞梭返回。长按FILTER键,秒数被四舍五入置为0,并返回。
--------------------------------------------------
右飞梭菜单Frequency:
Frequency: MODE STAT TUNE BAND FILT SLP SINE HELP EXIT

Work Mode: RF AUX   模式。
Signal Quality: 显示当前信号质量等信息。
Tune Type: FREQ SEEK CH SCAN ANY S&S  调谐方式菜单。
FREQ方式,左右转动频率飞梭,按当前步长改变频率。
SEEK方式,左右转动频率飞梭一格,搜索上/下一个本波段信号。
CH方式,左右转动频率飞梭,改变频道号,从原来扫描并存储(SS)的数据,设置频率。
SCAN为在当前波段内持续扫描,并在每一个有信号处停留一段时间(时间长度由TSCN选项决定)。
ANY为在当前波段内找到下一个有信号频率,并保持当前频率,直至信号强度低于静噪值一段时间(时间长度由TANY选项决定)后,再扫描下个频率。
S&S扫描并存储,自动扫描当前整个波段,并存储到非挥发存储器中,以便用于以后的CH方式调谐。
Band Select: LW MW SW FM-L FM WX。
IF Filter Select: 菜单项取决于当前处于FM还是AM。
Sinewave Gen: 正弦波发生器。
Usage & Help: 解释本机显示的缩写词。
--------------------------------------------------
菜单STAT项显示内容:
FM ultrasonic noise detector, AM adjacent channel detector
FM multipath
Frequency offset
Modulation
IF bandwidth
775X中频频率
6638芯片识别码
775X 固件版本以及芯片型号和类型
--------------------------------------------------
菜单SINE(正弦波发生器)项:
    频率 10-22000Hz  x2(SINE-1 & SINE-2)
    音量 0-29  x2(SINE-1 & SINE-2)
    步长: 1, 10, 100, 1000Hz, & 3, 30, 300Hz. TUNE: step down, STEP: step up
    BAND按键: 连续或按键控制
    FILTER按键: 退出

显示内容:
    SINE-1 22000 .-.
    STEP1000   VOL20
  ---代表连续波。默认为.-.(按压左或右飞梭键发声)
--------------------------------------------------
Add/Del ch:

液晶第二行显示:
0123456789012345
CHnnn 123456 A/D

nnn  频道号。旋转左飞梭改变频道号。
123456 该频道内存储的频率,无存储时显示0。
A/D   提示按左飞梭键将当前频率(液晶第一行显示的)存储到该频道;右飞梭键删除该频道的数据。
按压左/右飞梭键后,显示Y/N,提示按左飞梭键确认,按右飞梭键放弃。

在本界面,也可旋转右飞梭改变当前频率。
按其他键退出。
退出后,不改变频率调谐方式,不改变当前频率。
更新信号强度指示。
离线bh1rnn
发帖
193
只看该作者 2楼 发表于: 2019-02-05
喜欢无线电!喜欢安静的倾听远方的声音!喜欢fmdx!爱好是持之以恒的动力。。。
离线BG4FQD
发帖
3405
只看该作者 3楼 发表于: 2019-02-06
如果这些芯片支持SSB 那diy电台岂不是白菜价了
别人吃饭我看着,别人睡觉我站着。
离线bh1rnn
发帖
193
只看该作者 4楼 发表于: 2019-02-06
回 BG4FQD 的帖子
BG4FQD:如果这些芯片支持SSB 那diy电台岂不是白菜价了 (2019-02-06 14:59) 

德生用si芯片都可以收ssb,nxp芯片应该可以!就是拿不到低层数据手册!没有路子。。。
离线bh1rnn
发帖
193
只看该作者 5楼 发表于: 2019-02-23
我的 做完了!为2019年的FMDX 做准备。。。

本主题包含附件,请 登录 后查看, 或者 注册 成为会员
离线bd7bq
发帖
1491
只看该作者 6楼 发表于: 2020-01-29
SAF775X 读出的VU电平数据上升时间正常,下降时间似乎有三秒左右(比PPM表还长), 不知道是为什么。怎么才能读到即时的VU数据呢? 另外按照手册上的,VU数据地址是0x16-0x19,数据是每声道16位,测试发现只有15位。
BD7BQ 徐征宇
湖南长沙
E-Mail:bd7bq@126.com
QQ:830472