Ejemplo n.º 1
0
        private void btnRangefinder_Click(object sender, EventArgs e)
        {
            openPort();
            byte[] w = { HCSR04_I2C_REGISTRY_STATUS };
            byte[] r = new byte[3];
            i2c.write(w);
            Thread.Sleep(10);
            i2c.read(r);
            txtRangerfinderRegs.Text = DeviceI2C.ByteArrayToString(r);
            int range = (((int)r[1]) << 8) + (int)r[2];

            txtRangefinderDistance.Text = range.ToString();
        }
Ejemplo n.º 2
0
        private void btnRead_Click(object sender, EventArgs e)
        {
            string txt = "";

            byte[] w = { 0xf3 };
            byte[] r = new byte[3];
            if (i2c.write(w))
            {
                Thread.Sleep(500);
                if (i2c.read(r))
                {
                    int    rawValue = (((int)r[0] << 8) | (int)r[1]) & 0xFFFC;
                    double temp     = (rawValue * 175.72 / 65536 - 46.85);
                    txt = temp.ToString();
                }
                else
                {
                    txt = "read timeout";
                }
            }
            else
            {
                txt = "write failed";
            }
            labelTemp.Text = txt;
        }
Ejemplo n.º 3
0
 private void btnRead_Click(object sender, EventArgs e)
 {
     byte[] r = new byte[int.Parse(txtReadCount.Text)];
     i2c.SlaveAddress = getAddr();
     i2c.read(r);
     txtRead.Text = DeviceI2C.ByteArrayToString(r);
 }