📄 main.c
字号:
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include "C8051f.h"
#include "Serial0.h"
#include "Serial1.h"
#include "Timer.h"
#include "Analog.h"
#include "Sd2000.h"
#include "Lcd.h"
#include "Key.h"
#include "App.h"
#include "Func.h"
#include "24LC02.h"
#include "24LC32.h"
#include "Dout.h"
//全局变量
unsigned int Count1msInc;
unsigned char Count1ms;
unsigned char Count100ms;
unsigned char Count1s;
unsigned int TimeSecond;
unsigned int TimeMinute;
unsigned char EEPROMTime;
unsigned long Tick_100ms;
unsigned char RecCh;
unsigned char RecFlag;
unsigned long idata cpu_temperature;
void PORT_Init (void)
{
//XBR0 = 0x04; // Enable SMBus, SPI0, and UART0
XBR0 = 0x04;
XBR1 = 0x04;
XBR2 = 0x44; // Enable crossbar and weak pull-ups
EMI0TC = 0x21;
P74OUT = 0xFF;
P0MDOUT = 0x15;
P1MDOUT = 0xff;
P2MDOUT |= 0xFA;
P3MDOUT |= 0xFC;
}
void SYSCLK_Init (void)
{
int i;
OSCXCN = 0x67;
for (i = 0; i < 256; i++) ;
while (!(OSCXCN & 0x80)) ;
OSCICN = 0x88;
}
void init_main(void)
{
}
/*
void main (void)
{
unsigned char Temp;
unsigned char Str[16];
unsigned char Str2[16];
unsigned long Tmp;
unsigned long Tmp2;
unsigned char i;
EA = 0;
WDTCN = 0xde;
WDTCN = 0xad;
EA = 1;
EMI0CF = 0x24 ; // share low 4K XRAM
SYSCLK_Init (); // initialize oscillator
PORT_Init (); // initialize crossbar and GPIO
Timer0_Init();
init_main();
Delayms(200);
Lcd_Initil();
Lcd_CLS();
init_serial0(1200);
init_serial1(1200);
InitSD();
ADC_Init();
Tick_Init();
//Lcd_Dis(0,0,"nihao");
//Disp_Date();
//Disp_WeekTime();
//Drv_CursorMove(2,2,1);
//Drv_CursorMove(3,3,1);
//Lcd_Dis(3,3,"12345");
//Drv_CursorMove(3,3,1);
Temp = Drv_E2PRead32(0);
Temp = Drv_E2PRead32(1000);
Temp = Drv_E2PRead32(2000);
Temp = Drv_E2PRead32(3000);
Temp = Drv_E2PRead32(3999);
E2PWrite32(0,0xaa);
Temp = E2PRead32(0);
E2PWrite32(1000,0xf5);
Temp = E2PRead32(1000);
E2PWrite32(2000,0x65);
Temp = E2PRead32(2000);
E2PWrite32(3000,0x89);
Temp = E2PRead32(3000);
E2PWrite32(3999,0x27);
Temp = E2PRead32(3999);
E2PWrite32(0x38,0x27);
Temp = E2PRead32(0x38);
Temp = E2PRead32(0);
Lcd_CLS();
while(1)
{
sprintf(Str,"%d",TimeMinute);
Lcd_Dis(0,0,Str);
sprintf(Str,"%d",TimeSecond);
Lcd_Dis(1,0,Str);
sprintf(Str,"%ld",Tick_100ms);
Lcd_Dis(2,0,Str);
for(i = 0; i < 16; i++)
{
Str2[i] = 0;
}
Tmp2 = Read_Analog_Inputs(MUX_AN1);
sprintf(Str2,"%8ld",Tmp2);
Lcd_Dis(3,0,Str2);
Delayms(255);
for(i = 0; i < 16; i++)
{
Str[i] = 0;
}
Tmp = Read_Analog_Inputs(MUX_AN0);
sprintf(Str,"%8ld",Tmp);
Lcd_Dis(3,4,Str);
serial_send(Str2);
serial_send("\r");
Dout(0x55);
}
while(1)
{
serial_send("hello\r");
serial_send_("hello\r");
Read_Analog_Inputs(MUX_AN0);
Delayms(255);
Read_Analog_Inputs(MUX_AN1);
Delayms(255);
Read_Analog_Inputs(MUX_CPU_TEMP);
Delayms(255);
Lcd_CLS();
Disp_Date();
Disp_WeekTime();
}
}*/
void main()
{
unsigned char ch,i;
unsigned char xdata buf[11];
EA = 0;
WDTCN = 0xde;
WDTCN = 0xad;
EA = 1;
EMI0CF = 0x24 ; // share low 4K XRAM
SYSCLK_Init (); // initialize oscillator
PORT_Init (); // initialize crossbar and GPIO
Timer0_Init();
init_main();
Delayms(200);
Lcd_Initil();
Lcd_CLS();
init_serial0(1200);
init_serial1(1200);
InitSD();
ADC_Init();
Tick_Init();
Lcd_Dis(0,0,"成都市");
while(1)
{
memset(buf,0,11);
E2PWrite32(0,'X');
Delayms(50);
E2PWrite32(1,'I');
Delayms(50);
E2PWrite32(2,'E');
Delayms(50);
E2PWrite32(3,'Y');
Delayms(50);
E2PWrite32(4,'I');
Delayms(50);
E2PWrite32(5,'N');
Delayms(50);
E2PWrite32(6,'Q');
Delayms(50);
E2PWrite32(7,'I');
Delayms(50);
E2PWrite32(8,'A');
Delayms(50);
E2PWrite32(9,'O');
Delayms(50);
for(i=0;i<10;i++)
{
buf[i] = E2PRead32(i);
}
E2PWrite32(8,'A');
Delayms(50);
E2PWrite32(0x38,1);
Delayms(50);
E2PWrite32(0x48,2);
Delayms(50);
E2PWrite32(0x39,3);
Delayms(50);
E2PWrite32(0x49,4);
Delayms(50);
ch = E2PRead32(0x38);
memset(buf,0,11);
for(i=0;i<10;i++)
{
buf[i] = E2PRead32(i);
}
ch = E2PRead32(0x38);
ch = E2PRead32(0x38);
ch = E2PRead32(0);
ch = E2PRead32(8);
Dout(0xff);
Dout(0x0);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -