① 51单片机C程序
sfr P0M1 = 0X93; //这些是预定义寄存器的地址的
sfr P0M0 = 0X94; // 在编译过程中会把 POM1之类的东西变成这些地址
sfr P1M1 = 0X91; //mcu在运行中也是对这些地址操作的
sfr P1M0 = 0X92;
sfr P2M1 = 0X95;
sfr P2M0 = 0X96;
uchar CONT_1; //定义一个常量 作为计数器 使用,类型无符号整形数
P0M1 = 0; //将io口设置为推挽输出
P1M1 = 0; // 下面这些事定义了这些寄存器的初始值
P2M1 = 0; //以免第一次使用这些寄存器时出错
P0M0 = 0XFF;
P1M0 = 0XFF;
P2M0 = 0XFF;
② 51单片机程序设计
不是看得很懂,希望能说得清楚点。
可以直接发到邮箱:[email protected]
③ 求51单片机程序
//利用单片机软件延时,使P0口外接的8个发光二极管以1位1s的速度,轮流发光。
#include<reg52.h>
#include<intrins.h>
#define ucha unsigned char
#define uint unsigned int
//----------------------------
ucha a;
//----------------------------
void main()
{
uint i, j;
a = 0xfe;
while(1) {
a = _crol_(a, 1);
P0 = a;
for(i = 250; i > 0; i--) //延时
for(j = 500; j > 0; j--);
}
}
//============================
④ 51单片机c语言程序
答:楼主先搞清C51中定义数据的类型。
char型 8位(-127到128);int型16位-32727到+32728(两个字节)
unsigned char是8位但从0到255,unsignde int 16位从0到65535;
楼主程序中的TH0/TL0是8位uchar型;tmp是16位uint型。
tmp=TL0|(TH0<<8);
这句在执行时先进行类型转换,把TL0/TH0暂时转换成16位uint型数据,(高位补0),再给TH0左移8位,和TL0相“或”,得到的是16位uint数据,赋给tmp.
⑤ 51单片机的程序!
1. 你这逻辑不通嘛
2. LED1一直没灭,第3步有什么意义?
⑥ 51单片机程序编写(劳驾写得详细一点)
#include <reg51.h>
void delay(unsigned int n)
{
while(n--);
}
void main()
{
char i;
//可以编好想要怎么流水的灯位的状态
unsigned char led[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
while(1)
{
for(i=0;i<8;i++)
{
P1=led[i]; //LED接在P1口
delay(10000);
}
for(i=0;i<8;i++)
{
P1=led[8-i];
delay(10000);
}
}
}
⑦ 51单片机的一个简单程序
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV A,P0
ANL A,#1EH
CJNE A,#02H,MAIN1
SETB P1.1
CLR P1.2
CLR P1.8
SJMP MAIN
MAIN1:
CJNE A,#04H,MAIN2
CLR P1.1
SETB P1.2
CLR P1.8
SJMP MAIN
MAIN2:
CJNE A,#1EH,MAIN3
CLR P1.1
CLR P1.2
SETB P1.8
SJMP MAIN
MAIN3:
CLR P1.1
CLR P1.2
CLR P1.8
LJMP MAIN
END
⑧ 51单片机声控灯完整的C语言程序
摘要 #include "inc/hc595.h"