【Ашық бастапқы код】 DWIN экраны және Android телефонының екі жақты байланысын басқару Музыканы ойнату

– DWIN әзірлеушілер форумынан

Бұл мәселе сізге DWIN әзірлеушілер форумының жүлделі ашық бастапқы коды – DWIN экраны және Android телефонының екі жақты байланысы музыканы ойнатуды басқаруға арналған. DWIN интеллектуалды экраны мен Android телефонының деректерінің өзара әрекеттесуіне қол жеткізу үшін Bluetooth модулі арқылы инженерлер, пайдаланушылар Android телефонын, USB флэш-дискісін әнді ойнатуда оңай басқара алады, кідіртуге, ән мен дыбыс параметрлерін өзгертуге, интеллектуалды экранды және Android телефонын екі- ыңғайлы басқару.

1.C51 Дизайн
(1) T5L сериялық порты ойнату күйін өзгерту, дыбыс деңгейін орнату және Bluetooth күйін оқу үшін Bluetooth модулімен өзара әрекеттеседі, анықтамалық кодтың бөлігі келесідей:
int негізгі(жарамсыз)
{
INIT_CPU();
T2_Hat();
UART4_Init();
EA=1;
//UART4_SendStr(“сәлем”, sizeof(“сәлем”));
//WDT_ON();//Watchdog функциясын қосыңыз.
while(1)
{
//WDT_RST();//Иттің аяғы
Process();
}
}
void UART4_Init(жарамсыз)
{
// UART4 жіберу жылдамдығы параметрі:
//BODE2_DIV_H=CPU желілік жиілігі/(8*беру жылдамдығы) .
//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 Беріліс жылдамдығы
//BODE2_DIV_H=0×00;
//FCLK/(8*DIV)
//BODE2_DIV_L=0×70;
//ES3T=1;
ES2R=1;
EA=1;
}
void TenMsHandle(жарамсыз)
{
if(!TenmsFlag)
қайтару;
TenmsFlag=0;
SourcePress();//Тон генераторы
PlayCtrPress();//Ойнату күйінің өзгеруі
VolCtrSlider();//Дыбыс деңгейін өзгерту
VolLogSlider();//Дыбыс деңгейін өзгерту
ReadBtState();//Bluetooth күйін оқу
}
void SourcePress(жарамсыз)
{
charTouchKey[2]={0,0};
u8Sdata[2];
read_dgusii_vp(0×3000, TouchKey,1);
егер(сенсорлық перне[1]==0)
қайтару;
Sdata[1]=0;
қосқыш(сенсорлық перне[1])
{
case1://U дискі
Sdata[0]=1;
SendDataToBT(Write_Run_Mode, Sdata,1);
үзіліс;
case2:// Сыртқы LineIn кірісі
Sdata[0]=2;
SendDataToBT(Write_Run_Mode, Sdata,1);
үзіліс;
case3://Bluetooth
Sdata[0]=3;
SendDataToBT(Write_Run_Mode, Sdata,1);
үзіліс;
}
write_dgusii_vp(0×3003, TouchKey,1);
memset(сенсорлық перне,0,өлшемі(сенсорлық перне));
write_dgusii_vp(0×3000, TouchKey,1);
ReadBtStatecount=0;
}
жарамсыз PlayCtrPress(жарамсыз)
{
charTouchKey[2]={0,0};
u8Sdata[2];
read_dgusii_vp(0×3001, TouchKey,1);
егер(сенсорлық перне[1]==0)
қайтару;
Sdata[1]=0;
қосқыш(сенсорлық перне[1])
{
case1:// Алдыңғы ән
Sdata[0]=1;
SendDataToBT(Write_Next_Pre_PT, Sdata,1);
үзіліс;
case2:// Ойнатуды кідірту
Sdata[0]=2;
SendDataToBT(Write_Next_Pre_PT, Sdata,1);
үзіліс;
case3:// Келесі ән
Sdata[0]=3;
SendDataToBT(Write_Next_Pre_PT, Sdata,1);
үзіліс;
}
memset(сенсорлық перне,0,өлшемі(сенсорлық перне));
write_dgusii_vp(0×3001, TouchKey,1);
ReadBtStatecount=0;
}

(2)Android бағдарламалық пакеті негізінен Bluetooth қосылымын және смарт экранмен байланысты басқаруды жүзеге асыратын QT арқылы жазылған, анықтамалық кодтың бөлігі келесідей:
ui->setupUi(бұл);
bluetooth_ble_Tool=жаңа Bluetooth_ble_Tool("dwin_bt(BLE)");
ui->label_localBT_Name->setText(bluetooth_ble_Tool->getLocalName());
қосылу(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueSearchConnectState,
бұл,&BLE_PairPage::BlueSearchConnectState);
//btchat=new BtChat();
//btchat->set_ble_Tool(bluetooth_ble_Tool);
//btchat->init_Page();
//btchat->hide();
devicecommHandle=жаңа DeviceComm();
devicecommHandle->set_ble_Tool(bluetooth_ble_Tool);
devicecommHandle->InitDevice();
mwin=new mainwin();
аз->жасыру();
қосылу(mwin,&mainwin:layChangeMode,
devicecommHandle,&DeviceComm:layChangeMode);// Жазу режимінің өзгерісі шығарылды
қосылу(mwin,&mainwin:layCtrPreNextSt,
devicecommHandle,&DeviceComm:layCtrPreNextSt);// жанды. өлеңнің жоғарғы және төменгі бөліктерін жазып алу
қосылу(mwin,&mainwin:layMusicVolChange,
devicecommHandle,&DeviceComm:layMusicVolChange);// Дыбыс деңгейін төмендету
қосылу(devicecommHandle,&DeviceComm::ReadPlayMode,
бұл,[=](int режимі){// Ағымдағы режимді орнату
qDebug() qDebug() B_Upan->setChecked(жалған);
mwin->B_AUX->setChecked(жалған);
mwin->B_BT->setChecked(жалған);
егер(режим==1)
mwin->B_Upan->setChecked(шын);
басқа болса (режим ==2)
mwin->B_AUX->setChecked(шын);
басқа болса (режим ==3)
mwin->B_BT->setChecked(шын);
});
қосылу(devicecommHandle,&DeviceComm::ReadPlayMusicVol,
бұл,[=](int том){// Дыбыс деңгейі дисплейін орнату
mwin->QS_MainVol->setValue(том);
});
қосылу(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BLE_Link_қатесі,
бұл,[=](){
this -> show();
аз->жасыру();
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(жалған);
ui->pushButton->setText("Іздеу");
қосылу(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueBLE_FindDevicebited,
бұл,[=](жарайды){
ui->pushButton->setEnabled(шын);
ui->pushButton->setText («Қосылған Bluetooth-ды анықтауды бастау»);
егер(жарайды==жалған) {
QMessageBox::information(this,tr(“Іздеу күйі”),” Құрылғыны іздеу мүмкін емес, құрылғының қосулы екенін немесе оған басқа ұялы телефон қосылғанын тексеріңіз);} }); }
жарамсыз BLE_PairPage::BlueSearchConnectState(Bluetooth_ble_Tool::startStateprogressBar_em Сілтеме, орындалу барысы){
ui->progressBar->setValue(прогресс);
if(Linkst>=Bluetooth_ble_Tool::Ble_OtherError){
QMessageBox::ақпарат(бұл,tr(“қосылу шақыруы”),bluetooth_ble_Tool->getErrorinfo());
ui->label_tips->setText(bluetooth_ble_Tool->getErrorinfo());}
else if(Linkst>=Bluetooth_ble_Tool::Ble_Deconnect_Device){
QMessageBox::ақпарат(осы,tr("қосылу шақыруы ")," қате ");
ui->label_tips->setText(“buggy”);}
else if(Linkst==Bluetooth_ble_Tool::Ble_Connect_characterOk){// QMessageBox::information(
this,tr(“сәтті қосылды”),bluetooth_ble_Tool->getErrorinfo());
ui->label_tips->setText(“сәтті қосылды”);
this->hide();
mwin->show();
devicecommHandle->TimerStartReadDeviceST(100);
//btchat->show();
//ажырату(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueSearchConnectState,
//осы,&BLE_PairPage::BlueSearchConnectState); }
басқа{
ui->label_tips->setText(“Байланыстарды іздеу”); }


Хабарлама уақыты: 23 мамыр 2024 ж