完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
嗨! 我希望stm8s-discovery使用颜色传感器读取颜色( ADJD-S371-QR999)。 我用这种方式使用i2c协议: I2C_GenerateSTART(ENABLE); 而(I2C_CheckEvent(I2C_EVENT_MASTER_START_SENT)!);&LT; /跨度&GT;&LT; / DIV&GT; //我想从颜色传感器读取数据(0x74) I2C_Send7bitAddress(0x74,I2C_DIRECtiON_RX); 而(I2C_CheckEvent(I2C_EVENT_MASTER_ADDRESS_ACKED)!); I2C_ClearFlag(I2C_FLAG_ADDRESSSENTMATCHED); while(Rx_Idx&lt; RX_BUFFERSIZE) { 而(I2C_CheckEvent(I2C_EVENT_MASTER_BYTE_RECEIVED)!); I2C_Buffer_Rx [Rx_Idx ++] = I2C_ReceiveData(); } // nack ....在这一点上,master必须向传感器发送NACK才能完成i2c协议。 I2C_ClearITPendingBit(I2C_ITPENDINGBIT_ACKNOWLEDGEFAILURE); &LT; /跨度&GT;&LT; / DIV&GT; I2C_GenerateSTOP(ENABLE); 我不知道这是否是发送NACK的正确方法,而且我不确定协议的实现是否正确。 我需要帮助! 谢谢! 以上来自于谷歌翻译 以下为原文 Hi! I want that stm8s-discovery read color using a color sensor ( ADJD-S371-QR999). I use i2c protocol in this way: I2C_GenerateSTART(ENABLE); while(!I2C_CheckEvent(I2C_EVENT_MASTER_START_SENT)); // i want to read data from color sensor (0x74) I2C_Send7bitAddress(0x74, I2C_DIRECTION_RX); while(!I2C_CheckEvent(I2C_EVENT_MASTER_ADDRESS_ACKED)); I2C_ClearFlag(I2C_FLAG_ADDRESSSENTMATCHED); while (Rx_Idx < RX_BUFFERSIZE) { while(!I2C_CheckEvent(I2C_EVENT_MASTER_BYTE_RECEIVED)); I2C_Buffer_Rx[Rx_Idx++] = I2C_ReceiveData(); } //nack.... in this point, master have to send a NACK to sensor in order to finish the i2c protocol. I2C_ClearITPendingBit(I2C_ITPENDINGBIT_ACKNOWLEDGEFAILURE); I2C_GenerateSTOP(ENABLE); I don't Know if this is the correct method to send NACK and moreover i not sure that the implementation of protocol is right. I need help, please! Thank you! |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2566 浏览 1 评论
3190 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1761 浏览 1 评论
3586 浏览 6 评论
5962 浏览 21 评论
920浏览 4评论
1296浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
560浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1284浏览 3评论
1334浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-2 14:42 , Processed in 1.008024 second(s), Total 75, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号