单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 324|回复: 0
打印 上一主题 下一主题
收起左侧

avr单片机精练的两路ADC代码+仿真图

[复制链接]
跳转到指定楼层
楼主
电路原理图如下:


  1. #include <iom16v.h>
  2. #include <macros.h>
  3. #define uchar unsigned char
  4. #define uchar  unsigned int

  5. const uchar SEG_CODE[] =
  6. {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xFF};

  7. uchar display[] = {0,0,0,10,0,0,0,10};

  8. void delay(uint mS);         


  9. void  main()
  10. {
  11.         
  12.         uchar  i;
  13.         
  14.         DDRA = 0xfc;   
  15.         
  16.         DDRC = 0xff;   PORTC = 0x00;
  17.         
  18.         DDRD = 0xff;   PORTD = 0x00;
  19.         
  20.         ADCSRA = 0xE6;
  21.         
  22.         delay(300);
  23.         
  24.         
  25.         while(1)
  26.                
  27.         {
  28.                
  29.                 ADC_num(0);  ADC_num(1);
  30.                
  31.                 for(i = 0; i < 8; i++)
  32.                 {
  33.                         PORTC = 0xff;
  34.                         
  35.                         PORTD = BIT(i);
  36.                         
  37.                         PORTC = SEG_CODE[display[i]];
  38.                         
  39.                         if(i == 0)PORTC &= 0x7F ;

  40.                      else if(i == 4)PORTC &= 0x7F ;
  41.                         
  42.                         delay(4);
  43.                         
  44.                 }
  45.         }
  46.         
  47. }


  48. void delay(uint mS)         
  49. {
  50.   uchar x,y;
  51.                 for(x=0;x<mS;x++)
  52.                         for(y=0;y<10;y++);
  53. }
复制代码


完整代码附件中

avr_精练的两路ADC.rar (20.61 KB, 下载次数: 12)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51黑电子论坛单片机. 联系QQ:125739409;技术交流QQ群582644647

Powered by 单片机教程网

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