一。灯丝驱动
我拿到变压器,按照之前的电路,简单用洞洞板焊接了一个,由于做的时候没有拍照,也不想拆开盒子了。原理图见之前的帖子。

调试的时候出了两个问题:
1.没加电解电容,电路储能不够,不能起震。后加一470uF电容。
2.由于我没有120mH那么大的电感,我用的100uH的,C13

按照470pF似乎没有起震。手里没有示波器看不到状况。总之,换成0.1uF后工作了,这个电路我也分析不出来频率理论式是多少了,但是这个电容和电感肯定是决定震荡频率的。其他值都是这个电路的。
老王提供的原理图,尚未验证这组值,但是群友似乎采用了。准备做小那块板再验证一下。

不过我最后控制的时候效仿该电路加了一个pmos控制灯丝电路通断。5V进入电路,MCU和改FUTABA VFD驱动共用该电源,再经pmos控制输入灯丝电路。
FUTABA手册里说,VH即栅极阳极电压(这里的VEE)应该先于或者与驱动同时断电,这样设计没问题。
和我之前手工绕的变压器不同的是,这个电路输出灯丝交流电压大概只有1.3Vac。难道是之前匝数太多啦?反正上一版由于三极管,变压器和PT6311发热比较严重,
5V供电时电流达到了0.8A。基本同样的电路这个板只有0.2A。可能是自己绕制的变压器和这个差比较远吧。这个功耗大导致上一板开板计划搁浅。烂尾了。下次使用这个变压器再做吧。
二.MCU驱动程序
这次没用stm8,因为封装(tssop20)的原因,不方便在洞洞板上焊接了。再有就是群友提供的驱动亦是stc8的,我直接使用stc12稍稍改了引脚就驱动了这个屏。
三。时钟总体设计
方案:FUTABA VFD + DS3231 + stc15w404as + 3D打印外壳
1.mcu,15的mcu直接把以前作废的航模接受机锯下核心板,供电测试可以烧录程序。再改引脚这个u也成功驱动了。下面也没有时钟的内部图了,一是因为洞洞板焊接,二是主要的,我洞洞板也是从以前废板上裁下来的,手头连洞洞板也没了。由于是方案验证,也不想制板甚至开板了。作给下版再考虑吧。
2.DS3231,这玩意浪费时间不短!用的这块就是上次的vfd时钟上拆下来的。之前给它接的电池都挂了,0v电压。给那块板供电板子不工作,拔了电池才工作。其实这块芯片备用电池这里内部可能出了问题。导致我后来花很长世间调试掉电走时。
3.总体思路,开定时器刷屏,读温度时间,通过串***互完成授时等操作。
四。坑
1.FUTABA驱动,原作者可能是基于其他FUTABA的板改的,有些地方我没搞懂就又去找手册自己琢磨了好久,还是想利用那些图标。最后也没用上,但是大致又搞了一遍这个驱动显示原理。
感觉和lcd1602这种屏很像。自带部分ascii字库,花圈的是CGRAM,用户自定义码。其它是CGROM,固化在驱动内的。

Basically flowchart of commands:

1.有很多种ram,拣几个用到的说。CGRAM(character generator RAM)上面说了是自定义字符,一共有8个,可以反复更新,再引用时可以通过先写到CGRAM立即更新到DCRAM显示,或者通过相关方法以编号的形式引用。
DCRAM(data control RAM),每个显示符最终写入交由硬件执行显示的RAM,写给它硬件就去查表显示了。ADRAM(additional data RAM),额外的字符RAM,用于显示下图标记的icon。这个是写入立即生效,不用写入DCRAM。

2.FUTABA 驱动
(1)显示某个字符,若字符为字库内的,可直接使用内码。
如,
VFD_Write_DCRAM(0x01,‘1’); //0x01:pos ‘1’:the char to display
交由其自行转换为码字地址。
或者直接给DCRAM写入字符地址,
VFD_Write_DCRAM(0x01,0);//0x01:pos 0:the char‘s address

即显示这个字符。
(2)CGRAM显示
其实上面那行代码显示的就是CGRAM,CGRAM和CGROM共用一页地址,只是低8个给RAM了。所以按地址方式赋值是可以显示用户字符和字库字符的。
还有一种方式,
VFD_Write_CGRAM(0x00,VFD_CGRAM[0]);//VFD_CGRAM[0]:assign characterVFD_Write_DCRAM(0x01,0x00); //0x01:assign position 0x00:(dat?dat:VFD_CGRAM[0])
采用写入CGRAM并立即更新到DCRAM的方式,当DCRAM的字符参数为0时,写入的就是最近写入的CGRAM。经验证这两行代码的确可行,但是在手册上没有明确找到这个流程。
行业既定规则?也有可能是我没看到。
3.DS3231掉电走时
前面也说到了,这里调试了很久都不能掉电走时。
学到新的就是这个芯片其实RST脚根本不需要上电复位,这个脚设计来是接按键的。许多设计直接将这个脚悬空。
VBAT这个脚我尝试过接锂电池,甚至直接接了5v一样不走时。
调试到最后我差点就把这个芯片换成之前买的DS12C887,这个自带电池总归可以掉电走时了吧?
但是就在快下手时突然有了新思路,我直接用电池给这个芯片供电不就行了?反正3231工作时电流是微安级的。

找来以前从pos机拆下的小锂电,接一个充电模块,该模块电源输入加一路前面提到的pmos控制,尚未测试电池可以管多久。反正我现在是每天给它充电5min。
这部分还自己写了程序,后来想其实可以用3231的闹钟功能。这种思路似乎可以用于不支持备用电池供电的芯片?但是大多芯片其实都有这个vbat脚的。
4.main.c
主函数就是简单时钟读取和显示,电池充电控制逻辑。串口部分直接沿用以前代码,稍加修改就可以用了。
更多功能留给后续修改实现。电池待机时间有待测试,充电应该改为闹钟控制。
一。灯丝驱动
我拿到变压器,按照之前的电路,简单用洞洞板焊接了一个,由于做的时候没有拍照,也不想拆开盒子了。原理图见之前的帖子。

调试的时候出了两个问题:
1.没加电解电容,电路储能不够,不能起震。后加一470uF电容。
2.由于我没有120mH那么大的电感,我用的100uH的,C13

按照470pF似乎没有起震。手里没有示波器看不到状况。总之,换成0.1uF后工作了,这个电路我也分析不出来频率理论式是多少了,但是这个电容和电感肯定是决定震荡频率的。其他值都是这个电路的。
老王提供的原理图,尚未验证这组值,但是群友似乎采用了。准备做小那块板再验证一下。

不过我最后控制的时候效仿该电路加了一个pmos控制灯丝电路通断。5V进入电路,MCU和改FUTABA VFD驱动共用该电源,再经pmos控制输入灯丝电路。
FUTABA手册里说,VH即栅极阳极电压(这里的VEE)应该先于或者与驱动同时断电,这样设计没问题。
和我之前手工绕的变压器不同的是,这个电路输出灯丝交流电压大概只有1.3Vac。难道是之前匝数太多啦?反正上一版由于三极管,变压器和PT6311发热比较严重,
5V供电时电流达到了0.8A。基本同样的电路这个板只有0.2A。可能是自己绕制的变压器和这个差比较远吧。这个功耗大导致上一板开板计划搁浅。烂尾了。下次使用这个变压器再做吧。
二.MCU驱动程序
这次没用stm8,因为封装(tssop20)的原因,不方便在洞洞板上焊接了。再有就是群友提供的驱动亦是stc8的,我直接使用stc12稍稍改了引脚就驱动了这个屏。
三。时钟总体设计
方案:FUTABA VFD + DS3231 + stc15w404as + 3D打印外壳
1.mcu,15的mcu直接把以前作废的航模接受机锯下核心板,供电测试可以烧录程序。再改引脚这个u也成功驱动了。下面也没有时钟的内部图了,一是因为洞洞板焊接,二是主要的,我洞洞板也是从以前废板上裁下来的,手头连洞洞板也没了。由于是方案验证,也不想制板甚至开板了。作给下版再考虑吧。
2.DS3231,这玩意浪费时间不短!用的这块就是上次的vfd时钟上拆下来的。之前给它接的电池都挂了,0v电压。给那块板供电板子不工作,拔了电池才工作。其实这块芯片备用电池这里内部可能出了问题。导致我后来花很长世间调试掉电走时。
3.总体思路,开定时器刷屏,读温度时间,通过串***互完成授时等操作。
四。坑
1.FUTABA驱动,原作者可能是基于其他FUTABA的板改的,有些地方我没搞懂就又去找手册自己琢磨了好久,还是想利用那些图标。最后也没用上,但是大致又搞了一遍这个驱动显示原理。
感觉和lcd1602这种屏很像。自带部分ascii字库,花圈的是CGRAM,用户自定义码。其它是CGROM,固化在驱动内的。

Basically flowchart of commands:

1.有很多种ram,拣几个用到的说。CGRAM(character generator RAM)上面说了是自定义字符,一共有8个,可以反复更新,再引用时可以通过先写到CGRAM立即更新到DCRAM显示,或者通过相关方法以编号的形式引用。
DCRAM(data control RAM),每个显示符最终写入交由硬件执行显示的RAM,写给它硬件就去查表显示了。ADRAM(additional data RAM),额外的字符RAM,用于显示下图标记的icon。这个是写入立即生效,不用写入DCRAM。

2.FUTABA 驱动
(1)显示某个字符,若字符为字库内的,可直接使用内码。
如,
VFD_Write_DCRAM(0x01,‘1’); //0x01:pos ‘1’:the char to display
交由其自行转换为码字地址。
或者直接给DCRAM写入字符地址,
VFD_Write_DCRAM(0x01,0);//0x01:pos 0:the char‘s address

即显示这个字符。
(2)CGRAM显示
其实上面那行代码显示的就是CGRAM,CGRAM和CGROM共用一页地址,只是低8个给RAM了。所以按地址方式赋值是可以显示用户字符和字库字符的。
还有一种方式,
VFD_Write_CGRAM(0x00,VFD_CGRAM[0]);//VFD_CGRAM[0]:assign characterVFD_Write_DCRAM(0x01,0x00); //0x01:assign position 0x00:(dat?dat:VFD_CGRAM[0])
采用写入CGRAM并立即更新到DCRAM的方式,当DCRAM的字符参数为0时,写入的就是最近写入的CGRAM。经验证这两行代码的确可行,但是在手册上没有明确找到这个流程。
行业既定规则?也有可能是我没看到。
3.DS3231掉电走时
前面也说到了,这里调试了很久都不能掉电走时。
学到新的就是这个芯片其实RST脚根本不需要上电复位,这个脚设计来是接按键的。许多设计直接将这个脚悬空。
VBAT这个脚我尝试过接锂电池,甚至直接接了5v一样不走时。
调试到最后我差点就把这个芯片换成之前买的DS12C887,这个自带电池总归可以掉电走时了吧?
但是就在快下手时突然有了新思路,我直接用电池给这个芯片供电不就行了?反正3231工作时电流是微安级的。

找来以前从pos机拆下的小锂电,接一个充电模块,该模块电源输入加一路前面提到的pmos控制,尚未测试电池可以管多久。反正我现在是每天给它充电5min。
这部分还自己写了程序,后来想其实可以用3231的闹钟功能。这种思路似乎可以用于不支持备用电池供电的芯片?但是大多芯片其实都有这个vbat脚的。
4.main.c
主函数就是简单时钟读取和显示,电池充电控制逻辑。串口部分直接沿用以前代码,稍加修改就可以用了。
更多功能留给后续修改实现。电池待机时间有待测试,充电应该改为闹钟控制。
举报