打印

问个很菜问题

[复制链接]
1487|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(;;)
    {;}
}

使用特权

评论回复
5
joy晴天| | 2007-3-17 14:07 | 只看该作者

调用函数不用void的

main()里的三行改成这样
int0chsh(); 
p10=0;  
int0chsh();

使用特权

评论回复
6
huangqi412|  楼主 | 2007-3-17 21:58 | 只看该作者

谢谢拉,

使用特权

评论回复
7
soso| | 2007-3-18 18:47 | 只看该作者

这样啊

使用特权

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

本版积分规则

622

主题

24960

帖子

18

粉丝