美文网首页
GPIO xy2-100

GPIO xy2-100

作者: 问心_eb81 | 来源:发表于2018-11-07 17:08 被阅读0次

    /***********************

    GPIO模拟XY2—100驱动

    2016-10-10

    ***********************/

    /********************

    协议原理

    1.  SCLC10

    2.DATA_XC11

    3.DATA_YC12

    4.  SYNCC13

    ********************/

    #include"XY2-100.h"

    //发送一个数据段的格式应该是:C2(第一位) C1C0(连续调用两次普通bit) D15~D00(连续调用两次普通byte) P(最后一位)

                                                               

    void XY2_Init(void)

    {

            RCC->APB2ENR |= RCC_XY2;//1 << 4; 时钟使能

            SCL_OUT();

            SYNC_OUT();

            DATA_Y_OUT();

            DATA_X_OUT();

            SYNC = 0;

            XY2_SCL = 0;  //同步和时钟拉低

           

    }

    void XY2_Send_Bit(bool x, bool y)

    {

            DATA_X = x;

            DATA_Y = y; //数据位置数

            XY2_SCL = 1; //clock拉高

            delay_us(10); //延时

            XY2_SCL = 0;

    }

    void XY2_Send_First_Bit(void)

    {

            DATA_X = 0;

            DATA_Y = 0; //数据位置0

            XY2_SCL = 1; //clock拉高

            SYNC = 1;//同步拉高

            delay_us(10); //延时

            XY2_SCL = 0;

    }

    void XY2_Send_Last_Bit(bool px, bool py)

    {

            DATA_X = px;

            DATA_Y = py; //奇偶校验位

            XY2_SCL = 1; //clock拉高

            SYNC = 0;//同步拉低

            delay_us(10); //延时

            XY2_SCL = 0;

    }

    void XY2_Send_byte(u8 tx,u8 ty) //发送一个字符 char类型

    {

            u8 t;

            DATA_X_OUT();

            DATA_Y_OUT();

            XY2_SCL = 0;

            for (t = 0; t < 8; t++) //将一个字符从高位到低位依次转化为脉冲

            {

                    DATA_X = (tx&0x80) >> 7;

                    DATA_Y = (ty&0x80) >> 7;

                    tx <<= 1;

                    ty <<= 1;

                    delay_us(10);

                    XY2_SCL = 1;

                    delay_us(10);

                    XY2_SCL = 0;

            }

    }

    相关文章

      网友评论

          本文标题:GPIO xy2-100

          本文链接:https://www.haomeiwen.com/subject/uwwvxqtx.html