汇编单片机论坛,汇编 单片机
单片机汇编高手请进
这是宏定义,LED_0 EQU 30H :定义了以个变量LED_0为30h单元
LED_1 EQU 31H :定义了以个变量LED_1为31h单元
LED_2 EQU 32H :定义了以个变量LED_2为32h单元
CLOCK BIT P2.4 :这句的意思是CLOCK代表P2.4口
ST BIT P2.5 :这句的意思是ST代表P2.5口
EOC BIT P2.6 :这句的意思是EOC代表P2.6口
OE BIT P2.7 :这句的意思是OE代表P2.7口
先给你解释后四句的意义,在实际的硬件电路中,我的单片机外接一个设备 例如:LCD液晶显示器,我知道LCD各个管脚的名字和功能,与单片机的IO口连接以后,各个管脚与IO口对应,编写程序时就可以通过控制对应的IO口来控制LCD,但有时会记错,系统小时不明显,大了就很明显了。为了方便记忆,我在编写程序之前先进行一下宏定义,即就想你所提问的这段程序,设备的CLOCK管脚接P2.4,然后定义CLOCK BIT P2.4。
上面的三句其实和下面的差不多,也是为了方便记忆,有比较容易记忆的名字代表一个RAM中的单元。
51单片机 汇编 具体管脚 赋值
嘿嘿 俺来帮你解答吧
1 P0端口(8个引脚可以映射为单片机内部的一个特殊寄存器 即P0)
可以按字节传送 即 MOV P0,#00H ;将P0的8个管脚全部赋值为0
也可以按位操作:
即 CLR P0.1 ;对P0.1清零
SETB P0.1 ;对P0.1置1
进行位操作时,必须使用位操作指令,可以使用位传送指令
如 MOV P0.1, C
MOV C, P0.1
每次只能传送一位数据
2 .p0的信息存在特殊功能寄存器中,P0是由(P0.7、 P0.6 、 P0.5、...... P0.1、P0.0)8位引脚组成的。P0是整体,P0.7、 P0.6 、 P0.5、...... P0.1、P0.0是成员。
呵呵 满意就给加分吧
有什么学习单片机的论坛或者网站推荐?
matlab中文论坛;csdn;东哥单片机学习网;ourdev等等。
简介:
单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit), 常用英文字母的缩写MCU表示单片机。单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。
概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。
由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
单片机汇编问题
;改好了,可以编译。
;但是,编程的思路,可能还有错。
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP PINT0
ORG 0200H
MAIN:
MOV IE, #81H ;CPU开放中断,INT0允许中断
SETB IT0 ;外部中断为边沿触发方式
MOV SP, #30H ;指针入口地址
SETB P3.0
CLR P3.1
MOV P1, #0FFH ;使P1口全部置1
MOV P2, #00H ;P2口清零
CLR P1.2
LP:
JNB P1.0, LA ;监测输入信号,是否有输入信号
LA:
ACALL DELAY ;延时消抖
JNB P1.0, ALARM ;再次监测输入信号,若有输入信号转入报警子程序
AJMP LP
DELAY:
MOV R1, 0AAH
LD2:
MOV R2, 0BBH
LD1:NOP
DJNZ R2, LD1
DJNZ R1, LD2
RET
ALARM:
SETB P1.2 ;开始报警使运行正常绿指示灯熄灭,红灯和声报警启动
CPL P3.0
CPL P3.1
;10S钟定时:
MOV 51H, #14H ;10S循环次数
MOV TMOD, #01H ;定时器T0定时 方式1
MOV TL0, #0B0H ;置50ms定时初值
MOV TH0, #3CH
SETB TR0 ;启动T0
L2:
JBC TF0, L1 ;查询记数溢出
SJMP L2
L1:
MOV TL0, #0B0H
MOV TH0, #3CH
DJNZ 51H, L2 ;未到10S继续循环
SETB P3.0 ;10s到关闭报警
CLR P3.1
CLR P1.2 ;报警结束,正常运行绿指示灯亮
LJMP LP ;循环, 继续工作
; 2. 外部中断INTO服务程序:
PINT0:
CLR EX0 ;外部中断0服务程序开始,屏蔽外部中断
PUSH PSW
PUSH ACC
JNB P3.2, LN ;监测是否有中断输入
LN:
LCALL DELAY ;延时消抖
JNB P3.2, LN1
AJMP LN2 ;无中断输入, 中断返回
LN1:
SETB P3.0
CLR P3.1
CLR P1.2 ;使报警结束,绿指示灯亮
POP ACC
POP PSW
SETB EX0 ;开放外部中断0
LCALL LP ;在中断继续检测是否有输入信号
LN2:
RETI
END