基于 74LS164 的 LED 温度显示 设计
来源:互联网 发布:淘宝店新手如何推广 编辑:程序博客网 时间:2024/05/16 15:40
基于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 温度显示 设计
- 用 BerryClip - 6 LED Board 显示树莓派的温度
- 51单片机的4×4键盘识别与74LS164驱动数码显示
- 74LS164 和 4094 的典型应用
- 基于ARM控制器的渗炭炉温度控制系统的设计
- 基于ZigBee 的多点温度采集系统设计与实现
- 基于PSoC的飞艇智能无线温度采集系统设计
- 基于stm32的无线多点温度采集系统设计
- 基于STM32的半导体制冷片(TEC)温度控制系统设计
- 基于QT:温度串口图像显示
- 基于实验开发板的按键处理与LED显示
- 基于Qt Gui的Led控制显示程序
- 基于Qt Gui的Led控制显示程序
- 基于Qt Gui的Led控制显示程序
- 基于移动数据的LED显示屏设计与仿真
- 基于FPGA的大屏幕全彩LED扫描控制器设计
- 基于89C51的闪烁LED小灯设计
- LED数码管的显示
- 单片机编程题 -3
- xUtils简介
- 使用AT89S51单片机,将LED灯亮4s熄2s
- 利用T0定时器定时 100ms,每当定时时间到就使 P1.7 求反
- 51单片机汇编三字节加法
- 基于 74LS164 的 LED 温度显示 设计
- Java IO和Java NIO在文件拷贝上的性能差异分析
- 基于51单片机的定时顺序控制器
- 脉冲序列的检测
- java中volatile关键字的含义
- 求助:使用8031单片机,编一程序......共5个
- 利用8031的定时/计数器T1对外部事件进行计数
- A/D 转换数据处理程序
- 8个指示灯轮流点亮,每个灯亮1秒,每个灯闪5次/秒