机智云生成的代码,编译出现找不到gagent库
在机智云上做第一个产品,最后生成了软件包。按说明装了vi'tu'ral box后,进入编译,出现cannot find -lgagent错误,应该是找不到libgagent.a,在lib目录里起始也看不到,为什么?去哪儿能找libgagent.a?https://fs-im-kefu.7moor.com/im/b01e0430-943a-11e6-8ad7-636675d9e71f/2020-12-27%2009:07:50/1609031270761/f0c45590-47df-11eb-bf27-d9bc7778aa59.q3snbqpvi
已经解决。重新再生成一次,软件包里就有gagen.a库了,很奇怪。编译倒是过的去,但最后显示有个warnning,说是“clock chew”?有时序差异?提示可能程序跑不起来。
补充内容 (2020-12-29 15:34):
更正:clock skew 然后烧录进8266里,跑不起来。如图。
试着刷一个“GAgent_00ESP826_04020034_32Mbit_combine_201806091446”
跑起来串口是这样:
但是,在手机app里,还是增加不了设备。
对比我编译的固件,和GAent固件,发现在“2nd boot ver1.6”后,GAent固件是jump to user1@1000,所以跑的起来,我的固件是jump to user2@101000,跑不起来。
为什么?
搞掂了,就是在烧固件时候,地址有点小错误,改了以后,烧录进8266,手机app立即就找到设备了。粗粗试了下,开关反映很慢。 gz_landscape 发表于 2020-12-28 11:55
搞掂了,就是在烧固件时候,地址有点小错误,改了以后,烧录进8266,手机app立即就找到设备了。粗粗试了下 ...
还是有些问题,app能发现设备。但控制设备里的数据点,不太正常。
另外,启动信息如图,到这就不动了。
报告一下,完全正常了。启动到最后:
下一个是要看看数值量怎么从8266传给手机。有谁熟悉吗?给点提示。 好像只读的数值数据处理在下面“//添加数值数据的值,怎么添加?”(我加的)那里,但怎么添加?:
int8_t ICACHE_FLASH_ATTR gizwitsEventProcess(eventInfo_t *info, uint8_t *data, uint32_t len)
{
uint8_t i = 0;
dataPoint_t * dataPointPtr = (dataPoint_t *)data;
moduleStatusInfo_t * wifiData = (moduleStatusInfo_t *)data;
if((NULL == info) || (NULL == data))
{
GIZWITS_LOG("!!! gizwitsEventProcess Error \n");
return -1;
}
for(i = 0; i < info->num; i++)
{
switch(info->event)
{
case TRANSPARENT_DATA:
GIZWITS_LOG("TRANSPARENT_DATA \n");
//user handle , Fetch data from , size is
//添加数值数据的值,怎么添加?
break;
}
}
知道了,在下面:
void ICACHE_FLASH_ATTR userHandle(void)
{
/*
currentDataPoint.valuehm = ;//Add Sensor Data Collection
*/
system_os_post(USER_TASK_PRIO_2, SIG_UPGRADE_DATA, 0);
}
按下图修改程序:
就是说设置输出的hm数据点的值是0.456
手机上收到的hm(湿度)数字为0.455,比0.456少了一个最小单位。
我的数据点设置是:
至此,基本告一段落,完成了开关操作和数值的输出显示。
硬件:
按下手机上app的开关,就可以控制电压表的显示。
把读ADC的代码写进去了。读出的电压值乘以1/1024v。硬件是从3.3v(电压表头上看经常是3.28-3.3v)的电源上,串联电阻中间抽头分压出来接“ADC”接口,加个电压表头监控电压是0.17v。
结果:
手机app上收到的数字基本在0.26v上,跟真实的0.17v有误差。
因为没改动缺省的“esp_init_data_default.bin”,所以也不知道是不是这个原因(应该修改“esp_init_data_default.bin”)。
但0.26跟0.17的比例,就差不多是5v跟3.3v的比例。不知道有没有什么原因在里面,那个vdd_const的值对应5.0v?
懒着理先了,因为本来就是做定性用的,稍稍变化下分压电阻,好像数字能比例变化,也就行了。
现在最大的问题是,每次模块一断电,重新加电就又要用手机app去配网,这样的话没法用啊!本来就是要远程控制的,如果老在模块边上也不用这东西了?
论坛真冷清,没人帮忙吗?
断电需要配网的问题解决了。其实是模块每次第一次加电的时候跑不起来。等跑起来后就能上网了。
跑不起来的原因是插了USB转串口,可能质量不太好。拔了就没事了。
有版主解决了你的问题了 admin 发表于 2021-1-4 10:18
有版主解决了你的问题了
问题我都自己解决了。
不过也想知道别人怎么解决。
你说“有版主解决了你的问题了”?在哪?
页:
[1]