微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > avr单片机的AD转换实验

avr单片机的AD转换实验

时间:09-20 来源:互联网 点击:

AD转换实验。
1、AD转换实验。程序进行周期AD转换,在并转换值显示在数码管上。
2、使用内部1 M晶振。
3、进行此实验需要插上:JP1的所有8个短路块、JP9(A/D)。
4、此实验采用项目化管理,主要文件有ADC、DISP、主程序。


*/

#include "iom16v.h"
#include macros.h>

#include "iom16v.h"
#include macros.h>

extern unsigned char get_ad(void);/*AD采样函数*/
extern void Disp_Init(void);/*显示初始化*/
extern unsigned char led_buf[];/*显示缓存*/

/*延时函数,频率1MHz,单位mS*/
void delay_ms(unsigned char i) {

unsigned char a, b;
for (a = 1; a i; a++) {
for (b = 1; b; b++) {
;
}
}
}
void main(void) {

unsigned char i;
DDRA = 0x00;/*方向输入*/
PORTA = 0x7F;/*打开上拉*/
DDRB = 0xFF;/*方向输出*/
PORTB = 0xFF;/*电平设置*/
DDRC = 0x00;
PORTC = 0xFF;
DDRD = 0x00;
PORTD = 0xFF;

delay_ms(200);/*加入延时*/
Disp_Init();/*电平设置*/
while (1) {
delay_ms(100);/*周期控制*/
i = get_ad();/*获取电压*/
led_buf[3] = 0;/*数值转换*/
led_buf[2] = i / 100;
led_buf[1] = (i % 100) / 10;
led_buf[0] = (i % 10);
}
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top