[单片机中大都使用什么语言编程]学习单片机实在不是件易事,一来要购买高价格的编程器,仿真器,二来要学习编程语 言,还有众多种类的单片机选择真是件让人头痛的事。在众多单片机中 51 架构的芯片风行 很久,学习资...+阅读
SECOND EQU 30H ;存储妙 MINITE EQU 31H ;存储分 HOUR EQU 32H ;存储时 SPEAKER BIT P3.7 HOURK BIT P3.2 ;时键 MINITEK BIT P3.3 ;分键 SECONDK BIT P3.0 ;妙键 FLAG BIT 00H FLAG1S BIT 01H ;1S到标志位. DISPBUF EQU 40H ; 段选标志 DISPBIT EQU 48H ; 位选通标志 T2SCNTA EQU 49H ; 中断次数 T2SCNTB EQU 4AH ; 中断次数 TEMP EQU 4BH ; 初始化位 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;程序名称:主程序 ;功能描述; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ORG 00H LJMP START ORG 0BH LJMP INT_T0 ;T0中断入口 START: MOV SECOND,#00H ;妙初始化0 MOV MINITE,#00H ;分初始化0 MOV HOUR,#12 ;时始化送12 MOV DISPBIT,#00H ;位选通标志 MOV T2SCNTA,#00H ;标志 MOV T2SCNTB,#00H ;标志 CLR FLAG CLR FLAG1S SETB SPEAKER MOV TEMP,#07FH ;初始位,让第一个位选通 LCALL DISP ;调用显示处理程序 MOV TMOD,#01H ;方式1 MOV TH0,#0F8H ;赋值20MS MOV TL0,#030H SETB TR0 ;开中断启动 SETB ET0 SETB EA ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;程序名称:按键程序 ;功能描述;调整分,时 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; WT: JNB FLAG,CC LCALL SPEAKING CC: JB SECONDK,NK1 ;妙末按下,转去判断分键 LCALL DELY10MS ;按下,延时,消抖动 JB SECONDK,NK1 ;再次判断是否按下? INC SECOND ;按下,按下一次加1 MOV A,SECOND ;送A判断 CJNE A,#60,NS60 ;妙末到60转分 MOV SECOND,#00H ;到了,回0 NS60: LCALL DISP JNB SECONDK,$ ;等待妙键释放 NK1: JB MINITEK,NK2 ;跟妙键分析相似 LCALL DELY10MS JB MINITEK,NK2 INC MINITE MOV A,MINITE CJNE A,#60,NM60 MOV MINITE,#00H NM60: LCALL DISP JNB MINITEK,$ NK2: JB HOURK,NK3 ;时键 LCALL DELY10MS JB HOURK,NK3 INC HOUR MOV A,HOUR CJNE A,#24,NH24 MOV HOUR,#00H NH24: LCALL DISP JNB HOURK,$ ;等待时键释放 NK3: LJMP WT ;返回 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;程序名称:显示处理程序 ;功能描述;,该程序实现时,分,秒计时转换为BCD码并存储在以47H起始地址的显示 ;输出数据存储单元里,即显示缓冲区47H至40H单元 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; DISP: MOV A,#DISPBUF ;送40H ADD A,#7 ;加8 ;DEC A MOV R1,A ;送47H MOV A,HOUR ;送时 MOV B,#10 DIV AB MOV R1,A ;存储时十位 DEC R1 ;指向时个位 MOV A,B ;送时个位 MOV R1,A ;存储时个位 DEC R1 MOV A,#10 MOV R1,A DEC R1 MOV A,MINITE ; 送分,处理与时处理类似 MOV B,#10 DIV AB MOV R1,A DEC R1 MOV A,B MOV R1,A DEC R1 MOV A,#10 MOV R1,A DEC R1 MOV A,SECOND ;送秒 MOV B,#10 DIV AB MOV R1,A DEC R1 MOV A,B MOV R1,A DEC R1 RET ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;程序名称:显示程序 ;功能描述;在LED上显示为12-12-12显示模式. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; INT_T0: MOV TH0,#0F8H ;重赋值 MOV TL0,#030H MOV A,#DISPBUF ;段偏移存储 ADD A,DISPBIT ;位偏移量 MOV R0,A ;段偏移存储 MOV A,R0 ;段偏移量 MOV DPTR,#TABLE ;指向字形表 MOVC A,A+DPTR ;取字形 MOV P0,#0 ;防闪烁 MOV P0,A ; 字形选P1口显示 MOV A,DISPBIT ;位移偏量 MOV DPTR,#TAB ;指向位选 MOVC A,A+DPTR ;取位选通 MOV P2,A ;位送P3口选通 INC DISPBIT ;位偏移加1 MOV A,DISPBIT ;位偏移送A CJNE A,#08H,KNA ;八个数管码扫描完不? MOV DISPBIT,#00H ;描完重新开始 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;程序名称:1秒计时程序 ;功能描述; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; KNA: INC T2SCNTA MOV A,T2SCNTA CJNE A,#100,DONE MOV T2SCNTA,#00H INC T2SCNTB MOV A,T2SCNTB CJNE A,#05H,DONE SETB FLAG1S MOV T2SCNTB,#00H INC SECOND ;秒加1 MOV A,SECOND CJNE A,#50,BB ;50S到. MOV A,MINITE CJNE A,#59,BB ;59分 SETB FLAG ;打开正点响标志. BB: ...
延伸阅读:
学单片机学什么语言给你个建议,所有的学习都是为了应用 你已对PROTEL99\C语言较有了解了,可以这么说,你已经具备单片机的学习基础了,我不知道你学的是那种类型的单片机,51,DSP,还是ARM,其实原理都差不...
疯狂猜成语里面有一个时钟里面还有几月份成语谜底为:度日如年 度日如年 [ dù rì rú nián ] 【解释】:过一天象过一年那样长。形容日子很不好过。 【出自】:宋·柳永《戚氏》:“孤馆度日如年。” 【示例】:感承众头...
认识时钟教案需要幼儿注意地事项有哪些教学目标: 1、了解时钟的表面结构及时针、分针的运转、规律,学会看整点、半点。 2 、发展孩子的逻辑思维能力。 3、教育孩子珍惜时间,养成按时作息的好习惯。 教学准备: 1、实物...
幼儿园美工教案时钟滴答滴活动设计背景 幼儿园大班的小朋友马上要上小学了,为培养良好的作息习惯做准备。 活动目标 1、通过自己动手操作,更好的认识时钟。 2、学习认识整点和半点。 教学重点、难点 能...
单片机控制的跑马灯课程设计汇编版和c#include <reg52.h> #define int8 unsigned char #define int16 unsigned int #define Ledout P0 int8 Led[]={0xff,0x7e,0x3c,0x18,0x00}; int8 i; /*延时程序微妙*/ void...
基于单片机的数字时钟怎么做#include#define uchar unsigned char #define uint unsigned int sbit dula=P2^6; sbit wela=P2^7; sbit rs=P3^5; sbit lcden=P3^4; sbit s1=P3^0; sbit s2=P3^1; sbit s3...
基于单片机的时钟计数器设计89C51 LED电子钟 参考链接: *APPLICATION NOTE E6000 ICEXPLORER *************** * Title: FOR colk_time * * Version: 00 * * Last Updated: * * MCU: AT89C91 * * FOR: W...
利用单片机DS1302芯片编制数字时钟程序:能计算2100之前的秒我也是用ds1302芯片来做电子钟的#include#include#define uchar unsigned char#define uint unsigned intsbit sda=P1^0;sbit clk=P1^1;sbit rst=P1^2;sbit rs=P2^0;sbit rw...
求AT89S5152单片机基于DS1302的数码管实时数字时钟c程序可调#include //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义#include sbit SCK=P3^6;//时钟sbit SDA=P3^4;//数据sbit RST = P3^5;// DS1302复位sbit LS138A=P2^...