hi RT
scifStartRtcTicksNow(0x00010000 / 10);
// Configure and start the ADC Data Logger task. The task does not signalize data exchange, but
// has buffering capacity for 128 samples = 12.8 seconds (which are polled every 10 seconds below)
scifStartTasksNbl(BV(SCIF_ADC_DATA_LOGGER_TASK_ID));
1、蓝牙芯片上电开机10多秒才能获取到ADC值,想问采样时间变短,怎么样设置Sensor Controller ADC吗?
/// ADC Data Logger: ADC sample buffer size
#define SCIF_ADC_DATA_LOGGER_BUFFER_SIZE 128
/// ADC Data Logger I/O mapping: Analog sensor output
#define SCIF_ADC_DATA_LOGGER_DIO_A_SENSOR_OUTPUT 23
// All shared data structures in AUX RAM need to be packed
#pragma pack(push, 2)
/// ADC Data Logger: Task output data structure
typedef struct {
uint16_t head; ///< ADC sample buffer (input) head index
uint16_t pSamples[128]; ///< ADC sample buffer
} SCIF_ADC_DATA_LOGGER_OUTPUT_T;
2、项目RAM空间不够,想问下这里的缓存怎么改小?如果可以改动最小值可以设置为多少?
Viki Shi:
可以使用adcStartAuxTimer0Trigger 及 adcStopAuxTimer0Trigger来设置采样时间。这俩函数的具体描述可在 Sensor Controller Studio 的help文档里找到
Eggsy Pang:
1.你看一下你的Sensor Contrller 的代码 。adcEnableSync(ADC_REF_FIXED, ADC_SAMPLE_TIME_2P7_US, ADC_TRIGGER_MANUAL);
Eggsy Pang:
2. 现在RAM 用多少了?一些数组变量看看能少一点,还有优化一下代码
popo:
回复 Eggsy Pang:
Eggsy Pang2. 现在RAM 用多少了?一些数组变量看看能少一点,还有优化一下代码
Eggsy Pang:
回复 popo:
RAM还有139e,还可以啊,程序跑了什么算法
popo:
回复 Eggsy Pang:
算法是指那类吗?
只有简单的Gsensor姿态检测。
定制了一些服务和特征值(有长包数据),外设通信接口SPI、I2C、UART口都用到了。popo:
回复 Eggsy Pang:
Eggsy Pang1. 你看一下你的Sensor Contrller 的代码 。adcEnableSync(ADC_REF_FIXED, ADC_SAMPLE_TIME_2P7_US, ADC_TRIGGER_MANUAL);