伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx

上传人:b****2 文档编号:981880 上传时间:2023-04-29 格式:DOCX 页数:18 大小:20.43KB
下载 相关 举报
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第1页
第1页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第2页
第2页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第3页
第3页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第4页
第4页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第5页
第5页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第6页
第6页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第7页
第7页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第8页
第8页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第9页
第9页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第10页
第10页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第11页
第11页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第12页
第12页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第13页
第13页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第14页
第14页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第15页
第15页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第16页
第16页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第17页
第17页 / 共18页
伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx

《伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx(18页珍藏版)》请在冰点文库上搜索。

伟纳电子ME300B单片机开发系统演示程序解析Word文档下载推荐.docx

SEGMENT 

CODE 

DATA_SEG 

DATA 

STACK_SEG 

IDATA

K1 

BIT 

P1.4

K2 

P1.5

RSEG 

DATA_SEG

KEY_S:

DS 

1

KEY_V:

DIS_DIGIT:

SEC:

DIS_INDEX:

HOUR:

MIN:

SEC100:

DIS_BUF:

8

BUF_HOUR_H 

EQU 

DIS_BUF 

小时十位

BUF_HOUR_L 

DIS_BUF+1 

小时个位

BUF_MIN_H 

DIS_BUF+3 

分十位

BUF_MIN_L 

DIS_BUF+4 

分个位

BUF_SEC_H 

DIS_BUF+6 

秒十位

BUF_SEC_L 

DIS_BUF+7 

秒个位

STACK_SEG

STACK:

20 

===============================================================================

CSEG 

AT 

0000H

JMP 

MAIN

0000BH

LJMP 

TIMER0 

0001BH

TIMER1

CODE_SEG

MAIN:

USING 

MOV 

SP, 

#(STACK-1) 

P0,#0FFH

P2,#0FFH

TMOD,#011H 

定时器0, 

1工作模式1, 

16位定时方式

TH0,#0FCH

TL0,#017H

TH1,#0DCH

CLR 

A

TL1,A

HOUR,#12 

MIN,A

SEC,A

SEC100,A

A,HOUR

B,#10

DIV 

AB

DPTR,#DIS_CODE

MOVC 

A,@A+DPTR

BUF_HOUR_H,A 

时十位

A,B

BUF_HOUR_L,A 

时个位

A,MIN

BUF_MIN_H,A 

BUF_MIN_L,A 

A,SEC

BUF_SEC_H,A 

BUF_SEC_L,A 

BUF_HOUR_H+02H,#0BFH

BUF_HOUR_H+05H,#0BFH

DIS_DIGIT,#0FEH

DIS_INDEX,A

IE,#08AH 

使能timer0,1 

中断

SETB 

TR0

TR1

KEY_V,#03H

MAIN_LP:

LCALL 

SCAN_KEY 

键扫描

JZ 

MAIN_LP 

无键返回

R7,#10 

延时10ms

DELAYMS 

延时去抖动

再次扫描

KEY_V,KEY_S 

保存键值

PROC_KEY 

键处理

SJMP 

调回主循环

SCAN_KEY:

扫键扫描子程序

保存按键状态到key_s

返回:

--- 

按键是否按下(BOOL)

C,K1 

读按键K1

ACC.0,C

C,K2 

读按键K2

ACC.1,C

KEY_S,A 

XRL 

A,KEY_V

RET 

PROC_KEY:

键处理子程序

传入参数:

KEY_V 

按键值

返回值:

EA

JNB 

ACC.0,PROC_K1

ACC.1,PROC_K2

END_PROC_KEY

PROC_K1:

按键k1处理

INC_HOUR 

小时加1

PROC_K2:

按键K2处理

INC 

MIN 

分钟加1

A,MIN 

C

SUBB 

A,#59 

JC 

K2_UPDATE_MIN 

如果分钟等于60,则分清0,小时加1

K2_UPDATE_MIN:

更新分显示缓冲区

AB 

10 

更新分十位

A,B 

10

更新分个位 

END_PROC_KEY:

TIMER0:

定时器0中断服程序, 

用于数码管的动态扫描

DIS_INDEX 

显示索引, 

用于标识当前显示的数码管和缓冲区的偏移量

DIS_DIGIT 

位选通值, 

传送到P2口用于选通当前数码管的数值, 

如等于0xfe时,

选通P2.0口数码管

显于缓冲区基地址 

PUSH 

ACC

PSW

AR0

P2,#0FFH 

先关闭所有数码管

A,#DIS_BUF 

获得显示缓冲区基地址

ADD 

A,DIS_INDEX 

获得偏移量

R0,A 

R0 

基地址 

偏移量

A,@R0 

获得显示代码

P0,A 

显示代码传送到P0口

P2,DIS_DIGIT

A,DIS_DIGIT 

位选通值左移, 

下次中断时选通下一位数码管

RL 

DIS_DIGIT,A

DIS_INDEX加1, 

下次中断时显示下一位

ANL 

DIS_INDEX,#0x07 

当DIS_INDEX等于8(0000 

1000)时, 

清0

POP 

RETI 

TIMER1:

定时器1中断服务程序, 

产生时基信号10ms

B

DPH

DPL

SEC100

A,SEC100

A,#100 

是否中断100次(达到1s)

END_TIMER1 

<

1S

SEC100,#00H 

达到1s 

INC_SEC 

秒加1 

END_TIMER1:

INC_SEC:

SEC

UPDATE_SEC

INC_MIN

UPDATE_SEC:

SEC 

A,@A+DPTR 

BUF_SEC_L,A

INC_MIN:

UPDATE_MIN 

UPDATE_MIN:

更新分个位

INC_HOUR:

HOUR 

小时加1 

A,#24

UPDATE_HOUR 

如果小时等于24,则小时清0

HOUR,A 

小时清0 

UPDATE_HOUR:

A,#9

UPDATE_HOUR1 

如果小时小于10,则十位0不显示

BUF_HOUR_H,A

UPDATE_HOUR2

UPDATE_HOUR1:

BUF_HOUR_H,#0FFH

UPDATE_HOUR2:

BUF_HOUR_L,A

DELAYMS:

延时子程序

传入参数:

R7 

延时值(MS) 

返回值:

A,R7

END_DLYMS 

DLY_LP1:

R6,#185

DLY_LP2:

NOP

DJNZ 

R6,DLY_LP2

R7,DLY_LP1

END_DLYMS:

END 

OF 

DIS_CODE:

DB 

0C0H

0F9H

0A4H

0B0H

099H

092H

082H

0F8H

080H

090H

0FFH

END

=========================

源程序(C语言)

/*******************************************************************************

wl010.C 

简易电子时钟,LED数码管显示 

上电时初始化显示:

12-00-00 

**** 

****** 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2