Microsoft Word - 4位7段LED?示 CH.doc

Similar documents
Microsoft Word - 蜂?器??模? CH.doc

2 14 PORTC.1 PORTB.3 PORTA.2/T0 GND PORTB.2 PORTA.0 PORTC.3 PORB.0/OSCO PORTB.1/OSCI PORTC.0 PORTC.2 SH69P21 /SOP PORTA

RESET OSCO OSCI OSC CPU WDTEN RC RESET PRESCALER PORTA (4-BITS) WATCHDOG TIMER Power on PORTB (4-BITS) PORTA [0:3] PORTB [0:3] LPD PORTC (4-BITS) LPDO

DPJJX1.DOC

SH69P481 4K 12 ADC 4 SH6610D 12 ADC 4 OTPROM: 4K X 16 RAM: 287 X : - fosc = 30kHz - 4MHz, VDD = 2.4V - 5.5V - fosc = 4MHz - 10MHz, VDD = 4.

冲宽度调制器(Pulse Width Modulator)

PIC16F F MPLAB 08 16F LED 15 LED

2014教师资格证考试《中学综合素质》仿真模拟题(4)

第5章:汇编语言程序设计

Microsoft Word - 端口 CH.doc

DATASHEET SEARCH SITE ==

幻灯片 1

CA24064B LED LED LED EL EL CCFL EL CCF /

第10章:CCP捕捉/比较/脉宽调制

SH69P848A 2K 一次性编程 10 位 ADC 型 4 位单片机 特性 基于 SH6610D 的 10 位 ADC 型 4 位单片机 OTPROM:2K X 16 位 RAM:253 X 4 位 - 61 个系统控制寄存器 个数据存储器 工作电压 : - f OSC = 30kH

SH69P26/K26 6K 一次性编程 / 掩膜, I/O 型 4 位单片机 特性 基于 SH6610D 的 4 位单片机 OTP ROM: 6K X 16 位 (SH69P26) MASK ROM: 6K X 16 位 (SH69K26) RAM: 389 X 4 位 - 69 个系统控制寄存器

微處理機期末專題

Ps22Pdf

12232A LED LED LED EL EL CCFL EL CCF

的 ( 四 ) 非 法 集 资 有 哪 些 主 要 表 现 形 式? 非 法 集 资 活 动 涉 及 内 容 广 泛, 表 现 形 式 多 样, 主 要 有 以 下 几 种 : 1 不 具 有 房 产 销 售 的 真 实 内 容 或 者 不 以 房 产 销 售 为 主 要 目 的, 以 返 本 销

<4D F736F F D203034CAB5D1E9CBC D20B5C4494F20BDD3BFDACAB5D1E92E646F63>

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

untitled

1. ( )( ) A. B. C. D. 2. ( )( ) A. : B. : C. : D. : 3. ( )( ) A. : B. : C. : D. : 1 D : 2

1.1 ML_ONOFF = 1 Q 3 Q 8 C 0.3V M 2 L 1 ML_ONOFF = 0 Q 3 Q 8 C 1. + R31 VCC R21 10K ML_ONOFF R15 0:off 1:on 1K Green Light VCC=5V L1 Q VDD=12V C

( ) - 2 -

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

电子技术基础 ( 第 版 ) 3. 图解单相桥式整流电路 ( 图 4-1-3) 电路名称电路原理图波形图 整流电路的工作原理 1. 单相半波整流电路 u 1 u u sin t a t 1 u 0 A B VD I A VD R B

<4D F736F F D20B3E6B4B9A4F930365F32A443AC71C5E3A5DCBEB9B1B1A8EE2E646F63>


廚餘來電.doc

7688使用手冊V10.doc


W77E58中文手册

! "! "! # $ # # %#!# $# &# # ()*+, )-.) /# () () 0# 1,2.34, 4*.5)-*36-13)7,) ,9,.).6.(+ :# 13).+;*7 )-,7,<*7,-*=,>,7?#

(譯本)

上 海 农 商 银 行 理 财 产 品 风 险 揭 示 书 理 财 资 金, 则 客 户 面 临 产 品 期 限 延 期 调 整 等 风 险 8. 信 息 传 递 风 险 : 上 海 农 商 银 行 将 按 照 本 说 明 书 有 关 信 息 公 告 的 约 定, 进 行 产 品 信 息 披 露 客

专 业 基 础 课 ( 必 修 ) MA118 数 学 分 析 (C 类 )( 1) EC109 经 济 学 原 理 AC311 会 计 学 MA077 线 性 代 数 (B 类 ) EC104 经 济 与 管 理 精 要 CS1

里 再 说 吓 唬 了 孩 子, 肯 定 方 宁 不 忍 所 以 她 不 死 便 罢, 倘 若 死, 只 有 到 办 公 室 沈 若 鱼 冷 静 得 好 像 在 评 点 某 一 电 视 剧 中 的 女 主 角 你 说 她 是 怎 么 死 的? 先 生 又 感 惊 骇 吃 安 眠 药 沈 若 鱼 成

我眼中的好老师

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

是 這 個 洗 手 台? 莫 嘸 錯, 就 是 洗 碟 子 的 這 個 洗 手 台 我 看 你 們 洗 盤 子 相 好 卡 小 心 師 傅 講 得 口 沫 橫 飛, 吸 引 了 大 家 的 思 緒 擱 莫 完 擱 莫 完, 被 黑 貓 嚇 到 後, 我 放 下 盆 栽, 去 廚 房 拿 出 大 刀,

移入 8X8 bit 串行移位寄存器中的段码数据在 打入锁存器脉冲作用下, 锁存到 8X8 bit 段数据锁存器 数据锁存器中的段码经多路选择器, S1 时送第一位 ( 个位 ) A1,B1,,DP1, 段码显示 ; 依次地,S8 送第 8 位 ( 千万位 )A8,B8,,DP8, 段码显示 段码

江 西 : 失 信 被 执 行 人 曝 光 台 写 入 两 会 报 告 摘 要 1 月 27 日, 江 西 省 十 二 届 人 大 五 次 会 议 举 行 第 二 次 全 体 会 议, 江 西 省 高 级 人 民 法 院 院 长 张 忠 厚 向 大 会 作 江 西 省 高 级 人 民 法 院 工 作

形 式 审 查 不 通 过, 将 说 明 原 因 并 予 退 回, 不 予 重 新 修 改 提 交 ( 形 式 审 查 常 见 主 要 问 题 参 考 附 件 3) ( 三 ) 申 请 人 下 载 打 印 网 上 状 态 为 请 交 纸 质 材 料 至 窗 口 受 理 的 申 报 书, 报 送 项

撤 离 你 听 到 了 吗? 它 们 已 经 进 了 墙 里 边 了 那 些 金 属 的 撞 击 声 在 狂 风 之 中 很 难 听 清, 但 断 然 不 会 有 错 围 坐 在 桌 边 的 四 人 靠 得 更 紧 了 些, 并 不 是 因 为 害 怕, 而 是 为 了 取 暖 你 们 觉 得 呢?

Microsoft Word - LMB402CBC-AppNote-V0.1.doc

LSTA126中文操作说明

untitled

重庆渝开发股份有限公司

AT89C2051中文资料.doc

目 录

文档 1

合金投资年报正文.PDF

从 宾 馆 到 又 一 城 是 十 五 分 钟, 从 又 一 城 到 邵 逸 夫 是 十 分 钟, 去 时 一 路 上 坡 很 辛 苦, 回 时 一 路 下 坡 很 轻 松, 很 像 上 小 学 时 的 心 情, 这 是 最 初 几 天 最 深 的 感 受 有 段 时 间 很 少 走 校 内 的 路


粤社保函〔2013〕80号

2 PIC PIC 1 / CPU PIC MCU PIC RC

1 TPIS TPIS 2 2

Microsoft Word - 專題封面.doc

! *!"#$%&'()*+,-./#01 6, 8 6, 8 6, 8 8!"# ( / )!"# ( / )!"# ( / )! ( ) 3SB3!" Ø22mm!"# ( / ) 6, 8 6, 8 6, 8 8!"# ( / )!"# ( / )!"# ( ) 7, 10 7, 9 7, 8

SA-CPCB81TRA-CN (Panduit INdustrial Automation Solutions).indd

2014年大学生村官考试公共基础知识:社会革命和社会改革

朝陽科技大學八十八學年度招考碩士班簡章目錄

untitled

控制器 EtherCAT EtherCAT EtherCAT 接下一个电机驱动模块 (X4) 接下一个电机驱动模块 (X5) X11 IN X4 IN X3 OUT X5 IN X6 OUT X2 X1 X4 IN X3 OUT X5 IN X6 OUT X2 X1 SYS STA DC BUS D

公司研究报告

广东省社会保险基金管理局办公室文件

北京外国语大学法学院2014年研究生同等学历班招生简章

JLX

MCS FCC

1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F B. 1(VCC/GND) SH79F6431 C. VDDIO SH79F6431 P4 P5 P0.6 P0.7 VDDIO VDDIO=5V D. 2 V 1.0

第十号 上市公司关联交易公告

06-07周年報告template.PDF

<4D F736F F D20B6C0AE78B0EDAABAC0B8A740B8D65FA7EBA7BAA54EA4E5BEC7ACE3A873C24FA55AA15E2E646F63>

Microsoft Word - F5.docx

Microsoft Word - 朗诵诵材.doc

<4D F736F F D20C8CBB8A3D2BDD2A9BCAFCDC5B9C9B7DDB9ABCBBECFEACABDC8A8D2E6B1E4B6AFB1A8B8E6CAE9A3A8CEE4BABAB5B1B4FABFC6BCBCB2FAD2B5BCA

《牛虻》(下)

xueshu004.doc

SIGNUM 3SB3

附 件 :2015 年 度 普 通 高 等 学 校 本 科 专 业 备 案 和 审 批 结 果 教 育 部 2016 年 2 月 16 日 抄 送 : 国 家 发 展 改 革 委 财 政 部 国 家 卫 生 计 生 委 国 家 中 医 药 管 理 局 部 内 发 送 : 有 关 部 领 导, 办 公

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>

<4D F736F F D20C7B3CCB8CBDCC1CFB4FCD3EBC9E7BBE1B8A3C0FBA1AAA1AAD6ECC7A7B7AB2E646F63>

Microsoft Word - P3.doc


51 C 51 isp 10 C PCB C C C C KEIL

殖民地風俗管理:以纏足習慣為例

2.5 idlocs PIC idloc idloc 0x1234 ; 0x config idloc HEX errorlevel errorlevel Error (Warning) Message HEX 3-14 errorlevel

项目#! 单片机控制数码管的显示 元件名称 电解电容!!!! 晶振!!!!!! 电阻!!!!!! 组排!!!!!! 共阴极七段数码管 $"!"!! $% & ' ()* 元件库关键字对照 续表 元件规格 27$ 4OSO2 ""#L 26\3F7S!"1ER 6O3&!T) 6O3$72-4 B "

!!"#$ " # " " " " " "$%%& " $%% " "!!

壹、教務處


untitled

Microsoft Word - BL5372_UMAN_V1.1.doc

HD61202 HD HD61203 HD61202, HY HY HD61202 HD61202 HD61203 HD =4096 RAMRAM LCD 2HD HD HD /32--

從 整 合 效 應 出 發, 集 運 整 合 意 義 最 大 1) 集 運 也 是 目 前 我 國 唯 一 沒 有 完 成 整 合 的 海 運 板 塊 ( 油 運 方 面 : 去 年 9 月 招 商 局 集 團 與 中 外 運 長 航 共 同 組 建 了 CHINA VLCC; 散 貨 方 面 :

Microsoft Word - ~ doc

A B B DG V--*N AB P T A AB B P T DG V--*A A P B T DG V--*A L A B DG V--*C AB P T A DG V--*B DG V--*B L T A T B A.

Transcription:

4 位 7 段 LED 显示 在单片机应用系统中经常使用发光二极管来显示, 发光二极管简称 LED (Light Emitting Diode) LED 的价格便宜, 而且配置比较灵活, 与单片机的接口也比较方便 在这里将讲解如何使用中颖的单片机进行 4 位 7 段 LED 显示的方法 1. 7 段 LED 的结构原理 单片机中经常使用 7 段 LED 来显示数字, 也就是用 7 个 LED 构成字型 8, 并另外用一个圆点 LED 来显示小数点, 也就是说一共有 8 个 LED, 构成了 8. 的字型 7 段 LED 分共阴级和共阳极两种, 共阴级 7 段 LED 的原理图和管脚配置图如图 1-1 所示, 共阳级 7 段 LED 的原理图和管脚配置图如图 1-2 所示 实际中, 各个型号的 7 段 LED 的管脚配置可能不会是一样的, 在实际应用中要先测试一下各个管脚的配置, 再进行电路原理图的设计 图 1-1 共阴极 7 段 LED

图 1-2 共阳极 7 段 LED 共阳极 7 段 LED 是指发光二极管的阳极连接在一起为公共端的 7 段 LED, 而共阴极 7 段 LED 是指发光二极管的阴极连接在一起为公共端的 7 段 LED 一个 7 段 LED 由 8 个发光二极管组成, 其中 7 个发光二极管构成字型 8 的各个笔划 (a~g), 另一个发光二极管为小数点 (dp) 当在某一段发光二极管上施加一定的正向电压时, 该段 LED 即被点亮 ; 不加电压则为暗 以共阳极 7 段 LED 为例, 若是要显示 5., 则需要在 VCC 上加上电压, 向 dp g f e a 送出 00010010 的信号, 就能显示出来 为了保护各段 LED 不因电流过大而损坏, 需在各个段上外加限流电阻保护 共阳极 7 段 LED 显示 0~F 的编码表如表 1-1 所示 ( 以 dp 为最高位,a 为最低位 ) 表 1-1 显示字符 dp g f e d c b a 段选码 0 1 1 0 0 0 0 0 0 C0H 1 1 1 1 1 1 0 0 1 F9H 2 1 0 1 0 0 1 0 0 A4H 3 1 0 1 1 0 0 0 0 B0H 4 1 0 0 1 1 0 0 1 99H 5 1 0 0 1 0 0 1 0 92H 6 1 0 0 0 0 0 1 0 82H 7 1 1 1 1 1 0 0 0 F8H 8 1 0 0 0 0 0 0 0 80H 9 1 0 0 1 0 0 0 0 90H

A 1 0 0 0 1 0 0 0 88H B 1 0 0 0 0 0 1 1 83H C 1 1 0 0 0 1 1 0 C6H D 1 0 1 0 0 0 0 1 A1H E 1 0 0 0 0 1 1 0 86H F 1 0 0 0 1 1 1 0 8EH 2. 7 段 LED 动态显示原理 LED 的静态显示虽然有编程容易 管理简单等优点, 但是静态显示所要占的 I/O 口资源很多, 所以在显示的 LED 点较多的情况下, 一般都采用动态显示方式 在多位 7 段 LED 显示中, 为了简化电路, 降低成本, 则将所有位的段选线并联在一起, 刚好由 8 个 I/O 口来控制 8 个段 而公共端 ( 共阳极 / 共阴极 ) 则分别由相应的 I/O 口控制, 以实现各个位的分时选通 原理图如图 1-3 所示 由于所有的段选线并联到同一个 I/O, 由这个 I/O 口来控制, 因此, 若是所有的 4 位 7 段 LED 都选通的话,4 位 7 段 LED 将会显示相同的字符 要使各个位的 7 段 LED 显示不同的字符, 就必须采用动态扫描方法来轮流点亮每一位 7 段 LED, 即在每一瞬间只选通一位 7 段 LED 进行显示单独的字符 在此段点亮时间内, 段选控制 I/O 口输出要显示的相应字符的段选码, 而位选控制 I/O 口则输出位选信号, 向要显示的位送出选通电平 ( 共阴极则送出低电平, 共阳极则送出高电平 ), 使得该位显示相应字符 这样将四位 7 段 LED 轮流去点亮, 使得每位分时显示该位应显示的字符 由于人眼的视觉暂留时间为 0.1 秒, 当每位显示的间隔未超过 33ms 时, 并在显示时保持直到下一位显示, 则由于人眼的视觉暂留效果眼睛看上去就像是 4 位 7 段 LED 都在点亮 设计时, 要注意每位显示的间隔时间, 由于一位 7 段 LED 的熄灭时间不能超过 100ms, 也就是说点亮其它位所用的时间不能超过 100ms, 这样当有 N 位的 7 段 LED 用来显示时, 每一位间隔的时间 t 就必须符合下面的式子 : t 100ms/(N-1) 比如, 现在使用 4 位, 也就是 N=4, 则由式子可以算出 t 33ms, 就是每一位的间隔时间不能超过 33ms 当然时间可以也设得短一些, 比如 5ms 或 1ms 也可以

段 選 位選 图 1-3 7 段 LED 动态显示原理图 3. 7 段 LED 与中颖单片机的接口及应用程序 电路原理图 以 SH69P43 控制芯片为例,4 位 7 段 LED 动态显示的电路原理图如图 4 所示 使用 4MHz 晶振作为主振荡器,PE 口和 PF 口控制 4 位 7 段 LED 的段选,PB 口控制 4 位 7 段 LED 的位选 将 4 个共阳极的 7 段 LED 的段选线并联起来接到 PE 口和 PF 口,dp g f 和 e 段选线接到 PF3~PF0 上,d c b 和 a 段选线接到 PE3~ PE0 上 ; 将 4 个公共端 VCC 分别接到 PB 口上 由于 SH69P43 的 I/O 口电流较小, 所以在位选端要使用三极管来进行 7 段 LED 的推动, 向 7 段 LED 提供足够大的电流来点亮 LED 在中颖单片机中, 有些芯片的 I/O 口是可以提供至少 200mA 的反向电流, 比如 SH69P26 和 SH69P55, SH69P26 有 6 个大电流 I/O 口 (PORTA 和 PORTD1~PORTD0),SH69P55 也是有 6 个大电流 I/O 口 (PORTD 和 PORTE1~PORTE0) 当使用这些有大驱动电流的 I/O 口的芯片来做 7 段 LED 显示时, 当显示电路的位数不超过芯片所带有的大驱动电流 I/O 数时, 比如在 SH69P26 和 SH69P55 中做 6 位以内的 7 段 LED 显示时, 就无需使用三极管, 而可以直接去驱动 LED 了 要注意的是, 由于这些 I/O 口是提供大的反向电流, 也就是说, 电流是流向 I/O 的, 所以只能使用共阴极的 7 段 LED, 而不能使用共阳极的 7 段 LED

图 1-4 4 位 7 段 LED 显示电路原理图 程序 如图 1-4 的电路原理图, 现以程序来举个例子 以 SH69P43 为控制芯片,4M 晶振为主振荡器, 以动态扫描方式驱动 4 位 7 段 LED,1ms 扫描一个位,4 位循环扫描 程序中有个加载数据的地方只是为了测试显示设定的, 实际应用中可在那里更新所要显示的数据 当全速运行程序时, 就能从 4 位 7 段 LED 中看到所要显示的字符 例 [1-1] 4 位 7 段 LED 显示 LIST P=69P43 ROMSIZE=3072 ; 系统寄存器 IE EQU 00H ; 中断使能标志 IRQ EQU 01H ; 中断请求标志 TM0 EQU 02H ;Timer0 模式寄存器 TL0 EQU 04H ;Timer0 装入 / 记数寄存器低四位 TH0 EQU 05H ;Timer0 装入 / 记数寄存器高四位

TBR EQU 0EH ; 查表寄存器 PORTB EQU 09H ;Port B 数据寄存器 PORTE EQU 0CH ;Port E 数据寄存器 PORTF EQU 0DH ;Port F 数据寄存器 INX EQU 0FH ; 间接寻址伪索引寄存器 DPL EQU 10H ;INX 数据指针低四位 DPM EQU 11H ;INX 数据指针中三位 DPH EQU 12H ;INX 数据指针高三位 PBCR EQU 19H ;PortB 输入 / 输出控制寄存器 PECR EQU 1CH ;PortE 输入 / 输出控制寄存器 PFCR EQU 1DH ;PortF 输入 / 输出控制寄存器 ; 用户定义寄存器 AC_BAK EQU 30H ;AC 值备份寄存器 PB_BAK EQU 32H ;PortB 数据备份寄存器 PE_BAK EQU 35H ;PortE 数据备份寄存器 PF_BAK EQU 36H ;PortF 数据备份寄存器 ;-------------------------------------- ; 用于 TIMER 定时 T1MS_CT EQU 37H ; 计数值 =04H, 定时 1ms ;-------------------------------------- F_TIMER EQU 39H ;bit0=1, 1ms 到 FLAG1 EQU 3AH ;bit0=1, 按键未松开 ;-------------------------------------- ; Used for display DISP_R1 EQU 3BH ; 第一位 7 段 LED 显示的字符 DISP_R2 EQU 3CH ; 第二位 7 段 LED 显示的字符 DISP_R3 EQU 3DH ; 第三位 7 段 LED 显示的字符 DISP_R4 EQU 3EH ; 第四位 7 段 LED 显示的字符 DISP_PT EQU 3FH ; 位选指针 ; 程序 ORG 0000H RESET RTNI TIMER0_ISP ;TIMER0 中断程序入口地址

RTNI RTNI ;********************************************* ; TIMER0 中断服务程序 ;********************************************* TIMER0_ISP: STA AC_BAK,00H ; 备份 AC 值 ANDIM IRQ,1011B ; 清 TIMER0 中断请求标志 J1MS: SBIM T1MS_CT,01H BNZ TIMER0_ISP_END ; 未到 1ms, 跳转 T1MS_CT,04H ; 重置 1ms 计数器 ORIM F_TIMER,0001B ; 设置 "1ms 到 " 标志 TIMER0_ISP_END: IE,0100B ; 打开 TIMER0 中断 AC_BAK,00H ; 取出 AC 值 RTNI ;******************************************* ; 主程序 ;******************************************* RESET: NOP ;------------------------------------------------ ; 清用户寄存器 ;------------------------------------------------- POWER_RESET: DPL,00H DPM,02H DPH,00H POWER_RESET_1: ADIM ADCM BA3 INX,00H DPL,01H TBR,00H DPM,00H POWER_RESET_2 POWER_RESET_3 POWER_RESET_2: ADIM DPH,01H

POWER_RESET_3: SBI BNZ SBI BNZ DPH,01H POWER_RESET_1 DPM,04H POWER_RESET_1 ;---------------------------------------------- ; 初始化系统寄存器 ;----------------------------------------------- SYSTEM_INITIAL: ;TIMER0 初始化 TM0,07H ; 设置 TIMER0 预分频为 /1 TL0,06H TH0,00H ; 设置中断时间为 250us T1MS_CT,04H ; 定时 1ms ;I/O 口初始化 PORTB,00H PBCR,0FH ; 设置 PortB 作为输出口 PORTE,0FH PECR,0FH ; 设置 PortE 作为输出口 PORTF,0FH PFCR,0FH ; 设置 PortF 作为输出口 ;-------------------------------------- MAIN_PRE: IRQ,00H IE,0100B ; 打开 Timer0 中断 MAIN: ADI F_TIMER,0001B BA0 HALTMODE ; 未到 1ms, 跳转 ANDIM F_TIMER,1110B ; 清 "1ms 到 " 标志 ;------------------------------------------------------------ ; 加载显示数据 ( 用于测试 7 段 LED 显示模块 ) ;----------------------------------------------------------- DISP_R1,03H DISP_R2,07H DISP_R3,09H DISP_R4,0FH ****************************************************************************** * 模块 : 4 位 7 段 LED 显示模块 *

* 输入变量 : DISP_R1,DISP_R2,DISP_R3,DISP_R4 * * 使用变量 : DISP_PT,TBR,PB_BAK,PE_BAK,PF_BAK * * 输出变量 : PORTB,PORTE,PORTF * ***************************** DISPLAY: DISP_1: ADIM DISP_PT,01H ; 指针加一 SBI DISP_PT,01H BAZ DISP_11 ; 显示位 1 数码管, 跳转 SBI DISP_PT,02H BAZ DISP_12 ; 显示位 2 数码管, 跳转 SBI DISP_PT,03H BAZ DISP_13 ; 显示位 3 数码管, 跳转 ;------------------------------------------------------------- ; 显示位 4 数码管 ;------------------------------------------------------------- DISP_14: DISP_PT,00H ; 指针清零 PB_BAK,0001B ; 预设位选码 CALL STA TBR,0FH DISP_R4,00H 07EFH PE_BAK,00H TBR,00H STA PF_BAK,00H ; 由字符查表得预设段选码的值 DISPLAY_END ;--------------------------------------------------------- ; 显示位 3 数码管 ;--------------------------------------------------------- DISP_13: PB_BAK,0010B ; 预设位选码 CALL STA TBR,0FH DISP_R3,00H 07EFH PE_BAK,00H TBR,00H STA PF_BAK,00H ; 由字符查表得预设段选码的值 DISPLAY_END

;---------------------------------------------------------- ; 显示位 2 数码管 ;------------------------------------------------------------ DISP_12: PB_BAK,0100B ; 预设位选码 CALL STA TBR,0FH DISP_R2,00H 07EFH PE_BAK,00H TBR,00H STA PF_BAK,00H ; 由字符查表得预设段选码的值 DISPLAY_END ;------------------------------------------------------------------ ; 显示位 1 数码管 ;------------------------------------------------------------------- DISP_11: PB_BAK,1000B ; 预设位选码 CALL STA TBR,0FH DISP_R1,00H 07EFH PE_BAK,00H TBR,00H STA PF_BAK,00H ; 由字符查表得预设段选码的值 DISPLAY_END DISPLAY_END: PORTB,00H ; 关闭显示 STA PE_BAK,00H PORTE,00H PF_BAK,00H STA PORTF,00H ; 送出预设的段选码到 I/O 口 PB_BAK,00H STA PORTB,00H ; 送出预设的位选码到 I/O 口, 显示该位 ;******************************************* HALTMODE: NOP HALT NOP

NOP NOP MAIN ORG 07EFH T ;------------------------------------------- ; 显示段选码数据表 ( 共阳极 ) ORG 07F0H ;dp g f e, d c b a RTNW 1100B,0000B ;0 RTNW 1111B,1001B ;1 RTNW 1010B,0100B ;2 RTNW 1011B,0000B ;3 RTNW 1001B,1001B ;4 RTNW 1001B,0010B ;5 RTNW 1000B,0010B ;6 RTNW 1111B,1000B ;7 RTNW 1000B,0000B ;8 RTNW 1001B,0000B ;9 RTNW 1000B,1000B ;A RTNW 1000B,0011B ;B RTNW 1100B,0110B ;C RTNW 1010B,0001B ;D RTNW 1000B,0110B ;E RTNW 1000B,1110B ;F END