完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
本帖最后由 一只耳朵怪 于 2018-6-12 11:29 编辑
F28069 SCI初始化代码如下: EALLOW; GpioCtrlRegs.GPAPUD.bit.GPIO28 = 0; // Enable pull-up for GPIO28 (SCIRXDA) GpioCtrlRegs.GPAPUD.bit.GPIO29 = 0; // Enable pull-up for GPIO29 (SCITXDA) GpioCtrlRegs.GPAQSEL2.bit.GPIO28 = 3; // Asynch input GPIO28 (SCIRXDA) GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 1; // Configure GPIO28 for SCIRXDA operation GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 1; // Configure GPIO29 for SCITXDA operation GpioCtrlRegs.GPAPUD.bit.GPIO23 = 0; // Enable pull-up for GPIO23 (SCIRXDB) GpioCtrlRegs.GPBPUD.bit.GPIO58 = 0; // Enable pull-up for GPIO58 (SCITXDB) GpioCtrlRegs.GPAQSEL2.bit.GPIO23 = 3; // Asynch input GPIO23 (SCIRXDB) GpioCtrlRegs.GPAMUX2.bit.GPIO23 = 3; // Configure GPIO23 for SCIRXDB operation GpioCtrlRegs.GPBMUX2.bit.GPIO58 = 2; // Configure GPIO58 for SCITXDB operation EDIS; SciaRegs.SCICCR.all =0x0007; // 1 stop bit, 8 char bits, SciaRegs.SCICTL1.all =0x0003; // enable TX, RX SciaRegs.SCICTL2.bit.RXBKINTENA =1; SciaRegs.SCIHBAUD = 0x01; SciaRegs.SCILBAUD = 0x03; //baudrate set 9600 SciaRegs.SCICTL1.all =0x0023; // Relinquish SCI from Reset 中断也使能了,可是就是进不了中断? |
|
相关推荐
2个回答
|
|
|
sam,
再仔细检查一下关于中断的设置: EALLOW; // This is needed to write to EALLOW protected registers PieVectTable.SCIRXINTA = &sciaRxIsr; PieVectTable.SCITXINTA = &sciaTxIsr; EDIS; // Enable interrupts required for this example PieCtrlRegs.PIECTRL.bit.ENPIE = 1; // Enable the PIE block PieCtrlRegs.PIEIER9.bit.INTx1=1; // PIE Group 9, INT1 PieCtrlRegs.PIEIER9.bit.INTx2=1; // PIE Group 9, INT2 IER = 0x100; // Enable CPU INT 另外通过仿真界面,查看RXRDY标志位有没有置一。 Eric - ERIC |
|
|
|
|
guigui_7044 发表于 2018-6-11 00:45 Eric, 我的中断设置检查过了,接收中断是一致的,发送我用的是定时发送,但是进不了接收中断,现在我把程序改成用FIFO接收一个字就进入中断仿真就可以了,程序初始化设置如下: SciaRegs.SCICCR.all =0x0007; // 1 stop bit, No loopback // No parity,8 char bits, // async mode, idle-line protocol SciaRegs.SCICTL1.all =0x0003; // enable TX, RX, internal SCICLK, // Disable RX ERR, SLEEP, TXWAKE SciaRegs.SCICTL2.bit.TXINTENA =0; SciaRegs.SCICTL2.bit.RXBKINTENA =1; SciaRegs.SCIHBAUD = 0x01; SciaRegs.SCILBAUD = 0x03; //baudrate set 9600 SciaRegs.SCIFFTX.all=0xC041; SciaRegs.SCIFFRX.all=0x0021; SciaRegs.SCIFFCT.all=0x00; SciaRegs.SCICTL1.all =0x0023; // Relinquish SCI from Reset SciaRegs.SCIFFTX.bit.TXFIFOXRESET=1; SciaRegs.SCIFFRX.bit.RXFIFORESET=1; 中断设置为: EALLOW; PieVectTable.TINT0 = &cpu_timer0_isr; PieVectTable.SCIRXINTA = &sciaRxIsr; EDIS; PieCtrlRegs.PIECTRL.bit.ENPIE = 1; // Enable the PIE block PieCtrlRegs.PIEIER9.bit.INTx1=1; // PIE Group 9, INT3 SCIATINT IER = 0x100; // Enable CPU INT //使能全局中断 EINT; // Enable Global interrupt INTM ERTM; // Enable Global real time interrupt DBGM |
|
|
|
|
只有小组成员才能发言,加入小组>>
584 浏览 0 评论
1641 浏览 0 评论
2080 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1533 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1372 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1782浏览 29评论
2810浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1742浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1654浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1672浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-10 03:43 , Processed in 0.563988 second(s), Total 75, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3131