nRF24L01+ and ttp223 delay time

Greetings
I am working on a project with arduino, ttp223 and nextion display, dht11, nrf24l01 +, but I have a problem, when I am setting my delay (500ms) in the code, then ttp223 is delaying to increase “Desired Temperature” and sometimes it is blocking
and if I set my delay too small then it is still delaying and blocking ttp223 to increase “Desired Temperature”, how can I write the code so that ttp223 has a delay time (100ms) delay between each touch and nrf24l01 + to send the values, other nrf24l01 + every 5 seconds

Transmitter code

#include <SPI.h>
#include "DHT.h"
#include "Nextion.h"
#include <nRF24L01.h>
#include <RF24.h>
#define DHTPIN 7
#define DHTTYPE DHT11
#define plusButton 2
#define minusButton 3

DHT dht(DHTPIN, DHTTYPE);
int DesiredTemperature = 0;
const int pinCE = 9;
const int pinCSN = 10;
int Array[2];
NexText txt_temp  = NexText(0, 5, "t3");
NexText txt_umid  = NexText(0, 4, "t2");
NexText txt_des  = NexText(0, 2, "t0");
RF24 wirelessSPI(pinCE, pinCSN);
const uint64_t pAddress = 0xB00B1E5000LL;       
int temp = 0;
int temp_perc = 0;
char buffer[100] = {0};
char buffer2[100] = {0};
char buffer3[100] = {0};
int led = 4;

uint32_t dual_state;

void setup() 
{
  nexInit();
 Serial.begin(9600);
 pinMode(minusButton , INPUT);
 pinMode(plusButton , INPUT);       
 wirelessSPI.begin();         
 wirelessSPI.setAutoAck(1);               
 wirelessSPI.enableAckPayload();         
 wirelessSPI.setRetries(5,15);           
 wirelessSPI.openWritingPipe(pAddress);   
 wirelessSPI.stopListening();
 wirelessSPI.printDetails(); 
 dht.begin();
 
}

void loop() 
{
    txt_temp.setText(buffer);
    txt_umid.setText(buffer2);
    txt_des.setText(buffer3);
 
    int temp = dht.readTemperature();
    int umid = dht.readHumidity();
    int des = DesiredTemperature;
 
    memset(buffer, 0, sizeof(buffer));
    itoa(temp, buffer, 10);
    memset(buffer2, 0, sizeof(buffer2));
    itoa(umid, buffer2, 10);
    memset(buffer3, 0, sizeof(buffer3));
    itoa(des, buffer3, 10);
  
  boolean touchStatePlus;
  boolean touchStateMinus;
  boolean touchStateMenu;
  touchStatePlus = digitalRead(plusButton);
  touchStateMinus = digitalRead(minusButton);


  if (touchStatePlus == HIGH)
  {
    
    DesiredTemperature++;
    
  }
  if (touchStateMinus == HIGH)
  {
    DesiredTemperature--;
  
  }
  
   Array[0] = DesiredTemperature;
   Array[1] = temp;
   
  
   Serial.println("Now sending data... ");
   
   if (!wirelessSPI.write( &Array, sizeof(Array))){
      Serial.println("delivery failed");
      Serial.println();     
      
  }
  else {
      Serial.println("Send successful.");
      Serial.println();
      delay(500);
  }
   
}

Receiver code

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>

const int pinCE = 9;
const int pinCSN = 10;
int gotArray[2];

RF24 wirelessSPI(pinCE, pinCSN); 
const uint64_t pAddress = 0xB00B1E5000LL; 

void setup()   
{
 Serial.begin(9600); 
 wirelessSPI.begin(); 
 wirelessSPI.setAutoAck(1);             
 wirelessSPI.enableAckPayload();       
 wirelessSPI.setRetries(5,15);       
 wirelessSPI.openReadingPipe(1,pAddress);   
 wirelessSPI.startListening();     
 wirelessSPI.printDetails();     
}

void loop() 
{   
  while(wirelessSPI.available()){
    wirelessSPI.read( &gotArray, sizeof(gotArray) );
    Serial.println("Recieved array:");
   int Temperature=(gotArray[1]);
   int DesiredTemperature=(gotArray[0]);
   Serial.print("TEMPERATURE ");
 Serial.println(Temperature);
 Serial.print("Desired Temperature ");
 Serial.println(DesiredTemperature);
 
  
}
}

Non-blocking timing tutorials:
Several things at a time.
Beginner's guide to millis().
Blink without delay().

Thanks for your reply, I really appreciate your help