?? main.c
字號:
#include "option.h"
#include "math.h"
#include <stddef.h>
#include <stdlib.h>
#include <string.h>
#include "Include.h"
extern unsigned short PortCdata, PortDdata,PortEdata,PortFdata;
extern U8 G_RUN_STATUS; //運行標志位
extern __packed struct device_context *G_Device_Context; //現場參數(關鍵)
extern __packed struct rf_param *rfpara; //RF配置模塊
//extern U8 flag; //標志位 0:EDITMODE 1:SCANNING MODE 2:Remote MODE 3:數字輸入狀態(僅在EDITMODE下)
extern U8 G_Focus; //當前輸入焦點 和屏幕序號有關
extern U8 G_FocusOld; //上一個輸入焦點,為了更新顯示
extern U8 G_FormNow; //當前屏幕序號
extern U8 G_KeyPress; //鍵盤按下標志
extern U8 G_Key; //鍵號
extern unsigned char G_EditStatus;
extern int G_Step; //freq G_Step
extern struct Scan G_Scan;
extern const U16 IFBW_DATA[22];
extern const U16 ScanStep_DATA[22];
extern const U32 RS232_BAUD[8];
extern U32 Count1ms;
extern U8 G_RUN_STATUS; //運行標志位
extern U8 ReadyToScan;
extern U8 ReturnFreq;
extern U8 CountRstDsp;
extern U32 CountScr;
extern U8 RstDsp;
extern U8 ScrOFFMODE;
extern U8 AFCRefresh;
extern cmdbuffer cbf;
extern U8 timer2flag;
extern struct LockOutInfo *pLockInfo;
extern void __irq LCD_ISR(void);
/*
*******************************************************************
*
* main()
*
*******************************************************************
*/
void int_init() //初始化中斷寄存器
{
rEXTINT=0x22222222; //ENT0-7 下降沿
rINTMOD=0; //全部IRQ
pISR_EINT0=(unsigned)LCD_ISR;
rINTMSK=~(BIT_GLOBAL|BIT_EINT0); //外中斷0允許
rINTCON=0x5;
}
void system_init()
{//系統初始化
Port_Init();
ChangePllValue(8, 6, 1 ); //1倍頻,主時鐘為10MHz
rSYSCFG=CACHECFG; // Using 8KB Cache//
int_init(); //中斷開啟
}
/**********************************************************************
* main loop
*/
void Main(void)
{
system_init();
lcd_init(); //LCD驅動芯片初始化,設置為顯示字符方式
Delay(1000);
lcdclear(); //屏幕清空
Delay(1000);
gotoxy(6,100); //坐標跳轉到6,100
/*
坐標說明:屏幕是豎著看的,大小為160*240,左上角為0,0
x坐標:x坐標每跳轉1位是移動8個像素點(8pixs),范圍可設置為(0~20)
y坐標:y坐標每跳轉1位是移動1個像素點(1pix),范圍可設置為0~240
字符方式下,每次寫入一個8位數據,代表一個半角字符,若寫入的數據
>0x9f,視為全角字,需要寫入兩個8位數據才會顯示,例如要顯示字符"復"
則需要連續寫入兩個8位數據0xb8、0xb4
每個半角字符占據8*16像素點,每個全角字符占據16*16像素點
每寫入一個數據以后,坐標自動移位到右邊下一個點(x++)
若x>=20,則自動跳轉到下一行的起始,即是(y+16)
*/ lcd_writeram(0,0xb8);
lcd_writeram(0,0xb4); //復
lcd_writeram(0,0xb8);
lcd_writeram(0,0xdf); //高
lcd_writeram(0,0xc8);
lcd_writeram(0,0xed); //軟
lcd_writeram(0,0xbc);
lcd_writeram(0,0xfe); //件
while(1)
{
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -