基于I/O 8LED 温度显示 设计

这个LED显示部分由于74ls164接在了RXD端,也就是要用串行口来发送温度数据到LED。

所以在主程序中要开串行口中断允许,以下是串行口中断子程序,并假设要显示的温度已经存到了某个存储器中。
这里假设温度已经存到了TEM1和TEM0中,其中TEM1里存的是温度的整数位,TEM0里存的是温度的小数位。

这是实验作业。现在忙考研没时间做,这是我在网上找的,不知道是不是。帮忙给我看看啊 谢谢了诶!!
(楼主给出的程序较长、较滥,省略了。――――做而论道注)

悬赏分:130 - 解决时间:2009-11-14 17:10
;-------------------------------------------------
最佳答案:

试试下列程序。

TEM0  equ 30H
    TEM1  equ 31H
;
    ORG   0000H
;                        ;虚拟的主程序部分
    mov   TEM0, #4
    mov   TEM1, #2       ;假设已经测得温度是24度
    LCALL TRANS          ;输出显示
    SJMP $
;
;假设温度(两位数字)已经预先存到了TEM1和TEM0里, 其中TEM0是个位,
;这个LED显示部分由74ls164接在了RXD端,要用串行口来发送温度数据到LED。
;那么,查出它们的七段码, 在串行口输出即可
;
TRANS:
    PUSH ACC           ;保护现场
    PUSH DPL
    PUSH DPH
    MOV  DPTR, #TAB    ;七段码首地址
    MOV  A, TEM1       ;取十位
    MOVC A, @A + DPTR  ;查出笔段码
    MOV  SBUF, A       ;串行输出
    JNB  TI, $         ;TI=0, 就是没有发送完, 原地转移等待
    CLR  TI            ;清标志
    MOV  A, TEM0       ;取个位
    MOVC A, @A + DPTR  ;查出笔段码
    MOV  SBUF, A       ;串行输出
    JNB  TI, $         ;TI=0, 就是没有发送完, 原地转移等待
    CLR  TI            ;清标志
    POP  DPH           ;恢复现场
    POP  DPL
    POP  ACC
    RET       ;两个字节发送完毕,返回主程序;如果是中断程序,应该使用RETI来返回

TAB:
    DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;假设LED为共阴极的,若为共阳极,取反即可
    DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H
;-------------------------------------------------
回答者:  做而论道 - 十级   2009-11-12 21:55
提问者对于答案的评价:太感谢了 无法用语言形容!!
原文网址:http://zhidao.baidu.com/question/125182684.html点击这里
;=======================================================
二次提问:

问题是这样的 下面的是74164的程序 请改成74373的程序

悬赏分:100 - 解决时间:2009-11-17 19:26
;-------------------------------------------------
最佳答案:

通过百度Hi交流,知道了楼主LED显示电路变动的情况,所以对程序进行了修改,请见下面小写的指令。

TRANS:
    PUSH ACC           ;保护现场
    …………
    MOV A, TEM1        ;取十位
    MOVC A, @A + DPTR  ;查出笔段码
setb p2.0        ;选通十位数的373
mov  p0, a       ;输出十位数的段码
clr  p2.0        ;关闭373
    MOV A, TEM0        ;取个位
    MOVC A, @A + DPTR  ;查出笔段码
setb p2.1        ;选通个位数的373
mov  p0, a       ;输出个位数的段码
clr  p2.1        ;关闭373
    POP DPH            ;恢复现场
   …………
    RET          ;两个字节发送完毕,返回主程序

;-------------------------------------------------
回答者:  做而论道 - 十级   2009-11-17 17:43
提问者对于答案的评价:谢谢大哥!
原文网址:http://zhidao.baidu.com/question/125894276.html
;-------------------------------------------------

基于 74LS164 的 LED 温度显示 设计相关推荐

  1. matlab ds18b20 单片机,基于51单片机ds18b20温度检测————设计报告.doc

    基于51单片机ds18b20温度检测----设计报告 课程名称: 微机原理课程设计 题 目: 温度检测课程设计 摘要 随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为 ...

  2. 基于51单片机1602温度显示时钟

    基于51单片机LCD1602温度显示时钟 要在1602上显示时间和温度先要了解1602是如何显示的.详情可以参考我之前的文章基于51单片机1602显示 :时间显示可以用时钟芯片DS1302,但是此次我 ...

  3. 单片机软件常用设计分享(二)驱动设计之LED灯显示设计

    单片机软件常用设计分享(二)驱动设计之LED灯显示设计 前言 <驱动设计–LED灯显示驱动> 一.LED灯工作方式 1.常亮 2.常灭 3.闪烁 4.间歇性闪烁 二.LED灯驱动数据结构 ...

  4. 基于单片机的LED照明系统的设计

    本设计是基于单片机的LED照明系统的设计,主要实现以下功能: 可实现LCD1602显示光照强度,灯的状态: 可实现通过按键控制LED的开关: 可实现通过光照强度控制灯光的亮度: 可实现通过人体红外控制 ...

  5. 基于51单片机LCD1602温度显示(DS18B20测温)

    基于51单片机DS18B20测温 要在1602上显示温度先要了解1602是如何显示的.详情可以参考我之前的文章基于51单片机1602显示 DS18B20是美国DALLAS半导体公司推出的第一片支持&q ...

  6. 基于单片机静电除尘升压电压显示设计-protues仿真

    资料下载地址-1051(百度网盘):点击下载 仿真和程序为电压采集和显示模拟仿真1000v量程. 原理图和pcb电源模块,100kw以内 #include "INCLUDES.h" ...

  7. 【031】基于51单片机的超声波倒车雷达系统(带温度显示补偿)Proteus仿真设计

    一.压缩包资料内容 (1).基于51单片机的超声波倒车雷达系统(带温度显示补偿)系统proteus仿真设计一份: (2).基于51单片机的超声波倒车雷达系统(带温度显示补偿)系统proteus仿真设计 ...

  8. 利用4位led显示本机秒表时间的单片机c语言程序,基于单片机的一个2位的led数码显示作为_秒表_设计.doc...

    基于单片机的一个2位的led数码显示作为_秒表_设计 PAGE 1 PAGE 29 工程技术学院 课程设计 题 目:用单片机AT89C51设计一个2位的LED数码显示作为"秒表" ...

  9. at89s51数码管秒表c语言程序,基于AT89C51单片机的一个2位的LED数码显示作为“秒表”设计【基于单片机系统的00-99s的定时器】...

    基于AT89C51单片机的一个2位的LED数码显示作为"秒表"设计[基于单片机系统的00-99s的定时器] 工程技术学院 课程设计 题 目:用单片机AT89C51设计一个2位的LE ...

最新文章

  1. PingCode 3.0 发布,开启国产研发自动化时代
  2. python 培训-本人的Python自学历程分享
  3. Vue之旅-Vue环境搭建
  4. 设计模式(一)----单例模式
  5. 解决安卓字体偏移:页面整体缩放
  6. mysql 增大数据库链接_怎么增大MYSQL数据库连接数
  7. 分布式系统与消息投递
  8. IIS7 配置 PHP
  9. anaconda安装好tensorflow后,无法在jupyter notebook上使用的解决方法
  10. [Manifest]关于icon
  11. 物联卡使用寿命短常具备的四个特征
  12. 试用cmd markdown
  13. 10 种最流行的 Web 挖掘工具
  14. BZOJ1023 SHOI2008 仙人掌图 仙人掌、单调队列
  15. 小米路由青春版-2.1.26开发版固件
  16. java.lang.NoClassDefFoundError: Could not initialize class com.cyj.util.Jdbc
  17. 计算简史:什么是计算机?《禅与计算机程序设计艺术》 / 陈光剑
  18. java native方法及JNI实例
  19. php怎么自动识别车牌号,你知道车牌识别系统是如何自动识别车牌的吗?
  20. android 多人视频,Android QQ 5.0 正式版:全新界面、精彩动态、多人视频/音频

热门文章

  1. 对DirectSound的介绍和多种功能的源代码
  2. AR9271在linux 2.6.34 mips macarthur上的驱动
  3. 关于AutoCAD反复弹窗Nonvalid Software Detected的解决办法
  4. 阿里linux运维笔试,2020阿里巴巴笔试真题(含答案)
  5. 含泪狂刷Android面试100题,面试时吊打面试官
  6. 蓝牙传输速率详细分析【针对蓝牙4.2】
  7. 艾永亮:马云的“野心之作”无人超市,结果真的如愿以偿吗
  8. 模电摸索日记之《互补功率放大电路的分析及计算》
  9. c语言图文详解 实现ringbuff 源码详解
  10. AndEngine 环境配置出错解决