历史上的今天
今天是:2024年10月14日(星期一)
2019年10月14日 | 51单片机容易忽略的东西
2019-10-14 来源:eefocus
P0口将作为总线的低8位地址线和8位数据线使用
P2口将作为总线的高8位地址线使用
如果十六进制数以字母ABCDEF中的某一个开头,必须在前面加一个0.譬如,MOV P1, #0BFH
ORG 00H 表示的是伪指令,作用帮助汇编器汇编指令,并不是单片机指令的一部分,因此伪指令不占用存储器空间。这段代码的含义是从程序存储器的00H开始执行程序。
一段小程序,循环闪烁小灯
ORG 00H
START:
MOV P1, #00H
CALL DELAY
MOV P1, #0FFH
CALL DELAY
JMP START
DELAY: MOV R3, #50
D1: MOV R4, #20
D2: MOV R5, #248
DJNZ R5, $
DJNZ R4, D2
DJNZ R3, D1
RET ;返回主程序
END ;汇编程序结束
按键开关控制P1.0上的发光二极管闪烁5次
ORG 00H
START:
MOV R0, #05 ;R0作为计数器
LOOP:
MOV P1, #00H
CALL DELAY
MOV P1, #0FFH
CALL DELAY
DJNZ R0, LOOP ;R0减一,不等于0就跳到loop处
JB P2.0, $ ;如果P2.0为高电平则循环执行本行
JMP START
DELAY: MOV R3, #50
D1: MOV R4, #20
D2: MOV R5, #248
DJNZ R5, $ ;R5的值减1,不等于0则循环执行本行
DJNZ R4, D2
DJNZ R3, D1
RET ;返回主程序
END ;汇编程序结束
中断方式
ORG 00H
JMP START
ORG 03H
JMP EXT0
START: ;主程序
MOV IE, #10000001B ;外部中断0使能
MOV IP, #00000001B ;外部中断0中断优先
MOV TCON, #00000001B ;外部中断0为电平触发
SHINE:
MOV P1, #0FEH
JMP SHINE
EXT0:
MOV R2, #5
LOOP:
MOV P0, #0FEH
CALL DELAY
MOV P0, #0FFH
CALL DELAY
DJNZ R2, LOOP ;R2减一,不等于0就跳到loop处
RETI ;中断服务子程序结束标志
DELAY: MOV R3, #20 ;这一段200ms
D1: MOV R4, #20 ;这一段延时10ms
D2: MOV R5, #248
DJNZ R5, $
DJNZ R4, D2
DJNZ R3, D1
RET ;返回主程序
END ;汇编程序结束
PSEN(program store enable) - 片外程序存储使能,需要和存储器的输出端端OE相连。
ALE(address latch enable) - 地址锁存使能,当单片机与片外存储器相连时,P0既可以送出数据也可以送出地址,如何区分到底是地址还是数据呢?
ALE为0,表示送出的是数据,当ALE为1表示送出的是地址。(P0送出的低8位地址,配合P2口的高八位地址,片外存储器便可以寻到16位地址)
注意51单片机的P0口是需要加上拉的!
51作为输入,必须先自己置1!
P0输入,P1输出
MOV A, #0FFH
MOV P0, A
LOOP:
MOV A, P0
MOV P1, A
JMP LOOP
片内片外程序存储器统一编址,访问指令使用MOVC,通过PC来指定地址。
外部数据存储器与外部IO端口实行统一编址,并使用相同的选通控制信号,相同的访问指令MOVX,相同的寄存器间接寻址。类似程序存储器的PC访问数据存储器用DPTR。
数据指针DPTR和程序计数器PC
下一篇:51单片机六个常见问题解析
史海拾趣
|
未来数字生活想实现,Windows Embedded缺不了! 近年来,信息家电、数码产品、智能手机及各种掌上型多媒体设备成为IT产业的潮流,除了以上所提到的电子产品以外,其实有更多的嵌入式应用隐身在不为人知的角落,从小到电子手表、电子体温计、翻译机等,到大如冷气机、电冰箱、电视机,甚至是路上 ...… 查看全部问答> |
|
几天前LED3216点阵屏控制板完工(见LED3216点阵屏控制板【图】),一有硬件就迫不及待地尝试写了这个电子钟的程序,很惭愧,移花接木随便搞了下,马上就要回家了,没时间弄了。因为只想搞出现象来,导致程序结构混乱,不具有代表性,升级也困难。以 ...… 查看全部问答> |
|
这是我大学的毕业设计,当时拿到题目时真不知道如何下手,花了我3个月的时间,直到论文写完,才真正理解ucos2的工作原理的,希望对有兴趣进入嵌入式系统学习的战友们有所帮助,同时也希望大家一起探讨学习。… 查看全部问答> |
|
求在深圳嵌入式硬件设计...我们要做i.MX51(Arm Cortex A8)产品.请有相关经验者与我联系,合作形式多样可选.谢谢!!!QQ705489316 要做的产品为:10.1寸的带触摸屏的平板电脑(类似于iPad) … 查看全部问答> |
|
我订制的操作系统上没有网上邻居,上网有些不方便,请问,如何添加自己的网上邻居?除了加入NETWORK USER INTERFACE组件外还需要其他什么组件? 谢谢… 查看全部问答> |




