标题: 求解一个晶振在stc单片上频率改变的问题 [打印本页]

作者: absflash    时间: 2015-12-24 19:42
标题: 求解一个晶振在stc单片上频率改变的问题
看好多坛友都玩gps,最近隔壁坛里收了一块一代的gps折腾玩,下面12864屏用的都是stc89c54rd+的单片机,显示都正常,11.0592的晶振。时间获

取很快,gps模块放在窗台上,十秒甚至更短时间就可以,经纬度就需要好长时间了,因为折腾玩所以经度纬度的算法不一样所以一个显示错误代码

一个显示逗号,,,后面的A=磁偏角,V=速度,这个因为静止的,所以显示逗号了,走起来应该可以正常显示,还没来及试,来两张图片看看
第一张图片开机十几秒,只有时间,其他都不准,


第二张图片,开机十分钟之后,成功定位了,


下面的彩屏用了高速大容量的1t单片机stc12c5a60s2,直接在王伟民老师的温度曲线程序上添加了gps代码,却怎么都连不上gps,后来无意间发现烧

写程序的时候stc烧写软件显示晶振频率竟然是11.0799,,换了好几个晶振都是这样,,,同一个晶振,换上89c54rd+的单片机烧写程序就可以显示

11.0592,,
图中红框内应该显示日期时间,什么都不显示就是无法获取gps数据,



期间我还过好几个晶振,专门找了一块最小系统板,都是这样的情况,11,0592的晶振放在stc12c5a60s2上就变成11、0799了,谁遇到过这情况或类似情况的分享一下,


作者: 腾飞的龙    时间: 2015-12-24 22:17
晶振很多不准的。
作者: absflash    时间: 2015-12-25 19:37
腾飞的龙 发表于 2015-12-24 22:17
晶振很多不准的。

可是这个晶振在另一个单片机上是准确的,这个5a60s2换上其他频率的晶振都显示比实际大一点,晶振不准了根本读不出gps的数据,真实头疼,
作者: 腾飞的龙    时间: 2015-12-25 20:10
不是用好的晶振嘛,买那种好的晶振试试。我还真没注意到这个问题。学习啦!
作者: wc86110    时间: 2015-12-25 20:45
呵呵,会不会是新添加的程序在作怪?要不把之前的程序烧入STC12C5A60S2看看有何反应?再一步一步来嘛。6T(COLK)咋意思?
作者: absflash    时间: 2015-12-26 19:38
业余玩玩,都是普通的无源晶振,任何晶振插在这个片子上都会跑偏一点,今天倒是看到有自适应频率的串口程序,改天试试,这几天班上事太多,烦心
作者: absflash    时间: 2016-1-1 11:11
调试成功,谢谢朋友的们的热心解答,晶振有点偏差果然不是问题原因所在,是开发板有点问题,板载的pl2303好像坏了,导致串口1连不上,我用串口2成功收到信号,
以前就是用的这块开发板

感觉不稳定,干脆用最小系统的板子吧,就是链接数模转换,时钟芯片麻烦些,
附上最小系统的图

最终显示效果,胡乱写了一些,gps的逗号数错了,哈哈,


最后附上代码吧,有上图那个开发板的,可以直接用,单片机12c5a60s2,其他支持串口2的单片机也可以,,,用的串口2哦,p1.2,p1.3
这样可以避免每次写hex都要拔掉gps线 TFT2.4汉字2样例程序.zip (89.84 KB, 下载次数: 5)

作者: 暗光    时间: 2016-1-1 20:14
我说嘛,按理说晶振肯定都会有偏差的,偏差一点对程序应该没什么影响,下次遇到这样的事莫要着急,仔细排查问题,一点一点调试,切不可把问题的原因纠结在一个点上,什么都有可能导致出错。
作者: 华师小生大陈    时间: 2016-1-3 22:42
我现在做单片机经验好少




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1