📄 main.c
字号:
#include "f2407_c.h"
#define ADCLow8Bit port0000
ioport unsigned int port0000;
#define ADCHigh4Bit port0001
ioport unsigned int port0001;
#define ADCCtrlByte port0002
ioport unsigned int port0002;
unsigned int ADCResult[2] = {1,3};
unsigned int array[2] = {2,2};
int XintFl = 0;
int Fl = 0;
char Flag[4] = "0000";
int i = 0;
void main(void)
{
SysInit();
ADCStart();
XintFl= 0x00F2;
//ADCResult[0] = ADCLow8Bit;
// ADCResult[1] = ADCHigh4Bit;
*IMR = 0xFFFF;
asm(" clrc INTM");
// *MCRA = 0x0000; //IOPA 一般 IO
/* *PADATDIR = 0xFF00; // PA输出方向
asm(" nop");
asm(" nop"
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
*PADATDIR = 0xFFC0; //
*PADATDIR = 0xFF00; // PA输出方向
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
*PADATDIR = 0xFFC0; //
*PADATDIR = 0xFF00;
*PADATDIR = 0xFFC0; //
XintFl= 0x00F1;
XintFl= 0x00F0;
XintFl= 0x00F1;
XintFl= 0x00F1;
XintFl= 0x00F1;
XintFl= 0x00F1;
XintFl= 0x00F0;
XintFl= 0x00F0;
XintFl= 0x00F0;
Fl = XintFl;
XintFl = *XINT1CR;*/
while(1);
}
SysInit()
{
asm(" setc INTM");
*WDCR = 0x0E8; //close watchdog
asm(" setc SXM");
*IFR = 0xFFFF;
*IMR = 0x0000;
*SCSR1 = 0x800F; //xclkin=10M, clkin = 5M;
WSGR = 0xFFFF; //1 wait for io space
//WSGR = 0xF008;
*XINT1CR = 0xFFF1;
/* Bit 2 = 0 下降沿产生中断
Bit 1 = 0 XINT1为高优先级中断
Bit 0 = 1 使能中断
*/
Flag[0] = '1';
}
ADCStart()
{ asm(" nop");
asm(" nop");
asm(" nop");
asm(" nop");
ADCCtrlByte = 0xFF51;
// ADCCtrlByte = 0xFFF0;
// ADCCtrlByte = 0x0FF2;
// ADCCtrlByte = 0xFFF2;
// ADCCtrlByte = 0xFFF2;
// ADCCtrlByte = 0x0FF0;
/* Bit 7,6 = 01 内部时钟模式
Bit 5 = 1 片内控制转换
Bit 4,3 = 10 电压输入范围0~Vref单极性
Bit 2,1,0 = 000 输入通道为通道0
*/
Flag[1] = 'S';
}
interrupt void ADCIsr()
{
Flag[2] = 'I';
for(i=0 ; i<0x100 ; i++)
{ }
ADCResult[0] = ADCLow8Bit;
ADCResult[1] = ADCHigh4Bit;
asm (" clrc INTM");
}
interrupt void PHANTOM(void)
{
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -