中级会员
- 积分
- 416
- 威望
- 218
- 贡献
- 84
- 兑换币
- 125
- 注册时间
- 2013-3-8
- 在线时间
- 57 小时
- 毕业学校
- 铜陵学院
|
#include <hidef.h> /* common defines and macros */
#include "derivative.h" /* derivative-specific definitions */
int ATD0_data;
int ATD1_data;
#define BUS_CLOCK 32000000
#define BAUD 9600
/*************************************************************/
/* 初始化锁相环 */
/*************************************************************/
void PLL_32M(void)
{
CLKSEL &= 0x7f;
PLLCTL &= 0x8F;
CRGINT &= 0xDF;
SYNR = 0x43;
REFDV = 0x81;
PLLCTL = PLLCTL | 0x70;
asm NOP;
asm NOP;
while(!(CRGFLG&0x08));
CLKSEL |= 0x80;
}
/*************************************************************/
/* AD初始化 */
/*************************************************************/
void ATD_inits(void)
{
ATD0CTL1=0x00; //8位精度
ATD0CTL2=0X40; //快速清除
ATD0CTL3=0X10; //右对齐 序列2
ATD0CTL4=0X87;
ATD0DIEN=0X00; //ADclock = 32/(2*(1+1)) = 8M ADclock最大8.3M
}
/*************************************************************/
/* AD采集函数 */
/*************************************************************/
void ATD_gather(void)
{
ATD0CTL5=0X30; //单次转换
while(!(ATD0STAT0_SCF==1));
ATD0_data=ATD0DR0;
//ATD1_data=ATD0DR1;
}
/************************************************************/
/* 初始化串口 */
/************************************************************/
void SCI_inits(void)
{
SCI0BD=BUS_CLOCK/ 16/BAUD;
SCI0CR1=0x00;
SCI0CR2=0x08;
}
/************************************************************/
/* 串口发送函数 */
/************************************************************/
void SCI_send(unsigned char data)
{
while(!SCI0SR1_TDRE);
SCI0DRL=data;
}
/*************************************************************/
/* 延时函数 */
/*************************************************************/
void delay(void) //演示函数未测试具体时间仅用来测试系统是否运行
{
unsigned int i,j;
for(i=0;i<3;i++)
for(j=0;j<50000;j++);
}
void main(void)
{
/* put your own code here */
DisableInterrupts;
PLL_32M(); //PLL倍频
ATD_inits();
SCI_inits();
EnableInterrupts;
for(;;)
{
ATD_gather();
SCI_send(ATD0_data);
} /* loop forever */
/* please make sure that you never leave main */
}
|
|