aliangnisno1 发表于 2010-10-25 11:49:27

pic18 中断服务程序怎么写?跪求

pic18 中断服务程序怎么写?跪求,发个例子也行。

headwolf_83 发表于 2010-10-25 12:04:28

MCC18的话编译器安装目录下肯定有。PICC18,某些版本是会有的。

aliangnisno1 发表于 2010-10-25 12:09:53

回复【1楼】headwolf_83
-----------------------------------------------------------------------
能否详示?
我现在不懂的就是函数头怎么写?有什么规范什么的?

aliangnisno1 发表于 2010-10-25 12:14:04

回复【1楼】headwolf_83
-----------------------------------------------------------------------

我看了一些例子,比如说是AD转换中断服务程序:void interrupt adint(void),我也尝试这样写,但是编译显示错误,错误的原因就是之间不能有空格。
希望能得到你的帮助,小弟不胜感激。

longfeixue 发表于 2010-10-25 12:18:00

就是下边这样写法,他有两种有先级方式,中断使能允许位不同

#pragma interrupt Check_isr_type
void Check_isr_type(void)      
{
        if(INTCONbits.TMR0IF)
        {
                timer0_isr();    //具体的中断服务程序
        }

//...

//        else if()
//        {
//                ;
//        }

//...//这里下边还可以继续查看是否有其他类型的中断产生,从而跳向相应的中断执行程序

}
#pragma code My_HiPrio_Int = 0x08       
void My_HiPrio_Int(void)            
{
   _asm GOTO Check_isr_type _endasm
}
#pragma code

longfeixue 发表于 2010-10-25 12:19:46

MCC18下的

aliangnisno1 发表于 2010-10-25 14:24:08

回复【4楼】longfeixue
-----------------------------------------------------------------------

非常感谢你的帮助,能否告诉我你是在哪看到的吗?

headwolf_83 发表于 2010-10-25 14:26:59

MCC18用户手册里面也有,你找一下关键字就可以了。interrupt xxx是PICC18的写法。

aliangnisno1 发表于 2010-10-25 15:12:34

回复【7楼】headwolf_83
-----------------------------------------------------------------------
哦,谢谢您,您能给我您的QQ,有个程序找您看下,不知道您能帮忙么?

longfeixue 发表于 2010-10-25 15:53:46

我是在网上查了一点相关的,最后自己试验出来的。

aliangnisno1 发表于 2010-10-25 16:10:30

回复【9楼】longfeixue
-----------------------------------------------------------------------

哦,谢谢你,我刚才写了一个中断服务子程序,编译成功,但是烧进去后,功能还是实现不了,你能帮我看下吗?谢谢

longfeixue 发表于 2010-10-25 16:13:11

不知道你是啥问题,用的那个单片机?

aliangnisno1 发表于 2010-10-26 09:39:02

回复【11楼】longfeixue
-----------------------------------------------------------------------

谢谢您,用的PIC18F23K20,现在弄明白了,还是感谢你的。

lions 发表于 2011-3-8 21:00:46

betbet 发表于 2011-3-12 08:56:56

不要一有事就跪求好不,完全丧失了我中华儿女的颜面!哥完全是冲着标题进来的。

surf_131 发表于 2011-3-17 21:48:50

MPLAB C18 C 编译器用户指南

上述PDF格式文件有实例。可用的中断矢量有2个,一个是interruptlow,一个是interrupthigh......具体的文件里面有一些介绍。

millwood0 发表于 2011-3-17 22:12:40

"跪求"

another girly man.

richyhuang 发表于 2013-8-21 19:09:28

mark一个,今天我也用到了,在《MPLAB®
C18 C 编译器用户指南》里面确实讲了。

kwen 发表于 2014-12-31 21:33:07

我也是初学者,还在折腾中。学习学习
页: [1]
查看完整版本: pic18 中断服务程序怎么写?跪求