51单片机学习笔记———13.1DS1302实时时钟原理部分
由于昨天照着手册写了一下DS1302的驱动程序,发现耗时挺多的,并且在考场上不可能一步步去自己写驱动,所以今天看了一下蓝桥杯提供的DS1302官方驱动程序,发现直接引用还是不行的,程序当中有些小问题需要去修改。下面就对那些需要修改的地方做一个总结吧。
DS1302时钟模块通信原理(SPI总线)
现在流行的串行时钟电路很多,如DS1302、 DS1307、PCF8485等。这些电路的接口简单、价格低廉、使用方便,被广泛地采用
现在流行的串行时钟电路很多,如DS1302、 DS1307、PCF8485等。这些电路的接口简单、价格低廉、使用方便,被广泛地采用。它可以对年、月、日、周、时、分、秒进行计时,且具有闰年补偿等多种功能。
DS1302 我们前边也有提起过,是三根线,分别是 CE、I/O 和 SCLK,其中 CE 是使能线,SCLK 是时钟线,I/O 是数据线。前边我们介绍过了 SPI 通信,同学们发现没发现,这个 DS1302 的通信线定义和 SPI 怎么这么像呢?
//引入文件***********************************************************#include "delay.h" #include "delay.c" #include #include //熔丝配置***********************************************************
参考DS1302数据手册,尽管数据手册是英文,但是很有帮助,再结合网上众多的代码写出了下面这个例子,除了涓流充电(trickle charger)功能没使用外,内部的RAM和寄存器功能都使用到了,包括多字节方式(burst mode)
1、DS1302时钟芯片的讲解待完成!!!2、自己写的DS1302芯片的配置文件//DS1302_SPIdriver.h//DS1302_SPIdriver.h#ifndef__SPIDRIVER_H__#define__SPIDRIVER_H__#include//包含单片机寄存器的头文件#include//包含_n
发现网上一些程序在16M晶振下不能工作,自己写了个,按照2V的时序写的,但只在5V和3.3V下测试过.以下是两个主要的文件DS1302.h:/************ AVR DS1302程序 ************* 目标.........: ATmega128* 文件名.......:
proteus仿真之DS1302+8位数码管显示试验。仿真效果如下图:源程序如下:/*51单片机:DS1302+数码管 Proteus 仿真程序。功能:数码管时钟显示。仿真结果:(1)8位数码管显示设定的时间与日期。(2)通过按键切换时间
/**********************************************************///MSP430 Advanced Developping Components - [DS1302_430.C] ////DS1302 Trickle Charge Timekeeping Chip /************************************
1 ds1302的程序,不是很简洁,占的程序空间有点长 2 3 程序: 4 5 ////////////////////////////////// 6 //根据自己的接线改管脚定义 7 sbit DS1302_cs=P1^2; 8 sbit DS1302_data=P1^1; 9 sbit DS1302_clk=P1^0;10
我们平时所用的不管是单片机,还是其它一些电子器件,根据使用条件的约束,可以分为商业级和工业级,主要是工作温度范围的不同,DS1302 的购买信息如下图15-4所示。图15-4 DS1302 订购信息我们在订购 DS1302 的时候,
在网上看了很久,发现初学者最有兴趣的就是DS1302时钟电路,也很自然,它是个做出来就让你觉得最实用的电路了,但实际上制做上并不简单,首先你要让你的显示部分(不管是数码管还是LCD)调试通过。然后把DS1302接
#include "D:\\reg51.h " //头文件#define uchar unsigned charuchar settime[]={1,2,3,4,5,6,7};uchar readtime[7];//*********************************************************************sbit T_CLK = P1^1; //
#include'reg52.h' //包含单片机寄存器的头文件#include'intrins.h' //包含_nop_()的头文件sbit RS=P2^0; //LCD读写选择位sbit RW=P2^1; //LCD读写选择位sbit E=P2^2; //LCD使能端sbit BF=P0^7; //忙
#include /*************************ds1302与at89s52引脚连接********************/ sbitT_RST=P3^5; sbitT_CLK=P3^6; sbitT_IO=P3^7; sbitACC0=ACC^0; sbitACC7=ACC^7; unsignedcharseg[]={0x00,0x01,0
DS1302 我们前边也有提起过,是三根线,分别是 CE、I/O 和 SCLK,其中 CE 是使能线,SCLK 是时钟线,I/O 是数据线。前边我们介绍过了 SPI 通信,同学们发现没发现,这个 DS1302 的通信线定义和 SPI 怎么这么像呢?事
这次咱们一起讨论实时时钟IC,应用也是相当广泛的,渗透到时钟、手表、手机、电脑等等。往往温度是影响时钟的主要因素,因为温度会影响晶振的频率,这点也是工程师们所不可