完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
我使用的是mcu型号是cyt2b75,关于Cy_SCB_SPI_ClearTxFifo()和Cy_SCB_SPI_Transfer()有问题。
1、Cy_SCB_SPI_ClearTxFifo():我使用它清除SPI TX FIFO中的数据,后面存入的数据跟发送出去的不对应,全为7ffff,下面是它注释,按它描述的清除的发送1代替,但我后面存入的数据它怎么也以1发送啊? sideeffect * The TX FIFO clear operation also clears the shift register, so that * the shifter could be cleared in the middle of a data element transfer, * corrupting it. The data element corruption means that all bits which has * not been transmitted are transmitted as 1s on the bus. 2、Cy_SCB_SPI_Transfer():函数原型为cy_en_scb_spi_status_t Cy_SCB_SPI_Transfer(volatile stc_SCB_t *base, void *txBuf, void *rxBuf, uint32_t size, cy_stc_scb_spi_context_t *context) 我给它最后的参数定义cy_stc_scb_spi_context_t spi_context = {.initKey = CY_SCB_SPI_INIT_KEY};传入NULL或这个成员不等于这个值,MCU会停止运行。但它的返回值一直返回CY_SCB_SPI_TRANSFER_BUSY;还是说这个函数只能主机使用吗,我设置的SPI为从机。 |
|
相关推荐
1个回答
|
|
|
是由于FIFO被清除的位会被置1,而单片机数据还未完全放入FIFO,主机就来读了,导致读取到错误的数据。
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
470 浏览 0 评论
532 浏览 0 评论
660 浏览 0 评论
822 浏览 0 评论
RT-Thread与英飞凌(infineon)合作得板子PSOC 6 板子学习
758 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
17030 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-13 13:53 , Processed in 0.752418 second(s), Total 75, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
4561