📄 display.c.keep
字号:
#include <string.h>
//#include "xgate.h"
#include "main.h"
#define ROUTE_INTERRUPT(vec_adr, cfdata) \
INT_CFADDR= (vec_adr) & 0xF0; \
INT_CFDATA_ARR[((vec_adr) & 0x0F) >> 1]= (cfdata)
#define SOFTWARETRIGGER0_VEC 0x72 /* vector address= 2 * channel id */
/*******************************************************************************
PLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLL
PLLINIT
PLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLLINITPLL
*******************************************************************************/
static void PLL_Init(void)
{
PLLCTL_PLLON = 0; // Disable the Phase Lock Loop
PLLCTL_CME = 0; // Disable Clock monitor
PLLCTL_SCME = 0; // Self clock mode switched off
CLKSEL_PLLSEL = 0; // Select clock source from OSCCLK
CLKSEL_PLLWAI = 1; // PLL stops in wait mode
CLKSEL_SYSWAI = 1; // Stop system clocks in wait mode
CLKSEL_CWAI = 1; // Core clock stop in wait mode
CLKSEL_PSTP = 1; // Osc continues to run in Stop mode (Pseudo Stop)
SYNR_SYN = 7; // Set the multiplier register for BUSCLK=8 MHz OSCCLK=5MHz
REFDV_REFDV = 4; // Set the divider register for BUSCLK=8 MHz OSCCLK=5MHz
PLLCTL_PLLON = 1; // Enable the Phase Lock Loop
PLLCTL_CME = 1; // Enable Clock monitor
while(!CRGFLG_LOCK); // Wait till the PLL VCO is within tolerance
CLKSEL_PLLSEL = 1; // Select clock source from PLLCLK
}
/******************************************************************************
* Module : void main(void)
* Description : main program loop
* Global Data : none
* Static Global Data: none
* Returns : none
* Arguments : none
* Special Issues : none
******************************************************************************/
void main (void) {
int i;
//EnableInterrupts;
//SetupXGATE();
// settings of periphery and IO
// loading wake up time from 08
DDRB = 0xF0;
PUCR_PUPBE = TRUE;
PORTB = 0xF0;
PLL_Init(); // init PLL OSCCLK = 5MHz BUSCLK=8MHz
LcdReset(); /* reset display */
/* setup display */
LcdSetup(LCD_CURSORRIGHT | LCD_SHIFTOFF | LCD_DISPLAYON | LCD_CURSORON | LCD_BLINKOFF | LCD_LARGEFONT ) ;
i = 0;
for EVER
{
i = (PORTB & 0x0f);
PORTB = i << 4;
} /* wait forever */
/* please make sure that you never leave this function */
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -