[Eye-gba irú] Ologbo Food Iṣakoso System

——Lati Apejọ Olùgbéejáde DWIN

Ninu atẹjade yii, a yoo ṣafihan fun ọ ni ọran orisun ṣiṣi ti o bori lati inu Apejọ Olùgbéejáde DWIN: Eto Iṣakoso Ounjẹ ologbo Oloye.Awọn onimọ-ẹrọ lo iboju smart DWIN lati ṣe atẹle iwọn otutu, ọriniinitutu, ati iye ti o ku ti ounjẹ ologbo, ati lati ṣafipamọ awọn igbasilẹ jijẹ ounjẹ ologbo naa.Wọn tun ṣe apẹrẹ ni iyasọtọ ti eto ara kikun inki UI, bakanna bi ipa titẹ inki nigbati o fi ọwọ kan, lati jẹki iwo wiwo ti awọn esi ifọwọkan.

Iṣaaju:

1.UI aworan ohun elo

Iboju smart DWIN pari idagbasoke UI ti o da lori awọn aworan, ohun ati awọn ohun elo miiran nilo lati mura silẹ ni ilosiwaju ni ibamu si akoonu ifihan iboju.

asv (2)

2.Interface idagbasoke

Sọfitiwia DGUS ṣe atunṣe ipa UI nipasẹ agbekọja Layer, dapọ awọn ohun elo ti a pese silẹ sinu aworan pipe ni sọfitiwia DGUS, ati ṣeto ifihan ati awọn iṣẹ ifọwọkan.

asv (1)

3. Ṣe awọn ipa tẹ ati awọn ipa didun ohun

Ipo ifọwọkan ni a gba nipasẹ eto 51, ipa titẹ tẹle iṣipopada ika, ati ipa didun ohun bọtini tun waye.

(1) Wa koodu ipo ifọwọkan ati mu ohun ṣiṣẹ:

ofo TouchDetect()

{

    u16 Va[3] = 0;

    u8 i = 0;

 

    fun (i = 0; i <3; i++)

    {

        Va[i] = Read_Dgus (0x0016 + i);

        ti (Va[0] == 0x5A01)

        {

        }

        miiran

        {

            fọ;

        }

    }

    if(i!= 0) //Tẹ akọkọ lati tẹ

    {

        u16 ṣeré[2] = {0x0001, 0x4000};

        touchAnimationFlag = 1;

        touchAnimationCnt = 0;

        touchPosX = Va [1];

        touchPosY = Va[2];

        write_dgus_vp (0x00A0, ere, 2);

    }

}

 

(2) Awọn koodu fun ifihan ipa ifọwọkan jẹ bi atẹle:

ofo TouchStart()

{

    ti (touchAnimationFlag == 1)

    {

        ti (touchAnimationCnt == 0)

        {

            Kọ_Dgus (0x5011, touchPosX - 100);

            Kọ_Dgus (0x5012, touchPosY - 100);

        }

 

        Kọ_Dgus (0x5000, touchAnimationCnt);

        touchAnimationCnt ++;

 

        ti (touchAnimationCnt == 6)

        {

            touchAnimationFlag = 0;

            Kọ_Dgus (0x5011, 1024);

            Kọ_Dgus (0x5012, 600);

        }

    }

    

}

 

4. Igbesẹ ti o tẹle ni lati ṣeto awọn ipele ti o baamu nipasẹ iboju, ati lẹhinna atagba data si olutọju onjẹ ologbo nipasẹ ESP32 lati mọ iṣẹ ifunni laifọwọyi ti ounjẹ ologbo.Awọn koodu pato jẹ bi atẹle:

// Gba ipo bọtini

ofo gba_key_ipo()

{

    int i = 0;

    // u16 Va = Ka_Dgus (addr);

    u16 Va = Read_Dgus (0x1000);

    ti (Va!= 0x0000)

    {

        //Soju-iwe tatus

        ti (Va == 0x0103) // Gbe nọmba g

        {

            u16 yipada oju-iwe[2] = {0x5A01, 19};

            setNum = placeGramNum;

            Oju-iwe afẹyinti = 1;// Pada si oju-iwe ipo

            Kọ_Dgus (0x4000 + 0, setNum% 10);

            Kọ_Dgus (0x4000 + 2, setNum / 10% 10);

            Kọ_Dgus (0x4000 + 4, setNum / 100% 10);

            Kọ_Dgus (0x4000 + 6, setNum / 1000% 10);

            write_dgus_vp (0x0084, oju-iwe iyipada, 2);

        }

        miiran ti (Va == 0x0102)

        {

            OneSendData3(placeGramNum);//Ibiounjẹ ologbolẹẹkan

        }

        omiiran ti (Va == 0x0101) // Oju-iwe Eto

        {

            u16 yipada oju-iwe[2] = {0x5A01, 3};

            fun (i = 0; i <6; i++)

            {

                ti (i == 0)

                {

                    Write_Dgus (0x3070 + i * 0x10 + 0, currentTime[i]% 10);

                    Write_Dgus (0x3070 + i * 0x10 + 2, lọwọlọwọTime[i] / 10% 10);

                    Write_Dgus (0x3070 + i * 0x10 + 4, currentTime[i] / 100% 10);

                    Write_Dgus (0x3070 + i * 0x10 + 6, lọwọlọwọTime[i] / 1000% 10);

                }

                miiran

                {

                    Write_Dgus (0x3070 + i * 0x10 + 0, currentTime[i]% 10);

                    Write_Dgus (0x3070 + i * 0x10 + 2, lọwọlọwọTime[i] / 10% 10);

                }

            }

            write_dgus_vp (0x0084, oju-iwe iyipada, 2);// Tẹ awọn eto iwe

        }

        miiran ti (Va == 0x0100) //Record iwe

        {

            u16 yipada oju-iwe[2] = {0x5A01, 2};

            fun (i = 0; i <6; i++)

            {

                ti (i == 0)

                {

                    Kọ_Dgus (0x2000 + i * 0x10 + 0, eatFeedList[0][i]% 10);

                    Kọ_Dgus (0x2000 + i * 0x10 + 2, eatFeedList[0][i] / 10% 10);

                    Kọ_Dgus (0x2000 + i * 0x10 + 4, eatFeedList[0][i] / 100% 10);

                    Kọ_Dgus (0x2000 + i * 0x10 + 6, eatFeedList[0][i] / 1000% 10);

                }

                miiran

                {

                    Kọ_Dgus (0x2000 + i * 0x10 + 0, eatFeedList[0][i]% 10);

                    Kọ_Dgus (0x2000 + i * 0x10 + 2, eatFeedList[0][i] / 10% 10);

                }

            }

            write_dgus_vp (0x0084, oju-iwe iyipada, 2);// Tẹ iwe igbasilẹ sii

        }

        //Record iwe

        miiran ti (Va == 0x0201) // Ṣe igbasilẹ oju-iwe ti tẹlẹ

        {

            ti (woEatCnt> 0)

            {

                LookEatCnt--;

                fun (i = 0; i <6; i++)

                {

                    ti (i == 0)

                    {

                        Kọ_Dgus (0x2000 + i * 0x10 + 0, jẹunFeedList[lookEatCnt] [i]% 10);

                        Kọ_Dgus (0x2000 + i * 0x10 + 2, jẹunFeedList[lookEatCnt] [i] / 10% 10);

                        Kọ_Dgus (0x2000 + i * 0x10 + 4, jẹunFeedList[lookEatCnt] [i] / 100% 10);

                        Kọ_Dgus (0x2000 + i * 0x10 + 6, jẹunFeedList[lookEatCnt] [i] / 1000% 10);

                    }

                    miiran

                    {

                        Kọ_Dgus (0x2000 + i * 0x10 + 0, jẹunFeedList[lookEatCnt] [i]% 10);

                        Kọ_Dgus (0x2000 + i * 0x10 + 2, jẹunFeedList[lookEatCnt] [i] / 10% 10);

                    }

                }

            }

        }

        miiran ti (Va == 0x0202) // Ṣe igbasilẹ oju-iwe atẹle

        {

            ti (woEatCnt < eatCnt - 1)

            {

                LookEatCnt ++;

                fun (i = 0; i <6; i++)

                {

                    ti (i == 0)

                    {

                        Kọ_Dgus (0x2000 + i * 0x10 + 0, jẹunFeedList[lookEatCnt] [i]% 10);

                        Kọ_Dgus (0x2000 + i * 0x10 + 2, jẹunFeedList[lookEatCnt] [i] / 10% 10);

                        Kọ_Dgus (0x2000 + i * 0x10 + 4, jẹunFeedList[lookEatCnt] [i] / 100% 10);

                        Kọ_Dgus (0x2000 + i * 0x10 + 6, jẹunFeedList[lookEatCnt] [i] / 1000% 10);

                    }

                    miiran

                    {

                        Kọ_Dgus (0x2000 + i * 0x10 + 0, jẹunFeedList[lookEatCnt] [i]% 10);

                        Kọ_Dgus (0x2000 + i * 0x10 + 2, jẹunFeedList[lookEatCnt] [i] / 10% 10);

                    }

                }

            }

        }

        // Oju-iwe Eto

        miiran ti (Va == 0x0302)

        {

            ti (Ipo akoko == 1)

            {

                timeMode = 0;

                Kọ_Dgus (0x3A12, 139);

            }

        }

        miiran ti (Va == 0x0303)

        {

            ti (Ipo akoko == 0)

            {

                timeMode = 1;

                Kọ_Dgus (0x3A12, 242);

            }

        }

        miiran ti (Va>= 0x0304 && Va <= 0x0309)

        {

            u16 yipada oju-iwe[2] = {0x5A01, 19};

            Oju-iwe afẹyinti = 3;

            backNum = Va;

            setNum = timrIntervalHour[Va - 0x0304];

            Kọ_Dgus (0x4000 + 0, setNum% 10);

            Kọ_Dgus (0x4000 + 2, setNum / 10% 10);

            Kọ_Dgus (0x4000 + 4, setNum / 100% 10);

            Kọ_Dgus (0x4000 + 6, setNum / 1000% 10);

            write_dgus_vp (0x0084, oju-iwe iyipada, 2);

        }

        miiran ti (Va>= 0x030A && Va <= 0x030F)

        {

            u16 yipada oju-iwe[2] = {0x5A01, 19};

            Oju-iwe afẹyinti = 3;

            backNum = Va;

            setNum = Aago lọwọlọwọ [Va - 0x030A];

            Kọ_Dgus (0x4000 + 0, setNum% 10);

            Kọ_Dgus (0x4000 + 2, setNum / 10% 10);

            Kọ_Dgus (0x4000 + 4, setNum / 100% 10);

            Kọ_Dgus (0x4000 + 6, setNum / 1000% 10);

            write_dgus_vp (0x0084, oju-iwe iyipada, 2);

        }

        //Aṣatunṣe oju-iwe data

        miiran ti (Va == 0x0400) //Jẹrisi

        {

            u16 yipada oju-iwe [2] = {0x5A01, 0x0000};

            yipada oju-iwe [1] = Oju-iwe ẹhin;

            if(backpage == 1) //Pada si oju-iwe ipo

            {

                placeGramNum = setNum;

                Kọ_Dgus (0x1140 + 0, placeGramNum% 10);

                Kọ_Dgus (0x1140 + 2, placeGramNum / 10% 10);

            }

            bibẹẹkọ ti (Oju-iwe ẹhin = 3)

            {

                if(backNum>= 0x0304 && backNum <= 0x0309)

                {

                    u16 yan = 0;

                    yan = (backNum - 0x0304) * 0x10;

                    timrIntervalHour[backNum - 0x0304] = setNum;

                    Write_Dgus (0x3010 + yan + 0, setNum% 10);

                    Write_Dgus (0x3010 + yan + 2, setNum / 10% 10);

                }

                miiran ti (backNum>= 0x030A && backNum <= 0x030F)

                {

                    u16 yan = 0;

                    yan = (backNum - 0x0304) * 0x10;

                    currentTime[backNum - 0x030A] = setNum;

                    

                    ti(backNum = 0x030A)

                    {

                        Write_Dgus (0x3010 + yan + 0, setNum% 10);

                        Write_Dgus (0x3010 + yan + 2, setNum / 10% 10);

                        Write_Dgus (0x3010 + yan + 4, setNum / 100% 10);

                        Write_Dgus (0x3010 + yan + 6, setNum / 1000% 10);

                    }

                    miiran

                    {

                        Write_Dgus (0x3010 + yan + 0, setNum% 10);

                        Write_Dgus (0x3010 + yan + 2, setNum / 10% 10);

                    }

                }

            }

            write_dgus_vp (0x0084, oju-iwe iyipada, 2);

        }

        miiran ti (Va == 0x0401) //Pada

        {

            u16 yipada oju-iwe [2] = {0x5A01, 0x0000};

            yipada oju-iwe [1] = Oju-iwe ẹhin;

            write_dgus_vp (0x0084, oju-iwe iyipada, 2);

        }

        miiran ti o ba ti (Va == 0x0402) // Imudara nọmba

        {

            setNum ++;

            Kọ_Dgus (0x4000 + 0, setNum% 10);

            Kọ_Dgus (0x4000 + 2, setNum / 10% 10);

            Kọ_Dgus (0x4000 + 4, setNum / 100% 10);

            Kọ_Dgus (0x4000 + 6, setNum / 1000% 10);

        }

        miiran ti (Va == 0x0403) // Idinku nọmba

        {

            ti (setNum> 0)

                setNum --;

            Kọ_Dgus (0x4000 + 0, setNum% 10);

            Kọ_Dgus (0x4000 + 2, setNum / 10% 10);

            Kọ_Dgus (0x4000 + 4, setNum / 100% 10);

            Kọ_Dgus (0x4000 + 6, setNum / 1000% 10);

        }

        

        Kọ_Dgus (0x1000, 0);

    }

}


Akoko ifiweranṣẹ: Oṣu Kẹsan-19-2023