Hi,
For developing our application i am using ble_app_hrs
in my case i have gpio interrupt for every 500 ms to get data from accelerometer.
question:
in heart rate measurement time out handler , i create local buffer of 300 bytes , i send these 300 bytes to ble.
Problem: But i am not getting all 300 bytes in master control panel. i am getting only 140 bytes. if i change buffer size to 200 also. i am getting only 140 bytes.
Code:
void read_Nor_send_to_ble_stack() { uint8_t buff[300]={0};
uint16_t length,j=0;
uint8_t r,d,i,k=0;
length=300;
for(j=0;j<300;j++)
{
buff[j]=i++;
}
if(length>20)
{
d=length/20;
r=length%20;
for(i=0;i<d;i++)
{
ble_accel_data_send(&m_accel,20,&buff[k]);
k=k+20;
}
if(r!=0)
{
ble_accel_data_send(&m_accel,r,&buff[k]);
}
}
else
{
ble_accel_data_send(&m_accel,length,&buff[0]);
}
}
in time out handler i am calling this function.
and i make it this interrupt to execute for every 15 seconds.
i check ble_accel_data_send() function which is working fine.
Is it because of gpio interrupt as it has highest priority. or something else.
Kindly suggest me.
Regards Balaji