先放电路图,注意晶振两侧电容的选择,注意LED与电压之间电阻阻值的大小。
程序为:注意一定要包含pic.h文件,一定要先确定_XTAL_FREQ的大小才能使用__delay_ms这个宏,注意LED=~LED的妙用。
/* 功能:令LED按一定时间间隔闪烁 */ #include <pic.h> #define _XTAL_FREQ 4000000UL //振荡器频率 #define LED RC5 //因为led灯连在了RC5引脚上 void main() { TRISC = 0x00;//设置所有的PORTC为输出 PORTC = 0xff;//将PORTC的输出都设置为1 while(1) { LED=~LED;//精彩,一句话实现了灯的闪烁,以前自己写的话要先写亮,然后延时,再写灭,再延时,这里一句话解决了。 __delay_ms(150);//该延时函数定义在pic.h文件中,使用它之前必须先设定_XTAL_FREQ的大小,单位是Hz } }