📄 user_hanshu.c
字号:
#include<spce061a_chf.h>
#include"bit.h"
//////////////////////////////////////////
//定义相应的标号
//////////////////////////////////////////
#define ALE P0_0
#define START P0_3
#define EOC P0_2
#define OE P0_1
#define ADDA P0_4
#define ADDB P0_5
#define ADDC P0_6
void delay();
//////////////////////////////////////////
//函数:void init_IO_AD(void)
//描述:AD采集时候用到的IO口初始化
//参数:无
//返回:无
//////////////////////////////////////////
void init_IO_AD(void)
{
*P_IOA_Dir=0x00ff;
*P_IOA_Attrib=0x00ff;
*P_IOA_Data=0x0000;//高8位为数字量输入,低8位为控制线端口
}
///////////////////////////////////////////
//函数:float read_AD(unsigned int Line_num)
//描述:读取相应通道的电压值
//参数:Line_num相应的通道号
//返回:返回相应的电压值
///////////////////////////////////////////
float read_AD(void)
{
float AD_fvloatge=0.0;
unsigned int AD_uiData=0;
ADDA=1;
ADDB=1;
ADDC=0;
ALE=1;
asm("nop");
asm("nop");
ALE=0;
START=1;
asm("nop");
asm("nop");
asm("nop");
asm("nop");
START=0;//启动AD转换
PA_Dir->bit.bit2=0;//改成输入方式
delay();
while(EOC==0);
OE=1;
asm("nop");
asm("nop");
AD_uiData=PA->byte.byteh;//读取数据????????可以多加几句测试读数是否一样
AD_fvloatge=AD_uiData*5.0/255;
return AD_fvloatge;
}
void delay(void)
{
unsigned int i=400;
while(i--)
{
asm("nop");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -