关于stm32f4的中断和OTG的问题
我现在在用STM32F407和ADS1299做一个数据采集系统,STM32F407通过spi口接收ADS1299的数据,然后通过HID USB 发送到电脑上显示并数据处理。现在在系统设计中,采用NIV中断模式,ADS1299每次数据完成后,其/DRDY引脚低电平,然后进入STM32F407的中断,在中断内,通过spi口读取ADS1299的数据,然后通过otg-fs usb模式发出去。现在只模拟otg-fs发送“hello world”进电脑,使用CDC_TRANSMIT_FS 程序,现在发现这个程序在main主程序的while循环里面可以正确使用,电脑能够接到hello world,但是在中断程序void EXTI15_10_IRQHandler(void)里面发送的话,电脑只能收到乱码,请问有大拿知道怎么回事或者遇到这种问题的吗?
中断中发送是不是使用了局部变量保存发送数组,cdc还没有来得及发送就退出中断了。那发送的缓存数据就被破坏了。定义为全局变量保存发送数据试试呢。 creep 发表于 2017-6-16 08:19
中断中发送是不是使用了局部变量保存发送数组,cdc还没有来得及发送就退出中断了。那发送的缓存数据就被破 ...
按照你的回复做了一下,果然如此,多谢了。:handshake:handshake laumung 发表于 2017-6-16 23:36
按照你的回复做了一下,果然如此,多谢了。
你这个整的也太儿戏了! sfd123-302670 发表于 2017-6-17 09:35
你这个整的也太儿戏了!
是啊,问题有点太简单了,一语点醒梦中人。
页:
[1]