微机原理课程设计报告-8086+8255交通灯单片机解密
单片机源程序如下:
- 单片机解密;SAMPLE.ASM
- 单片机解密.MODEL SMALL
- 单片机解密.8086
- 单片机解密.stack
- 单片机解密.code
- .startup
- mov dx,0206h ; 将控制端口的地址送给 dx
- mov ax,80h ; 将控制字送给 ax
- out dx,ax ; 将控制字送给控制端口
- mov dx,0200h ; 将a 端口的地址送给 dx
- mov ax,0ffh ; 将初始化数据送给 ax
- out dx,ax ; 将端口初始化
- s0: mov ax,0bbh ; 将数据 10111011B送给ax
- out dx,ax ; 将ax 数据送给 dx,让4 个红灯亮
- call delay5 ; 调用延时程序子程序,维持 4-5s
- s1: mov ax,0beh ; 将数据 10111110B送给ax
- out dx,ax ; 将ax 数据送给 dx,使南北绿灯亮,东西红灯亮
- call delay5 ; 调用延时程序子程序,维持 4-5s
- mov cx,6 ; 将
- lp: mov ax,0bfh ; 将数据 10111111B送给ax
- out dx,ax ; 将ax 数据送给 dx,使南北绿灯灭,东西红灯亮
- call delay05 ; 调用延时程序子程序,维持 4-5s
- mov ax,0beh ; 将数据 10111110B送给ax
- out dx,ax ; 将ax 数据给dx,实现南北绿灯亮,东西红灯亮
- ----------------------- Page 10-----------------------
- call delay05 ; 调用延时程序子程序,维持 4-5s
- loop lp ; 循环实现绿灯的亮灭循环闪烁约 6 次
- mov ax,0bdh ; 将数据 10111101B送给ax
- out dx,ax ; 将ax 送给dx,实现南北黄灯亮,东西红灯亮
- call delay3 ; 调用延时程序子程序,维持 3-4s
- mov ax,0ebh ; 将数据 11101011B送给ax
- out dx,ax ; 将ax 数据送给 dx,实现南北红灯亮,东西绿灯亮
- call delay5 ; 调用延时程序子程序,维持 4-5s
- mov cx,6 ; 将
- lp1:mov ax,0fbh ; 将数据 11111011B送给ax
- out dx,ax ; 将ax 数据送给 dx,实现南北红灯亮,东西绿灯灭
- call delay05 ; 调用延时程序子程序,维持 4-5s
- mov ax,0ebh ; 将数据 11101011B送给ax
- out dx,ax ; 将ax 送给dx,实现南北红灯亮,东西绿灯亮
- call delay05 ; 调用延时程序子程序,维持 4-5s
- loop lp1 ; 循环实现绿灯的亮灭循环闪烁约 6 次
- mov ax,0dbh ; 将数据 11011011B送给ax
- out dx,ax ; 将ax 送给dx,实现南北红灯亮,东西黄灯亮
- call delay3 ; 调用延时程序子程序,维持 3-4s
- jmp s0 ; 无条件跳转至程序 S0,实现控制循环
- delay5proc near
- push cx
- mov bx,250
- dy1:mov cx,5882
- dy2:loop dy2

芯片解密