本文目录一览

1,时钟芯片DS1302主要功能是什么的

DS1302是美国DALLAS公司生产的一种高性能,低功耗,带RAM的实时时钟芯片,它可以对年,月,日,时,分,秒进行计时,且具有闰年补偿功能,电源电压为2.5V ~ 5.5V,DS1302内部有一个31*8的RAM寄存组,用于临时存放数据。简单的3线接口,与TTL兼容。
主要是提供一个rtc,让设备能够获得当前时间 流程的话一般就是通过 i2c来进行访问

时钟芯片DS1302主要功能是什么的

2,ds1302 是什么

DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5~5.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。DS1302的外部引脚分配如图1所示及内部结构如图2所示。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。

ds1302 是什么

3,ds1302是什么

时钟芯片
ds1302是美国dallas公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态ram,采用spi三线接口与cpu进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和ram数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5~5.5v。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。ds1302的外部引脚分配如图1所示及内部结构如图2所示。ds1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。

ds1302是什么

4,如何修改DS1302的时间

根据DS1302的命令表,先取消写保护,在写入数据前先用0x80命令暂停时钟,再写命令修改时间,像修改分钟就是,先发送0x80暂停DS1302,再发送0x82写分钟寄存器命令,再把新的分钟数据写进去。
楼主你好:1.ds1302有主副电源,当切断主电源时副电源会继续给ds1302供电,这就是为什么短时间断电时间不变的原因;2.当长时间断电后,你的时间还是12-20,那是因为你的程序重新从主函数的第一步开始执行,因为你初始化ds1302时,把时间默认为了12-20哈,所以时间又从12-20开始执行
将0x00用一个变量来代替 再利用键盘来给这一个变量赋值
楼主你好:1. ds1302有主副电源,当切断主电源时副电源会继续给ds1302供电,这就是为什么短时间断电时间不变的原因;2. 当长时间断电后,你的时间还是12-20,那是因为你的程序重新从主函数的第一步开始执行,因为你初始化ds1302时,把时间默认为了12-20哈,所以时间又从12-20开始执行

5,DS1302芯片怎么用

DS1302 是DALLAS 公司推出的涓流充电时钟芯片内含有一个实时 时钟/日历和31 字节静态RAM 可通过简单的串行接口与单片机进行通信 可提供: --秒分时日日期月年的信息 --每月的天数和闰年的天数可自动调整 --可通过AM/PM 指示决定采用24 或12 小时格式 --保持数据和时钟信息时功率小于1mW DS1302引脚 X1 X2 32.768KHz 晶振管脚 GND 地 CE 复位脚 I/O 数据输入/输出引脚 SCLK 串行时钟 Vcc1,Vcc2 电源供电管脚 各引脚的功能为: Vcc1:主电源;Vcc2:备份电源。当Vcc2>Vcc1+0.2V时,由Vcc2 向DS1302供电,当Vcc2< Vcc1时,由Vcc1向DS1302供电。 SCLK:串行时钟,输入,控制数据的输入与输出; I/O:三线接口时的双向数据线; CE:输入信号,在读、写数据期间,必须为高。该引脚有两个功能: 第一,CE开始控制字访问移位寄存器的控制逻辑;其次, CE提供结束单字节或多字节数据传输的方法。 DS1302与单片机的连接也仅需要3条线:CE引脚、SCLK串行时钟 引脚、I/O串行数据引脚,Vcc2为备用电源,外接32.768kHz晶振, 为芯片提供计时脉冲。 DS1302内部包括: Power control:电源控制模块 Input shift registers:输入移位寄存器 Command and control logic:通讯与逻辑控制器 Oscillator and divider:晶体振荡器及分频器 DS1302 的内部主要组成部分虽然有:移位寄存器、控制逻辑、振荡器、实时时 钟以及RAM。虽然数据分成两种,但是对单片机的程序而言,其实是一样的, 就是对特定的地址进行读写操作。 DS1302控制字: 控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入 到DS1302中。 位6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据; 位5至位1(A4~A0):指示操作单元的地址; 位0(最低有效位):如为0,表示要进行写操作,为1表示进行读操作。 控制字总是从最低位开始输出。在控制字指令输入后的下一个SCLK时钟的上 升沿时,数据被写入DS1302,数据输入从最低位(0位)开始。同样,在紧跟 8位的控制字指令后的下一个SCLK脉冲的下降沿,读出DS1302的数据,读 出的数据也是从最低位到最高位。

6,ds1302的底层协议是做什么用的是什么意思求具体解释

DS1302驱动程序单片机: 时钟驱动/*****************************************************************************///注释DS1302寄存器// DS1302内部RAM分址:00 = 0xc0(写) = 0xc1(读) 奇数是读,偶数是写/*****************************************************************************///定义DS1302时钟接口sbit clock_clk = P3 ^ 3;//ds1302_clk(时钟线)sbit clock_dat = P3 ^ 4;//ds1302_dat(数据线)sbit clock_Rst = P3 ^ 5;//ds1302_Rst(复位线)/*****************************************************************************///定义累加器A中的各位sbit a0 = ACC ^ 0;sbit a1 = ACC ^ 1;sbit a2 = ACC ^ 2;sbit a3 = ACC ^ 3;sbit a4 = ACC ^ 4;sbit a5 = ACC ^ 5;sbit a6 = ACC ^ 6;sbit a7 = ACC ^ 7;/****************************************************************************///定义全局变量//unsigned char yy,mo,dd,xq,hh,mm,ss;//定义时间映射全局变量(专用寄存器)bit w = 0; //调时标志位/*****************************************************************************///1302驱动程序(底层协议)void clock_out(unsigned char dd)ACC=dd;clock_dat=a0; clock_clk=1; clock_clk=0;clock_dat=a1; clock_clk=1; clock_clk=0;clock_dat=a2; clock_clk=1; clock_clk=0;clock_dat=a3; clock_clk=1; clock_clk=0;clock_dat=a4; clock_clk=1; clock_clk=0;clock_dat=a5; clock_clk=1; clock_clk=0;clock_dat=a6; clock_clk=1; clock_clk=0;clock_dat=a7; clock_clk=1; clock_clk=0;}/*****************************************************************************///DS1302写入字节(底层协议)unsigned char clock_in(void)clock_dat=1;a0=clock_dat;clock_clk=1; clock_clk=0; a1=clock_dat;clock_clk=1; clock_clk=0; a2=clock_dat;clock_clk=1; clock_clk=0; a3=clock_dat;clock_clk=1; clock_clk=0; a4=clock_dat;clock_clk=1; clock_clk=0; a5=clock_dat;clock_clk=1; clock_clk=0; a6=clock_dat;clock_clk=1; clock_clk=0; a7=clock_dat;return(ACC);}/*****************************************************************************///DS1302写数据(底层协议)void write_clock(unsigned char ord, unsigned char dd)clock_clk=0;clock_Rst=0;clock_Rst=1;clock_out(ord);clock_out(dd);clock_Rst=0;clock_clk=1;}/*****************************************************************************///DS1302读数据(底层协议)unsigned char read_clock(unsigned char ord)unsigned char dd=0;clock_clk=0;clock_Rst=0;clock_Rst=1;clock_out(ord);dd=clock_in();clock_Rst=0;clock_clk=1;return(dd);}/*****************************************************************************///检测时钟芯片是否未被初始化,如是则设置1302的初始时间void Init_1302(void)// if(read_clock(0xc1) != 0xaa) write_clock(0x8e,0x00);//允许写操作 write_clock(0x8c,0x09);//年 write_clock(0x8a,0x01);//星期 write_clock(0x88,0x01);//月 write_clock(0x86,0x01);//日 write_clock(0x84,0x12);//小时 write_clock(0x82,0x00);//分钟 write_clock(0x80,0x00);//秒 write_clock(0x90,0xa5);//充电 write_clock(0xc0,0xaa);//写入初始化标志RAM(第00个RAM位置) write_clock(0x8e,0x80);//禁止写操作// }}/******************************************************************************/

文章TAG:ds1302  时钟芯片DS1302主要功能是什么的  
下一篇