欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
C語言函數聲明報錯error C141: syntax error near '*', expected ')'
[打印本頁]
作者:
菲子叭叭
時間:
2024-2-29 19:08
標題:
C語言函數聲明報錯error C141: syntax error near '*', expected ')'
#ifndef __W25Q32_H_
#define __W25Q32_H_
#include "main.h"
#define PAGESIZE 256//一頁最多輸入256字節
//SPI IO控制
#define SPI_SCL_1(_HANDLE_) ( GPIO_WritePin((_HANDLE_)->uSCL_Port, (_HANDLE_)->uSCL_Pin, 1))
#define SPI_SCL_0(_HANDLE_) ( GPIO_WritePin((_HANDLE_)->uSCL_Port, (_HANDLE_)->uSCL_Pin, 0))
#define SPI_MOSI_1(_HANDLE_) ( GPIO_WritePin((_HANDLE_)->uMOSI_Port, (_HANDLE_)->uMOSI_Pin, 1))
#define SPI_MOSI_0(_HANDLE_) ( GPIO_WritePin((_HANDLE_)->uMOSI_Port, (_HANDLE_)->uMOSI_Pin, 0))
#define SPI_MISO_1(_HANDLE_) ( GPIO_WritePin((_HANDLE_)->uMISO_Port, (_HANDLE_)->uMISO_Pin, 1))
#define SPI_MISO_0(_HANDLE_) ( GPIO_WritePin((_HANDLE_)->uMISO_Port, (_HANDLE_)->uMISO_Pin, 0))
#define SPI_CS_1(_HANDLE_) ( GPIO_WritePin((_HANDLE_)->uCS_Port, (_HANDLE_)->uCS_Pin, 1))
#define SPI_CS_0(_HANDLE_) ( GPIO_WritePin((_HANDLE_)->uCS_Port, (_HANDLE_)->uCS_Pin, 0))
#define SPI_MISO_R(_HANDLE_) ( GPIO_ReadPin((_HANDLE_)->uMISO_Port, (_HANDLE_)->uMISO_Pin))
extern void vW25Q32_Init(SPI_ObjectTypedef * hSPIx,
uint8_t uSCL_Port,
uint8_t uSCL_Pin ,
uint8_t uMOSI_Port,
uint8_t uMOSI_Pin ,
uint8_t uMISO_Port,
uint8_t uMISO_Pin ,
uint8_t uCS_Port,
uint8_t uCS_Pin);
//獲取Flash ID
extern uint32_t W25Q32_Read_ID(SPI_ObjectTypedef * hSPIx);
//寫使能(啟動)
extern void W25Q32_Write_Enable(SPI_ObjectTypedef * hSPIx);
//等待保護(等待擦除或寫入操作,直到操作完成結束)
extern void W25Q32_Wait_End(SPI_ObjectTypedef * hSPIx);
//讀操作,*buf為內容,addr為地址,pagesize為要讀出的字節數
extern void W25Q32_Read_Page(SPI_ObjectTypedef * hSPIx, uint8_t *buf,uint32_t addr,uint8_t pagesize);
//芯片擦除,非易失存儲器,寫數據前應該擦除操作
extern void W25Q32_Delete(SPI_ObjectTypedef * hSPIx);
//頁寫操作,*buf為內容,addr為地址,pagesize為寫入字節數必須小于256個
extern void W25Q32_Write_Page(SPI_ObjectTypedef * hSPIx,uint8_t *buf, uint32_t addr,uint8_t pagesize);
#endif
Core\W25Q32.h(25): error C141: syntax error near '*', expected ')'
Core\W25Q32.h(39): error C141: syntax error near '*', expected ')'
Core\W25Q32.h(41): error C141: syntax error near '*', expected ')'
Core\W25Q32.h(43): error C141: syntax error near '*', expected ')'
Core\W25Q32.h(45): error C141: syntax error near '*', expected ')'
Core\W25Q32.h(47): error C141: syntax error near '*', expected ')'
Core\W25Q32.h(49): error C141: syntax error near '*', expected ')'
想問一下,為什么每個聲明語句都有報錯
作者:
lkc8210
時間:
2024-2-29 20:59
要加分行符
extern void vW25Q32_Init(SPI_ObjectTypedef * hSPIx, \
uint8_t uSCL_Port, \
uint8_t uSCL_Pin, \
uint8_t uMOSI_Port, \
uint8_t uMOSI_Pin, \
uint8_t uMISO_Port, \
uint8_t uMISO_Pin, \
uint8_t uCS_Port, \
uint8_t uCS_Pin);
復制代碼
作者:
Hephaestus
時間:
2024-3-1 16:54
這種#define不太好,inline更好一些。比如:
#define SPI_SCL_1(_HANDLE_) ( GPIO_WritePin((_HANDLE_)->uSCL_Port, (_HANDLE_)->uSCL_Pin, 1))
我會寫成:
inline void SPI_SCL_1(_HANDLE_) { GPIO_WritePin((_HANDLE_)->uSCL_Port, (_HANDLE_)->uSCL_Pin, 1))}
不過雖然編譯器都支持inline,但是這并不是c語言標準關鍵字,要查編譯器手冊才可以。
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1