/****************************
Title:PIC16F877A LED闪烁实验 Forum: Author:hnrain Date:2010-12-11 Email:hnrain1004@gmail.com知识重点:
#define Setbit(y,x) y|=(1<<(x)) //setb(p1,2); p12=1; #define Clrbit(y,x) y&=~(1<<(x)) //clrb(p1,2); p12=0; #define Getbit(y,x) (0x01&(y>>(x))) //获取某一位值 *****************************/ #include <pic.h> #include "../head/config.h" //包含自己的配置头文件__CONFIG(HS&WDTDIS&LVPDIS&PWRTEN);//设置熔丝位
//HS振荡,禁止看门狗,低压编程关闭,启动延时定时器void Delay(uint16 dly) //延时函数
{ uint16 i; for(; dly > 0; dly--) { for(i = 0; i < 500; i++); } }void main(void)
{ PORTD = 0xff;//PD口输出全1 TRISD = 0x00;//设置方向寄存器为输出while(1)
{ Clrbit(PORTD,0);//PD0清零,点亮LED Delay(100); Setbit(PORTD,0);//PD0置一,熄灭LED Delay(100); } }