基于单片机8051的程序设计问题,求助高手~~·

作者&投稿:雷伏 (若有异议请与网页底部的电邮联系)
8051单片机程序设计求助!在线等。。。。~

anykey:
mov r0,a
cjne r0,#00h,next
ret
next : cjne r0,#40h,next1
mov a,th0
add a,#5
mov th0,a
ret
next1: cjne r0,#80h,next2
mov a,th0
subb a,#5
mov th0,a
ret
main: mov tmod ,#02h
mov ie ,#82h
mov th0, #(256-125)
mov tl0, #(256-125)
setb tr0
loop: lcall anykey
ajmp loop

唉,现在啊都是一群来混积分的家伙,可你知道你们那样是赚不到分的吗?像上面叫老水说的"比较简单的问题.可是程序写好了之后给你,你不会用怎么办?"说这什么话啊,既然你都说了是简单的问题,那你干吗不直接给人家程序啊,你以为你为了不起吗?你以为你那样能赚到分吗?看我的,这一百分我拿定了,只要提问人是有情有义的人.
start:MOV A,#FE (74)(FE)
loop:MOV P1,A (F5)(90)
MOV R1,#10 ;延时
DEL1:MOV R2,#00 (7A)(C8)
DEL2:MOV R3,#126 (7B)(7E)
DEL3:DJNZ R3,DEL3 (DB)(FE)
DJNZ R2,DEL2 (DA)(FA)
DJNZ R1,DEL1 (D9)(F6)
RL A (23)
LJMP LOOP (02)(40)(40)
END

堆和栈的区别
一、 预备知识—程序的内存分配

一个由c/C++编译的程序占用的内存分为以下几个部分

1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。

2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。

3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束后由系统释放。

4、文字常量区 —常量字符串就是放在这里的。 程序结束后由系统释放 。


8051是什么单片机?
8051单片机是PC 机的CPU 是基于冯诺伊曼的体系结构。8051单片机供应商:拍明芯城元器件商城 基本结构 51 单片机最初是由Intel 公司开发设计的,但后来Intel 公司把51 核的设计方案卖给了几家大的电子设计生产商,譬如 SST、Philip、Atmel 等大公司。如是市面上出现了各式各样的但均以51 为内核的单片...

基于8051单片机的智能路灯控制器的软件设计
基于8051单片机的智能路灯控制器的软件设计主要包括以下几个方面:1. 硬件初始化:首先需要对8051单片机的各个外设进行初始化设置,包括IO口、定时器、中断等。同时,还需要对其他硬件设备进行初始化,如光敏电阻、温度传感器等。2. 光敏检测:通过光敏电阻检测周围环境的光照强度,根据设定的阈值判断是否需要...

8051片上可编程系统原理是什么及应
8051片上可编程系统原理及应用8051是一款单片机(Single-ChipMicrocontroller)芯片,具有灵活的编程功能,可以被用来控制各种电子设备。它是在8051芯片内部集成了一个微控制器,包括存储器、处理器、输入\/输出(I\/O)接口和其他外围电路。这样的设计使得8051片上可编程系统成为了一个高效、经济的控制解决方案。

8051单片机有几个中断源?
8051单片机共有5个中断源。分别为2个外部中断:INT0(P3.2)、INT1(P3.3),2片内定时\/计数器溢出中断TF0和TF1、片内串行口中段TI或RI。这些中断源由8051的特殊功能寄存器TCON和SCON控制。8051是一种8位元的单芯片微控制器,属于MCS-51单芯片的一种,由英特尔公司于1981年制造。INTEL公司将MCS5...

8051单片机是几位机,8051为几位单片机
1.8051单片机是8位。2.多少位机一般以数据总线的位数来确定的,8051的数据总线为P0口,8位分别为P0.0-P0.7,有16根地址总线,分别为P0和P2。3.单片机是典型的嵌入式微控制器,由运算器,控制器,存储器,输入输出设备等构成,相当于一个微型的计算机。4.和应用在个人电脑中的通用型微处理器相比...

8051与8052单片机有什么区别?
8051单片机与8052单片机的区别:1)程序存储器(ROM):8051的容量是4KB,8052的容量是8KB;2)数据存储器(RAM):8051的容量是128b,8052的容量是256b;3)可编程定时\/计数器:8051有2个,8052有3个;4)中断源:8051有5个,8052有6个。所有兼容Intel8031指令系统的单片机统称为51单片机。8051单片机是...

已知8051单片机的fosc=12MHz,用T1 定时,试编程由P1.2 和P1.3 引脚分别...
代码如下:第一个代码程序:ORG 0000H LJMP MAIN ORG 001BH JMP T1_INT ORG 0030HMAIN:MOV TMOD, #20HMOV TH1, #6MOV TL1, #6MOV IE, #88HSETB TR1MOV R7, #4SJMP $T1_INT:CPL P1.3DJNZ R7, T1_ENDCPL P1.2MOV R7, #4T1_END:RETI END 第二个500us程序:include <reg51.h>...

8051的四个端口是什么?2个中断引脚是什么?
一般作为外部扩展时的高8位地址总线使用.(4)P3口为8位准双向I\/O口,内部具有上拉电阻,它是双功能复用口,每个引脚可驱动4个TTL负载.作为通用I\/O口时,功能与P1口相同,常用第二功能.2个中断引脚是什么?8051单片机通过引脚RXD(P3.0,串行数据接收端)和引脚TXD(P3.1,串行数据发送端)与外界通讯。

8051单片机的P0-P3口的结构有何不同
P2口在访问外部存储时和P0作地址总线,P2为高8位,P0低8位。P3口除作I\/O口外各个引脚还有第二功能,串口、中断、技术输入等,具体功能的使用看数据手册。简介 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比...

于8051单片机的堆栈,回答: (1) 、如何建立堆栈?
将特殊寄存器SP赋值,这个值(表示的DATA地址)要在你规划的所有用户变量之后,这样就部署好可用堆栈了。

贵溪市17116091618: C8051单片机编程问题 -
杭徐加立: 主程序main必须是一个死循环,这样程序才可能一直运行下去#include sbit L1=P2^4; void main() { while(1) L1=0; } //

贵溪市17116091618: 8051单片机课程设计问题
杭徐加立: 按一下建,就以0.1s为单位计时,再按一下就以1s为计时单位,不论是0.1s刷新间隔或者是1s刷新间隔,用8051里的定时器是很好控制的.在中断服务程序中和主程序初始化程序里,根据要求设置好中断时间就可以了. 例如设置一个按键的全局变量,在按键的服务程序里(可查询,可中断),更改全局变量的值 在另外一个定时器中断服务程序里,根据那个全局变量值配置定时器下一次中断的时间长度和刷新LED的显示数据.

贵溪市17116091618: 求一道最简单的关于8051单片机的编程题及答案解析
杭徐加立: 下面是一段子程序: ORG 30H POP DPH POP DPL MOV DPTR,#300H RL A MOV B,A MOVC A,@A+DPTR PUSH A MOV A,B INC A MOVC A,@A+DPTR PUSH A RET ORG 300H DB 10H,80H,30H,80H,50H,80H 已知子程序执行前: A=02H,SP=42H,(41H)=FFH,(42H)=FFH 当子程序执行后: 问:A=( ),SP=( ),(51H)=( ),(52H)=( ),PC=( ). 答案:A=80H , SP=40H , (51H)=50H , (52H)=80H , PC=8050H.

贵溪市17116091618: 用 80C51 单片机汇编语言程序设计 -
杭徐加立: 1.MOV A,45H ANL A,#0FH ORL A,#0FH MOV 45H,A2.MOV DPTR,#2000H MOVX A,@DPTR MOV 20H,A

贵溪市17116091618: 单片机8051设计简易波形发生器,要求能产生正弦波,方波,三角波,通过键盘可改变输出信号的频率和幅度 -
杭徐加立: 基于51单片机的信号发生器-完整电路、程序 http://wenku.baidu.com/view/effec6f2ba0d4a7302763a13.html 免费的.可以产生弦波、方波、三角波、三角波、梯形波及其他任意波形,波形的频率(最大790HZ)和幅度在一定范围内可任意改变.波形和频率的改变通过软件控制,幅度的改变通过硬件实现.这是本人课程设计得到优秀的作品,有完整的电路图,程序.不是光仿真那种.如果你觉得790HZ的频率不够的话,可以用FPGA+AD,频率几十M都没问题,也不是很难.多看看资料,

贵溪市17116091618: 单片机8051怎么编程? -
杭徐加立: 1、下个keil3软件,新建工程之后,新建文件,写文件名的时候,写.asm后缀的就是写汇编语言,写.c后缀的就是写C语言.2、至于怎么编程,单片机编程,重点就是掌握单片机有哪些I/o口,哪些寄存器,哪些特殊寄存器.3、推荐看一下视频《十天学会单片机》,搜一下都有的,对初学者非常有帮助.4、另外补充一点,学单片机,光看书一年都学不会,边看边学,一个月就能入门了,所以最好弄一块板子,在上面跑跑程序.

贵溪市17116091618: 利用80C51单片机的定时器T0设计相应程序 -
杭徐加立: #include<reg51.h> sbit Wave=P1^6; void main() { Wave=0; EA=1;//开总中断 TMOD=0x01;//设置定时器0为工作方式1 TH0=(65536-10000)/256; TL0=(65536-10000)%256; ET0=1;//开定时器0中断 TR0=1;//启动定时器0 } void exter0() interrupt ...

贵溪市17116091618: 设计8位16进制数转10进制程序. 8051单片机编程 -
杭徐加立: 比如十六进制数num:num=num/16*10+num%16原理方法就是把相应位(十进制中个位、十位这样的位)分离出来,分别乘以转化目标进制数的进率之和.num/16为十六进制高位,num%16为十六进制低位,分别乘以十进制进率之和num/16*10+num%16*1

贵溪市17116091618: 单片机80C51程序设计,请大神帮忙! -
杭徐加立: #include"REG52.h"#define TRUE 1#define FALSE 0#define uchar unsigned char#define uint unsigned int#define th0 0x3c#define tl0 0xb0 //50ms at 12MHz Fosc#define LED P0sbit K1=P1^7a686964616f313333376234380;uchar LED_Status...

贵溪市17116091618: 关于单片机80C51编程问题
杭徐加立: #include<reg51.h> void main(void) {P1=0x55;//P1=0xaa; } 有问题可以在这个论坛上问 http://bbs.cepark.com/?fromuid=195450

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网