LED护蓝管串口通信的单片机控制器程序

源代码在线查看: 串口通信的单片机程序.txt

软件大小: 3 K
上传用户: Emouse
关键词: LED 串口通信 单片机 控制器
下载地址: 免注册下载 普通下载 VIP

相关代码

				串口通信的单片机程序
				
				beep    bit   p3.7                ;蜂鸣器定义
				
				        org 00h
				      jmp main
				        org 23h                       ;串行中断入口地址
				      jmp com_int                     ;串行中断服务程序
				
				;***********  主程序开始    *******************
				        org 30h
				  main:  mov sp,#30h                ;设置堆栈
				             lcall rest             ;初始化
				             lcall comm             ;串口初始化
				             jmp $                  ;原地等待
				
				;  *************   初始化   *********************
				   rest:      mov p0,#00h             ;禁止数码管显示
				             mov p2,#255
				             clr  beep                ;禁止蜂鸣器
				             mov p1,#255              ;禁止LED显示
				             RET                      ;返回
				
				; **************  串口初始化   *****************
				;设置串行口工作方式1,定时器1作为波特率发生器
				;波特率设置为   2400  ;
				
				comm:         mov tmod,#20h          ;设置定时器T1工作方式2
				              mov tl1,#0f3h             ;定时器计数初值,波特率 2400 
				              mov th1,#0f3h            ;定时器重装值
				              setb ea                       ;允许总的中断
				              setb es                       ;允许串行中断
				              mov pcon,#00h          ;波特率不倍增
				              mov scon,#50h          ;设置串口工作方式1,REN = 1 允许接收
				              setb tr1                       ;定时器开始工作
				              ret                               ;返回
				;***************  串口中断服务程序   ***********
				;  如果接收  0FF  表示上位机需要联机信号,单片机发送 0FFH作为
				;  应答信号,如果接收到 数字 1~ n,表示相应的功能;
				;  这里,如果收到 1 ,则单片机向计算机发送字符  'H';
				;            如果收到 2 ,则单片机向计算机发送字符  'e';
				;            如果收到其他的数据,则发送    'J';
				com_int:  clr es                        ;禁止串行中断
				                clr ri                          ;清除接收标志位
				                mov a,sbuf               ;从缓冲区取出数据
				                mov p1,a
				                mov dptr,#tab
				                cjne a,#0ffh,in_1      ;检查数据
				                mov sbuf,#255          ;收到联机信号,发送联机信号
				                jnb ti,$                      ;等待发送完毕
				                clr ti                          ;清除发送标志
				                setb es                     ;允许串行中断
				                reti                            ;中断返回
				      in_1: cjne a,#1H, in_2         ;如果收到1
				                movc a,@a+dptr
				                mov sbuf,a             ;发送 'h'
				                jnb ti,$                      ;等待发送完毕
				                clr  ti                         ;清除发送中断标志
				                setb es                     ;允许串行中断
				                reti                            ;中断返回
				      in_2: cjne a,#2,in_3         ;接收到  2 
				                movc a,@a+dptr
				                mov sbuf,a             ;发送 'e'
				                jnb ti,$                      ;等待发送完毕
				                clr  ti                         ;清除发送中断
				                setb es                     ;允许串行中断
				                reti                            ;中断返回
				      in_3:     mov a,#03h
				                movc a,@a+dptr
				                mov sbuf,a             ;发送 'j'
				                jnb ti,$                      ;等待发送完毕
				                clr ti                          ;清除发送中断标志
				                setb es                     ;允许串行中断
				                reti                            ;返回
				tab:    db '2','h','e','j'
				  end
				
				
				
				
				5.汇编源程序
				ORG 00H
				START: NOP
				MOV R3,#3
				LOP2: MOV R4,#8
				MOV R2,#0
				LOP1: MOV P1,#0FFH
				MOV DPTR,#TABA
				MOV A,R2
				MOVC A,@A+DPTR
				MOV P3,A
				INC R2
				LCALL DELAY
				DJNZ R4,LOP1
				DJNZ R3,LOP2
				
				MOV R3,#3
				LOP4: MOV R4,#8
				MOV R2,#7
				LOP3: MOV P1,#0FFH
				MOV DPTR,#TABA
				MOV A,R2
				MOVC A,@A+DPTR
				MOV P3,A
				DEC R2
				LCALL DELAY
				DJNZ R4,LOP3
				DJNZ R3,LOP4
				
				MOV R3,#3
				LOP6: MOV R4,#8
				MOV R2,#0
				LOP5: MOV P3,#00H
				MOV DPTR,#TABB
				MOV A,R2
				MOVC A,@A+DPTR
				MOV P1,A
				INC R2
				LCALL DELAY
				DJNZ R4,LOP5
				DJNZ R3,LOP6
				
				MOV R3,#3
				LOP8: MOV R4,#8
				MOV R2,#7
				LOP7: MOV P3,#00H
				MOV DPTR,#TABB
				MOV A,R2
				MOVC A,@A+DPTR
				MOV P1,A
				DEC R2
				LCALL DELAY
				DJNZ R4,LOP7
				DJNZ R3,LOP8
				LJMP START
				
				DELAY: MOV R5,#10
				D2: MOV R6,#20
				D1: MOV R7,#248
				DJNZ R7,$
				DJNZ R6,D1
				DJNZ R5,D2
				RET
				
				TABA: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH
				TABB: DB 01H,02H,04H,08H,10H,20H,40H,80H
				END
				寻求灯具厂合作!各投资3-5万资金,五五分成或面议.
				一
				本人从LED设计工作5年左右,对全国各地市场熟悉。有稳定的客户资源,与众多同行有广泛业务的合作,因个人精力有限,另想能有更大发展。特寻觅一人合作经营。
				
				本项目起点比较低,投资比较少。主要如下: 
				1、配件的进货2万; 
				2、需要租一个3居室或者院子作为加工场所;(2000元/月); 
				3、安装电话,办公桌椅,灯具样品布置,客户接待; 
				4、招聘几个业务员(刚开始自己跑市场); 
				3、招聘2个装配工人(刚开始自己做也可以);
				
				电话:13640477285
				QQ:  562044735			

相关资源