本帖最后由 与龙共舞 于 2018-8-7 16:33 编辑
看代码遇到问题:
uint8_t bleDeafultPairPwd[BLE_PASSWORD_LENGTH] = DEFAULT_PAIR_PWD;
uint8_t bleDeafultUserPwd[BLE_PASSWORD_LENGTH] = DEFAULT_OPEN_PWD;
uint8_t deviceNameTitle[BLE_DEIVCE_TITLE_LEN] = DEVICE_NAME;
上面是3个全局变量,第3个事可以的,我可以找到宏定义是什么。第1个第2个都有问题,我不知道宏定义是什么!
DEFAULT_PAIR_PWD;
DEFAULT_OPEN_PWD;
都是灰颜色的 看不到。 但是有一个.cfg的文件
感觉好像是类似于
* 设备默认配对密码
*/
-DDEFAULT_PAIR_PWD="{0X12,0x34,0x56}" 《==》#define DEFAULT_PAIR_PWD {0X12,0x34,0x56}
那么这是什么技术呢?看不懂
- /*
- * f8wConfig.cfg
- *
- * Compiler command-line options used to define a terminus device.
- * To move an option from here to the project file, comment out or delete the
- * option from this file and enter it into the "Define Symbols" box under the
- * Preprocessor tab of the C/C++ Compiler Project Options. New user defined
- * options may be added to this file, as necessary.
- *
- * Each macro is prefixed with '-D'. The entries are to be constructed as if
- * they are to be on the compiler command line invocation (which they are).
- *
- * NOTE: 设备属性及固定配置选项
- *
- */
- /*
- * 全局串口调试开关
- */
- -DDEBUG_ENABLE=1
- /*
- * 硬件版本号
- */
- -DDEVICE_HW_VERSION=101
- /*
- * 设备默认配对密码
- */
- -DDEFAULT_PAIR_PWD="{0X12,0x34,0x56}"
- /*
- * 设备默认开门密码
- */
- -DDEFAULT_OPEN_PWD="{0X12,0x34,0x56}"
- /*
- * 设备默认上网方式,如果同时存在则用或,例如同时支持WIFI及GPRS,DEFAULT_NET_MODE = 3
- * GPRS (0x00000001)
- * WIFI (0x00000002)
- * Ethernet (0x00000004)
- * LORA (0x00000008)
- * ZETA (0x00000010)
- */
- -DTSLNetType_TSLGPRS=0x01
- -DTSLNetType_TSLWIFI=0x02
- -DTSLNetType_TSLEthernet=0x04
- -DTSLNetType_TSLLORA=0x08
- -DTSLNetType_TSLZETA=0x10
- -DTSLNetType_TSLNB=0x20
- -DDEFAULT_NET_MODE=TSLNetType_TSLGPRS
- -DDEVICE_SUPPOR_NET=TSLNetType_TSLGPRS
- /*
- * 设备默认开门延时时间,单位100ms
- */
- -DOPEN_DELAY=20
- /*
- * 是否启用新协议
- */
- -DUSE_NANO_PROTO=0
- /*
- * 系统配置文件默认MARK
- */
- -DDEFAULT_MARK=0xAA55AA55
- /*
- * FreeRtos 配置选项
- */
- -DINCLUDE_uxTaskGetStackHighWaterMark=1
- /*
- * 门磁输入检测,设备默认开门状态电平
- */
- -DDEFAULT_MAGNET_STATUS=PIN_HIGH
- /*
- * device pn for ota
- */
- -DDEVICE_PN="{'S','T','M','L','4','7','1'}"
- -DMULTI_LINK=0
- -DSINGLE_LINK=1
- -DBULETOOTH_MODE=SINGLE_LINK
- //-DPRODUCT_NUM="{'S','E','E','D','-','0','9','0','6'}"
- -DMQTT_TASK
复制代码
+++++++++查了查 网上说的都是很老旧的知识 还是不清楚 这是IDE支持的 +++++++++++++
++++++++++++++20180807标记解决++++++++++++
今天合并代码,本来work可以的,下午擦除芯片没有boodloader,然后编写工程出现问题:找不到我的变量。
当时情况是这样的
所以 我也要把cfg这个文件引入到IDE里面去了(工程里面是有cfg文件的,但是IDE没有修改)
如此就可以了。能work就行了吧 原理放弃。
|
在程序中可以这样操作吗?我认为他是定义好一个常量数组了,类似const。
评分
查看全部评分
我现在还在看代码阶段 工程编译不过 所以我做不好测试。。。。
你的理解也对的
我就是不懂 这是啥技术
没见过这种搞法 一般都是头文件啥的放一个宏定义 这个工程怎么搞个.cfg文件
这里面就是配置文件 像上面你说的宏定义什么的放在这里 其实就是统一下放置的位置
方便用户自定义 我觉得解释这么多都是多余的 说下配置文件你就懂了
评分
查看全部评分
评分
查看全部评分
CFG 是一个引导文件, CFG 和TFS文件放在同一文件夹中,相当于程序里的头文件。
感觉上,说白了,就是一种用变相的设置头文件方式。
大多数情况下,很多程序都要保存用户的设置,办法有很多:注册表,日志文件...... 而很多程序都使用了一个专用的文件。为了方便起见,常常命名为*.cfg,有时甚至直接命名为Config.cfg。
这只是一个为开发及使用方便而"发明"的一个后缀名。所以,这种文件没有固定的格式,其实也并不能算作是一种文件类型。用途也仅仅是保存用户的设置,平常没有必要打开。
同样,为了方便起见,里面的内容大多数时候也确实是文本。可以用任何文本编辑器打开,比如QUAKE的config.cfg。不妨用记事本打开看看,如果出现乱码,则不要去动它。 -摘自《百度百科-CFG》
评分
查看全部评分
说白了,就是一种变相的头文件。以下,摘自百度百科:
大多数情况下,很多程序都要保存用户的设置,办法有很多:注册表,日志文件...... 而很多程序都使用了一个专用的文件。为了方便起见,常常命名为*.cfg,有时甚至直接命名为Config.cfg。
这只是一个为开发及使用方便而"发明"的一个后缀名。所以,这种文件没有固定的格式,其实也并不能算作是一种文件类型。用途也仅仅是保存用户的设置,平常没有必要打开。
同样,为了方便起见,里面的内容大多数时候也确实是文本。可以用任何文本编辑器打开,比如QUAKE的config.cfg。不妨用记事本打开看看,如果出现乱码,则不要去动它。
其实它的一些定义字段含义明文上就已经显示了它的定义含义了,可以根据整个工程,来关联相关字段。
希望能帮到您。
评分
查看全部评分