📄 main.c
字号:
#define GPBCON (*(volatile unsigned long *)0x56000010)
#define GPBDAT (*(volatile unsigned long *)0x56000014)
#define rGPHCON (*(volatile unsigned *)0x56000070) //Port H control
#define rGPHDAT (*(volatile unsigned *)0x56000074) //Port H data
#define rGPHUP (*(volatile unsigned *)0x56000078) //Pull-up control H
#define rUTXH0 (*(volatile unsigned char *)0x50000020) //UART 0 Transmission Hold
#define rURXH0 (*(volatile unsigned char *)0x50000024) //UART 0 Receive buffer
#define rULCON0 (*(volatile unsigned *)0x50000000) //UART 0 Line control
#define rUCON0 (*(volatile unsigned *)0x50000004) //UART 0 Control
#define rUFCON0 (*(volatile unsigned *)0x50000008) //UART 0 FIFO control
#define rUMCON0 (*(volatile unsigned *)0x5000000c) //UART 0 Modem control
#define rUTRSTAT0 (*(volatile unsigned *)0x50000010) //UART 0 Tx/Rx status
#define rUERSTAT0 (*(volatile unsigned *)0x50000014) //UART 0 Rx error status
#define rUFSTAT0 (*(volatile unsigned *)0x50000018) //UART 0 FIFO status
#define rUMSTAT0 (*(volatile unsigned *)0x5000001c) //UART 0 Modem status
#define rUBRDIV0 (*(volatile unsigned *)0x50000028) //UART 0 Baud rate divisor
#define LED_SPARK_TIME_DELAY 400000
#define LED_MSK 0x1E0
#define LED1 0x20
#define LED2 0x40
#define LED3 0x80
#define LED4 0x100
/* LED: PB5678 low light */
// 01 01010100 00000000
void idle(void);
void uartini(void)
{
rGPHCON = 0xaa;
rGPHUP = 0x0f;
rUFCON0 = 0x0;
rUMCON0 = 0x0;
rULCON0 = 0x3; //Line control register : Normal,No parity,1 stop,8 bits
rUCON0 = 0x05; // Control register
rUBRDIV0=( (int)(304000000/6/16./115200+0.5) -1 );
}
void uartSendByte(char data)
{
if(data=='\n')
{
while(!(rUTRSTAT0 & 0x2));
// Delay(1); //because the slow response of hyper_terminal
rUTXH0 = '\r';
}
while(!(rUTRSTAT0 & 0x2)); //Wait until THR is empty.
// Delay(1);
rUTXH0 = data;
}
void uartSendString(char *pt)
{
while(*pt)
uartSendByte(*pt++);
}
char uartGetChar(void)
{
while(!(rUTRSTAT0 & 0x1)); //Receive data ready
return rURXH0;
}
int Main()
{
GPBCON = 0x15400;
GPBDAT |= LED_MSK;
idle();
uartini();
GPBDAT &= ~LED_MSK;
idle();
GPBDAT |= LED_MSK;
idle();
uartSendString("测试代码启动!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
uartSendString("为了凑够4k以上,需要多次打印这句话!\n");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -