51单片机C语言程序100例分析(1)IO+C语言+头文件

51单片机C语言程序100例分析(1)IO+C语言+头文件

\\\插播一条:文章末尾有惊喜哟~///

 P1=0xfe;//P1=11111110B,即P1.0输出低电平}

分析:通过这短短的几行代码就能够让51单片机的P1.0引脚输出低电平,首先#include<>>这句代码是包含51单片机寄存器定义的头文件,51单片机是寄存器和IO统一编址的,所以你往相应的寄存器中写1就会在对应引脚输出高电平,写0就会输出低电平,我们知道51共32个引脚作为IO端使用,所以只须要四个寄存器(一个寄存器是8位,这取决于数据总线),翻开头文件就会发现P0和0X80这个地址绑定了,所以编程的实质就是往内存中写值,又由于单片机是数字器件,所以只能读懂二进制,为什么是二进制?由于0对应低电平0V,1对应高电平5V足够了,没有第三种明确的状态。注意加粗的地方,要细品。单片机是控制器件而不是驱动器件,由于输出电流很小,不足以驱动某些须要大电流的外设。

//实例2:用单片机控制一个灯闪烁:认识单片机的工作频次

#include //包含单片机寄存器的头文件

/****************************************

函数功能:延时一段时长

*****************************************/

void delay(void) //两个void意思分别为没需返回值,没有参数传递

{

unsigned int i; //定义没符号整数,最大取值范围65535

for(i=0;i/做20000次空循环

; //什么也不做,等待一个机器周期

}

/*******************************************************

函数功能:主函数(C语言规定必需有也只能有1个主函数)

********************************************************/

void main(void)

{

while(1) //没限循环

{

P1=0xfe; //P1=11111110B,P1.0输出低电平

delay(); //延时一段时长

P1=0xff; //P1=11111111B,P1.0输出高电平

delay(); //延时一段时长

}

}

分析:写程序是自下而上的过程,而读程序是自上而下的过程,所以编写程序和读程序的流程是不同的。从零初始编写程序一般要先构思,再走一步看一步,当然我更喜爱修改代码以完成目标,所以提前准备典型实例能够大大提高编程效率。对于读代码是很常见的,准备典型案例的时候就要读懂

你可能感兴趣的:(硬件工程师,自动化,智能,单片机,51单片机,嵌入式硬件)