在 51 单片机系统中使用 8155(2)
来源:互联网 发布:windows ad域管理软件 编辑:程序博客网 时间:2024/05/21 11:12
以前写过一个使用 8155 的文章,可见:
http://hi.baidu.com/do_sermon/item/59a91304a43caf046c90489a
现在又有这样一个题目:
http://zhidao.baidu.com/question/1883284845551915188.html
http://hi.baidu.com/kbkgpitkhtbbksq/item/f71dbf3bd7ae66192e20c438
实验箱是8031单片机,连接了一个8155。
8155的A口字形输出,B口字位输出,
8155 IO/M 连接 8031 P2.0,
8155CE 连 P2.7连8155CE。
呵呵,这个电路,和做而论道前面写的文章,电路是相同的。
为此题目,做而论道编写的程序如下:
;=====================================================
ORG 0000H
JMP START
ORG 000BH
JMP T0_INT
;---------------------------
START:
MOV DPTR, #0100H
MOV A, #03H
MOVX @DPTR, A
MOV TMOD, #01H
MOV TH0, #9EH
MOV TL0, #58H
SETB TR0
MOV IE, #82H
MOV SP, #60H
MOV R3, #20
CLR A
MOV R4, A
MOV R5, A
MOV R6, A
;---------------------------
HERE:
MOV R0, #06H
MOV R1, #127
MOV R2, #3
LOP:MOV A, @R0
MOV B, #10
DIV AB
CALL DISP_ONE
MOV A, B
CALL DISP_ONE
DEC R0
DJNZ R2, LOP
LJMP HERE
;---------------------------
DISP_ONE:
MOV DPTR, #DISTAB
MOVC A, @A + DPTR
MOV DPTR, #0101H
MOVX @DPTR, A
INC DPTR
MOV A, R1
MOVX @DPTR, A
RR A
MOV R1, A
DJNZ R7, $
DJNZ R7, $
MOV A, #255
MOVX @DPTR, A
RET
DISTAB:
DB 0FCH, 60H,0DAH,0F2H, 66H,0B6H,0BEH,0E0H,0FEH,0F6H
;---------------------------
T0_INT:
MOV TH0, #9EH
MOV TL0, #58H
DJNZ R3, T0_EXIT
MOV R3, #5; 40
INC R4
CJNE R4, #60, T0_EXIT
MOV R4, #0
INC R5
CJNE R5, #60, T0_EXIT
MOV R5, #0
INC R6
CJNE R6, #24, T0_EXIT
MOV R6, #0
T0_EXIT:
RETI
END
;=====================================================
利用 PROTEUS 仿真,截图如下:
插图不显示,可点击图片链接:
http://xiangce.baidu.com/picture/detail/20e8f7cc6edd8f3dd23a375d8368e8d928abf05e
也可以点击前面给出的题目链接,去看图。
仿真是成功了。但是,在实验箱中来做,可不一定就能成功。
因为实验箱中数码管的驱动电路,可能要复杂一些。
提问者在题目中,对硬件电路,也没有仔细的描述,也就只能这样了。
- 在 51 单片机系统中使用 8155
- 在 51 单片机系统中使用 8155(2)
- USB接口芯片SL811HS在51单片机系统中应用
- 51单片机在Keil中使用printf进行串口输出
- 在PIC18单片机中使用BootLoader
- 在单片机系统中如何精确显示浮点小数
- 【单片机】51单片机最小系统
- 在8位单片机中使用Google Protobuf
- 在stm32 单片机程序中使用printf()进行串口调试
- SPI总线在51系列单片机系统中的实现
- 51单片机最小系统
- 51单片机中断系统
- 51单片机最小系统
- 51单片机系统基础
- 在系统中使用缓存
- LUA在单片机中移植
- 51单片机最小系统使用stm32开发板下载程序
- 单片机系统中PS/2键盘驱动程序的设计
- 80x86 汇编语言:实现两个字符串内容交换
- 京东电商API
- C语言:500 以内最大 10 个素数并求和
- 51单片机基于 Proteus 制作 10 以内加减的计算器
- 51单片机 汇编语言电子琴
- 在 51 单片机系统中使用 8155(2)
- 【Java并发编程】深入分析volatile(四)
- 80x86 汇编语言:组合 BCD 码的乘法
- 80x86 汇编语言编程:要求显示完整的算式
- 80x86汇编语言编程:用光标键控制三角形的移动
- 字符串转拼音
- 80x86汇编语言编程:用光标键控制字符串的移动
- windows脚本命令执行adb shell之后的命令
- 80x86汇编语言编程:在九九乘法表中高亮显示结果