//实验目的:GPIO口的流水灯,熟悉PIC10F200的I/O口的操作
//GP3因为做编程电压VPP和复位脚MCLR,所以不点亮该口的LED
//硬件要求:
//2)断开j5/j6或者j7/j8
//3)拨码开关S13全部置ON
#include<pic.h>
__CONFIG(0x0ffb);
//看门狗关,复位脚做复位,不加密
//----------------------------------
//延时函数
void delay()
{
int i; //定义循环变量
for(i=5000;i>0;i--); //空指令,消耗一个指令周期
}
//----------------------------------
//初始化函数
void init()
{
TRIS=0X00; //设置所有IO口为输出
FOSC4=0; //关闭GP2口的Fosc/4输出功能
OPTION=0X00; //所有IO口做普通I/O口
}
//----------------------------------
//亮灯函数
void led()
{
char i; //设置循环变量
while(1)
{
GPIO=1; //点亮GP0
for(i=3;i>0;i--) //循环3次(GP0-GP2)
{
delay();
delay();
delay(); //调用3次延时函数,控制流水灯的闪烁速度
GPIO=GPIO<<1; //点亮下一位
}
}
}
//-----------------------------------
//主函数
void main()
{
init(); //调用初始化函数
led(); //调用亮灯函数
}
我要用这个程序设一个IO为输入,如何设?
我是刚入门的,好多地方不懂,只有一个一个改着试验.
就是想把这个程序修改成GP0为输出一个LED,当GP1输入高时,可以改变GP0输出的LED闪烁时间.
谢谢啊
我在等这个实验 |