能不能具体教一下应该怎样写?下面一道是道AD中断简单的例子<br /><br /><br />#include <hidef.h><br />#include <mc9s12dg128.h><br /><br />interrupt void AD0(void)<br />{<br /> PORTB = ~PORTB; //进入中断后取反PORTB各位,实现闪灯。<br />}<br /><br />void Port_Init(void)<br />{<br /> PORTB = 0xF0; //程序运行到这里都是正常的<br /> DDRB = 0xFF; <br />}<br /><br />void AD(void)<br />{ <br /> //中断使能<br /> ATD0CTL2=0xC2;<br /><br /> //转换通道数为1<br /> ATD0CTL3=0x20;<br /><br /> //8位精度,2MHz时钟<br /> ATD0CTL4=0x83; <br /><br /> //右对齐,连续转换模式<br /> ATD0CTL5=0xA6;<br /><br /> //禁止数字输入缓冲<br /> ATD0DIEN = 0x00; <br />}<br /><br /><br />void main() <br />{<br /> Port_Init();<br /> AD();<br /> EnableInterrupts;//开总中断,但打开后就不能动了 <br /> for(;;);<br />} <br />
|