——Mai le DWIN Developer Forum
I lenei lomiga, o le a matou faʻailoa atu ia te oe le faʻailoga mataʻutia avanoa tatala mai le DWIN Developer Forum: Intelligent Cat Food Control System.Na fa'aogaina e Inisinia le DWIN smart screen e mata'ituina ai le vevela, susū, ma le aofa'i o totoe o mea'ai pusi, ma fa'asaoina faamaumauga o mea'ai a le pusi.Na latou faia fa'apitoa fo'i se seti o le UI o ata vali vaitusi, fa'apea fo'i ma se fa'aogaina o le ink click pe a pa'i i ai se tamatamailima, e fa'aleleia ai le va'aiga va'aia o fa'amatalaga pa'i.
Folasaga:
1.UI ata mea
DWIN mata atamai faʻamaeʻaina le atinaʻeina o le UI e faʻavae i luga o ata, leo ma isi mea e manaʻomia ona saunia muamua e tusa ai ma le faʻaaliga faʻaaliga mata.
2. Atina'e feso'ota'iga
O le DGUS software e toe faʻafoʻi ai le aafiaga UI e ala i le faʻapipiʻiina o le laulau, tuʻufaʻatasia mea saunia i se ata atoatoa i le DGUS software, ma faʻapipiʻi galuega faʻaalia ma paʻi.
3. Fa'atino a'afiaga kiliki ma fa'alogo leo
O le tulaga pa'i e maua e ala i le polokalame 51, o le oomi o le a'afiaga e mulimuli i le gaioiga o le tamatamailima, ma le ki fa'atasi ma le leo leo e ausia foi.
(1) Su'esu'e le pa'i le nofoaga o lo'o iai ma tā leo:
gaogao TouchDetect()
{
u16 Va[3] = 0;
u8 i = 0;
mo(i = 0;i <3;i++)
{
Va[i] = Read_Dgus(0x0016 + i);
afai(Va[0] == 0x5A01)
{
}
isi
{
malepe;
}
}
if(i != 0) //Kiliki muamua e ulufale ai
{
u16 ta'alo[2] = {0x0001, 0x4000};
touchAnimationFlag = 1;
touchAnimationCnt = 0;
touchPosX = Va[1];
touchPosY = Va[2];
write_dgus_vp(0x00A0, ta'alo, 2);
}
}
(2) O le tulafono mo le fa'aalia o aafiaga pa'i e fa'apea:
gaogao TouchStart()
{
afai(touchAnimationFlag == 1)
{
afai(touchAnimationCnt == 0)
{
Write_Dgus(0x5011, touchPosX - 100);
Tusi_Dgus(0x5012, touchPosY - 100);
}
Tusi_Dgus(0x5000, touchAnimationCnt);
touchAnimationCnt++;
afai(touchAnimationCnt == 6)
{
touchAnimationFlag = 0;
Tusi_Dgus(0x5011, 1024);
Tusi_Dgus(0x5012, 600);
}
}
}
4. O le isi laasaga o le setiina o mea e fetaui i luga o le lau, ona tuʻuina atu lea o faʻamatalaga i le pusi pule meaʻai e ala i le ESP32 e iloa ai le faʻaogaina otometi galuega o meaai pusi.O le code fa'apitoa e fa'apea:
//Maua le tulaga fa'amau
vale maua_key_status()
{
int i = 0;
//u16 Va=Read_Dgus(addr);
u16 Va= Faitau_Dgus(0x1000);
afai(Va != 0x0000)
{
//Statu itulau
afai(Va == 0x0103) //Tuu le numera o le g
{
u16 switchpage[2] = {0x5A01, 19};
setiNum = placeGramNum;
Itulau tua = 1;//Toe fo'i ile itulau tulaga
Tusi_Dgus(0x4000 + 0, setiNumera % 10);
Tusi_Dgus(0x4000 + 2, setiNumera / 10 % 10);
Tusi_Dgus(0x4000 + 4, setiNumera / 100 % 10);
Write_Dgus(0x4000 + 6, setiNumera / 1000 % 10);
write_dgus_vp(0x0084, sui itulau, 2);
}
isi pe afai(Va == 0x0102)
{
OneSendData3(placeGramNum);//Nofoagameaai pusifa'atasi
}
isi pe afai (Va == 0x0101) // Faʻatulagaina itulau
{
u16 switchpage[2] = {0x5A01, 3};
mo(i = 0;i <6;i++)
{
afai(i == 0)
{
Write_Dgus(0x3070 + i * 0x10 + 0, taimi nei[i] % 10);
Write_Dgus(0x3070 + i * 0x10 + 2, taimi nei[i] / 10 % 10);
Write_Dgus(0x3070 + i * 0x10 + 4, taimi nei[i] / 100 % 10);
Write_Dgus(0x3070 + i * 0x10 + 6, taimi nei[i] / 1000 % 10);
}
isi
{
Write_Dgus(0x3070 + i * 0x10 + 0, taimi nei[i] % 10);
Write_Dgus(0x3070 + i * 0x10 + 2, taimi nei[i] / 10 % 10);
}
}
write_dgus_vp(0x0084, sui itulau, 2);// Ulufale i le itulau faʻatulagaina
}
isi pe afai(Va == 0x0100) //Ritulau ecord
{
u16 switchpage[2] = {0x5A01, 2};
mo(i = 0;i <6;i++)
{
afai(i == 0)
{
Write_Dgus(0x2000 + i * 0x10 + 0, eatFeedList[0][i] % 10);
Write_Dgus(0x2000 + i * 0x10 + 2, eatFeedList[0][i] / 10 % 10);
Write_Dgus(0x2000 + i * 0x10 + 4, eatFeedList[0][i] / 100 % 10);
Write_Dgus(0x2000 + i * 0x10 + 6, eatFeedList[0][i] / 1000 % 10);
}
isi
{
Write_Dgus(0x2000 + i * 0x10 + 0, eatFeedList[0][i] % 10);
Write_Dgus(0x2000 + i * 0x10 + 2, eatFeedList[0][i] / 10 % 10);
}
}
write_dgus_vp(0x0084, sui itulau, 2);// Ulufale itulau fa'amaumauga
}
//Ritulau ecord
isi pe afai (Va == 0x0201) //Faamaumau itulau itulau muamua
{
afai(lookEatCnt > 0)
{
lookEatCnt--;
mo(i = 0;i <6;i++)
{
afai(i == 0)
{
Write_Dgus(0x2000 + i * 0x10 + 0, eatFeedList[lookEatCnt][i] % 10);
Write_Dgus(0x2000 + i * 0x10 + 2, eatFeedList[lookEatCnt][i] / 10 % 10);
Write_Dgus(0x2000 + i * 0x10 + 4, eatFeedList[lookEatCnt][i] / 100 % 10);
Write_Dgus(0x2000 + i * 0x10 + 6, eatFeedList[lookEatCnt][i] / 1000 % 10);
}
isi
{
Write_Dgus(0x2000 + i * 0x10 + 0, eatFeedList[lookEatCnt][i] % 10);
Write_Dgus(0x2000 + i * 0x10 + 2, eatFeedList[lookEatCnt][i] / 10 % 10);
}
}
}
}
isi pe afai (Va == 0x0202) // Faʻamau itulau itulau e sosoo ai
{
afai(lookEatCnt < eatCnt - 1)
{
lookEatCnt++;
mo(i = 0;i <6;i++)
{
afai(i == 0)
{
Write_Dgus(0x2000 + i * 0x10 + 0, eatFeedList[lookEatCnt][i] % 10);
Write_Dgus(0x2000 + i * 0x10 + 2, eatFeedList[lookEatCnt][i] / 10 % 10);
Write_Dgus(0x2000 + i * 0x10 + 4, eatFeedList[lookEatCnt][i] / 100 % 10);
Write_Dgus(0x2000 + i * 0x10 + 6, eatFeedList[lookEatCnt][i] / 1000 % 10);
}
isi
{
Write_Dgus(0x2000 + i * 0x10 + 0, eatFeedList[lookEatCnt][i] % 10);
Write_Dgus(0x2000 + i * 0x10 + 2, eatFeedList[lookEatCnt][i] / 10 % 10);
}
}
}
}
// Faatulaga itulau
isi pe afai(Va == 0x0302)
{
afai(taimiMode == 1)
{
taimiTaimi = 0;
Tusi_Dgus(0x3A12, 139);
}
}
isi pe afai(Va == 0x0303)
{
afai(taimiMode == 0)
{
TimeMode = 1;
Tusi_Dgus(0x3A12, 242);
}
}
isi pe afai(Va >= 0x0304 && Va <= 0x0309)
{
u16 switchpage[2] = {0x5A01, 19};
Itulau tua = 3;
tuaNumera = Va;
setNum = timrIntervalHour[Va - 0x0304];
Tusi_Dgus(0x4000 + 0, setiNumera % 10);
Tusi_Dgus(0x4000 + 2, setiNumera / 10 % 10);
Tusi_Dgus(0x4000 + 4, setiNumera / 100 % 10);
Write_Dgus(0x4000 + 6, setiNumera / 1000 % 10);
write_dgus_vp(0x0084, sui itulau, 2);
}
isi pe afai(Va >= 0x030A && Va <= 0x030F)
{
u16 switchpage[2] = {0x5A01, 19};
Itulau tua = 3;
tuaNumera = Va;
setNum = taimi nei[Va - 0x030A];
Tusi_Dgus(0x4000 + 0, setiNumera % 10);
Tusi_Dgus(0x4000 + 2, setiNumera / 10 % 10);
Tusi_Dgus(0x4000 + 4, setiNumera / 100 % 10);
Write_Dgus(0x4000 + 6, setiNumera / 1000 % 10);
write_dgus_vp(0x0084, sui itulau, 2);
}
//Afetuutuunai itulau o faamatalaga
isi pe afai(Va == 0x0400) //Faamaonia
{
u16 switchpage[2] = {0x5A01, 0x0000};
switchpage[1] = itulau tua;
if(backPage == 1) // Toe foi i le itulau tulaga
{
placeGramNum = setiNum;
Write_Dgus(0x1140 + 0, placeGramNum % 10);
Write_Dgus(0x1140 + 2, placeGramNum / 10 % 10);
}
isi pe afai(Itulau tua == 3)
{
afai(backNumera >= 0x0304 && backNumera <= 0x0309)
{
u16 filifili = 0;
filifili = (backNumera - 0x0304) * 0x10;
timrIntervalHour[backNum - 0x0304] = setNum;
Write_Dgus(0x3010 + filifili + 0, setNum% 10);
Write_Dgus(0x3010 + filifili + 2, setiNum / 10 % 10);
}
isi pe afai(backNumera >= 0x030A && backNumera <= 0x030F)
{
u16 filifili = 0;
filifili = (backNumera - 0x0304) * 0x10;
taimi nei[backNum - 0x030A] = setNuum;
afai(backNumera == 0x030A)
{
Write_Dgus(0x3010 + filifili + 0, setNum% 10);
Write_Dgus(0x3010 + filifili + 2, setiNum / 10 % 10);
Write_Dgus(0x3010 + filifili + 4, setiNum / 100 % 10);
Write_Dgus(0x3010 + filifili + 6, setiNum / 1000 % 10);
}
isi
{
Write_Dgus(0x3010 + filifili + 0, setNum% 10);
Write_Dgus(0x3010 + filifili + 2, setiNum / 10 % 10);
}
}
}
write_dgus_vp(0x0084, sui itulau, 2);
}
isi pe afai(Va == 0x0401) //Tua
{
u16 switchpage[2] = {0x5A01, 0x0000};
switchpage[1] = itulau tua;
write_dgus_vp(0x0084, sui itulau, 2);
}
isi pe afai (Va == 0x0402) //Fa'ateleina numera
{
setiNum++;
Tusi_Dgus(0x4000 + 0, setiNumera % 10);
Tusi_Dgus(0x4000 + 2, setiNumera / 10 % 10);
Tusi_Dgus(0x4000 + 4, setiNumera / 100 % 10);
Write_Dgus(0x4000 + 6, setiNumera / 1000 % 10);
}
isi pe afai (Va == 0x0403) //Fa'aitiitiga numera
{
afai(setNumera > 0)
setiNumera--;
Tusi_Dgus(0x4000 + 0, setiNumera % 10);
Tusi_Dgus(0x4000 + 2, setiNumera / 10 % 10);
Tusi_Dgus(0x4000 + 4, setiNumera / 100 % 10);
Write_Dgus(0x4000 + 6, setiNumera / 1000 % 10);
}
Tusi_Dgus(0x1000, 0);
}
}
Taimi meli: Sep-19-2023