久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2347|回復: 3
收起左側

STC8單片機12位AD轉換顯示程序

[復制鏈接]
ID:710173 發表于 2022-9-5 19:11 | 顯示全部樓層 |閱讀模式
  1. #include<STC8.H>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. #define ulong unsigned long
  5. //***********y延時聲明**************************
  6. void Delay(uint t);
  7. void LCD_Delay(uint t);
  8. //***********LCD1602聲明***********************************
  9. void lcd_init(void);
  10. void DisplayOneChar(uint X, uint Y, uint DData);
  11. //**********************************************
  12. sbit LED0=P7^1;
  13. //**********************************************
  14. uchar xdata table1[]={"                "};
  15. uchar xdata table2[]={"ADC_V:          "};
  16. //**********************************************
  17. uint ADC_Result;uint ADC_count; ulong ADC_sum;uint xdata ADC_data[100]; uint ADC_flag;
  18. void Display_line(uchar y,uchar *DData)
  19. {   
  20.         uchar i;
  21.         for(i=0;i<16;i++)
  22.         {
  23.            if(y==0) DisplayOneChar(i,0,DData[i]);
  24.                 else  if(y==1)  DisplayOneChar(0x40+i,1,DData[i]);
  25.         }
  26. }
  27. void table2_charge()
  28. {
  29.         table2[8]=ADC_Result%10000/1000+0x30;
  30.         table2[9]=ADC_Result%1000/100+0x30;
  31.         table2[10]=ADC_Result%100/10+0x30;
  32.         table2[11]=ADC_Result%10+0x30;
  33. }
  34. void ADC_init()
  35. {
  36.    P1M0 &=0xBF; //設置 P0.6 為 ADC 口    M1為1,M0為0,高阻輸入   1011 1111   0100 0000
  37.    P1M1 |= 0x40;
  38.    ADCCFG = 0x0f; //設置 ADC 時鐘為系統時鐘/2/16/16  數據左對齊
  39.    ADC_CONTR = 0x8E; //使能 ADC 模塊      使能  1000 1110  通道P0.6
  40.    EADC = 1; //使能 ADC 中斷
  41.    EA = 1;
  42.    ADC_CONTR |= 0x40; //啟動 AD 轉換
  43. }
  44. void ADC_filter(uint *P)
  45. {
  46.         uint i,j,temp;
  47.         ulong sum=0;

  48.         
  49.     for(j=0;j<99;j++)
  50.         for(i=0;i<99-j;i++)
  51.         {
  52.                 if(*(P+i)>*(P+i+1))
  53.                 {
  54.                         temp=*(P+i);
  55.                         *(P+i)=*(P+i+1);
  56.                         *(P+i+1)=temp;
  57.                 }
  58.          }
  59.             if(ADC_flag!=0)
  60.         {                for(i=45;i<55;i++)
  61.                 {
  62.                   sum+=P[i];
  63.                 }
  64.                 //ADC_Result=sum/10;
  65.                 ADC_Result=(uint)((float)(sum/10*2.5/4.096));
  66.          }
  67. }
  68. void main()
  69. {
  70.         LED0=0;
  71.         lcd_init();
  72.         ADC_init();
  73.         ADC_count=0;ADC_flag=0;
  74.         while(1)
  75.         {
  76. //            LED0=!LED0;
  77. //                LCD_Delay(5);
  78.                 table2_charge();
  79.                 Display_line(0,table1);
  80.                 Display_line(1,table2);
  81.                 ADC_filter(ADC_data);

  82.         }
  83. }
  84. void ADC_Isr() interrupt 5
  85. {
  86. ADC_CONTR &= ~0x20; //清中斷標志
  87. ADC_data[ADC_count]= (ADC_RESL>>4)+ADC_RES*16; //讀取 ADC 結果
  88. ADC_CONTR |= 0x40; //繼續 AD 轉換
  89.         
  90. ADC_count++;

  91. if( ADC_count>100) {ADC_count=0; ADC_flag++; if(ADC_flag>=2) ADC_flag=1;}

  92. }
復制代碼
回復

使用道具 舉報

ID:513213 發表于 2022-9-8 17:59 | 顯示全部樓層
一下程序呢?
//***********y延時聲明**************************
void Delay(uint t);
void LCD_Delay(uint t);
//***********LCD1602聲明***********************************
void lcd_init(void);
void DisplayOneChar(uint X, uint Y, uint DData);
回復

使用道具 舉報

ID:28625 發表于 2022-12-2 20:56 | 顯示全部樓層
樓主,沒有完呀
回復

使用道具 舉報

ID:28625 發表于 2022-12-2 20:56 | 顯示全部樓層
沒有完
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品一区二区观看 | 日韩亚洲一区二区 | 亚洲国产精品成人综合久久久 | 一级a爱片性色毛片免费 | 国产高清视频一区二区 | 日韩欧美国产一区二区 | 国产精品成av人在线视午夜片 | 成人免费视频网 | 日本一区二区三区四区 | 韩日在线视频 | 国产片淫级awww | 国产成人精品一区二区三区四区 | 亚洲国产成人精品在线 | 国产精品夜夜夜一区二区三区尤 | 国产女人叫床高潮大片免费 | 一区二区在线免费观看 | 特级特黄特色的免费大片 | 日日夜夜天天久久 | 欧美一区2区三区4区公司 | 精品一区二区三区av | 亚洲男人的天堂网站 | 亚洲精品欧洲 | 91视频在线看 | 女人毛片a毛片久久人人 | 综合中文字幕 | 亚洲精品视频网站在线观看 | 精品亚洲一区二区三区 | 97精品超碰一区二区三区 | 亚洲色欧美另类 | aa级毛片毛片免费观看久 | 国产高清视频在线 | 久久综合九九 | 一级片在线观看 | 色综合久 | 中文字幕蜜臀 | 韩国精品一区二区三区 | 综合第一页 | 亚洲欧美在线视频 | 色婷婷九月| 黄色网一级片 | 国产精品国产三级国产aⅴ中文 |