打印

新手求教程序问题

[复制链接]
1380|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
bingren03|  楼主 | 2012-4-12 12:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 bingren03 于 2012-4-12 13:51 编辑

我在学习PIC单片机,型号:PIC16F887
在用开发板实现RB0口短路时,RD口LED灯翻转,但是无法实现其功能,请高手帮忙看下,以下是其程序:
#include<pic.h>
#define uchar unsigned char
#define uint unsigned int
__CONFIG(FOSC_HS&WDTE_OFF&LVP_OFF);
bit flag;
void delay_ms(uint xms)
{int i,j;
for(i=0;i<xms;i++)
   {for(j=0;j<71;j++);
   }
}
void port_init(void)
{
nRBPU=0;
TRISB=0b00000001;
TRISD=0b00000000;
PORTD=0xff;
}
void main(void)
{port_init();
GIE=1;
INTE=1;
INTEDG=1;
PORTD=0b11111111;
flag=1;
while(1);
}
void interrupt ISR(void)
{if(INTF==1)
   {delay_ms(30);
    INTF=0;
    if(flag==1)
    {flag=0;PORTD=0X00;}
    else
    {flag=1;PORTD=0Xff;}
    }
}
沙发
NE5532| | 2012-4-12 12:33 | 只看该作者
先直接写延时取反,写好了再加触发条件,把延时时间弄长一点,起码要100-200mS以上,不然眼睛看不过来。

使用特权

评论回复
板凳
bingren03|  楼主 | 2012-4-12 13:50 | 只看该作者

RE: 新手求教程序问题

2# NE5532

嗯,谢谢楼上的,我只是想学习RB0的中断,才写成这样,你就本身这个程序看可以实现中断吗?

使用特权

评论回复
地板
NE5532| | 2012-4-12 21:36 | 只看该作者
呃,不管你想学习什么,程序还是得按规矩来写,没有帮你看,只给你说方法,因为不能帮你一辈子。

使用特权

评论回复
5
diweo| | 2012-4-15 14:04 | 只看该作者
你RB0一直短路吗?

使用特权

评论回复
6
bingren03|  楼主 | 2012-5-18 09:35 | 只看该作者
谢谢大家,问题我已经找到了!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

6

帖子

1

粉丝