【Opinn uppspretta】 DWIN skjár og Android sími Tvíhliða tengingarstýring tónlistarspilun

-Frá DWIN Developer Forum

Þetta mál fyrir þig til að ýta á margverðlaunaða opinn uppspretta tilfelli DWIN þróunarvettvangs - DWIN skjár og Android síma tvíhliða tenging stjórna tónlistarspilun. Verkfræðingar í gegnum Bluetooth-eininguna til að ná DWIN snjöllum skjánum og Android símagagnasamskiptum, notendur geta auðveldlega stjórnað Android símanum, USB glampi drif í lagspiluninni, gert hlé, breytt laginu og hljóðstillingum, upplifað greindur skjá og Android síma tvö- leið þægileg stjórn.

1.C51 Hönnun
(1) T5L raðtengi hefur samskipti við Bluetooth eininguna til að breyta spilunarstöðu, stilla hljóðstyrk og lesa Bluetooth stöðu, hluti af tilvísunarkóðanum er sem hér segir:
int main(void)
{
INIT_CPU();
T2_Heat();
UART4_Init();
EA=1;
//UART4_SendStr(“halló”,sizeof(“halló”));
//WDT_ON();//Kveiktu á varðhundinum.
á meðan (1)
{
//WDT_RST();//Fætum hundinn
Ferli();
}
}
ógilt UART4_Init(ógilt)
{
// UART4 Baud rate stilling:
//BODE2_DIV_H=CPU Mains frequency/(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 hlutfall
//BODE2_DIV_H=0×00;
//FCLK/(8*DIV)
//BODE2_DIV_L=0×70;
//ES3T=1;
ES2R=1;
EA=1;
}
ógilt TenMsHandle (ógilt)
{
ef(!TenmsFlag)
skila;
TenmsFlag=0;
SourcePress();//Tónaframleiðandi
PlayCtrPress();// Breyting á spilunarstöðu
VolCtrSlider();// Breyting á hljóðstyrk
VolLogSlider();// Breyting á hljóðstyrk
ReadBtState();//Lestu Bluetooth stöðu
}
ógilt SourcePress (ógilt)
{
charTouchKey[2]={0,0};
u8Sdata[2];
read_dgusii_vp(0×3000,TouchKey,1);
if(Snertilykill[1]==0)
skila;
Sdata[1]=0;
rofi(snertilykill[1])
{
case1://U diskur
Sdata[0]=1;
SendDataToBT(Write_Run_Mode,Sdata,1);
brjóta;
case2:// External LineIn Input
Sdata[0]=2;
SendDataToBT(Write_Run_Mode,Sdata,1);
brjóta;
case3://Bluetooth
Sdata[0]=3;
SendDataToBT(Write_Run_Mode,Sdata,1);
brjóta;
}
write_dgusii_vp(0×3003,TouchKey,1);
memset(TouchKey,0,sizeof(TouchKey));
write_dgusii_vp(0×3000,TouchKey,1);
ReadBtStatecount=0;
}
ógilt PlayCtrPress(ógilt)
{
charTouchKey[2]={0,0};
u8Sdata[2];
read_dgusii_vp(0×3001,TouchKey,1);
if(Snertilykill[1]==0)
skila;
Sdata[1]=0;
rofi(snertilykill[1])
{
case1:// Fyrra lag
Sdata[0]=1;
SendDataToBT(Write_Next_Pre_PT,Sdata,1);
brjóta;
case2:// Hlé á spilun
Sdata[0]=2;
SendDataToBT(Write_Next_Pre_PT,Sdata,1);
brjóta;
case3:// Næsta lag
Sdata[0]=3;
SendDataToBT(Write_Next_Pre_PT,Sdata,1);
brjóta;
}
memset(TouchKey,0,sizeof(TouchKey));
write_dgusii_vp(0×3001,TouchKey,1);
ReadBtStatecount=0;
}

(2) Android hugbúnaðarpakkinn er skrifaður í gegnum QT, aðallega með því að átta sig á Bluetooth-tengingu og samskiptastýringu með snjallskjánum, hluti af tilvísunarkóðanum er sem hér segir:
ui->setupUi(þetta);
bluetooth_ble_Tool=nýtt Bluetooth_ble_Tool(“dwin_bt(BLE)”);
ui->label_localBT_Name->setText(bluetooth_ble_Tool->getLocalName());
connect(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueSearchConnectState,
þetta,&BLE_PairPage::BlueSearchConnectState);
//btchat=nýtt BtChat();
//btchat->set_ble_Tool(bluetooth_ble_Tool);
//btchat->init_Page();
//btchat->fela();
devicecommHandle=nýtt DeviceComm();
devicecommHandle->set_ble_Tool(bluetooth_ble_Tool);
devicecommHandle->InitDevice();
mwin=new mainwin();
minna->fela();
connect(mwin,&mainwin:layChangeMode,
devicecommHandle,&DeviceComm:layChangeMode);// Skrifhamsbreyting gefin út
connect(mwin,&mainwin:layCtrPreNextSt,
devicecommHandle,&DeviceComm:layCtrPreNextSt);// lit. skrifaðu niður efri og neðri hluta lags
connect(mwin,&mainwin:layMusicVolChange,
devicecommHandle,&DeviceComm:layMusicVolChange);// Skrifaðu hljóðstyrksbreytingu niður
connect(devicecommHandle,&DeviceComm::ReadPlayMode,
þetta,[=](int mode){// Stillir núverandi stillingu
qDebug() qDebug() B_Upan->setChecked(false);
mwin->B_AUX->setChecked(false);
mwin->B_BT->setChecked(false);
if(ham==1)
mwin->B_Upan->setChecked(true);
annað ef (hamur==2)
mwin->B_AUX->setChecked(true);
annað ef (hamur==3)
mwin->B_BT->setChecked(true);
});
connect(devicecommHandle,&DeviceComm::ReadPlayMusicVol,
þetta,[=](int vol){// Stilla hljóðstyrksskjáinn
mwin->QS_MainVol->setValue(vol);
});
connect(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BLE_Link_error,
þetta,[=](){
þetta->sýna();
minna->fela();
devicecommHandle->TimerStopReadDeviceST();
þetta->ui->progressBar->setValue(0);
});
ógilt 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(“Leitar“);
connect(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueBLE_FindDevicefinished,
þetta,[=](bool allt í lagi){
ui->pushButton->setEnabled(true);
ui->pushButton->setText(“Byrjaðu að greina tengt Bluetooth“);
if(ok==false) {
QMessageBox::information(this,tr(“Leitarstaða “),“ Ekki er hægt að leita í tækinu, vinsamlegast athugaðu hvort kveikt sé á tækinu eða hvort annar farsími er þegar tengdur við það?”);} }); }
void BLE_PairPage::BlueSearchConnectState(Bluetooth_ble_Tool::startStateprogressBar_em Linkst, int progress){
ui->progressBar->setValue(framvinda);
if(Linkst>=Bluetooth_ble_Tool::Ble_OtherError){
QMessageBox::information(this,tr(“tengingarkvaðning“),bluetooth_ble_Tool->getErrorinfo());
ui->label_tips->setText(bluetooth_ble_Tool->getErrorinfo());}
else if(Linkst>=Bluetooth_ble_Tool::Ble_Deconnect_device){
QMessageBox::information(this,tr(“tengingarkvaðning“),,“ þrjótur „);
ui->label_tips->setText(“buggy“);}
else if(Linkst==Bluetooth_ble_Tool::Ble_Connect_characterOk){// QMessageBox::information(
this,tr(“tengdist með góðum árangri“),bluetooth_ble_Tool->getErrorinfo());
ui->label_tips->setText(“tengdist með góðum árangri“);
þetta->fela();
mwin->show();
devicecommHandle->TimerStartReadDeviceST(100);
//btchat->show();
//aftengja(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueSearchConnectState,
//þetta,&BLE_PairPage::BlueSearchConnectState); }
Annar{
ui->label_tips->setText(“Leita að tengingum“); }


Birtingartími: 23. maí 2024