如何解决关于C语言有些不懂,Arduino的问题
我正在使用“ SparkFun Qwiic键盘”,并了解SparkFun提供的库。
在此函数中,无效接收事件( int numberOfBytesReceived )(第212行)
“已收到numberOfBytes” 最终值为多少?
此函数用于另一个函数 void startI2C()(第295行)
但是我仍然不知道这个值是什么?
请帮助我,非常感谢。
https://github.com/sparkfun/Qwiic_Keypad/blob/master/Firmware/Qwiic_KeyPad/Qwiic_KeyPad.ino
解决方法
所以您说:“此功能由另一个功能使用。”,这并非完全正确。 305行中发生了什么:
Wire.onReceive(receiveEvent);
,是receiveEvent由函数指针传递。 该文档正在进一步澄清( https://www.arduino.cc/en/Reference/WireOnReceive ):
Wire.onReceive(handler)
说明:
注册当从属设备接收到来自主设备的传输时要调用的功能。
参数处理程序:
从站接收数据时要调用的函数;这应该使用一个int参数(从主设备读取的字节数),并且不返回任何内容,例如:void myHandler(int numBytes)
返回:无
因此,每当从属设备从主设备获取传输时,就会调用已注册的函数,在这种情况下,称为 receiveEvent ,输入参数是从设备从主设备读取的字节数。 >
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。