您的当前位置:首页正文

51单片机程序简单详解

2021-05-06 来源:我们爱旅游
 -

#include //头文件 后面不加; 定义了单片机所有常用到的地址 sbit d1=P1^0; //位定义 定义P1口的0位为d1 后面加; void main() //主函数 后面不加; {

d1=0; //输出P1口0位为低电平 后面加; while(1); //一个完整程序必须得有始有终 程序停止 }

#include //头文件 sbit d1=P1^0; //位定义 unsigned int a; //定义无符号整形的变量,变量名随便写 void main() //主函数 { while(1) //程序须有始有终,首先进入大循环,以防出乱 { a=50000; //给a赋值 d1=0; //给d1低电平 (点亮LED) while(a--); //a自减1 共减完到a所赋的值 达到延时的目的 a=50000; //给a赋值 d1=1; //给d1高电平 (熄灭LED) while(a--); //a自减1 共减完到a所赋的值 达到延时的目的 } }

#include

#define a unsigned int //宏定义 定义a,在工程当中所用的a就代表了unsigned int #define b unsigned char //宏定义 定义b,在工程当中所用的b就代表了unsigned char sbit d1=P1^0; void cnm(); //在主函数之前要声名子函数,加; void main() {

while(1) // while(1)是个死循环,始终都在执行它内部的语句 { d1=0; //输出低电平(点亮LED) cnm(); // 调用子程序,直接写子函数的函数名 作延时用 d1=1; //输出高电平(熄灭LED) cnm();// 调用子程序,直接写子函数的函数名 作延时用 } } 1

-

void cnm() //void代表:无返回值,()空的!代表无参数 cnm代表子函数函数名(函数名可以任意取) 子程序=子函数 { a x,y; //定义两个变量 在一个子函数当中定义的变量称为局部变量 局部变量只在当前的函数当中有效 for(x=100;x>0;x--) //for循环(见资料) 第一个for后面不加大括号的时候,只有下面的第一条认为是它内部的语句 for(y=2000;y>0;y--);//后面所加;代表这条语句是在前一条for语句内部执行的 这种方式为嵌套 }

#include //头文件 #define a unsigned int //宏定义 定义a,在工程当中所用的a就代表了unsigned int #define b unsigned char //宏定义 定义b,在工程当中所用的b就代表了unsigned char sbit d1=P1^0; void cnm(a); //在主函数之前要声名子函数, 在参数当中要写上参数的类型 带多个参数时用,隔开 参数名可写可不写 后面加; void main() {

while(1) // while(1)是个死循环,始终都在执行它内部的语句 { d1=0; //输出低电平(点亮LED) cnm(200); // 调用子程序,直接写子函数的函数名 ()内参数方便修改,作延时用 d1=1; //输出高电平(熄灭LED) cnm(200);// 调用子程序,直接写子函数的函数名 ()内参数方便修改,作延时用 } }

void cnm(a z) //void代表:无返回值,()内带东西!即带参数 cnm代表子函数函数名(函数名可以任意取) 子程序=子函数 { a x,y; //定义两个变量 在一个子函数当中定义的变量称为局部变量 局部变量只在当前的函数当中有效 for(x=100;x>0;x--) //for循环(见资料P88) 第一个for后面不加大括号的时候,只有下面的第一条认为是它内部的语句 for(y=z;y>0;y--);//后面所加;代表这条语句是在前一条for语句内部执行的 这种方式为嵌套 }

2

因篇幅问题不能全部显示,请点此查看更多更全内容