嵌入式DA与AD接口的实验(3)

2019-03-22 20:43

图2-20 获取转换结果函数程序流程图

3.主函数(main.c)程序流程图如图2-21所示。

开发版初始化ARMTargetInit()初始化AD转换器采样前4路显示结果延时

图2-21 主函数程序流程图

D/A接口实验main.c程序:

#include \#include\#include \#include\

#pragma import(__use_no_semihosting_swi)

#define ADCCON_FLAG 0x40 #define ADCCON_SLEEP 0x20

#define ADCCON_ADIN0 (0x0<<2) #define ADCCON_ADIN1 (0x1<<2) #define ADCCON_ADIN2 (0x2<<2) #define ADCCON_ADIN3 (0x3<<2) #define ADCCON_ADIN4 (0x4<<2) #define ADCCON_ADIN5 (0x5<<2) #define ADCCON_ADIN6 (0x6<<2) #define ADCCON_ADIN7 (0x7<<2)

#define ADCCON_READ_START 0x2 #define ADCCON_ENABLE_START 0x1

void init_ADdevice() {//初始化

rADCPSR=20;

rADCCON=ADCCON_SLEEP; }

int GetADresult(int channel) {

rADCCON=(channel<<2)|ADCCON_ENABLE_START; Delay(10);

while(!(rADCCON&ADCCON_FLAG));//转换结束 return rADCDAT;//返回采样值 }

Main.c:

int main(void) {

int i; float d;

ARMTargetInit(); //开发版初始化 init_ADdevice(); Uart_Printf(\

while(1) {

//for(i=0; i<=3; i++) //{//采样0~3路A/D值

d=GetADresult(4)*2.5/1023; // 数据 采集,处理 Uart_Printf(\ Delay(3000); //}

Uart_Printf(\ }

return 0; }

七、实验心得:

实验中,我了解了A/D和D/A借口的原理,掌握了ARM的

相关寄存器的功能以及ARM系统硬件的相关借口。这个实验关键点

在于这个开发板中的直流电机的运用。实践检验真理,让理论更加容易的让人理解。


嵌入式DA与AD接口的实验(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:人教版2017高中语文(必修三)第2单元 五人墓碑记 Word版含答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: