共7条
1/1 1 跳转至页
请问aduc7026的2个外部中断程序怎么写?

2楼
7026只有一个中断服务程序,这个确实有待提高。
但在中断服务函数中判断是哪个中断,然后执行那个,是可以的啊。
楼主可以看看你的中断服务程序,有没有把中断标志弄错了。或者把你的if结构的两个部分换个顺序试试看
但在中断服务函数中判断是哪个中断,然后执行那个,是可以的啊。
楼主可以看看你的中断服务程序,有没有把中断标志弄错了。或者把你的if结构的两个部分换个顺序试试看

4楼
你这个写法不好,建议换成下面的:
if( (IRQSTA & XIRQ0_BIT) != 0 )
{...................
}
if( (IRQSTA & XIRQ1_BIT) != 0 )
{
.............................
}
现在试试看还是那样子吗?
if( (IRQSTA & XIRQ0_BIT) != 0 )
{...................
}
if( (IRQSTA & XIRQ1_BIT) != 0 )
{
.............................
}
现在试试看还是那样子吗?

6楼
哦,原来如此啊。ADuC7026除了ADC和DAC外,功能稍显弱了,所有中断都使用一个中断向量,中断方式种类也很少。不过很方便上手就是了

7楼
想请教您关于ADCU7026的硬件I2C读写程序的问题,我用7026读加速度计LIS35DE一直不对,卡死在while((I2C1FSTA & 0x30)!=0x00){},这一步,不知道这个硬件I2C到底怎么用,下面是我的写和读的函数
void I2C_write(unsigned char Sads, unsigned char Dads, int d){
I2C1MTX=Dads;
I2C1ADR=Sads;
while((I2C1FSTA & 0x30)!=0x00){}
I2C1MTX=d;
while((I2C1FSTA & 0x30)!=0x00){}
I2C1CCNT=0x80;
}
void I2C_read(unsigned char Sads,unsigned char Dads)
{
I2C1MTX=Dads;
I2C1ADR=Sads;
while ((I2C1FSTA&0xC0)!=0x00){}
delay(4000);
I2C1CNT=count;
I2C1ADR=Sads+1;
if((I2C0MSTA & 0x8) == 0x8)
{
dat= I2C1MRX;
putchar(0xff);
}
}
希望能帮忙看一下,十分感谢
void I2C_write(unsigned char Sads, unsigned char Dads, int d){
I2C1MTX=Dads;
I2C1ADR=Sads;
while((I2C1FSTA & 0x30)!=0x00){}
I2C1MTX=d;
while((I2C1FSTA & 0x30)!=0x00){}
I2C1CCNT=0x80;
}
void I2C_read(unsigned char Sads,unsigned char Dads)
{
I2C1MTX=Dads;
I2C1ADR=Sads;
while ((I2C1FSTA&0xC0)!=0x00){}
delay(4000);
I2C1CNT=count;
I2C1ADR=Sads+1;
if((I2C0MSTA & 0x8) == 0x8)
{
dat= I2C1MRX;
putchar(0xff);
}
}
希望能帮忙看一下,十分感谢

共7条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【Cortex-M】Systick Timer使用被打赏10分 | |
分享汽车防盗系统的组成与分类(一)被打赏5分 | |
VOFA+波形显示+JYD-31蓝牙发送和解析不定长数据被打赏10分 | |
【换取手持数字示波器】-STM32F4PWM控制LED灯管亮度被打赏22分 | |
【换取手持数字示波器】STM32F4驱动RPR-0521RS照度、接近一体型传感器被打赏23分 | |
宏定义和const关键字定义被打赏5分 | |
【分享开发笔记,赚取电动螺丝刀】几个单片机I2S外设的BLCK时钟对比被打赏20分 | |
【功率监测与控制系统DIY活动成果贴】DIY功率计与LabVIEW数据采集被打赏100分 | |
【分享开发笔记,赚取电动螺丝刀】使用ESP32S3调试I2S音频模块MAX98357被打赏22分 | |
【Freertos】任务管理被打赏10分 |