⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 def.h

📁 三星S3C44B0X的一个DEMO代码,实现LCD显示时钟运行.
💻 H
📖 第 1 页 / 共 2 页
字号:
        U16 Length;                          //2B
        U16 check;                           //2B
        U16 Longitude16H;                    //2B   ms 经          //25B
        U16 Longitude16L;                    //2B   ms           //25B
        U16 Latitude16H;                     //2B   ms 纬
        U16 Latitude16L;                     //2B   ms
        U16 speed;                           //2B  *10=integer
        U16 Direction;                       //2B  *10=integer
        U8  DateTime[4];                     //4B
        U16 WarnFlag;                        //2B
        U8  InfoFlag[2];                     //2B
        U8  Amount;                          //1B  default
        U16 HDOP;                            //2B  default  *10=integer
        U16 HPE;                             //2B  default  *10=integer
} sGPS;
extern     sGPS   *pGPSvar,*pGPSvarS,*pGPSvarH;

typedef struct                              //Confirm Message STRU
{
        U16 OperCode;                        //2B   //value=#102        //14B
        U16 TerminalID0;                     //2B
        U16 TerminalID1;                     //2B
        U16 TerminalID2;                     //2B
        U16 ID;                              //2B
        U16 Length;                          //2B   //value=3Byte
        U16 check;                           //2B
        U16 MessageNo;                       //2B                      // 3B
        U8  ConfirmType;                     //2B
} sConfirm;
extern     sConfirm   *pConfirmvar;

typedef struct                              //Confirm Message STRU
{
        U16 OperCode;                        //2B   //value=#104        //14B
        U16 TerminalID0;                     //2B
        U16 TerminalID1;                     //2B
        U16 TerminalID2;                     //2B
        U16 ID;                              //2B
        U16 Length;                          //2B   //value=3Byte
        U16 check;                           //2B
} sReqTime;
extern    sReqTime   *pReqTimevar;

typedef struct                              //Confirm Message STRU
{
        U16 OperCode;                        //2B   //value=#9        //14B
        U16 TerminalID0;                     //2B
        U16 TerminalID1;                     //2B
        U16 TerminalID2;                     //2B
        U16 ID;                              //2B
        U16 Length;                          //2B   //value=3Byte
        U16 check;                           //2B
        U16 SystemYear;                      //2B
        U8  Systemtime[5];                   //5B
} sServerTime;
extern    sServerTime   *pServerTimevar;

extern U8  Mainwhile;                        //not in main while
extern U8  Write_Chinese;                    //Write_Chinese
extern U8  Warn_Noise_Long;            //control voice long or short
extern U8  Display_Which_Screen;             //in main screen,time\speed\place three screen
extern U8  historydatahavesent;              //The run have sent history data and not change flag of flash
extern U8  Connect_One_HT_Server;            //In the run, cannot to connect to FLASH IP SERVER,send one FLASH IP to HT server
extern U8  find_gps_time_change;             //first find gps and change datetime
extern U16 count_sending_service;            //count of t0 interrupt after sending_service
extern U8  bool_sending_service;             //flag of start to sending_service
extern U16 count_disconnect_gprs;            //count for no char received from gprs
extern U8  bool_count_disconnect_gprs;       //start to count for no char received from gprs
extern U8  Temp_Open_Close,Temp_Open_Close_Count; //Control Warn flag flint
extern U8  HaveServerMessageDisplay;         //have new message from server for direct into display
extern U8  connect_gprs_display;               //redisplay main windows after connected to gprs
extern U8  receive_ack_of_service;           //receive_ack_of_service
extern U8  Warn_Choose_Menu_Point;             //Warn_Choose_Menu_Point
extern U8  Service_Info_Menu_Point;            //Service_Information_Menu_Point
extern U8  ServiceScreenSize;                  //service current screen size
extern U8  unpush_ok,unpush_cancel,unpush_up,unpush_down,unpush_menu,unpush_page;   //unpush
extern U8  unpush_lout;            //unpush
extern U8  unpush_lin;             //unpush
extern U8  unpush_uout;            //unpush
extern U8  unpush_uin;             //unpush
extern U8  quickin;                //quickly direct in
extern U8  HaveReadByte;                       //HaveReadByte
extern U8  ReadMessagePoint;                   //reading message point
extern U8  MessagePoint;                       //received message point
extern U8  MessageCount;                       //received message count (total)
extern U8  MessageInBlock;                     //Current In Block
extern U8  Curren_Reading_Message_No;          //current reading message No.
extern U8  SIM_CIMI[15];                       //current SIM_CIMI value
extern U8  ServerIP[15];                       //ServerIP
extern U8  ServerPort[5];                      //ServerPort
extern U16 HavePressKey;                       //set speak count
extern U8  KeyValue;                           //current Key value
extern U16 No_Key_Count;                       //current No_Key_Count value  for overtime
extern U16 MenuStatus;                         //Menu statuts
extern U16 current_GPRS_point;
extern U16 dealGPRS;
extern U16 backdealGPRS;
extern U16 SubGPRS;                          //current_GPRS_point-dealGPRS
extern U16 current_serial_point0;
extern U16 current_serial_point1;
extern U8  which_block;                   //block 0,1 data come from computer
extern U8  count_timer0_overflow;           //count for T0
extern U8  Interval_Send_GPS;               //Interval_Send_GPS
extern U8  Top_Count_T0_Overflow;           //Top of count for T0

extern U16 Warn_Flag;                     //Warn Flag set by keypress for sending to server
extern U8  Info_Flag[2];              //Information Flag set by keypress for sending to server
extern U8  count_time;                      //time over for sending to server
extern U8  gps_status;                          //gps data have valid
extern U8  find_gprs;                           //find gprs AT command is ok
extern U8  connect_gprs;                        //TCP/IP is OK
extern U8  reconnect_gprs;
extern U8  have_message;                        //have_message
extern U8  switch_display_16s,bool_start_count,bool_arrive_8s,bool_arrive_16s;
extern U8  display_time_arrive;
extern U8  check_key_time_arrive;

#define	outport8(port, data)	*((volatile U8 *)(port)) = (U8)(data)
#define	outport16(port, data)	*((volatile U16 *)(port)) = (U16)(data)
#define	outport32(port, data)	*((volatile U32 *)(port)) = (U32)(data)

#define	inport8(port)			*((volatile U8 *)(port))
#define	inport16(port)			*((volatile U16 *)(port))
#define	inport32(port)			*((volatile U32 *)(port))

#define	ENTER_KEY	0x0d
#define	BACK_KEY	0x08
#define	ESC_KEY		0x1b

//After ES3, this define does not need
#define SET_INTMSK_IRQ(n) while(1)\
		{\
			rI_ISPC=(n);\
			rINTMSK|=(n);\
			if(rI_ISPR==(n))\
		    	rINTMSK&=~(n);\
		  	else\
			    break;\
		}	

#endif

//***************FLASH*********************************
int    SST39LF160_ProgFlash(U32 realAddr,U16 data);
void   SST39LF160_EraseSector(U32 Sector);
void   SST39LF160_EraseBlock(U32 Block);
void   SST39LF160_EraseChip(void);
int    SST39LF160_CheckId(void);
int    SST39LF160BlankCheck(U32 Addr, U32 Size);
void   ProgramSST39LF160(void);

//***************main*********************************
void Led_Display(int data);
void Beep(unsigned int time);

void Beep_Off(void);
void Beep_On(void);
void Close_Machine(void);
void send_cpu_serial_string(U8 *str,U16 strlen);
void send_GPRS_string(U8 *str,U16 strlen);

void set_serial_command(U8 *str, U8 t0, U8 t1, U8 t2, U8 t3, U8 t4, U8 t5);
U8   calculate_checksum(U8 *str, U16 strlen);
void write_chinese_to_flash(U8 *str,U8 which4K);
void move_string(U8 *str_long, U16 sourcepoint,U8 *str,U16 destpoint,U16 bufferlen);
U16  find_string_move(U8 *str_long, U16 startpoint,U8 *str,U16 bufferlen);
U16  find_string(U8 *str_long, U16 startpoint,U16 endpoint,U8 *str,U8 substrlen);
U16  get_nth_data(U8 *str_long, U16 startpoint,U8 nth,U8 specichar);
void get_8s_GPS_data(void);
void Init_GPS_Frame_Header(void);
void Init_Service_GPS_Frame_Header(void);
void Save_Service_GPS_Frame(void);
void Fill_In_Service_GPS_Frame(void);
void Init_Comm_Reg_Frame_Header(void);
void Send_Flash_IP_Port_To_Server_Header(void);
void Init_Require_Time_Frame_Header(void);
void Open_GR47_and_Find_Empty_Flash_Point(void);
void Get_GPS_History_Package(void);
void Close_TCPIP(void);
void Get_Dynamic_IPaddr(void);
void Get_SIM_CIMI(void);
void Get_IP_From_FLASH_To_DBUFA(void);
void Display_SMS_Sub(void);
void Get_Curren_Display_SMS_Point(void);
void Check_If_Have_No_Read_SMS(void);
void Display_SMS(void);
void Continue_Display_SMS(void);
void Send_Answer_OK_Message(U8 answervalue);
void Send_Answer_Menu_Display(void);
void SystemInformation(void);
void AboutTheSystem(void);
void AutoRestoreIP(void);
void Connect_To_HT_Server(void);
void Connect_To_Flash_IP_Server(void);
void display_send_service_status(U8 WScreen,U8 current_status);
void Send_Service_Choose_Header(void);

void Send_Service_Choose(U8 WScreen,U8 ScreenSize);
void Send_Warn_Choose_Header(void);
void Send_Warn_Choose(void);
void Send_Warn_Choose_Blink(void);
void handle_serial_com0(void);
void handle_serial_com1(void);
void keypress_main(void);
void display_time_program(void);


void Sysloader_LoadFont1616(void);
void read_flash_to_ram(U32 sourcestartaddr,U8 *buffer, U16 deststartaddr, U16 movelen);
void write_ram_to_flash(U8 *buffer, U16 sourcestartaddr, U32 deststartaddr, U16 movelen);
void __irq Eint0RTL(void);        //INT0:RTL
void __irq Eint1GPS(void);        //INT1:GPS
void TimerInt(void);
void __irq Timer_0INT(void);
void __irq Timer_1INT(void);      //open kjc

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -