BYZ08ÔëÒô´«¸ÐÆ÷Ä£¿éÔëÉù·Ö±´ÒDzÉÓýø¿ÚÔªÆ÷¼þ±ê¶¨Êä³öÐźÅTTLºÍIIC£¬Õë¶Ô¼¯³ÉÉ̵ͳɱ¾Ó¦ÓÃÓû§Éè¼Æ£¬Ö±¶ÁʽÔëÒô¼ì²âÄ£¿é£¬ÊµÑé²Õͳһ±ê¶¨£¬Êý¾ÝÎȶ¨¿É¿¿¡£
ÔëÒô´«¸ÐÆ÷Ä£¿éÔëÉù·Ö±´ÒDZ»¹ã·ºÓ¦ÓÃÓÚ¿ÆÑе¥Î»¡¢±ãЯʽ/ÊÖÌáʽ¼ì²âÒÇ¡¢¹Ì¶¨Ê½ÆøÌå±äËÍÆ÷¡¢´óÆøºÃ²©ÒÇ¡¢Ñï³¾ÔëÒô¼ì²âϵͳ¡¢ÔëÒô¼à²âÆ÷¡¢¼ì²âÒÇ¡¢×Ô¶¯»¯¿ØÖÆÏµÍ³¡¢»·¾³ÔëÒô¼à¿ØÏµÍ³¡¢¹¤Òµ¡¢³§·¿µÈÐèÒª²âÁ¿µÄ³¡Ëù¡£
ÔëÒô´«¸ÐÆ÷Ä£¿éÔëÉù·Ö±´ÒÇI2C ͨѶ
1¡¢×¢ÒâÊÂÏî
ĬÈÏÉ豸µØÖ·Îª 0x20£»ÈôÐèÐÞ¸ÄÇë²Î¿¼´®¿ÚÐÒé˵Ã÷£»
Êý¾Ý¸ñʽ 0x0B 0x00 0x00 ÔëÒô¸ßλ ÔëÒôµÍλ 0x0B……
ÇëÓà IICdata¡¾0¡¿ºÍ IICdata¡¾5¡¿À´±£Ö¤Êý¾Ý׼ȷ£»
2¡¢¶ÁÈ¡Àý³Ì£º
Uchar IICdata¡¾7¡¿£»
void JQ_Read(void)
{
Unsigned char i;
Start(); //·¢ËÍ¿ªÊ¼Ìõ¼þ
IIC_ Write (0x21); //·¢Ë͵ØÖ·+¶Á
if(I2C_Get_Ack()) //µÈ´ý ACK
{
Stop(); //ÎÞ ACK ÔòÍ£Ö¹
return;
}
//½øÈëÊý¾ÝÊÕÈ¡
for(i=0;i<8;i++) //ÊÕÈ¡ 8 λÊý¾Ý
{
Delay_us(2);
IIC_read(&IICdata [i]);
if(i<7) //µ¹Êýһλֹͣ·¢ËÍ ACK£¨×¢ÒâÕâÀïºÜÖØÒª£©
I2C_Send_Ack(); //ÊÕµ½Êý¾Ý·¢ËÍ ACK
}
Stop(); //Í£Ö¹Ìõ¼þ
}
ÔëÒô´«¸ÐÆ÷Ä£¿éÔëÉù·Ö±´ÒÇÖ÷ÒªÌØµã
1¡¢²ÉÓÃÔ×°½ø¿ÚÉùÒô´«¸ÐÆ÷¿ª·¢µÄÖ±¶ÁʽÔëÒô·Ö±´¼ì²âÄ£¿é£»
2¡¢¶àµã±ê¶¨¹¤ÒÕÖÆ×÷¡¢¼ì²â¾«¶È¸ß¡¢ÁéÃô¶È¸ß£»
3¡¢¶ÀÌØµÄ²»Ðå¸Ö̽ͷ¶ÀÁ¢·â×°Éè¼Æ¡¢·½±ãǶÈëÆäËüµÄÉ豸»ò»ú¿Ç£»
4¡¢Ö÷¿Ø°åµç·ºËÐÄÆ÷¼þÍêÈ«ÆÁ±Î¡¢²»½öÃÀ¹Û¸ü¼ÓÇ¿¿¹¸ÉÈÅÄÜÁ¦£»
5¡¢Ô¤Áô¶àÖÖÊä³öTTL/I2C¡¢±ê×¼Modbus RtuͨѶ485½Ó¿Ú¿ÉÑ¡£¬ÊÊÓÃÓÚ¸÷ÖÖÓ¦Óü¯³É¡£
ÈçÐèÁ˽â¸ü¶àÔëÒô´«¸ÐÆ÷Ä£¿éÔëÉù·Ö±´ÒÇ£¬»¶ÓÔÚÏß»òÀ´µç×Éѯ£¡