19个职位/ 0个新职位
最后发表
prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
需求方

我是接口温度传感器[i2c -引脚2,3]代码与dsp源代码,所以它必须发送数据到dsp应用程序,我必须做什么变化,请提到的功能,谢谢

设备:
MT_dialog
离线
最后看到:1周5天前
工作人员
加入:2015-06-08 34
嗨prasanth.velliyangiri,

嗨prasanth.velliyangiri,

我认为您可以使用app_uart_push()来将数据从您的i2c推到ble缓冲区,这通常由UART的接收回调调用,它将数据推到ble缓冲区。您可以在“串口服务参考应用说明”中找到有关串口应用程序的所有可用信息和最重要的功能。

由于MT_dialog

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
我正在使用DSPS源

我正在使用DSPS源代码项目,我成功地从传感器读取数据,现在我想通过蓝牙发送此数据而不是通过UART发送到DSPS Android应用程序,如何执行此操作,请提及函数和步骤

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
我正在使用DSPS源

我正在使用的DSPS源代码- sps_device项目,我成功地从传感器读取数据,现在我想把这个数据通过蓝牙发送到DSPS android应用程序,如何做到这一点,请说明功能和步骤

MT_dialog
离线
最后看到:1周5天前
工作人员
加入:2015-06-08 34
嗨prasanth.velliyangiri,

嗨prasanth.velliyangiri,

这不是通过对话框实现的,你必须调整现有的DSPS实现来满足你的需求,以便将数据发送到DSPS应用程序,您可以以user_peripheral _push()(适用于SDK5版本)函数为例,并调整所需的功能,以便将I2C数据从I2C传感器推送到ble缓冲区,而不是UART,然后再推送到链接的另一端。如果你不想模拟一个串行端口,你只是想通过BLE发送传感器数据,你不必使用DSPS应用程序,但使用自定义配置文件实现,并通知客户端每次你有传感器数据。如果您需要这方面的示例,您可以查看app_ble_peripheral,其中有一个以稳定的速率间隔触发通知的示例。

由于MT_dialog

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
Q1。请提

Q1。请说明用于发送数据到dsp app的功能,
Q2。还规定了dsp源代码API功能通过BLE发送数据和智能带物联网源代码API功能相同

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
我正在使用user_send

我使用在DSPS源代码中user_send_ble_data(p_data, length)函数发送数据到DSPS app,是否有其他函数可用发送数据通过BLE到DSPS

MT_dialog
离线
最后看到:1周5天前
工作人员
加入:2015-06-08 34
嗨prasanth.velliyangiri,

嗨prasanth.velliyangiri,

1.正如我在我之前的帖子中提到的,DSPS应用程序模拟串行通信,如果你只是想发送数据到链路的另一边,你可以使用比DSPS应用程序更简单的方法,您提到的特定函数从由UART填充的DSPS缓冲区中提取数据,并将它们作为通知发送到链接的另一端。这是dsp使用的功能,以便将数据从缓冲区发送到链路的另一端。

2.DSPS和物联网项目是使用完全不同的自定义配置文件的完全不同的项目。本质上,两者都使用通知/指示和读写命令来进行通信(就像所有BLE项目所做的那样),但这两个参考设计的架构是完全不同的。DSPS使用3个特性在无线链路上模拟串行端口,物联网使用10个特性发送传感器数据,每个传感器或处理值有一个特性。

由于MT_dialog

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
// extern void Read_sensor

// extern void Read_sensor(void) // MY REQ
// extern unsigned char SensorData[20];/ /我的要求

初始化,成功

Bool send_flow_on = false;
静态bool tx_busy_flag = false;
静态uint8_t rounds_waiting = 0;
静态uint16_t长度;

//读取传感器I2C数据

如果(init)

如果(! tx_busy_flag)

If ((length = user_buffer_item_count(&外围_to_ble_buffer)) > 0)
if (length > TX_WAIT_LEVEL || (rounds_waiting++) >= TX_WAIT_ROUNDS)

uint8_t *p_data = NULL;

rounds_waiting = 0;
tx_busy_flag = true;

length = (length > TX_SIZE ?TX_SIZE:长度);
length =(length length = user_buffer_read_address(& p_to_ble_buffer, &p_data, TX_SIZE);
p_data[0] = 'P';
p_data[1] =“P”;
p_data[2] =“P”;
p_data[3] = 'A';

长度= 4;
user_send_ble_data (p_data、长度);
// user_send_ble_data((const uint8_t *)SensorData, length);/ /我的要求



其他的

tx_busy_flag = false;
如果(成功)
user_buffer_release_items (&periph_to_ble_buffer、长度);

if(length = user_buffer_item_count(&外围_to_ble_buffer)) > TX_WAIT_LEVEL)

uint8_t *p_data = NULL;

rounds_waiting = 0;
tx_busy_flag = true;

length = (length > TX_SIZE ?TX_SIZE:长度);
length =(((length - tx_start_frame_data_size)/ tx_continue_frame_data_size)* tx_continue_frame_data_size + tx_start_frame_data_size);
length = user_buffer_read_address(& p_to_ble_buffer, &p_data, TX_SIZE);
p_data[0] = 'V';
p_data [1] = ' V ';
p_data [2] = ' V ';
p_data [3] ='b';

长度= 4;
user_send_ble_data (p_data、长度);
// user_send_ble_data((const uint8_t *)SensorData, length);/ /我的要求


上面的代码工作得很好,我在DSPA移动应用程序上获得一些数据,如果我启用// MY REQ注释,代码进入无尽的循环,我不能获得任何数据

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
上面的代码,做加法

在上面的代码中,添加I2C Read_sensor()中的延迟是否影响代码??,即使在物联网项目和i2c eeprom中,我也没有看到任何延迟……
谢谢你!

MT_dialog
离线
最后看到:1周5天前
工作人员
加入:2015-06-08 34
嗨prasanth.velliyangiri,

嗨prasanth.velliyangiri,

代码被困住了,陷入了无尽的循环吗?当您读取I2C (Read_Sensor())被调用时,您看到您的代码被捕获了吗?我不明白你说的延迟是什么,你在读取I2C传感器时插入了延迟?

由于MT_dialog

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
空白Read_sensor(空白)

空白Read_sensor(空白)

/ / Read_sensor_1 ();

/ / Read_sensor_2 ();

uart_init (UART_BAUDRATE_115K2 3);
uart_flow_off ();
uint8_t东西[]= {0 x0a,‘R’,‘e’,‘e’,' 3 ',' y ', 0 x0d ' > '};

UART_WRITE(某物,12,null);
uart_finish_transfers ();

timer0_general_test (10);//定时器中断延迟

*********************************************************************************************************************************
空白timer0_general_user_callback_function(空白)

静态uint8_t n = 0;

//当通过10 * 100ms
If (5 == n)

n = 0;
uart_init (UART_BAUDRATE_115K2 3);
uart_flow_off ();
uint8_t东西[]= {0 x0a,‘R’,‘e’,‘‘,‘d’,‘y’,0 x0d 0 x0a ' > '};

uart_write ((uint8 *) timeout_expiration 10 NULL);
uart_finish_transfers ();
timeout_expiration——;
/ / printf_string(“\一步!”);

n + +;

************************************************************************************************************************************
空白timer0_general_test (uint8_t times_seconds)

/ / printf_string(“\ n \ r \ n \ r”);
// printf_string(“*********************** \ n \ r”);
//printf_string("* TIMER0 GENERAL TEST *\n\r");
// printf_string(“*********************** \ n \ r”);

//输入设置的停止定时器
timer0_stop ();

timeout_expiration = times_seconds;

// SWTIM_IRQn的注册回调函数
timer0_register_callback (timer0_general_user_callback_function);

//启用TIMER0时钟
set_tmr_enable (CLK_PER_REG_TMR_ENABLED);

//设置TIMER0,TIMER2时钟分割因子为8,因此TIM0 Fclk为F = 16MHz/8 = 2Mhz
set_tmr_div (CLK_PER_REG_TMR_DIV_8);

//清除PWM设置寄存器不产生PWM
timer0_set_pwm_high_counter (NO_PWM);
timer0_set_pwm_low_counter (NO_PWM);

//设置2MHz源时钟除以10的定时器Fclk = 2MHz/10 = 200kHz
timer0_init (TIM0_CLK_FAST PWM_MODE_ONE TIM0_CLK_DIV_BY_10);

//重新加载100ms的值(T = 1/200kHz * RELOAD_100MS = 0,000005 * 20000 = 100ms)
timer0_set_pwm_on_counter (RELOAD_100MS);

//使能SWTIM_IRQn irq
timer0_enable_irq ();

//printf_string("\n\rLED每秒钟改变一次状态。\n\r");
//printf_string("\n\rTest将运行for: ");
/ / printf_byte (timeout_expiration);
/ / printf_string(“秒。\ n \ r”);

/ /开始Timer0
timer0_start ();
// printf_string(“\ n \ n \ n \ n \ n \ rtimer0开始!”);

//等待所需的秒数
而(timeout_expiration);

//关闭TIMER0, TIMER2时钟
set_tmr_enable (CLK_PER_REG_TMR_DISABLED);
/ / printf_string(“\ n \ rTIMER0停! \ n \ r”);
/ / printf_string(“\ n \撕裂测试\ n \ r”);

*************************************************************************************************
我已经包括timer0中断延迟,这——while (timeout_expiration);——line在函数中无效timer0_general_test(uint8_t times_seconds)使代码无限循环,什么可能是问题,单独timer0代码工作良好,在DSPS不工作

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
你可以在这张票上做记号

你可以在这张票上签上,我得到了答案,谢谢你的帮助…

GauravBansal
离线
最后看到:3年2个月前
加入:2016-06-27 09:26
嗨prasanth.velliyangiri,

嗨prasanth.velliyangiri,

我读了上面的对话,我也在做一些非常相似的事情。但是我才刚刚开始我的工作。你能帮我完成项目的第一部分,从传感器读取数据吗?如果你能给我指出我应该查看的资料和我需要处理的确切功能,那就太好了。
谢谢。

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
嗨GauravBansal

嗨GauravBansal
我使用tha AN-B-029_V1.0自定义配置文件读取数据并通过蓝牙发送,这个rar扩展也有教程pdf ..这将对你有帮助

http://support.dialog semiconductor.com/resource/b - 029教程——文件——su..。

GauravBansal
离线
最后看到:3年2个月前
加入:2016-06-27 09:26
嗨prasanth.velliyangiri,

嗨prasanth.velliyangiri,

谢谢你的回复。我研究了样本128和透彻的文件AN-B-029开发蓝牙智能自定义profile_V1.0如你建议。这使得手机应用Blueloupe和我的DVK董事会之间进行了有效的交流。但我仍然不知道如何将我的电路板集成到任何传感器上,也不知道如何通过DSPS应用程序。如果您能给我提供更多关于这方面的文档或指南,我将非常感激。

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
嗨GauravBansal

嗨GauravBansal
我不明白你的问题 - 如何将我的电路板集成到任何传感器以及通过DSPS应用程序??,
如果你在BLE CLIENT - BLE SERVER中工作,请参考此链接
http://support.dialog-semiconductor.com/iot-server-dsps-hostdata-transmi..。

GauravBansal
离线
最后看到:3年2个月前
加入:2016-06-27 09:26
嗨prasanth.velliyangiri,

嗨prasanth.velliyangiri,

我的应用程序是获得温度传感器数据在dsps应用程序实时可见。那么你认为最合适的文档应该是什么呢?

prasanth.velliy……
离线
最后看到:1年8个月前
加入:2016-02-18 12:18
嗨GauravBansal

嗨GauravBansal
UM-B-038 DA14580串行端口服务参考Application_v2.0 - 用DSP提供帮助