成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

基于arm的多路溫度采集控制系統(tǒng)(3)配置文件

嵌入式項目實踐–多路溫度采集控制系統(tǒng)(3)配置文件

本文檔對應視頻教程多路溫度采集系統(tǒng)–配置文件

創(chuàng)新互聯(lián)建站公司2013年成立,先為平安等服務建站,平安等地企業(yè),進行企業(yè)商務咨詢服務。為平安企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。

配置文件使用

  • 菜單程序會讀取配置文件數(shù)據(jù)。

    char cmd[16];//命令數(shù)據(jù)緩沖區(qū)
    load_dev(g_dev);
    while(1){
  • 主控程序會讀取與保存數(shù)據(jù)。

int init_sys(void)
{   
    printf("init system struct,LED flash.\n");
    load_dev(g_dev);
}

   g_dev->update_time=cmd.dat;
    printf("update_time=%d\n",g_dev->update_time);
    save_dev(g_dev);

系統(tǒng)總體數(shù)據(jù)結(jié)構(gòu)

因為是演示項目,系統(tǒng)功能設計很少,結(jié)構(gòu)體就簡單便于實現(xiàn)。后期大家可以實現(xiàn)更多功能,擴展這個結(jié)構(gòu)體。

struct st_sys{
    int temp_max[DEF_MAX_CHANNEL];      //設置每路溫度報警最大值
    float temp_data[DEF_MAX_CHANNEL];   //每路溫度
    char status[DEF_MAX_CHANNEL];       //每路狀態(tài)
    char update_time;                   //網(wǎng)頁刷新秒數(shù)
};

配置文件代碼

配置文件頭文件

#ifndef __TC9000_H_
#define __TC9000_H_

#define CONFIG_FILE "tc9000.cfg" //配置文件名
#define ON          1
#define OFF         0

#define DEF_T_UP        70          //默認溫度上限(C)
#define DEF_T_LOW       5           //默認溫度下限(C)
#define DEF_U_TIME      5           //默認檢測間隔時間(s)
#define DEF_MAX_CHANNEL 4           //采集的路數(shù)

//系統(tǒng)總體數(shù)據(jù)結(jié)構(gòu)
struct st_sys{
    int temp_max[DEF_MAX_CHANNEL];      //設置每路溫度報警最大值
    float temp_data[DEF_MAX_CHANNEL];   //每路溫度
    char status[DEF_MAX_CHANNEL];       //每路狀態(tài)
    char update_time;                   //網(wǎng)頁刷新秒數(shù)
};

int make_default_config(struct st_sys * dev);
int save_dev(struct st_sys * dev);
int load_dev(struct st_sys * dev);

#endif

配置文件實現(xiàn)

int make_default_config(struct st_sys * dev)
{
    int i;
    printf("Make default configuration.\n");    

    memset(dev,0,sizeof(struct st_sys));

    for(i=0;i<DEF_MAX_CHANNEL;i++){
        dev->temp_max[i] = DEF_T_UP;
        dev->temp_data[i] = 0;
        dev->status[i] = 0;
    }
    dev->update_time = DEF_U_TIME;
    return save_dev(dev);   
}

/*============================================
函數(shù)名稱:save_dev
功能:保存系統(tǒng)的配置文件
參數(shù):struct st_sys * dev
返回值:0 成功 -1失敗
============================================*/
int save_dev(struct st_sys * dev)
{
    FILE * fp;
    if (NULL == (fp=fopen(CONFIG_FILE, "wb"))){
        printf("Config file open null...\n");
        return -1;
    }
    printf("\nSave system data!");
    fwrite(dev, sizeof(*dev),1,fp); //write file
    fclose(fp); 
    return 0;       
}

/*============================================
函數(shù)名稱:load_dev
功能:創(chuàng)建系統(tǒng)的配置文件
參數(shù):struct st_sys * dev
返回值:0 成功 -1失敗
============================================*/
int load_dev(struct st_sys * dev)
{
    FILE *      fp;
    memset(dev, 0, sizeof(*dev));

    if (NULL == (fp=fopen(CONFIG_FILE, "rb"))){
        printf("[load_dev]fopen null....\n");
        return make_default_config(dev);
    }

    if ( sizeof(*dev) != fread(dev,1,sizeof(*dev),fp) ){
        printf("[load_dev+]sizeof error...\n");
        fclose(fp);
        return -1;
    }
    fclose(fp);
    return 0;   
}

本文名稱:基于arm的多路溫度采集控制系統(tǒng)(3)配置文件
當前URL:http://jinyejixie.com/article0/jooooo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、網(wǎng)站導航、用戶體驗、域名注冊、商城網(wǎng)站、電子商務

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設
武清区| 曲靖市| 黄冈市| 天峨县| 长岛县| 昭觉县| 南皮县| 东山县| 琼中| 阜南县| 吐鲁番市| 舞钢市| 深泽县| 呼和浩特市| 疏勒县| 苗栗县| 嘉峪关市| 建阳市| 富阳市| 来安县| 邳州市| 苍山县| 阿巴嘎旗| 虹口区| 盖州市| 和田市| 桂平市| 常熟市| 景洪市| 鄂尔多斯市| 淮南市| 长宁县| 顺平县| 聊城市| 绥江县| 临沭县| 时尚| 荣成市| 比如县| 沾益县| 柳河县|