org 0000h ajmp main org 0023h ;串行口中断入口地址 ajmp serial ;跳转至中断服务程序 main: clr p1.5 mov p0,#01h ;让8 个led 从右到左依次为亮、灭(注意跳线jmp0 置于12) mov scon,#50h ;单片机工作于方式1,可以接受数据 mov tmod,#20h ;T1 设置为工作方式2 mov tl1,#0f4h ;按照波特率为2400 计算初值 mov th1,#0f4h ;把计数初值送入常数缓冲器 mov pcon,#80h ;smod=1,波特率变成4800 setb tr1 ;启动定时器T1 开始定时 setb ea ;cpu 开放中断 setb es ;开放串行口中断 ajmp $ ;等待中断 serial: clr ea ;cpu 关闭中断 clr ri ;清除串口接受中断标志 mov a,p0 rl a mov p0,a ;p0 口灯光变化 setb ea ;cpu 开放中断 reti ;返回主程序,等待下一次响应中断 end