⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sys_init.c

📁 中颖单片机的基础驱动程序源代码ADC
💻 C
字号:
#include	".\head\intrins.h"	
#include	".\head\CPU161.h"
#include	".\head\define.h"
#include	".\head\global.h"




void	InitSys(void)
{
	//---------------------------------------------------------------------------------
	//									IO
	//---------------------------------------------------------------------------------
	//01 P1.0/INT47   <-> I2C SCL		//32 P0.0/INT2  	<-- Zero Detect
	//02 P1.1/INT44   <-> I2C SDA		//31 P0.1/INT3  	<-- Fan Speed Detect
	//03 P1.2/INT43   --  JTAG(TDO)		//30 P0.2/AN0		<-- Current Detect
	//04 P1.3/INT42   --  JTAG(TMS)		//29 P0.3/AN1		<-- T1 Detect 
	//05 P1.4/INT41   --  JTAG(TDI)		//28 P0.4/AN2		<-- T2 Detect
	//06 P1.5/INT40   --  JTAG(TCK)		//27 P0.5/AN3		--> VALVE
	//07 P1.6/T0      --> LCD_SDA		//26 P0.6/T1		--> OutFan
	//08 P1.7/RST     --  RESET			//25 P0.7/INT1/PWM21--> PLASMA
	//09 VDD	      --  5V			//24 P2.7/INT46		--> STEP11
	//10 VSS	      --  GND			//23 P2.6/INT45		--> STEP12
	//11 P3.4/XTALO   --- 8M OSCO		//22 P2.5/PWM1		--> STEP13
	//12 P3.3/XTALI   --- 8M OSCI		//21 P2.4/PWM0		--> STEP14
	//13 P3.2/T2EX    --> LCD_SCK		//20 P2.3/PWM2		--> InFan
	//14 P3.1/INT0/T2 <-- IR_Rxd		//19 P2.2/MOSI/RXD	--> Heater
	//15 P3.0//SS/FLT --> LCD_CS		//18 P2.1/MISO/TXD	--> Comp
	//16 C	  		  --- 1000pf		//17 P2.0/SCK/BZ	--> Buzz
	P0CR	=	Bin(11000000);		
	P0PCR	=	Bin(00000011);	
	P0		=	Bin(00000011);
	P1CR	=	Bin(01000000);		
	P1PCR	=	Bin(10000011);		
	P1		=	Bin(11000011);
	P2CR	=	Bin(11111111);		
	P2PCR	=	Bin(00000000);		
	P2		=	Bin(00000000);
	P3CR	=	Bin(00000101);		
	P3PCR	=	Bin(00000010);		
	P3		=	Bin(00000111);
	//---------------------------------------------------------------------------------
	//									ADC
	//---------------------------------------------------------------------------------
	

	ADCON	=	Bin(10000000);	//ADC enable
	ADT		=	Bin(11101110);	//T(ad) = 32*(1/8M) = 4us
								//T(s) = (14+1)*T(ad) = 15*T(ad) < 16*T(ad)
								//T(converse) = 12*T(ad) + T(s) = 108us
	ADCH	=	Bin(00000111);	//AN0,AN1,AN2
	ADCON	|=  Bin(00000001);	//start converse from AN0~
	//---------------------------------------------------------------------------------
	//									Interrupt
	//---------------------------------------------------------------------------------
	//Priority
								//			 Bit7	Bit6  Bit5  Bit4  Bit3  Bit2  Bit1  Bit0 
	IPH0 = Bin(00000000);		//IEN0		 N/A 	EADC  ET2   ES    ET1   EX1   ET0   EX0 
	IPL0 = Bin(00000000);		//			 00		00	  11	00	  00	00	  01	01
	IPH1 = Bin(00000000);		//IEN1	  	 N/A    N/A   EPWM  N/A   EX4   EX3   EX2   ESPI 
	IPL1 = Bin(00000000);		//			 00		00	  00	00	  00	10	  10	00
	//enable ADC interrupt
								//			 Bit7	Bit6  Bit5  Bit4  Bit3  Bit2  Bit1  Bit0 
	IEN0 = Bin(01000000);		//IEN0		 EA 	EADC  ET2   ES    ET1   EX1   ET0   EX0 
	IEN1 = Bin(00000000);		//IEN1	  	 N/A    N/A   EPWM  N/A   EX4   EX3   EX2   ESPI 
}

void	InitGlobe(void)
{
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -