论坛风格切换切换到宽版
  • 4286阅读
  • 23回复

『分享』TH-300S的单片机程序 [复制链接]

上一主题 下一主题
离线bg8am
 
发帖
1444
只看楼主 倒序阅读 0楼 发表于: 2009-02-12
原配的300s的程序使用起来有点不习惯,不能很好的记忆用户的输入,我自己重新写了一个,硬件的变化有几个地方:
1. cpu的晶体由2m换成了11.0592,你也可以采用更加高的频率的(20m以下);
2. dds采用的是9851,时钟由70m变成30m,在软件里面启用了6倍频,所以实际的时钟是180m,可以很大程度上降低dds的杂散干扰,现在dds可以输出0-50m的漂亮波形(原先的程序输出的频率到30m后就变得很差了),50-70m也可以接受

没有别的变化了,不过键盘的定义变了,从左到右依次为:
func vfo down up step mem mod

还有一个隐藏的键,就是赵老师说的8个键中的剩下的一个,你们可以在键盘的线路板上找到,这个键我给它了专门的用途,下面具体介绍。

大家知道,我们拿到的的晶体肯定不能保证100%的是准确的30m,肯定有几十到几百hz的误差,这点误差影响不大,但对于追求玩买的ham来说,我提供了一个修正的办法。方法是,先长按func键,让dds工作于信号发生器模式,然后调到一个频率,比如10.000000mhz,现在用标准的频率计查看,频率肯定不是100%的那个频率,现在我们把保留的那个键对地短路一下,你可以看到屏幕切换到晶体校准模式,好了,现在你可以上下调整频率,知道频率计显示为我们先前设定的准确频率值。调好以后,再次把那个保留键对地短路一下,校准后的频率就保存到eeprom里了。

下面我再介绍如何分别校准lsb,usb,am等的中频频率。
1. 选好模式,接收一个已知频率的信号,不要管显示的频率,仔细调整频率,使声音还原度最好
2. 短按一下func键,此时你会看到原先s表的位置出现了一个黑底白字的f字符,现在再把显示的频率通过上下键,调整到真正的频率(注意,在f模式下,改变频率不会真正的改变频率,只是做了校准的操作)
3.完毕后,再短按一下func键,信息就会被保存到存储器中。
4.继续校准其他模式

最后讲一下波段的选择,要选择不同的波段,我们可以直接通过上下键选择,程序在跳到下一个波段后,会自动送波段选择信号到你的继电器。这点比原配的程序要好用的多,我们不必局限于一个波段内的频率选择了。如果要快速切换波段,我们可以长按step键,你会看到,右下角变成b,现在我们按up、down就会在几个波段中选择了。

值得注意的是,你在每一个波段的最后一次操作频率,都会被保存,即使你切换了波段后,再切换回来,也会记住,你不必再重新选择了。

你的最后一次操作频率也会被记住,这样下次开机,就是你上次使用的频率。


附件中的dds.hex文件就是所需要的软件。

程序的界面是如图所示
右下角显示的是step,s:10hz m:1khz,f:100khz,u: 1mhz b:波段模式
右上角显示暂时无用
存储键暂时无用
s表暂时无用,没有时间把ad转换算法加进去

欢迎大家试用,有任何问题或建议都可以告诉我,我会努力完善它,合适的时候我就公布源码
本主题包含附件,请 登录 后查看, 或者 注册 成为会员
离线bg8am
发帖
1444
只看该作者 1楼 发表于: 2009-02-12
忘了贴hex文件了
本主题包含附件,请 登录 后查看, 或者 注册 成为会员
离线BG4IHP
发帖
1837
只看该作者 2楼 发表于: 2009-02-12
顶一下,轻松得到.

要不好人做到底,把原来的备份也放上,万一想换回来,可以有的找.
离线bg8am
发帖
1444
只看该作者 3楼 发表于: 2009-02-12
'
顶一下,轻松得到.
要不好人做到底,把原来的备份也放上,万一想换回来,可以有的找.
'
原来的程序读不出来,赵老师加密了的,最好你再买一块单片机的芯片,不到5元钱,这样就不会破坏原先的程序了
离线BG7RMU
发帖
434
只看该作者 4楼 发表于: 2009-02-12
爽啊!可以用来改2ka了
离线bg7tdk
发帖
206
只看该作者 5楼 发表于: 2009-02-13
'
原来的程序读不出来,赵老师加密了的,最好你再买一块单片机的芯片,不到5元钱,这样就不会破坏原先的程序了
'

这个程序2000a能用吗?
离线bg8am
发帖
1444
只看该作者 6楼 发表于: 2009-02-13
'
这个程序2000a能用吗?
'
我没有2000a的电路,不知道它的控制引脚是不是一样的,如果可以拿到电路图,我可以帮你修改一个适合的版本
离线BD7YA
发帖
2392
只看该作者 7楼 发表于: 2009-02-13
向楼主的奉献致敬!

喜欢msc1210内置的24位a/d,楼主能帮忙采购几片吗?一片用来改机,剩下的拿来学习!谢谢!
离线BD7YA
发帖
2392
只看该作者 8楼 发表于: 2009-02-13
刚看了一下msc1210的资料,楼主应该不是用的这个芯片吧,价格也不止5元啊。
请指教!
离线bg4iww
发帖
8708
只看该作者 9楼 发表于: 2009-02-13
我还以为6ra公布程序了呢,我还以为我没睡醒。楼主高水平,仰视!下载收藏
离线费力刻丝
发帖
2645
只看该作者 10楼 发表于: 2009-02-13
顶啊......
离线xwg
发帖
264
只看该作者 11楼 发表于: 2009-02-13
学习了,等着原程序继续学.
离线BG4EBC
发帖
17902
只看该作者 12楼 发表于: 2009-02-13
很好,很和谐,佷强大!
离线acbear
发帖
186
只看该作者 13楼 发表于: 2009-02-13
9850可以用这个程序吗???
离线BG8CUO
发帖
249
只看该作者 14楼 发表于: 2009-02-13
感谢楼主!!!
离线礼军
发帖
443
只看该作者 15楼 发表于: 2009-02-13
非常好看的显示控制。也谢谢楼主。我也想改像楼主一样的
离线BG4RFB
发帖
845
只看该作者 16楼 发表于: 2009-02-13
'
我没有2000a的电路,不知道它的控制引脚是不是一样的,如果可以拿到电路图,我可以帮你修改一个适合的版本
'
我刚刚花了一个小时对比了2000a和300s的dds部分,单片机控制引脚应该是一样的,不同的是dds芯片,2000a用的是9951,300s用的是9851,2000a的钟振是70m的,单片机用的是at89c52,300s 现在好像用stc的了吧,能改程序那能造福多少2000a用户呀!!谢谢!!73!!!
离线ding
发帖
3488
只看该作者 17楼 发表于: 2009-02-13
顶一下。
和和
离线bd4ahs
发帖
1441
只看该作者 18楼 发表于: 2009-02-17
建议楼主提供半成品吧。
也造福一下300s的dds用户。
离线BG6QBY
发帖
12184
只看该作者 19楼 发表于: 2009-02-17
不错不错,楼主行为赞一个。。。。。。。。。。