【Open Source】 DWIN Screen thiab Android Xov tooj Ob-txoj kev Txuas Txuas Tswj Suab paj nruag Playback

- Los ntawm DWIN Developer Forum

Qhov teeb meem no rau koj los thawb qhov khoom plig qhib qhov rooj ntawm DWIN tus tsim tawm lub rooj sab laj - DWIN screen thiab Android xov tooj ob txoj kev sib txuas tswj suab paj nruag. Engineers los ntawm Bluetooth module kom ua tiav DWIN ntse npo thiab Android xov tooj cov ntaub ntawv sib cuam tshuam, cov neeg siv tau yooj yim tswj lub xov tooj hauv, USB flash drive hauv cov nkauj ua si, nres, hloov cov nkauj thiab suab, kev paub txog lub vijtsam ntse thiab Android xov tooj ob- txoj kev yooj yim tswj.

1.C51 Tsim
(1) Lub T5L serial chaw nres nkoj cuam tshuam nrog Bluetooth module los hloov kho cov xwm txheej playback, teeb ntim, thiab nyeem cov xwm txheej Bluetooth, ib feem ntawm cov cai siv raws li hauv qab no:
int main(void)
{
INIT_CPU();
T2_Heat();
UART4_Init();
EA = 1;
//UART4_SendStr(“nyob zoo”,sizeof(“nyob zoo”));
//WDT_ON();//Tig rau lub Watchdog.
thaum (1)
{
//WDT_RST();//Feet the dog
Txheej txheem ();
}
}
void UART4_Init (void)
{
// UART4 Baud tus nqi teeb tsa:
//BODE2_DIV_H=CPU Mains zaus/(8*Baud rate).
//206438400/8/115200=224=0xe0
//206438400/8/921600=28=0x1C
//206438400/8=25804800/230400=112=0×70
SCON2T = 0 × 80;
SCON2R = 0 × 80;
BODE2_DIV_H=0 × 00;//FCLK/(8*DIV)
BODE2_DIV_L=0xe0;// 921600 Baud rate
//BODE2_DIV_H=0 × 00;
//FCLK/(8*DIV)
//BODE2_DIV_L=0 × 70;
//ES3T=1;
ES2R = 1;
EA = 1;
}
void TenMsHandle(void)
{
yog tias (!TenmsFlag)
rov qab los;
TenmsFlag=0;
SourcePress(); // Tone generator
PlayCtrPress();//Playback lub xeev hloov
VolCtrSlider();//Volume change
VolLogSlider();//Volume change
ReadBtState(); // Nyeem Bluetooth xwm txheej
}
void SourcePress(void)
{
charTouchKey[2]={0,0};
u8Sdata[2];
read_dgusii_vp(0×3000,TouchKey,1);
yog tias (TouchKey[1]==0)
rov qab los;
Sdata[1]=0;
Hloov (TouchKey[1])
{
case1://U disk
Sdata[0]=1;
SendDataToBT(Write_Run_Mode,Sdata,1);
tawg;
case2:// Sab nraud LineInput
Sdata[0]=2;
SendDataToBT(Write_Run_Mode,Sdata,1);
tawg;
case 3: //Bluetooth
Sdata[0]=3;
SendDataToBT(Write_Run_Mode,Sdata,1);
tawg;
}
write_dgusii_vp(0×3003,TouchKey,1);
memset(TouchKey,0,sizeof(TouchKey));
write_dgusii_vp(0×3000,TouchKey,1);
ReadBtStatecount=0;
}
void PlayCtrPress(void)
{
charTouchKey[2]={0,0};
u8Sdata[2];
read_dgusii_vp(0×3001,TouchKey,1);
yog tias (TouchKey[1]==0)
rov qab los;
Sdata[1]=0;
Hloov (TouchKey[1])
{
case1: Zaj nkauj dhau los
Sdata[0]=1;
SendDataToBT(Sau_Next_Pre_PT,Sdata,1);
tawg;
case2:// Playback Pause
Sdata[0]=2;
SendDataToBT(Sau_Next_Pre_PT,Sdata,1);
tawg;
case3: Lwm zaj nkauj
Sdata[0]=3;
SendDataToBT(Sau_Next_Pre_PT,Sdata,1);
tawg;
}
memset(TouchKey,0,sizeof(TouchKey));
write_dgusii_vp(0×3001,TouchKey,1);
ReadBtStatecount=0;
}

(2) Cov pob software hauv Android tau sau los ntawm QT, feem ntau paub txog kev sib txuas ntawm Bluetooth thiab kev sib txuas lus nrog lub vijtsam ntse, ib feem ntawm cov cai siv raws li hauv qab no:
ui->setupUi(qhov no);
bluetooth_ble_Tool=new Bluetooth_ble_Tool(“dwin_bt(BLE)”);
ui->label_localBT_Name->setText(bluetooth_ble_Tool->getLocalName());
txuas(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueSearchConnectState,
qhov no,&BLE_PairPage::BlueSearchConnectState);
//btchat=new BtChat();
//btchat->set_ble_Tool(bluetooth_ble_Tool);
//btchat->init_Page();
//btchat->hide();
devicecommHandle = tshiab DeviceComm();
devicecommHandle->set_ble_Tool(bluetooth_ble_Tool);
devicecommHandle->InitDevice();
mwin=new mainwin();
tsawg->hide();
connect(mwin,&mainwin:layChangeMode,
devicecommHandle,&DeviceComm:layChangeMode);// Sau hom hloov pauv tawm
txuas(mwin,&mainwin:layCtrPreNextSt,
devicecommHandle,&DeviceComm:layCtrPreNextSt); // lit. sau cia rau sab sauv thiab qis ntawm ib zaj nkauj
txuas(mwin,&mainwin:layMusicVolChange,
devicecommHandle,&DeviceComm:layMusicVolChange);// Sau ntim hloov pauv
connect(devicecommHandle,&DeviceComm::ReadPlayMode,
qhov no,[=](int mode){// Teem lub hom tam sim no
qDebug() qDebug() B_Upan->setChecked(false);
mwin->B_AUX->setChecked(false);
mwin->B_BT->setChecked(false);
yog (mode==1)
mwin->B_Upan->setChecked(true);
lwm if(mode==2)
mwin->B_AUX->setChecked(true);
lwm if(mode==3)
mwin->B_BT->setChecked(true);
});
connect(devicecommHandle,&DeviceComm::ReadPlayMusicVol,
this,[=](int vol){// Teem lub Volume Display
mwin->QS_MainVol->setValue(vol);
});
txuas(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BLE_Link_error,
qhov no,[=](){
this->show();
tsawg->hide();
devicecommHandle->TimerStopReadDeviceST();
this->ui->progressBar->setValue(0);
});
void BLE_PairPage::on_pushButton_clicked(){
bluetooth_ble_Tool->SetOperUuidServer(QBluetoothUuid(serviceUuid));
//ui->label_localBT->clear();
//ui->label_localBT_Name->setText(bluetooth_ble_Tool->getLocalName());
bluetooth_ble_Tool->startFindConnectBle();
//bluetooth_ble_Tool->startStateprogressBar();
ui->pushButton->setEnabled(false);
ui->pushButton->setText("Nrhiav");
txuas(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueBLE_FindDevicefinished,
qhov no,[=](bool ok){
ui->pushButton->setEnabled(true);
ui->pushButton->setText("Pib tshawb pom kev txuas Bluetooth");
if(ok==false) {
QMessageBox:: cov ntaub ntawv (qhov no, tr("Nrhiav Status ")," Lub cuab yeej tshawb nrhiav tsis tau, thov xyuas seb lub cuab yeej twb qhib lawm, lossis yog lwm lub xov tooj ntawm tes twb txuas rau nws lawm?);} }); }
void BLE_PairPage::BlueSearchConnectState(Bluetooth_ble_Tool::startStateprogressBar_em Linkst, int progress){
ui->progressBar->setValue(kev nce qib);
if(Linkst>=Bluetooth_ble_Tool::Ble_OtherError){
QMessageBox::information(this,tr("kev twb kev txuas prompt"), bluetooth_ble_Tool->getErrorinfo());
ui->label_tips->setText(bluetooth_ble_Tool->getErrorinfo());}
else if(Linkst>=Bluetooth_ble_Tool::Ble_Deconnect_device){
QMessageBox::cov ntaub ntawv (qhov no, tr("kev sib txuas sai"), "buggy");
ui->label_tips->setText("buggy");}
else if(Linkst==Bluetooth_ble_Tool::Ble_Connect_characterOk){// QMessageBox::information(
qhov no, tr(“kev sib txuas ua tiav”), bluetooth_ble_Tool->getErrorinfo());
ui->label_tips->setText("txuas tau zoo");
this-> nkaum();
mwin->show();
devicecommHandle->TimerStartReadDeviceST(100);
//btchat->show();
//disconnect(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueSearchConnectState,
//this,&BLE_PairPage::BlueSearchConnectState); }
lwm tus{
ui->label_tips->setText(“Nrhiav kev sib txuas”); }


Post lub sij hawm: May-23-2024