📄 main.c
字号:
#include "msp430x22x4.h"
//延时函数定义
//************************************************************************
#define CPU_F ((double)1000000)
#define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0))
#define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0))
//************************************************************************
//p3.0--CONV
//p3.1--CLK
//p3.2--DATA
unsigned int data_12ad;
unsigned int Read_ad()
{
unsigned char i;
unsigned int result=0;
P2OUT&=~BIT0;//CONV低电平
P2OUT&=~BIT1;//clk置低电平
P2OUT|=BIT1;//clk置高电平
//第一个CLK周期丢掉不用,转换结果从第二个CLK周期开始
for(i=0;i<=12;i++)
{
P2OUT&=~BIT1;//clk置低电平
if(P2IN&0x04)
{
result<<=1;
result+=0x01;
}
else result<<=1;
P2OUT|=BIT1;//clk置高电平
}
P2OUT|=BIT0;//CONV高电平初始化,准备转换
return (result);
}
void main ()
{
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
BCSCTL1=CALBC1_1MHZ; //设定DCO 为1MHZ
DCOCTL=CALDCO_1MHZ;
P2DIR=0x03;//p4.0--CONV
//p4.1--CLK
//p4.2--DATA
P2OUT|=BIT0;//CONV高电平初始化,准备转换
P2OUT&=~BIT1;//clk置低电平
//delay_us(20);
data_12ad=Read_ad();
while(1);//{data_12ad=Read_ad();
//delay_us(100);
//}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -