L
luft
Guest
Jeg lærer c for indlejrede system programmering.Jeg har 5 spørgsmål listen nedenfor.Jeg vil sætte pris på det, hvis nogen kan forklare nogle af dem eller endog alle.Eller kan nogen anbefale mig nogle henvisninger til magert disse konventioner?
1 Hvad er denne konvention, som denne: (kopi fra Hi-tech c)
# ifndef _PIC_H
# define _PIC_H
især understregningstegnet undrer mig meget.
2.hvad er det tegn &, *, , @, og parentesen i (unsigned) betyder i det følgende (fra Hi-Tech)
statiske bit LCD_RS @ ((unsigned) & PORTA * 8 2);
3.hvad betyder denne erklæring betyde?(fra Hi-tech c)
# define LCD_STROBE ((LCD_EN = 1), (LCD_EN = 0))
4.Hvad er understregning og <....> betyde?(fra sourceboost C)
# define _LCD_Read LCD_Read <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
5.der kan forklare
_LCD_TEMPL Og skabelon
i den del af programmet som følgende: (fra sourceboost C)
......
/ / Disse makroer gøre Efterfoelgende koden mere læsevenlig, men kan virke lidt forvirrende
# define _LCD_RawWriteNibble LCD_RawWriteNibble <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_RawWriteNibbleInline LCD_RawWriteNibbleInline <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_Read LCD_Read <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_WaitForNotBusy LCD_WaitForNotBusy <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_Write LCD_Write <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_FunctionMode LCD_FunctionMode <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_DataMode LCD_DataMode <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_RawWrite LCD_RawWrite <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_ClockOut LCD_ClockOut <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_TEMPL skabelon <unsigned char InterfaceType, \
unsigned char UseBusy, \
unsigned int dataport, unsigned int Data_PortTris, \
unsigned int CtrlPort, unsigned int Ctrl_PortTris, \
unsigned char RS, unsigned char RW, unsigned char E>
_LCD_TEMPL
inline void LCD_FunctionMode (void)
(
flygtige bit rs (at) CtrlPort.RS = 0;
)
_LCD_TEMPL
inline void LCD_DataMode (void)
(
flygtige bit rs (at) CtrlPort.RS = 1;
)
......
1 Hvad er denne konvention, som denne: (kopi fra Hi-tech c)
# ifndef _PIC_H
# define _PIC_H
især understregningstegnet undrer mig meget.
2.hvad er det tegn &, *, , @, og parentesen i (unsigned) betyder i det følgende (fra Hi-Tech)
statiske bit LCD_RS @ ((unsigned) & PORTA * 8 2);
3.hvad betyder denne erklæring betyde?(fra Hi-tech c)
# define LCD_STROBE ((LCD_EN = 1), (LCD_EN = 0))
4.Hvad er understregning og <....> betyde?(fra sourceboost C)
# define _LCD_Read LCD_Read <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
5.der kan forklare
_LCD_TEMPL Og skabelon
i den del af programmet som følgende: (fra sourceboost C)
......
/ / Disse makroer gøre Efterfoelgende koden mere læsevenlig, men kan virke lidt forvirrende
# define _LCD_RawWriteNibble LCD_RawWriteNibble <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_RawWriteNibbleInline LCD_RawWriteNibbleInline <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_Read LCD_Read <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_WaitForNotBusy LCD_WaitForNotBusy <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_Write LCD_Write <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_FunctionMode LCD_FunctionMode <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_DataMode LCD_DataMode <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_RawWrite LCD_RawWrite <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_ClockOut LCD_ClockOut <InterfaceType, UseBusy, DataPort, Data_PortTris, CtrlPort, Ctrl_PortTris, RS, RW, E>
# define _LCD_TEMPL skabelon <unsigned char InterfaceType, \
unsigned char UseBusy, \
unsigned int dataport, unsigned int Data_PortTris, \
unsigned int CtrlPort, unsigned int Ctrl_PortTris, \
unsigned char RS, unsigned char RW, unsigned char E>
_LCD_TEMPL
inline void LCD_FunctionMode (void)
(
flygtige bit rs (at) CtrlPort.RS = 0;
)
_LCD_TEMPL
inline void LCD_DataMode (void)
(
flygtige bit rs (at) CtrlPort.RS = 1;
)
......