完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我的想法是通过FIFO接收中断,来触发发送中断,将从PC接收到得数据,再发送到PC。
不知道为什么总是触发不了SCI的发送中断,也接收到的不到数据。 #include "DSP28x_Project.h" #include "string.h" interrupt void scibTxFifoIsr(void); interrupt void scibRxFifoIsr(void); void scib_fifo_init(void); char rdataB[8]; void main(void) [ Uint16 i; InitSysCtrl(); InitSciGpio(); DINT; InitPieCtrl(); IER = 0x0000; IFR = 0x0000; InitPieVectTable(); EALLOW; PieVectTable.SCIRXINTB = &scibRxFifoIsr; PieVectTable.SCITXINTB = &scibTxFifoIsr; EDIS; scib_fifo_init(); for(i = 0; i<8; i++) [ rdataB =0; ] PieCtrlRegs.PIECTRL.bit.ENPIE = 1; PieCtrlRegs.PIEIER9.bit.INTx3=1; PieCtrlRegs.PIEIER9.bit.INTx4=1; IER = 0x100; EINT; for(;;); ] interrupt void scibTxFifoIsr(void) [ Uint16 i; for(i=0; i< 8; i++) [ ScibRegs.SCITXBUF=rdataB; ] //ScibRegs.SCIFFTX.bit.TXFFINTCLR=1; PieCtrlRegs.PIEACK.all|=0x100; ] 当我将上面的TXFFINTCLR置1的时候,就会不停的发送0,不发送rdataB数组中的内容。下面的接收中断的中断级位设为8,我的想法是PC发送一个hellodsp,触发接收中断,在接收中断服务子程序中通过strncmp函数比对,通过TXFFINTCLR置1,使发送相应中断。然后在发送中断中在发送radaB数组,即在PC串口软件端显示hellodsp。 可不知道为什么总是进步了接收中断,rdataB数组里面也没有值.....求高工解答! interrupt void scibRxFifoIsr(void) [ Uint16 i; for(i=0;i<8;i++) [ //while(ScibRegs.SCIFFRX.bit.RXFFST!=1)[] rdataB=ScibRegs.SCIRXBUF.all; ] if(strncmp(rdataB,"hellodsp",8)==0) [ //ScibRegs.SCIFFTX.bit.TXFIFOXRESET=1; ScibRegs.SCIFFTX.bit.TXFFINTCLR=1; ] //ScibRegs.SCIFFTX.bit.TXFFINTCLR=1; //ScibRegs.SCIFFRX.bit.RXFIFORESET=0; //ScibRegs.SCIFFRX.bit.RXFIFORESET=1; ScibRegs.SCIFFRX.bit.RXFFOVRCLR=1; ScibRegs.SCIFFRX.bit.RXFFINTCLR=1; PieCtrlRegs.PIEACK.all|=0x100; ] void scib_fifo_init() [ ScibRegs.SCICCR.all =0x0007; ScibRegs.SCICTL1.all =0x0003; ScibRegs.SCICTL2.bit.TXINTENA =1; ScibRegs.SCICTL2.bit.RXBKINTENA =1; ScibRegs.SCIHBAUD =0x0001; ScibRegs.SCILBAUD =0x00E7; ScibRegs.SCICCR.bit.LOOPBKENA =0; ScibRegs.SCIFFTX.all=0xC028; ScibRegs.SCIFFRX.all=0x0028; ScibRegs.SCIFFCT.all=0x00; ScibRegs.SCICTL1.all =0x0023; ScibRegs.SCIFFTX.bit.TXFIFOXRESET=1; ScibRegs.SCIFFRX.bit.RXFIFORESET=1; ] |
|
相关推荐
2 个讨论
|
|
只有小组成员才能发言,加入小组>>
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
566 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1015 浏览 1 评论
651 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
492 浏览 1 评论
1012 浏览 0 评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
115浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
89浏览 14评论
在使用3254进行录音的时候出现一个奇怪的现象,右声道有吱吱声,请教一下,是否是什么寄存器设置存在问题?
104浏览 13评论
TLV320芯片内部自带数字滤波功能,请问linein进来的模拟信号是否是先经过ADC的超采样?
97浏览 12评论
TPA6304-Q1: TPA6304 两片公用一组I2C的话,其中一片配置不成功怎么办
124浏览 10评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-3 07:15 , Processed in 0.862092 second(s), Total 53, Slave 44 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号