【ஓப்பன் சோர்ஸ்】 DWIN திரை மற்றும் ஆண்ட்ராய்டு ஃபோன் இருவழி இணைப்பு கட்டுப்பாடு இசை பின்னணி

-DWIN டெவலப்பர் மன்றத்திலிருந்து

DWIN டெவலப்பர் ஃபோரம் - DWIN திரை மற்றும் ஆண்ட்ராய்டு ஃபோன் டூ-வே லின்கேஜ் கன்ட்ரோல் மியூசிக் பிளேபேக்கின் விருது பெற்ற ஓப்பன் சோர்ஸ் கேஸைத் தள்ள இந்தச் சிக்கல் உங்களுக்காக. புளூடூத் தொகுதி மூலம் பொறியாளர்கள் DWIN நுண்ணறிவுத் திரை மற்றும் ஆண்ட்ராய்டு ஃபோன் தரவுத் தொடர்புகளை அடைய, பயனர்கள் ஆண்ட்ராய்டு போன், யுஎஸ்பி ஃபிளாஷ் டிரைவை பாடல் நாடகத்தில் எளிதாகக் கட்டுப்படுத்தலாம், இடைநிறுத்தலாம், பாடல் மற்றும் ஒலி அமைப்புகளை மாற்றலாம், நுண்ணறிவுத் திரை மற்றும் ஆண்ட்ராய்டு போன் இரண்டு- வசதியான கட்டுப்பாடு.

1.C51 வடிவமைப்பு
(1) பிளேபேக் நிலையை மாற்றவும், ஒலியளவை அமைக்கவும் மற்றும் புளூடூத் நிலையைப் படிக்கவும் T5L தொடர் போர்ட் புளூடூத் தொகுதியுடன் தொடர்பு கொள்கிறது, குறிப்புக் குறியீட்டின் ஒரு பகுதி பின்வருமாறு:
முழு எண்ணாக (செல்லம்)
{
INIT_CPU();
T2_Heat();
UART4_Init();
EA=1;
//UART4_SendStr("ஹலோ",அளவு("ஹலோ"));
//WDT_ON();//Watchdog ஐ இயக்கவும்.
போது (1)
{
//WDT_RST();//நாயை அடி
செயல்முறை ();
}
}
வெற்றிட UART4_Init(செல்லம்)
{
// UART4 Baud விகிதம் அமைப்பு:
//BODE2_DIV_H=CPU Mains அதிர்வெண்/(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 விகிதம்
//BODE2_DIV_H=0×00;
//FCLK/(8*DIV)
//BODE2_DIV_L=0×70;
//ES3T=1;
ES2R=1;
EA=1;
}
வெற்றிடமான TenMsHandle(செல்லாதது)
{
என்றால்(!TenmsFlag)
திரும்ப;
TenmsFlag=0;
SourcePress();//டோன் ஜெனரேட்டர்
PlayCtrPress();//பிளேபேக் நிலை மாற்றம்
VolCtrSlider();//தொகுதி மாற்றம்
VolLogSlider();//தொகுதி மாற்றம்
ReadBtState();//புளூடூத் நிலையைப் படிக்கவும்
}
வெற்றிடமான SourcePress(செல்லாதது)
{
charTouchKey[2]={0,0};
u8Sdata[2];
read_dgusii_vp(0×3000,TouchKey,1);
என்றால்(டச்கே[1]==0)
திரும்ப;
Sdata[1]=0;
சுவிட்ச்(டச்கே[1])
{
வழக்கு1://U வட்டு
Sdata[0]=1;
SendDataToBT(Write_Run_Mode,Sdata,1);
முறிவு;
வழக்கு2: வெளிப்புற வரி உள்ளீடு
Sdata[0]=2;
SendDataToBT(Write_Run_Mode,Sdata,1);
முறிவு;
வழக்கு3: ப்ளூடூத்
Sdata[0]=3;
SendDataToBT(Write_Run_Mode,Sdata,1);
முறிவு;
}
write_dgusii_vp(0×3003,TouchKey,1);
மெம்செட்(டச்கே,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])
{
வழக்கு1:// முந்தைய பாடல்
Sdata[0]=1;
SendDataToBT(Write_Next_Pre_PT,Sdata,1);
முறிவு;
வழக்கு2:// பின்னணி இடைநிறுத்தம்
Sdata[0]=2;
SendDataToBT(Write_Next_Pre_PT,Sdata,1);
முறிவு;
வழக்கு3:// அடுத்த பாடல்
Sdata[0]=3;
SendDataToBT(Write_Next_Pre_PT,Sdata,1);
முறிவு;
}
மெம்செட்(டச்கே,0,அளவு(டச்கே));
write_dgusii_vp(0×3001,TouchKey,1);
ReadBtStatecount=0;
}

(2) ஆண்ட்ராய்டு மென்பொருள் தொகுப்பு 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=புதிய BtChat();
//btchat->set_ble_Tool(bluetooth_ble_Tool);
//btchat->init_Page();
//btchat->மறை();
devicecommHandle=புதிய DeviceComm();
devicecommHandle->set_ble_Tool(bluetooth_ble_Tool);
devicecommHandle->InitDevice();
mwin=புதிய மெயின்வின்();
குறைவாக->மறை ();
இணைக்க(mwin,&mainwin:layChangeMode,
devicecommHandle,&DeviceComm:layChangeMode);// எழுத்து முறை மாற்றம் வழங்கப்பட்டது
இணைக்க(mwin,&mainwin:layCtrPreNextSt,
devicecommHandle,&DeviceComm:layCtrPreNextSt);// லிட். ஒரு பாடலின் மேல் மற்றும் கீழ் பகுதிகளை எழுதுங்கள்
இணைக்க(mwin,&mainwin:layMusicVolChange,
devicecommHandle,&DeviceComm:layMusicVolChange);// தொகுதி மாற்றத்தை எழுதவும்
இணைக்கவும்(devicecommHandle,&DeviceComm::ReadPlayMode,
இது,[=](int mode){// தற்போதைய பயன்முறையை அமைக்கிறது
qDebug() qDebug() B_Upan->setChecked(false);
mwin->B_AUX->setChecked(false);
mwin->B_BT->setChecked(false);
என்றால்(பயன்முறை==1)
mwin->B_Upan->setChecked(true);
இல்லையெனில் (பயன்முறை==2)
mwin->B_AUX->setChecked(true);
இல்லையெனில் (பயன்முறை==3)
mwin->B_BT->setChecked(true);
});
இணைக்கவும்(devicecommHandle,&DeviceComm::ReadPlayMusicVol,
இது,[=](int vol){// வால்யூம் டிஸ்ப்ளேவை அமைத்தல்
mwin->QS_MainVol->setValue(vol);
});
இணைக்கவும்(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BLE_Link_error,
இது,[=](){
இது->நிகழ்ச்சி();
குறைவாக->மறை ();
devicecommHandle->TimerStopReadDeviceST();
this->ui->progressBar->setValue(0);
});
வெற்றிடமான 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("தேடல்");
இணைக்கவும்(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueBLE_FindDevicefinished,
இது,[=](புல் ஓகே){
ui-> pushButton-> setEnabled (true);
ui->pushButton->setText("இணைக்கப்பட்ட புளூடூத்தை கண்டறியத் தொடங்கு");
என்றால்(சரி==தவறு) {
QMessageBox::தகவல்(இது,tr(“தேடல் நிலை “),” சாதனத்தைத் தேட முடியாது, சாதனம் ஏற்கனவே இயக்கப்பட்டுள்ளதா அல்லது வேறு செல்போன் ஏற்கனவே அதனுடன் இணைக்கப்பட்டுள்ளதா எனச் சரிபார்க்கவும்);} }); }
வெற்றிடமற்ற BLE_PairPage::BlueSearchConnectState(Bluetooth_ble_Tool::startStateprogressBar_em Linkst, int முன்னேற்றம்){
ui->progressBar->setValue(முன்னேற்றம்);
if(Linkst>=Bluetooth_ble_Tool::Ble_OtherError){
QMessageBox::தகவல்(இது,tr("இணைப்பு வரியில்"),bluetooth_ble_Tool->getErrorinfo());
ui->label_tips->setText(bluetooth_ble_Tool->getErrorinfo());}
இல்லையெனில் (Linkst>=Bluetooth_ble_Tool::Ble_Deconnect_device){
QMessageBox ::தகவல்(இது,டிஆர்("இணைப்பு ப்ராம்ட் ")," தரமற்றது ");
ui->label_tips->setText(“தரமற்ற “);}
இல்லையெனில் (Linkst==Bluetooth_ble_Tool::Ble_Connect_characterOk){// QMessageBox::தகவல்(
இது,tr("வெற்றிகரமாக இணைக்கப்பட்டுள்ளது"),bluetooth_ble_Tool->getErrorinfo());
ui->label_tips->setText("வெற்றிகரமாக இணைக்கப்பட்டது");
இது->மறை();
mwin->show();
devicecommHandle->TimerStartReadDeviceST(100);
//btchat->show();
//துண்டிக்கவும்(bluetooth_ble_Tool,&Bluetooth_ble_Tool::BlueSearchConnectState,
//இது,&BLE_PairPage::BlueSearchConnectState); }
வேறு
ui->label_tips->setText("இணைப்புகளைத் தேடுகிறது"); }


இடுகை நேரம்: மே-23-2024