问个很菜问题

[复制链接]
2404|6
 楼主| huangqi412 发表于 2007-3-17 11:01 | 显示全部楼层 |阅读模式
#include"reg51.h"

sbit p10=P1^0 ;

void main()
{
    void int0chsh();  //声明
    //p10=0;  //为什么加了后出错?
    void int0chsh();//外中断初始化    
    for(;;)
    {;}
}

void int0chsh()   //初始化 为什么把中断初始化分开写不行?
{   
    IT0=1 ;
    EA=1 ;
    EX0=1 ;
}


void int0()interrupt 0   //中断
{
    p10=~p10 ;
}
 楼主| huangqi412 发表于 2007-3-17 11:02 | 显示全部楼层

问题

//p10=0;  //为什么加了后出错?
void int0chsh()   //初始化 为什么把中断初始化分开写不行?但是写main里又好。
 楼主| huangqi412 发表于 2007-3-17 12:38 | 显示全部楼层

请高手指点一下。谢谢

dai_weis 发表于 2007-3-17 12:45 | 显示全部楼层

重复定义了

void main()
{
    void int0chsh();  //声明
    //p10=0;  //为什么加了后出错?
    void int0chsh();//外中断初始化 ---------这不是初始化,而是重复定义   
    for(;;)
    {;}
}
joy晴天 发表于 2007-3-17 14:07 | 显示全部楼层

调用函数不用void的

main()里的三行改成这样
int0chsh(); 
p10=0;  
int0chsh();
 楼主| huangqi412 发表于 2007-3-17 21:58 | 显示全部楼层

谢谢拉,

soso 发表于 2007-3-18 18:47 | 显示全部楼层

这样啊

您需要登录后才可以回帖 登录 | 注册

本版积分规则

622

主题

24960

帖子

18

粉丝
快速回复 在线客服 返回列表 返回顶部