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

📄 config.c

📁 AD7843控制
💻 C
字号:
//#include "c8051f320.h"
#include "config.h"

/////////////////////////////////////
//  Generated Initialization File  //
/////////////////////////////////////

#include "C8051F320.h"

// Peripheral specific initialization functions,
// Called from the Init_Device() function
/*
void Reset_Sources_Init()
{
    int i = 0;
    VDM0CN    = 0x80;
    for (i = 0; i < 350; i++);  // Wait 100us for initialization
    RSTSRC    = 0x02;
}
*/
void ADC_Init()
{
    AMX0P     = 0x0B;
    AMX0N     = 0x0B;
    ADC0CF    = 0x28;
    ADC0CN    = 0xC0;
}

void Voltage_Reference_Init()
{
    REF0CN    = 0x03;
}

void Voltage_Regulator_Init()
{
    REG0CN    = 0x20;
}

void Port_IO_Init()
{
    // P0.0  -  Unassigned,  Open-Drain, Digital
    // P0.1  -  Unassigned,  Push-Pull,  Digital
    // P0.2  -  Unassigned,  Open-Drain, Digital
    // P0.3  -  Unassigned,  Open-Drain, Digital
    // P0.4  -  Unassigned,  Push-Pull,  Digital
    // P0.5  -  Unassigned,  Push-Pull,  Digital
    // P0.6  -  Unassigned,  Open-Drain, Digital
    // P0.7  -  Skipped,     Open-Drain, Analog

    // P1.0  -  Unassigned,  Push-Pull,  Digital
    // P1.1  -  Unassigned,  Push-Pull,  Digital
    // P1.2  -  Unassigned,  Push-Pull,  Digital
    // P1.3  -  Unassigned,  Push-Pull,  Digital
    // P1.4  -  Unassigned,  Push-Pull,  Digital
    // P1.5  -  Unassigned,  Push-Pull,  Digital
    // P1.6  -  Unassigned,  Push-Pull,  Digital
    // P1.7  -  Unassigned,  Push-Pull,  Digital
    // P2.0  -  Skipped,     Open-Drain, Analog
    // P2.1  -  Skipped,     Open-Drain, Analog
    // P2.2  -  Skipped,     Open-Drain, Analog
    // P2.3  -  Skipped,     Open-Drain, Analog

    P0MDIN    = 0x7F;
    P2MDIN    = 0xF0;
    P0MDOUT   = 0x32;
    P1MDOUT   = 0xFF;
    P2MDOUT   = 0xE0;
    P0SKIP    = 0x80;
    P2SKIP    = 0x0F;
    XBR1      = 0x40;
}


void Oscillator_Init()
{
    OSCICN    = 0x03;
}

void Interrupts_Init()
{
    IE        = 0x85;//允许中断,外部中断1,0,使能。
	IP        = 0x05;//Int0,Int1设置为高优先级。
	IT01CF    = 0x32;//int0分配至P0.2,作为键盘输入响应,数据总线控制权交换;
                     //int1分配至P0.3,作为FPGA输入输出总线控制响应
					// 均为低电平有效;
    IT0       = 0;
	IT1		  = 0;   //int0 and int1 are level flag.
//	IE0       = 0;
//	IE1       = 0;
//    EIE1      = 0x08;
    //IT01CF    = 0x02;
    //IE        = 0x80;
}

// Initialization function for device,
// Call Init_Device() from your main program
void config(void)
{
   PCA0MD    = 0x80;//Disable watchdog
  //  PCA0MD    &= 0x8F;//Disable watchdog
   // Reset_Sources_Init();
    ADC_Init();
    Voltage_Reference_Init();
    Voltage_Regulator_Init();
    Port_IO_Init();
    Oscillator_Init();
    Interrupts_Init();
	
}

/*
void config (void) 
{
    EA	      = 0;//允许中断;
//    SFRPAGE   = 0x00;  //
//IE init
	IE        = 0x85;//允许中断,外部中断1,0,使能。
	IP        = 0x05;//Int0,Int1设置为高优先级。
	IT01CF    = 0x02;//int0分配至P0.2,作为键盘输入响应,数据总线控制权交换;
                     //int1分配至P0.0,作为FPGA输入输出总线控制响应
					// 均为低电平有效;
    IT0       = 0;
	IT1		  = 0;   //int0 and int1 are level flag.

//PCA init
    PCA0MD    &= 0x8F;//Disable watchdog
//PORT init
P0MDIN    = 0x7F;
    P2MDIN    = 0xF0;
    P0MDOUT   = 0x32;
    P1MDOUT   = 0xFF;
    P2MDOUT   = 0xE0;
    XBR1      = 0x40;

//    P0MDIN    = 0x7F;//配置P0.7口为模拟输入,其他为数字输入
//    P0MDOUT   = 0x00;//配置P0口为开漏输出
//	P0SKIP    = 0x81;//设置交叉端点P0.0为SYSCLK输出,P0.7为REF输入
//    P1MDIN    = 0xFF;//配置P1.0口为模拟输入,其他为数字输入
//    P1MDOUT   = 0x00;//配置P1口为开漏输出
//	P1SKIP    = 0x01;//设置交叉端点跳过
//	P2MDIN    = 0xFF;//配置P2口
//	P2MDOUT   = 0x00;
//	P2SKIP    = 0xFF;//设置交叉端点跳过
//    XBR0      = 0x00;
//    XBR1      = 0xC0;//使能交叉开关
	REF0CN    = 0X00;//使用外部VREF
    AMX0P     = 0X00;//选择P1.0位AD输入
	AMX0N     = 0X1F;//设置AD为单端工作方式
	ADC0CF    = 0X28;//设置AD转换时钟为2M,ADC转换结果右对齐
    P0        = 0x00;//00000000b
	P1        = 0x00;//00000000b
    P2        = 0x00;//00000000b



    REG0CN    = 0xFF;//内部稳压器禁止

//OSC init

    OSCICN    = 0x03;//使用内部频率无分频的12M基准频率

// ADC_Init

  ADC0CN    = 0x00;//关闭ADC0


}   //End of config

*/

⌨️ 快捷键说明

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