论坛风格切换切换到宽版
  • 6920阅读
  • 22回复

问STC12C5404的晶振频率最大为多少 [复制链接]

上一主题 下一主题
离线bg2gc
 
发帖
971
只看楼主 倒序阅读 0楼 发表于: 2010-02-12
用max485,stc12c5404ad,lcd1602做了一个检测gps等nmea0183数字语句的东西(选用stc12c5404ad还要用他的ad口检测电源锂电池电压,并且有贴片封装),程序已经写了一部分,在11.0592晶振调试的,因需要4800和38400两种波特率,只能选择22.1184m的晶振,并且还要加倍,但当换上22.1184m晶振后,lcd竟没有了显示,说明没有工作,换了3个,还是一样的结果,。用手头上的25m晶振也是一样没有显示,没有其他的晶振去试了。

  stc12c5404ad厂家说明书上0-35m呀,究竟stc12c5404的晶振频率最大为多少

  多亏没有先把电路板做出来,要不就成了费板了
离线BG2BHC
发帖
5337
只看该作者 1楼 发表于: 2010-02-12
拿示波器看看起振没有
发帖
689
只看该作者 2楼 发表于: 2010-02-12
lcd1602速度好慢的
不要直接照搬人家的程序
加多几个nop
也可能是晶振没有起震
听说高频起振有技巧的
离线bg2gc
发帖
971
只看该作者 3楼 发表于: 2010-02-12
示波器放在单位了

在网上搜索一下,有的论坛说24m以上不易起振,

想起来,半年前用的stc89c54rd,lcd1602,试验板,用的22.1184m晶振是可以正常显示的(呵呵,本人记忆力差得很),stc89c54晶振范围0-80m,看样子stc有些虚夸了,频率得减半使用
离线bg2gc
发帖
971
只看该作者 4楼 发表于: 2010-02-12
[quote=我是中国人]lcd1602速度好慢的
不要直接照搬人家的程序
加多几个nop
也可能是晶振没有起震
听说高频起振有技巧的[/quote]

谢谢,我是初学,现在还只能这样练练,做的东西自己用,呵呵,要求不高
离线bg2raq
发帖
3978
只看该作者 5楼 发表于: 2010-02-12
如果可能 最好用有源的给电就震
发帖
689
只看该作者 6楼 发表于: 2010-02-12
'
如果可能 最好用有源的给电就震
'
用信号发生器顶着档先不也可以吗?
离线xiongjunfeng
发帖
1220
只看该作者 7楼 发表于: 2010-02-12
22.1184m应该可以工作,早期的stc的编程器上就是用的这个频率。
离线BG4RFF
发帖
1581
只看该作者 8楼 发表于: 2010-02-12
是不是程序的问题
离线bg2gc
发帖
971
只看该作者 9楼 发表于: 2010-02-12
'
22.1184m应该可以工作,早期的stc的编程器上就是用的这个频率。
'

22.1184m可以给单片机写程序,但就是lcd1602没显示,也许就是我程序有问题,明天再试试简单一点的程序
离线永远的FM
发帖
12107
只看该作者 10楼 发表于: 2010-02-17
要注意lcd忙检测!高速cpu驱动最好加忙检测,延迟呀稍微加大一点。速度一快,原来没有忙检测的现在可能lcd就无法识别指令。
离线小比尔/5
发帖
2582
只看该作者 11楼 发表于: 2010-02-18
说是35mhz
我用到32.768mhz,除了复位和电压要注意一下以外,没啥问题!
离线bd5it
发帖
2355
只看该作者 12楼 发表于: 2010-02-18
几年来用了几万个stc+22.1184m晶体,从来没有发现不能用。
而且,5404ad串口速度是可以设置的,能达到传统速度的6倍,也就是说你也可以不选择22.1184m晶体,有3.6864m就足够了。

很佩服lz初学就敢想先制版,我通常试验都是用万能板,呵呵。
离线小比尔/5
发帖
2582
只看该作者 13楼 发表于: 2010-02-18
其实楼主在设计电路的时候可以留一个状态灯(比如随某些操作闪烁),这样就可以知道程序的工作状态了。
离线bg2gc
发帖
971
只看该作者 14楼 发表于: 2010-02-19
谢谢各位朋友,我现在改芯片了,用stc89c55rd+了,在实验板上22.1184m,1602显示正常,在4800和38400波特率下也工作正常。不明白为啥同样的程序在22.1184m stc12c5404上lcd1602就不可以显示,只是stc89c55rd+没ad功能,电池电压检测只能取消了

初学单片机,接着学,接着练
离线小比尔/5
发帖
2582
只看该作者 15楼 发表于: 2010-02-19
'
谢谢各位朋友,我现在改芯片了,用stc89c55rd+了,在实验板上22.1184m,1602显示正常,在4800和38400波特率下也工作正常。不明白为啥同样的程序在22.1184m stc12c5404上lcd1602就不可以显示,只是stc89c55rd+没ad功能,电池电压检测只能取消了
初学单片机,接着学,接着练
'
因为12系列的速度是89系列的6-8倍啊
离线efree
发帖
554
只看该作者 16楼 发表于: 2010-02-19
[quote=小比尔/5]因为12系列的速度是89系列的6-8倍啊[/quote]
12系列的是1t的单片机吧。
离线小比尔/5
发帖
2582
只看该作者 17楼 发表于: 2010-02-19
'
12系列的是1t的单片机吧。
'
没错,是“1t”的单片机
但是有些指令还是比较慢的
离线BG4QXW
发帖
636
只看该作者 18楼 发表于: 2010-02-21
老大;速度快了延时要多点啊,lcd响应那个慢啊!!
离线代洪波
发帖
4809
只看该作者 19楼 发表于: 2010-02-22
对的,89c和12c系列的指令执行时间不一样。用忙检测比较好。