找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1517|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

nmea.h(23): error C141: syntax error near '*', expected ')問題出在哪?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:939553 發(fā)表于 2023-10-21 17:50 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
// .c 文件

#include "nmea.h"


NMEA_INFO_TYPE xdata nmea_info;

//默認為主機
void nmea_init(void)
{
        memset(&nmea_info, 0, sizeof(NMEA_INFO_TYPE));
        nmea_info.loca_addr = '0';
        nmea_info.command[0] = 'R';
        nmea_info.command[1] = '1';
        nmea_info.command[2] = 0;
}

void FNNN (UART0_INFO_TYPE * uart0_info)
{
        uart0_info->uart0_mode = 1;
}


// .h文件
#ifndef _NMEA_
#define _NMEA_

#include "common.h"
#include "uart.h"
#include "tft.h"

//常變量定義
typedef struct
{
        uint8_t loca_addr;        //本機地址
        uint8_t command[5];        //發(fā)送的命令
}NMEA_INFO_TYPE;

extern NMEA_INFO_TYPE xdata nmea_info;


//函數(shù)
void nmea_init(void);


void FNNN (UART0_INFO_TYPE * uart0_info);

#endif


將以上兩個文件,單獨新建工程沒有問題

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:883242 發(fā)表于 2023-10-21 20:51 | 只看該作者
void FNNN (UART0_INFO_TYPE * uart0_info);
這句有問題吧,你查查對應(yīng)的h文件。
回復(fù)

使用道具 舉報

板凳
ID:939553 發(fā)表于 2023-10-21 22:36 | 只看該作者
Hephaestus 發(fā)表于 2023-10-21 20:51
void FNNN (UART0_INFO_TYPE * uart0_info);
這句有問題吧,你查查對應(yīng)的h文件。

typedef struct  
{
        uint8_t uart0_mode;                        //防災(zāi)是ASCII或NMEA0183格式,MODBUS是時間間隔通信
        uint8_t uart0_rx_timer;        //超時判斷
        uint8_t uart0_rx_over;
        uint8_t uart0_rx_data[UART0_BUFF_SIZE] ,uart0_tx_data[UART0_BUFF_SIZE];
        uint8_t uart0_rx_count;        //串口接收/發(fā)送計數(shù)器
}UART0_INFO_TYPE;

//變量
extern UART0_INFO_TYPE xdata uart0_info;
回復(fù)

使用道具 舉報

地板
ID:939553 發(fā)表于 2023-10-21 22:38 | 只看該作者
#ifndef _UART_H_
#define _UART_H_

#include "common.h"
#include "hwinit.h"
#include "timer.h"

#define UART0_BUFF_SIZE  100                //緩存最大長度
#define UART0_RX_TIMEOUT 20/10        //1字節(jié)接收超時,20ms

typedef struct  
{
        uint8_t uart0_mode;                        //防災(zāi)是ASCII或NMEA0183格式,MODBUS是時間間隔通信
        uint8_t uart0_rx_timer;        //超時判斷
        uint8_t uart0_rx_over;
        uint8_t uart0_rx_data[UART0_BUFF_SIZE] ,uart0_tx_data[UART0_BUFF_SIZE];
        uint8_t uart0_rx_count;        //串口接收/發(fā)送計數(shù)器
}UART0_INFO_TYPE;

//變量
extern UART0_INFO_TYPE xdata uart0_info;

enum
{
        UART0_MODBUS_MODE = 0,        //默認為MODBUS模式
        UART0_ASCII_MODE                                //防災(zāi)模式
};

//函數(shù)
void UART0_ISR(void);

void uart0_tx_onebyte(unsigned char cdata);
void uart0_tx_msg(unsigned char *string);
void uart0_tx_len_msg(unsigned char *string,unsigned int len);

#ifdef DBG
void uart0_tx_len_hextoasc(unsigned char *in_buff , unsigned int buff_len);
#endif

void uart0_init (UART0_INFO_TYPE * uart0_info);



#endif
回復(fù)

使用道具 舉報

5#
ID:939553 發(fā)表于 2023-10-23 22:36 | 只看該作者
發(fā)現(xiàn)在定義結(jié)構(gòu)體的h和c文件可以使用如,uart0_set(UART0_INFO_TYPE * uart0_info);,但是在別的文件,,如在LCD.c文件lcd_data(UART0_INFO_TYPE * uart0_info);就會報錯。什么原因?
回復(fù)

使用道具 舉報

6#
ID:883242 發(fā)表于 2023-10-23 22:42 | 只看該作者
jxcrgt35 發(fā)表于 2023-10-23 22:36
發(fā)現(xiàn)在定義結(jié)構(gòu)體的h和c文件可以使用如,uart0_set(UART0_INFO_TYPE * uart0_info);,但是在別的文件,,如 ...

只有你自己才能找到原因。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表