时钟和计时器IC芯片找美光存储H
‘壹’ 苹果手机主板时钟芯片,有几个
现在国内有许多果粉,走在大街上,60%的人都使用的是iphone。因为苹果手机的系统使用起来确实要比安卓系统顺畅一些,所以吸引一大批消费者也是情有可原的。但不少果粉会遇到这样的情况:iPhone掉电快或者很难充进去电。那么究竟苹果手机主板漏电怎么办呢?下面小编就带大家一起去看看吧!
一、苹果手机主板漏电症状
苹果手机主板漏电的特征就是用电特别快,而且手机持续发热严重,长时间不处理的话还会导致黑屏、不开机等故障,这都是主板芯片烧了造成的,要对芯片进行维修。另一个症状就是:开应用使用时,cpu发热严重,电池扣位置发热(卡槽位置下面)。另外,充电时严重发热也表明手机主板漏电了。
二、苹果手机主板漏电怎么办
在不使用苹果手机时,可以通过按下电源键切换到休眠模式。还可以开启省电模式,具体做法:设定-省电模式-滑动开启。也可以通过任务管理器(长按home键两秒)关闭不必要的应用程序。在不影响正常使用的情况下,关闭蓝牙、定位、推送通知等设置以延长待机时间。同时,也要取消应用程序的自动同步功能。另外,还要减少背景灯时间,并调低显示屏的亮度。,有条件的话更换手机原厂电池尝试即可。
三、苹果手机主板漏电费用
苹果手机如果出现主板漏电的情况,这是比较复杂的问题,维修的话,价格也是很贵的,一般来说需要花费200-300元。但实际上,主板还是不要维修的比较好,因为这类问题在维修以后还是有可能会出现的。因此,的做法就是更换一块新电池。摘要:很多朋友或许都会注意到,像手机、电脑等一些科技产品都有一个共同的特点——能够准确的显示时间,不管我们何时开机或者关机,其都能够将准确的时间现实给我们。这到底是为什么呢?下面,小编就为朋友们揭晓答案:因为这些产品中存在时钟芯片。下面我们就一起看看时钟芯片有哪些,时钟芯片的作用简介。
时钟芯片有哪些
一、 并行接口
MAXIM-DALLAS DS12C887 系列,现在已经衍生出很多型号了。
主要是几个大厂 MAXIM-DALLAS , PHILIPS ,日本精工。现在很多常见的 rtc 芯片 国内都有仿制的,价格还是不错的。要求不高的地方用还是不错的。
很多常见的型号在这里都能找到相对应的型号,包括 ds1302 , ds1307 , ds1337 , pcf8563
二、 串行接口
1、 I2C 接口 Phlilps 的 PCF8563 , PCF8583 EPSON 的 RX8025 内置晶振,误差小。比较不错 MAXIM-DALLAS 的 DS1307 RICOH 的 RS5C372 ,国内的贝岭仿制型号 BL5372 日本精工的S-35390 Intersil 的 X1288 深圳威帆电子公司出的 SD2000 系列,晶振,电池全部内置,体积较大。
2、 三线接口 MAXIM-DALLAS 的 DS1305 , DS1302 ,其中 DS1302 国内有相关的仿制产品, PTI 的仿制型号是 PT7C4302 。 台湾合泰的 HT1380 , HT1381 实时时钟,是单片机计时的时钟或独立的可被单片机访问的时钟。它可以外部扩展芯片得到,如 1302 , 1307 , 12887 , 3130 , 12020 , m41t81 , 6902 , 8025 。有并口有串口,有带电池自己玩,有外部供电,看实际需要设计。这些时钟无一例外地用到了 32768Hz 。这是因为它们用了同一个计时 IC 核、低频功耗更低、更容易校表和 1Hz 计时精密实现。大伙在该基础上做了不同的文章,有的搞点稳定晶振放里面,有的搞点备电方案,有的接口不同,有的搞点万年历,有的搞点报警,有的……
3、 还有可能你提到的 ( 可能就是 430 系列单片机 ) ,内部集成了 RTC 这个模块,要求外面接 32768Hz 。这样就可以独立地计时,单片机睡觉了也和它的时间管理无关,低成本实时方案,又省了好几毛 .
好了,以上就是时钟芯片的种类啦,相信以往对时钟芯片很陌生的朋友已经对时钟芯片有所了解,也对时钟零件的认识也更近了一步。很多时候,我们都会忽略我们身边的一些事物,因为经常见到以至习以为常,不会更深入地去想其他的东西。时钟就是这样,之前都只是被用作计时,很少回去细想时钟的结构,所以很少人对时钟芯片了解甚少。
时钟芯片的作用简介
什么是时钟芯片 ?
时钟芯片,顾名思义,其就是一种具有时钟特性,能够现实时间的芯片。时钟芯片属于是集成电路的一种,其主要有可充电锂电池、充电电路以及晶体振荡电路等部分组成,目前,被广泛的应用在各类电子产品和信息通信产品中。
时钟芯片有哪些作用 ? 目前,在市场所比较流行的时钟芯片有很多种,并且被广泛的使用。这些时钟芯片具有着价格低廉、使用方便、功能强大的作用。那么,时钟芯片到底有哪些作用呢 ?
时钟芯片的主要作用有:
一、时钟芯片具有显示时间与记录时间的功能作用。
时钟芯片最基本的作用就是显示时间和记录时间的时钟作用,而且时钟芯片的的时钟显示功能及其强大,可以显示出年、月、日、星期、时、分、秒所有的时间单位,而且时钟芯片还具有着精确的闰年补尝功能。
二、 时钟芯片具有闹铃作用。
在人们日常的生活中,闹铃最大的作用就是提醒时间。几乎全部的手机、电脑等科技产品都具有着闹铃设置功能,而闹铃之所以能够设置,其原因就是时钟芯片具有闹铃作用。
三、 时钟芯片具有数据记录作用。
锂电池是时钟芯片中的组成部件之一,并且在时钟芯片断电或者关机之后,锂电池可以通过芯片内部电路实现芯片供电,使时钟芯片在断电后仍可以运行很长一段时间,确保时钟芯片内部记录的数据不丢失。
四、 时钟芯片具有数据断电保护作用。
时钟芯片之作用能够记录和存储数据,是因为其内部有一个 RAM 单元,此 ram 单元一部分用于对时钟显示的控制,绝大一部用于单元数据的存储,而且此 RAM 单位具有着断电保护功能。
五、 时钟芯片具有很好的检测功能。
时钟 芯片 的接口较为简单,而且可以与多种软件连接,并且可以通过软件进行功能屏蔽,实现对其性能的测试。
‘贰’ 利用51单片机,4个数码管设计一个计时器,要求在数码管上显示的数据从0开始每1秒钟加1。
共阳数码管中断程序:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]=
{
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x83,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e};
uint num,a;
uchar ,shi,ge;
void init();
void delay(uint);
void display(uchar,ucharshi,ucharge);
uint fb();
uint fs();
uint fg();
void main()
{
init();
while(1)
{
display(fb(),fs(),fg());
}
}
void init()
{
num=0;
a=0;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
void display(uchar,ucharshi,ucharge)
{
P1=0xfd;
P0=table[];
delay(1);
P1=0xfb;
P0=table[shi];
delay(1);
P1=0xf7;
P0=table[ge];
delay(1);
}
void timeoff() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65526-50000)%256;
a++;
if(a%20==0)
{
num++;
if(num==999)
{
num=0;
}
}
}
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
uint fb()
{
=num/100;
return ;
}
uint fs()
{
shi=num%100/10;
return shi;
}
uint fg()
{
ge =num%100%10;
return ge;
}
(2)时钟和计时器IC芯片找美光存储H扩展阅读
2个可编程定时/计数器·5个中断源,2个优先级(52有6个)
一个全双工串行通信口
外部数据存储器寻址空间为64kB
外部程序存储器寻址空间为64kB
逻辑操作位寻址功能·双列直插40PinDIP封装
单一+5V电源供电
CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;
RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;
ROM:用以存放程序、一些原始数据和表格;
I/O口:四个8位并行I/O口,既可用作输入,也可用作输出
T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;
五个中断源的中断控制系统;
一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;
片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最佳振荡频率为6M—12M。
参考资料来源:网络-51单片机
‘叁’ 什么是时钟发生器(PLL—IC)怎么样查出自己机器的时钟发生器
就是我们通常说的“时钟IC”(时钟芯片),在主板上一般和时钟晶振在一块,你找一个像“罐头盒”(呵呵是有点像)的金属东西,它上面写着14.318(即时钟晶振),它的附近有个长方形的黑小芯片就是时钟IC。
有说“时钟芯片”和“时钟晶振”统称“时钟发生器”。
‘肆’ 【急】用EWB做一个电子钟,和一个计时器
【设计指标及要求】设计一个多功能数字钟,以一昼夜24小时为一个计数周期。准确计时,具有“时”“分”“秒”数字显示。整点能自动打点、报时。要求报时声响四低一高,最后一响为整点。具有校时功能。要求电路主要采用中小规模CMOS集成电路。要求电路尽量简化,并选用同类型的器件。在EWB电子工作平台上进行电路的设计和计算机仿真。【设计原理】1.总体设计方案数字钟原理框图如图1所示,电路一般包括以下几个部分:振荡器、分频器、译码显示电路、时分秒计数器、校时电路、报时电路以及闹铃电路。2.对于各个部分而言数字钟计时的标准信号应该是频率相当稳定的1HZ秒脉冲,所以要设置标准时间源。数字钟计时周期是24,因此必须设置24计数器,秒、分、时由七段数码管显示。为使数字钟走时与标准时间一致,校时电路是必不可少的。设计中采用开关控制校时直接用秒脉冲先后对“时”“分”“秒”计数器进行校时操作。3.各独立功能部件的设计振荡器振荡器是计时器的核心,其作用是产生一个标准频率的脉冲信号。振荡频率的精度和稳定度决定了数字钟的质量。图2采用集成电路555定时器与RC组成的多谐振荡器。输出的脉冲频率为fS=1/[(R1+2R2)C1ln2]=1KHZ,周期T=1/fS=1ms。附555定时器的功能表输入 输 出 阀值输入(v11) 触发输入(v12) 复位(RD) 输出(VO) 发电管T × × 0 0 导通 2/3VCC >1/3VCC 1 0 导通 1/3VCC 1 不变 不变 (2)秒计时器(60 获得秒脉冲信号后,可根据60秒为一分,60分为一小时,24时为一个计数周期的计数规则,分别确定秒,分,时的计数器。由于秒和分的显示都为60进制,因此他们可有两级十进制计数器组成,其中秒和分的个位为十进数器,十位为六进制计数器,可利用两片74160集成电路来实现。74160和74161一样,具有相同的逻辑符号,引脚图和功能表,各引脚图的功能和用法也相同。所不同的仅在于74160是十进制,而74161是十六进制。用6片74160构成秒计时器、分计时器、时计时器。芯片1、2构成秒计时器,74160为10进制,因为秒的十位为六进制,所以要改变进制就要进行改造,芯片2的QD Qc QB QA当输出为0110时,与非门输出为0,清零端使芯片清零。芯片3、4构成分计时器,原理和秒计时器一样。芯片5、6构成时计时器,由于时为24进制,所以,当芯片5的QB为1并且芯片6的Qc为1时此时应让芯片强制清零。所以连接一个与非门,在这个条件成立时,与非门的输出将使芯片强制清零(3)时间校对电路 时间校对电路由一个开关组成,开关的引脚一个节上一级的进位信号,一个接555定时器的输出端。当需要校对时间的时候,我们可以把开关接至555定时器的输出端,平常时开关打至上一级的进位信号端。4系统电路图 【安装和调试】用示波器检测集成电路555定时器与RC组成的多谐振荡器的输出信号波形和频率,555振荡器输出频率应为1000HZ。将频率为1000Hz的信号送入分频器,并用示波器检查各级分频器的输出频率是否符合设计要求。将1秒信号分别送入“时”、“分”、“秒”计数器,用显示器检查计数器的工作情况,看计数器是否按设计的进制计数。观察校时电路的功能是否满足校时要求。当分频器和计数器正常工作后,将各级的电路相连,观察数字钟能否准确正常工作。检查计数器能否正常整点报时以及能否按设置时间闹铃。【元件清单】 数码管显示器 四段数码管 6 十进制计数器 74160 6 多输入与非门 3 定时器 555 1 非门 2 电阻、电容、导线等。【设计收获】 通过对多功能数字钟的设计,我掌握了EWB软件的使用以及如何熟练的、合理的选用集成电路器件。通过对电路性能指标的测试与调试,加强了我在分析和解决设计故障方面的能力,为以后做设计打下了基础。网上找的,希望对你有所帮助! http://www.songtaste.com/user.php?tag=blog_detail&bid=4840
‘伍’ 最好的ic芯片信息网站有哪些呢,要有最全面集成电路参数信息,电路图信息,datasheet等!
STM32F107VCT6 - 基本参数:
产品种类:集成电路
存储器容量, RAM:64KB
计时器数:10
PWM通道数:16
工作温度范围:-40°C to +85°C
针脚数:100
封装类型:LQFP
接口类型:CAN, I2C, SPI, UART, USART, USB
时钟频率:72MHz
模数转换器输入数:16
电源电压 最大:3.6V
电源电压 最小:2V
表面安装器件:表面安装
输入/输出线数:80
闪存容量:256KB
供应:佛山颖展电子科技
‘陆’ 采用单片机控制的时钟计时器的设计 内容: 以MCS-51单片机为核心,设计并制作时钟计时器,用6位LED数码管
KEYVAL EQU 30H
KEYTM EQU 31H
KEYSCAN EQU 32H
DAT EQU 33H
SCANLED EQU 39H
CLK EQU 77H
SEC EQU 78H
MIN EQU 79H
HOUR EQU 7AH
PAUSE BIT 00H
DOT BIT 01H
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0ISR ;50ms定时
ORG 001BH
LJMP T1ISR ;扫描显示
ORG 0030H
MAIN:
MOV SP,#5FH
MOV TMOD,#11H
MOV TH0,#03CH
MOV TL0,#0B0H
MOV TH1,#0ECH
MOV TL1,#078H
MOV KEYVAL,#0
MOV SCANLED,#0
MOV 33H,#10H
MOV 34H,#10H
MOV 35H,#10H
MOV 36H,#10H
MOV 37H,#10H
MOV 38H,#10H
MOV SEC,#0
MOV MIN,#0
MOV HOUR,#0
MOV CLK,#0
CLR PAUSE
SETB EA
SETB ET1
SETB TR1
LOOP:
LCALL KEYSEL
MOV A,KEYVAL
CJNE A,#0FFH,LOOP1
SJMP LOOP
LOOP1:
CJNE A,#10,LOOP2 ;“ON”启动
SETB TR0
SETB ET0
SETB PAUSE
SJMP LOOP
LOOP2:
CJNE A,#11,LOOP3 ;“=”清零
MOV SEC,#0
MOV MIN,#0
MOV HOUR,#0
LCALL DISCHG
SJMP LOOP
LOOP3:
CJNE A,#15,LOOP4 ;“+”暂停
CLR TR0
CLR ET0
CLR PAUSE
SJMP LOOP
LOOP4:
CJNE A,#14,LOOP5 ;“-”清显示暂停
MOV 33H,#10H
MOV 34H,#10H
MOV 35H,#10H
MOV 36H,#10H
MOV 37H,#10H
MOV 38H,#10H
CLR TR0
CLR ET0
CLR PAUSE
SJMP LOOP
LOOP5:
CJNE A,#10,LOOP6 ;数字键
LOOP6:
JC LOOP7
LJMP LOOP
LOOP7:
JNB PAUSE,LOOP8 ;暂停状态可以输入数字键
LJMP LOOP
LOOP8:
MOV 33H,34H
MOV 34H,35H
MOV 35H,36H
MOV 36H,37H
MOV 37H,38H
MOV 38H,KEYVAL
MOV A,33H
SWAP A
ORL A,34H
LCALL BCDH
MOV HOUR,A
MOV A,35H
SWAP A
ORL A,36H
LCALL BCDH
MOV MIN,A
MOV A,37H
SWAP A
ORL A,38H
LCALL BCDH
MOV SEC,A
LJMP LOOP
;------------------
;BCD转换为十六进制
BCDH:
MOV B,#10H
DIV AB
MOV R7,B
MOV B,#10
MUL AB
ADD A,R7
RET
;------------------
;十六进制转换为BCD
HBCD:
MOV B,#10
DIV AB
SWAP A
ORL A,B
RET
;------------------
KEYSEL:
MOV KEYVAL,#0
MOV KEYSCAN,#0EFH
LCALL GETKEY
MOV A,KEYTM
JZ KEYS1
MOV KEYVAL,A
SJMP KEYRTN
KEYS1:
MOV KEYSCAN,#0DFH
LCALL GETKEY
MOV A,KEYTM
JZ KEYS2
CLR C
ADD A,#4
MOV KEYVAL,A
SJMP KEYRTN
KEYS2:
MOV KEYSCAN,#0BFH
LCALL GETKEY
MOV A,KEYTM
JZ KEYS3
CLR C
ADD A,#8
MOV KEYVAL,A
SJMP KEYRTN
KEYS3:
MOV KEYSCAN,#7FH
LCALL GETKEY
MOV A,KEYTM
JZ KEYRTN
CLR C
ADD A,#12
MOV KEYVAL,A
KEYRTN:
LCALL CHGKEY
RET
;--------------------
GETKEY:
MOV KEYTM,#0
MOV A,KEYSCAN
MOV P3,A
NOP
MOV A,P3
ANL A,#0FH
XRL A,#0FH
JZ NOKEY
MOV R2,#10
LCALL DELAY
MOV A,P3
ANL A,#0FH
XRL A,#0FH
JZ NOKEY
MOV A,P3
ANL A,#0FH
MOV R7,A
SF:
MOV A,P3
ANL A,#0FH
XRL A,#0FH
JNZ SF
MOV A,R7
CJNE A,#0EH,NK1
MOV KEYTM,#1
SJMP NOKEY
NK1:
CJNE A,#0DH,NK2
MOV KEYTM,#2
SJMP NOKEY
NK2:
CJNE A,#0BH,NK3
MOV KEYTM,#3
SJMP NOKEY
NK3:
CJNE A,#07H,NOKEY
MOV KEYTM,#4
NOKEY: RET
;--------------------
DELAY:
MOV R3,#50
DELAY1:
MOV R4,#100
DJNZ R4,$
DJNZ R3,DELAY1
DJNZ R2,DELAY
RET
;--------------------
T0ISR:
PUSH ACC
CLR TR0
MOV TH0,#3CH
MOV TL0,#0B0H
SETB TR0
INC CLK
MOV A,CLK
CJNE A,#20,T0ISRE
MOV CLK,#0
INC SEC
MOV A,SEC
CJNE A,#60,T0ISRE
MOV SEC,#0
INC MIN
MOV A,MIN
CJNE A,#60,T0ISRE
MOV MIN,#0
INC HOUR
MOV A,HOUR
CJNE A,#24,T0ISRE
MOV SEC,#0
MOV MIN,#0
MOV HOUR,#0
T0ISRE:
LCALL DISCHG
POP ACC
RETI
;--------------------
DISCHG:
MOV A,HOUR
LCALL HBCD
PUSH ACC
ANL A,#0FH
MOV 34H,A
POP ACC
ANL A,#0F0H
SWAP A
MOV 33H,A
MOV A,MIN
LCALL HBCD
PUSH ACC
ANL A,#0FH
MOV 36H,A
POP ACC
ANL A,#0F0H
SWAP A
MOV 35H,A
MOV A,SEC
LCALL HBCD
PUSH ACC
ANL A,#0FH
MOV 38H,A
POP ACC
ANL A,#0F0H
SWAP A
MOV 37H,A
RET
;--------------------
T1ISR:
PUSH ACC
CLR TR1
MOV TH1,#0ECH
MOV TL1,#78H
SETB TR1
MOV DPTR,#LEDTAB
T100:
MOV R0,#DAT
MOV A,SCANLED
ADD A,R0
MOV R0,A
MOV A,SCANLED
JNZ T101
MOV P2,#01H
CLR DOT
SJMP T1DIS
T101:
DEC A
JNZ T102
MOV P2,#02H
SETB DOT
SJMP T1DIS
T102:
DEC A
JNZ T103
MOV P2,#04H
CLR DOT
SJMP T1DIS
T103:
DEC A
JNZ T104
MOV P2,#08H
SETB DOT
SJMP T1DIS
T104:
DEC A
JNZ T105
MOV P2,#10H
CLR DOT
SJMP T1DIS
T105:
MOV P2,#20H
CLR DOT
T1DIS:
MOV A,@R0
MOVC A,@A+DPTR
JNB DOT,T1DIS1
ORL A,#01H
T1DIS1:
CPL A
MOV P0,A
INC SCANLED
MOV A,SCANLED
CJNE A,#6,T1END
MOV SCANLED,#0
T1END:
POP ACC
RETI
;--------------------
CHGKEY:
MOV A,KEYVAL
JZ KV16
DEC A
JNZ KV01
MOV KEYVAL,#7
RET
KV01:
DEC A
JNZ KV02
MOV KEYVAL,#4
RET
KV02:
DEC A
JNZ KV03
MOV KEYVAL,#1
RET
KV03:
DEC A
JNZ KV04
MOV KEYVAL,#10
RET
KV04:
DEC A
JNZ KV05
MOV KEYVAL,#8
RET
KV05:
DEC A
JNZ KV06
MOV KEYVAL,#5
RET
KV06:
DEC A
JNZ KV07
MOV KEYVAL,#2
RET
KV07:
DEC A
JNZ KV08
MOV KEYVAL,#0
RET
KV08:
DEC A
JNZ KV09
MOV KEYVAL,#9
RET
KV09:
DEC A
JNZ KV10
MOV KEYVAL,#6
RET
KV10:
DEC A
JNZ KV11
MOV KEYVAL,#3
RET
KV11:
DEC A
JNZ KV12
MOV KEYVAL,#11
RET
KV12:
DEC A
JNZ KV13
MOV KEYVAL,#12
RET
KV13:
DEC A
JNZ KV14
MOV KEYVAL,#13
RET
KV14:
DEC A
JNZ KV15
MOV KEYVAL,#14
RET
KV15:
DEC A
JNZ KV16
MOV KEYVAL,#15
RET
KV16:
MOV KEYVAL,#0FFH
RET
;--------------------
LEDTAB: DB 0FCH ;"0" 00H
DB 60H ;"1" 01H
DB 0DAH ;"2" 02H
DB 0F2H ;"3" 03H
DB 66H ;"4" 04H
DB 0B6H ;"5" 05H
DB 0BEH ;"6" 06H
DB 0E0H ;"7" 07H
DB 0FEH ;"8" 08H
DB 0F6H ;"9" 09H
DB 0EEH ;"A" 0AH
DB 3EH ;"B" 0BH
DB 9CH ;"C" 0CH
DB 7AH ;"D" 0DH
DB 9EH ;"E" 0EH
DB 8EH ;"F" 0FH
DB 00H ;" " 10H
;--------------------
END
‘柒’ 关于51单片机 的秒表/时钟计时器设计摘要
本设计以AT89S51单片机为核心芯片,与型号为1602的液晶显示器构成数字电子时钟电路。AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4K Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及AT89C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案.液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。
‘捌’ 单片机时钟和倒计时器的汇编语言代码,哪位大侠能给出每个语句的注释解释,感激不尽
ORG 0000H;程序起始于地址0000H,(一般不这样用)
LJMP MAIN;跳到主程序MAIN
ORG 000BH;外部中断INT0程序的地址,此为规定的
LJMP INTT0;跳到外部中断INTT0程序
ORG 001BH;外部中断INT1程序的地址,此也为规定的
LJMP INTT1;跳到外部中断INTT1程序
ORG 0100H;主程序MAIN地址
MAIN: MOV SP,#60H;给堆栈指针SP附内部数据存储器地址60H
MOV 31H,#0;给31H地址内清零即(31H)=0
MOV 20H,#0FEH ;(20H)=11111110B
MOV 21H,#0FFH;(21H)=11111111B
MOV P1,20H;P1=11111110B
LCALL SHEZHI1;调用程序段SHEZHI1
MOV 20H,#0FDH;(20H)=11111101B
MOV P1,20H;P1=11111101B
MOV 40H,#10;(40H)=0AH
SETB EA;开总中断
SETB ET0;开定时中断T0
MOV TMOD,#11H;设置T0工作于定时方式1
MOV TH0,#3CH;定时初值设置高位
MOV TL0,#0B0H;定时初值设置低位
SETB TR0;允许T0中断
LL: LCALL KEY;调用KEY
LCALL KEYC;调用KEYC
SJMP LL;循环调用回LL
INTT0: PUSH ACC;将ACC值压栈
PUSH PSW;将PSW值继续压栈
SETB RS1;RS1位置1
SETB RS0;RS0位置1,即选中内部数据存储器组的3组
DJNZ 40H,DOWN;判断十次结束否?且计数值自减一,若没有够十次,则转入程序DOWN , 否则顺序执行
MOV 40H,#10;继续在(40H)存入计数值十
MOV R0,#41H;(R0)=41H
MOV A,@R0 ; 判秒是否到60
ADD A,#1;A中值加一
DA A;十进制调整
MOV @R0,A;再送回原单元
CLR C;清进位位
SUBB A,#60H;与60相减
JC DOWN;通过判断进位位看是否到60了,没到就去DOWN,到了就顺序执行
MOV @R0,#0;41H单元清零
INC R0;地址自加一
MOV A,@R0 ; 判分是否到60
ADD A,#1
DA A
MOV @R0,A
CLR C
SUBB A,#60H
JC DOWN
MOV @R0,#0
INC R0
MOV A,@R0 ; 判时是否到24
ADD A,#1
DA A
MOV @R0,A
CLR C
SUBB A,#24H
JC DOWN
MOV @R0,#0
INC R0
MOV A,@R0 ; 判日是否到指定天数
ADD A,#1
DA A
MOV @R0,A
INC R0
MOV A,@R0
MOV R4,A ;月份送R4,本月天数送R5
JNB ACC.4,NEXT2
CLR C
SUBB A,#06H
NEXT2: MOV DPTR,#DAYTAB
DEC A
MOVC A,@A+DPTR
MOV R5,A
CJNE R4,#2,NEXT
JNB 08H,NEXT1
NEXT: INC R5
NEXT1: DEC R0
MOV A,R5
CLR C
SUBB A,@R0
JNC DOWN
MOV @R0,#1
INC R0
MOV A,@R0 ; 判月是否到13
ADD A,#1
DA A
MOV @R0,A
CLR C
SUBB A,#13H
JC DOWN
MOV @R0,#1
INC R0
MOV A,@R0 ;判年低位是否到00
ADD A,#1
DA A
MOV @R0,A
INC R0
MOV A,@R0
ADDC A,#0
DA A
MOV @R0,A
DOWN: MOV A,#42H
CJNE A,4EH,DOWN2
MOV A,#43H
CJNE A,4FH,DOWN2
CLR 07H
DOWN2: JB 06H,DOWN4
DOWN4: CLR TR0
MOV A,#0B7H
ADD A,TL0
MOV TL0,A
MOV A,#3CH
ADDC A,TH0
MOV TH0,A
SETB TR0
POP PSW
POP ACC
RETI
DAYTAB: DB 31H,28H,31H,30H,31H,30H,31H,31H,30H,31H,30H,31H