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

標題: 用ADC_8bit(0)高速采樣的示波器演示Arduino程序 [打印本頁]

作者: lgf2974    時間: 2019-5-19 15:04
標題: 用ADC_8bit(0)高速采樣的示波器演示Arduino程序
      
        1.  Nokia5110顯示屏顯示波形 , U8GLIB_PCD8544 u8g(3, 4, 99, 5, 6); // SPI Com: SCK = 3, MOSI = 4, CS = 永遠接地, dc = 5, Reset = 6
        2.  A0信號輸入。
        3.  D9輸出自帶10khz方波信號,D9與A0相接可以自測方波波形。
        4.  Buffer[x] = 47-(Buffer[x]>>2); //計算縱坐標值47大小可以改變水平軸上下移動
        5.  ADC.H庫和u8glib庫附件

Arduino源程序如下:
  1. #include <U8glib.h> //聲明庫
  2. #include<ADC.h>
  3. //Nokia5110示波器演示
  4. U8GLIB_PCD8544 u8g(3, 4, 99, 5, 6); // SPI Com: SCK = 3, MOSI = 4, CS = 永遠接地, dc = 5, Reset = 6
  5. int Input = A0;  //聲明輸入引腳
  6. int x,y; //繪點坐標
  7. float Vpp;
  8. int Buffer[84]; //緩存值儲存數組
  9. int Buf,Bu;
  10. void setup( )
  11. {
  12.    ADMUX=0xe0;  //測量通道0
  13.    ADCSRA=0xe2;
  14.   u8g.setFont(u8g_font_5x7);
  15.    u8g.firstPage();
  16.       analogReference(INTERNAL); //ADC使用單片機內部1.1V基準
  17.   u8g.setContrast(110);//設置對比度0-255
  18.    

  19. // 下面的等值于 OC1A = 輸出用于定時器1的CTC模式
  20.   pinMode(9, OUTPUT);  // 設置默認關聯了D9(查表得知)為輸出,方波輸出A10
  21.   TCCR1B=0; // 只是個復位的習慣可以不要
  22.   TCCR1A=_BV(COM1A0); // 要是困擾的話你也可以寫成 TCCR1A = 0b01000000;
  23.   //這里和上一個表示了 = CTC 模式, 開啟比較器(默認輸出), prescaler = 1
  24.   TCCR1B = _BV(WGM12)|_BV(CS10) ; //  這里等值于 TCCR1B = 0b00001001;

  25.   // 最有意思的了,16位的玩意來確定要一個怎樣的頻率
  26.   OCR1A = 800; // 計算為:F_CPU/2/Need_HZ-1 來得到你想要的,遺憾的是四舍五入來截取頻率800相當于10khz
  27.   }

  28. //采樣

  29. void sample( )  

  30. {  

  31. for(x = 0;x < 84;x++)

  32.   // Buffer[x] = analogRead(A0);  //信號采樣
  33.   // Buf=   analogRead(A1);
  34.    // Buf = ADCH;
  35.    Buffer[x] = ADC_8bit(0);//0表示A0輸入
  36. for(x = 0;x < 84;x++)  

  37.    Buffer[x] = 47-(Buffer[x]>>2); //計算縱坐標值47大小可以改變水平軸上下移動

  38. }

  39. //顯示

  40. void draw( )  

  41. {  
  42.   for(x = 0;x < 83;x++)
  43.    
  44.    /*    u8g.drawStr(40,7,"V");
  45.         u8g.setPrintPos(10,7);
  46.        u8g.print(Buf);
  47.        u8g.setPrintPos(10,15);
  48.        u8g.print(Bu);*/
  49.       
  50.        for(x = 0;x < 83;x++)
  51.        for(x = 0;x < 83;x++)
  52.       u8g.drawLine(x,Buffer[x],x,Buffer[x+1]);  //畫相鄰兩點連線
  53.       
  54.       for(x = 0;x < 83;x++)   
  55.       u8g.drawLine(42,0,42,47);  // 畫x坐標軸
  56.        u8g.drawLine(0,24,84,24); // 畫y坐標軸
  57.        for(x=2;x<84;x+=8)        //畫x坐標軸刻度
  58.        u8g.drawLine(x,23,x,25);
  59.        for(x=0;x<48;x+=8)        //畫y坐標軸刻度
  60.        u8g.drawLine(41,x,43,x);   
  61.        u8g.drawFrame(0,0,84,48); //畫邊框
  62.      
  63. }   

  64. void loop( )

  65. {

  66.    sample();         //采樣

  67.    u8g.firstPage();  //清屏

  68.    do  draw( );      //顯示

  69.    while( u8g.nextPage( ));

  70. }
復制代碼

所有資料51hei提供下載:
ADC_8bit_1_.rar (1.46 KB, 下載次數: 27)
ADC.rar (969 Bytes, 下載次數: 29)
U8Glib.7z (550.41 KB, 下載次數: 13)








歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 在线观看av网站 | 成人免费小视频 | 男女网站在线观看 | 国产精品久久久久久久久久久免费看 | 在线播放国产一区二区三区 | 亚洲美女一区 | 欧美白人做受xxxx视频 | 亚洲不卡视频 | 91就要激情 | 美女久久久久 | 久久国产电影 | 成人av观看 | 一级黄色片网址 | 午夜久久久久久久久久一区二区 | 色天堂影院 | 艹逼网 | av黄色在线 | 艹逼网 | 九九精品在线 | 国产中文字幕在线 | 超碰人人人| 色综合天天综合网国产成人网 | 亚洲欧美中文日韩在线v日本 | 91精品国产91久久久久久最新 | 成人av网站在线观看 | 欧美一区二区在线免费观看 | 一区二区三区在线观看视频 | 亚洲综合精品 | 欧美日一区 | 91国产视频在线观看 | 精品久久久久久久久久久久久久 | 特黄色毛片 | 国产精品久久久久久亚洲调教 | 色狠狠一区 | 欧美精品一区二区三区在线四季 | 亚洲天堂一区二区 | 日韩aⅴ视频 | 亚洲女人天堂网 | 国产精品一区二区av | 紧缚调教一区二区三区视频 | 在线一区二区观看 |