/******************************************************************************
  �� �� ����GPIO.c
  ����������GPIO��ʼ�����ļ�
  ��    �ߣ�����
  ��    ����V1.0
  ��    �ڣ�2016.11.1
 ******************************************************************************/

#include "GPIO.h"

/******************************************************************************
  ��������GPIO_Init
  ��  �ܣ�GPIO��ʼ��������GPIO����/������򣬳�ʼֵ����/����
  ��  ������
  ����ֵ����
 ******************************************************************************/
void GPIO_Init(void)
{
	//PORTA
	DDRA         = 0xF6;        //������ƼĴ���
	PORTA        = 0x70;        //���ݼĴ���
	PUCR_PUPAE   = 0;           //��������ر�
	//RDRIV_RDPA = 0;	          //����������(Ĭ��)

	//PORTB         
	DDRB         = 0xFE;        //������ƼĴ���
	PORTB        = 0x0C;        //���ݼĴ��� 
	PUCR_PUPBE   = 0;           //��������ر�
	//RDRIV_RDPB = 0;           //����������(Ĭ��)
	//PUCR_BKPUE = 1;    	      //BKGDʹ����������(Ĭ��ʹ��)

	// PORTT
	DDRT         = 0x38;        //������ƼĴ���
	PTT          = 0x18;        //���ݼĴ���
	PERT         = 0x00;        //������ʹ�ܼĴ���
	PPST         = 0x00;        //������ѡ��Ĵ���

	// PORTS
	DDRS         = 0xEA;        //������ƼĴ���     
	PTS          = 0x00;        //���ݼĴ���
	PERS         = 0x00;        //������ʹ�ܼĴ���   
	PPSS         = 0x00;        //������ѡ��Ĵ���

	// PORTP
	DDRP         = 0xFC;        //������ƼĴ���     
	PTP          = 0x00;        //���ݼĴ��� 
	PERP         = 0x03;        //������ʹ�ܼĴ���   
	PPSP         = 0x00;        //������ѡ��Ĵ���

	// PORTH               
	DDRH         = 0xCF;        //������ƼĴ���     
	PTH          = 0x00;        //���ݼĴ���
	PERH         = 0x00;        //������ʹ�ܼĴ���
	PPSH         = 0x00;        //������ѡ��Ĵ���	

	// PT1AD
	DDR1AD       = 0xA3;        //������ƼĴ���
	PT1AD        = 0x00;       //���ݼĴ���         
	PER1AD       = 0x18;       //����ʹ�ܼĴ���

	// PORTR
	DDRR         = 0xFF;        //������ƼĴ���     
	PTR          = 0x10;        //���ݼĴ���
	PERR         = 0x00;        //������ʹ�ܼĴ���   
	PPSR         = 0x00;        //������ѡ��Ĵ���

	// PORTU
	DDRU         = 0xFF;        //������ƼĴ���
	PTU          = 0x00;        //���ݼĴ���
	PERU         = 0x00;        //������ʹ�ܼĴ���
	PPSU         = 0x00;        //������ѡ��Ĵ���

	// PORTV
	DDRV         = 0xFF;        //������ƼĴ���
	PTV          = 0x00;        //���ݼĴ���
	PERV         = 0x00;        //������ʹ�ܼĴ���
	PPSV         = 0x00;        //������ѡ��Ĵ���
	
	// PORTM
 	DDRM         = 0xFF;        //������ƼĴ���     
	PTM          = 0x00;        //���ݼĴ���
	PERM         = 0x00;        //������ʹ�ܼĴ���
	PPSM         = 0x00;        //������ѡ��Ĵ���  

	// PORTAD0                  
  DDR0AD       = 0xF0;        //������ƼĴ���     
	PT0AD        = 0x00;        //���ݼĴ���
	PER0AD       = 0x00;        //����ʹ�ܼĴ���
	
  TFT_nRST     =  0;          //reset��̬����
}