欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: arduino控制攝像頭實(shí)現(xiàn)遠(yuǎn)光燈抓拍程序參考 [打印本頁]

作者: 不再是什么    時(shí)間: 2019-4-1 10:54
標(biāo)題: arduino控制攝像頭實(shí)現(xiàn)遠(yuǎn)光燈抓拍程序參考
串口照相機(jī):GXT-Y201 是新一代串口攝像頭模組,具有串口抓拍高清晰圖像的功能。串口攝像頭模組是通過串口獲取 JPG 圖像的模塊,可以很容易集成到設(shè)備中去,讓設(shè)備具有圖像抓拍功能。
                                

其性能如下:
1.. 支持串口讀取 JPG 圖像。
2. 上電默認(rèn)串口波特率 38400。
3. 支持模擬視頻輸出。
4. 尺寸大小 32mm×32mm。
5. 攝像頭工作電流為 80-100MA。
  


SDModule(Arduino兼容):SD卡存儲(chǔ)模塊是互動(dòng)媒體設(shè)備和機(jī)器人平臺(tái)最常用的存儲(chǔ)單元,其采用排針型SPI接口設(shè)計(jì),可插接到任意單片機(jī)控制器上,板載電源指示燈,可實(shí)時(shí)觀察電源供給情況,采用優(yōu)質(zhì)鉭電解電容濾波退耦,信號回路均用合適電阻進(jìn)行阻抗匹配以及消寄生振蕩處理。本模塊兼容Arduino傳感器擴(kuò)展板V5、ArduinoMEGA傳感器擴(kuò)展板。



連接光線傳感器


都連接好后,進(jìn)行程序編寫:
參考程序:
  1. #include <camera_VC0706.h>
  2. #include <SD.h>
  3. #include <SoftwareSerial.h>
  4. #define chipSelect 4
  5. #if ARDUINO >= 100
  6. SoftwareSerial cameraconnection =SoftwareSerial(2, 3);
  7. #else
  8. NewSoftSerial cameraconnection =NewSoftSerial(2, 3);
  9. #endif
  10. camera_VC0706 cam =camera_VC0706(&cameraconnection);
  11. void setup() {
  12. #if !defined(SOFTWARE_SPI)
  13. #if defined(__AVR_ATmega1280__) ||defined(__AVR_ATmega2560__)
  14. if(chipSelect != 53) pinMode(53, OUTPUT); // SS on Mega
  15. #else
  16. if(chipSelect != 4) pinMode(4, OUTPUT); // SS on Uno, etc.
  17. #endif
  18. #endif
  19. pinMode(7,INPUT_PULLUP);
  20. Serial.begin(9600);
  21. Serial.println("VC0706 Camera test");
  22.   if(!SD.begin(chipSelect)) {
  23.    Serial.println("Card failed, or not present");
  24.    return;
  25.   }
  26.    if (cam.begin()) {
  27.    Serial.println("Camera Found:");
  28.   }else {
  29.    Serial.println("No camera found?");
  30.    return;
  31.   }
  32.   char*reply = cam.getVersion();
  33.   if(reply == 0) {
  34.    Serial.print("Failed to get version");
  35.   }else {
  36.    Serial.println("-----------------");
  37.    Serial.print(reply);
  38.    Serial.println("-----------------");
  39.   }
  40. cam.setImageSize(VC0706_640x480);
  41.   //cam.setImageSize(VC0706_320x240);
  42. //cam.setImageSize(VC0706_160x120);
  43. uint8_t imgsize = cam.getImageSize();
  44. Serial.print("Image size: ");
  45.   if(imgsize == VC0706_640x480) Serial.println("640x480");
  46.   if(imgsize == VC0706_320x240) Serial.println("320x240");
  47.   if(imgsize == VC0706_160x120) Serial.println("160x120");
  48. Serial.println("Get ready !");
  49. }
  50. void loop() {
  51. if(digitalRead(7)== 0) {
  52.    delay(10);
  53.    if(digitalRead(7)== 0) {
  54.      if (! cam.takePicture())
  55.        Serial.println("Failed to snap!");
  56.      else
  57.        Serial.println("Picture taken!");
  58.      char filename[13];
  59.      strcpy(filename, "IMAGE00.JPG");
  60.      for (int i = 0; i < 100; i++) {
  61.        filename[5] = '0' + i/10;
  62.        filename[6] = '0' + i%10;
  63.        // create if does not exist, do not open existing, write, sync afterwrite
  64.        if (! SD.exists(filename)) {
  65.          break;
  66.        }
  67.      }
  68.      File imgFile = SD.open(filename, FILE_WRITE);
  69.      uint16_t jpglen = cam.frameLength();
  70.      Serial.print(jpglen, DEC);
  71.      Serial.println(" byte image");
  72.      Serial.print("Writing image to ");
  73.      Serial.print(filename);
  74.      while (jpglen > 0) {
  75.        // 一次讀取32bytes
  76.        uint8_t *buffer;
  77.        uint8_t bytesToRead =  min(32,jpglen);        buffer =cam.readPicture(bytesToRead);
  78.        imgFile.write(buffer, bytesToRead);
  79.        jpglen -= bytesToRead;
  80.      }
  81.      imgFile.close();
  82.      Serial.println("...Done!");
  83.          cam.resumeVideo();
  84.     }
  85.   }
  86. }
復(fù)制代碼




運(yùn)行正常后,如下圖:



僅供參考。


作者: 大貓8888    時(shí)間: 2019-6-28 16:14
學(xué)習(xí)一下

作者: youquan    時(shí)間: 2019-6-29 16:44
謝謝樓主分享
作者: LUQIMAI    時(shí)間: 2019-7-27 11:42
想問問樓主,你成的像在哪里顯示的? 是用的軟件嗎?還是另外的顯示模塊?




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1