📄 globals.h
字号:
/***************************************************************************************************************
*
*
*
*
***************************************************************************************************************/
/* INCLUDES */
#include <pkgconf/system.h>
#include <cyg/kernel/kapi.h>
#include <pkgconf/kernel.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include <cyg/infra/diag.h>
#include <pkgconf/io_serial.h>
#include <cyg/hal/hal_io.h>
#include <cyg/io/io.h>
#include <cyg/io/serialio.h>
#include <cyg/hal/hal_intr.h>
#include <cyg/hal/hal_arch.h>
#define testbit(var, bit) ((var) & (1 <<(bit)))
/* GLOBALS */
extern volatile unsigned char c;
// olimex LPC-P2106: one led on P0.7 (active low)
#define LEDPIN 7
#define LED_ON (*(volatile unsigned long *)ASHLING_IOCLR)|=1<<LEDPIN
#define LED_OFF (*(volatile unsigned long *)ASHLING_IOSET)|=1<<LEDPIN
// olimex LPC-P2106: one switch on P0.31 (active low)
#define SWPIN 31
//
#define SOUNDPIN 25
#define IOPIN (*(volatile unsigned long *)ASHLING_IOPIN)
//THREAD FUNCTION PROTOTYPES
void SER0_program(cyg_addrword_t data);
void GPS_program(cyg_addrword_t data);
void LCD_program(cyg_addrword_t data);
void BTN_program(cyg_addrword_t index);
void ALARM_program( cyg_addrword_t data );
/* FONT.H */
extern const char FontLookup[][5];
extern const char LED[][68];
extern const char eCos[];
extern const char eCos1[];
extern const char eCos2[];
extern const char eCos3[];
extern const char eCos4[];
extern const char uBlox[];
extern const char arm[];
extern const char sd[];
extern const char hand[];
extern const char info[];
/* BEEP.H */
#define beep_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< SOUNDPIN
#define beep_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< SOUNDPIN
void beep(unsigned char Rate, unsigned char Num);
void music(void);
extern unsigned char beep_flag;
/* LCD.H */
#define lcd_unlock() (lcd_key=0)
#define lcd_lock() (lcd_key=1)
#define INIT_PERIPHERALS 7
#define LCD_MAX_CHAR 16
#define LCD_X_RES 84
#define LCD_Y_RES 48
#define LCD_CACHE_SIZE ((LCD_X_RES * LCD_Y_RES)/8)
//
#define nok_sclk_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< 26
#define nok_sclk_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< 26
#define nok_sda_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< 27
#define nok_sda_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< 27
#define nok_dc_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< 28
#define nok_dc_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< 28
#define nok_cs_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< 29
#define nok_cs_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< 29
#define nok_res_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< 30
#define nok_res_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< 30
//
void LedButInit(void);
void cls(void);
void nokia_init(unsigned char contrast);
void LcdBin(unsigned char byte);
void LcdDec(int c);
void ascii_to_nokia(unsigned char c, unsigned char big);
void nokia_write_command(void); // nokia lcd routines
void nokia_write_dorc(void);
void nokia_build_DDRAM(void);
void nokia_write_data(void);
void nokia_gotoxy(unsigned char xnokia, unsigned char ynokia);
void nokia_printchar(unsigned char c, unsigned char big);
void nokia_printmessage(const char* message, unsigned char big);
void LcdContrast (unsigned char contrast);
void LcdUpdate ( void );
void LcdChr (unsigned char ch );
void LcdStr (unsigned char *dataPtr );
void LcdGotoXY ( unsigned char x,unsigned char y );
void led_to_nokia(int NUM);
void LcdInfo(unsigned char X, unsigned char Y, unsigned char * msg);
void EcosLogo(void);
void lcd(const char *message);
void clear(unsigned char x, unsigned char y, unsigned char zero);
#define PIXEL_OFF 0
#define PIXEL_ON 1
#define PIXEL_XOR 2
//Graphic Data Base
void LcdPixel ( unsigned char x, unsigned char y, unsigned char mode );
void LcdLine ( unsigned char x1, unsigned char y1, unsigned char x2, unsigned char y2, unsigned char mode );
void LCDCircle(unsigned char CenterX,unsigned char CenterY,unsigned char Radius, unsigned char mode);
//GPS.H
extern char Gps_buff[128];
extern char ser0_buff[128];
extern char console_buff[128];
extern char GPRMC[128];
extern char GPGGA[128];
extern unsigned char time_stamp[7];
extern unsigned char current_latitude[11];
extern unsigned char current_longitude[12];
extern unsigned char speed_knots[6];
extern unsigned char true_curse[6];
extern unsigned char date_stamp[7];
extern unsigned char variation[6];
extern unsigned char current_altitude[6];
//RTC
extern int time;
extern int date;
extern unsigned char Hour;
extern unsigned char Min;
extern unsigned char Sec;
//UTM
extern cyg_uint32 offset_x, offset_y;
extern double f_temp,f_syousu,f_seisu;
//FLAGS
extern unsigned char mode;
extern unsigned char gps_status_flag;
extern unsigned char gps_gmt_flag;
extern unsigned char gps_latitude_flag;
//PROTOTYPES
void gps_gmt(void);
void gps_status(void);
void gps_latitude(void);
void GPS(void);
void UTM(void);
/* COLOR LCD */
/*
RESET -> P0.8
CS -> P0.9
SDATA -> P0.10
SCLK -> P0.11
*/
#define SCLK_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< 24
#define SCLK_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< 24
#define SDATA_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< 6
#define SDATA_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< 6
#define CS_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< 5
#define CS_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< 5
#define RESET_0 (*(volatile unsigned long *)ASHLING_IOCLR) |= 1<< 4
#define RESET_1 (*(volatile unsigned long *)ASHLING_IOSET) |= 1<< 4
#define CMD 0
#define DATA 1
extern unsigned char Lcd_doublesize;
extern unsigned char Lcd_posx;
extern unsigned char Lcd_posy;
extern unsigned char Lcd_fcolor;
extern unsigned char Lcd_bcolor;
void color_nokia_init(void);
void send(unsigned char data, unsigned char cd);
void cs(void);
void Lcd_setframe(unsigned char Lcd_left, unsigned char Lcd_top, unsigned char Lcd_width, unsigned char Lcd_height );
void Lcd_setcolor(unsigned char Forecolor, unsigned char Backcolor);
void Lcd_setdoublesize(unsigned char size);
void Lcd_cls(void);
void Lcd_print(unsigned char * Lcd_text);
/* WINDOWS.C */
#define ICON_NUMBER 4
#define ICON_COUNTER (ICON_NUMBER-1)
void draw_image(unsigned char X, unsigned char Y, unsigned char SIZEX, unsigned char SIZEY, const char *image);
void draw_select_border(void);
void draw_picture(const char *pic);
void Draw_Window(unsigned char sxa,unsigned char syb, unsigned char xa, unsigned char yb, const char *text, const char *text1);
//variables
extern const char mainwin[];
extern unsigned char menu_counter;
extern const char batt[];
extern const char tools[];
extern const char clock[];
extern const char weather[];
//CONSOLE
extern unsigned char console_msg_flag;
void console(void);
//eof
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -