DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 438|回复: 0
打印 上一主题 下一主题

avr单片机的AD转换实验

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-27 17:25:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
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);
  }
}                                 
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-7-28 14:36 , 耗时 0.079437 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表