专注电子技术学习与研究
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

STC12系列读取DS1302间断乱码

作者:未知   来源:不详   点击数:  更新时间:2014年07月27日   【字体:

同样的程序,STC89系列可以正常读取DS1302,换做1T的12系列就不能正常读取,官方资料的解释如下:
由于准双向口的上拉能力较弱,1T单片机速度又太快,导致软件执行端口拉高后,在两个CPU时钟延时后端口才十几被拉高,如下图:


解决办法:
  1. 将有关端口全部接上拉电阻,增强其上拉能力。
  2. 将有关SPI通信的三个端口设置为强推挽输出,增强端口上拉能力,但要注意与DS1302的数据口连接的端口不要设置为强推挽输出,以免损坏1302芯片,此端口可以用上拉电阻解决。
  3. 将所有端口拉高的指令后增加一定延时,确保该端口上拉正确后再进行其他操作。
关闭窗口

相关文章