串口照相機(jī):GXT-Y201 是新一代串口攝像頭模組,具有串口抓拍高清晰圖像的功能。串口攝像頭模組是通過(guò)串口獲取 JPG 圖像的模塊,可以很容易集成到設(shè)備中去,讓設(shè)備具有圖像抓拍功能。
1.png (492.08 KB, 下載次數(shù): 85)
下載附件
串口照相機(jī)
2019-4-1 10:48 上傳
其性能如下:
1.. 支持串口讀取 JPG 圖像。
2. 上電默認(rèn)串口波特率 38400。
3. 支持模擬視頻輸出。
4. 尺寸大小 32mm×32mm。
5. 攝像頭工作電流為 80-100MA。
4.png (67.05 KB, 下載次數(shù): 71)
下載附件
2019-4-1 10:50 上傳
SDModule(Arduino兼容):SD卡存儲(chǔ)模塊是互動(dòng)媒體設(shè)備和機(jī)器人平臺(tái)最常用的存儲(chǔ)單元,其采用排針型SPI接口設(shè)計(jì),可插接到任意單片機(jī)控制器上,板載電源指示燈,可實(shí)時(shí)觀察電源供給情況,采用優(yōu)質(zhì)鉭電解電容濾波退耦,信號(hào)回路均用合適電阻進(jìn)行阻抗匹配以及消寄生振蕩處理。本模塊兼容Arduino傳感器擴(kuò)展板V5、ArduinoMEGA傳感器擴(kuò)展板。
3.png (3.84 KB, 下載次數(shù): 67)
下載附件
2019-4-1 10:50 上傳
2.png (164.71 KB, 下載次數(shù): 74)
下載附件
2019-4-1 10:49 上傳
連接光線傳感器
6.png (98.75 KB, 下載次數(shù): 91)
下載附件
2019-4-1 10:52 上傳
都連接好后,進(jìn)行程序編寫: 參考程序: - #include <camera_VC0706.h>
- #include <SD.h>
- #include <SoftwareSerial.h>
- #define chipSelect 4
- #if ARDUINO >= 100
- SoftwareSerial cameraconnection =SoftwareSerial(2, 3);
- #else
- NewSoftSerial cameraconnection =NewSoftSerial(2, 3);
- #endif
- camera_VC0706 cam =camera_VC0706(&cameraconnection);
- void setup() {
- #if !defined(SOFTWARE_SPI)
- #if defined(__AVR_ATmega1280__) ||defined(__AVR_ATmega2560__)
- if(chipSelect != 53) pinMode(53, OUTPUT); // SS on Mega
- #else
- if(chipSelect != 4) pinMode(4, OUTPUT); // SS on Uno, etc.
- #endif
- #endif
- pinMode(7,INPUT_PULLUP);
- Serial.begin(9600);
- Serial.println("VC0706 Camera test");
- if(!SD.begin(chipSelect)) {
- Serial.println("Card failed, or not present");
- return;
- }
- if (cam.begin()) {
- Serial.println("Camera Found:");
- }else {
- Serial.println("No camera found?");
- return;
- }
- char*reply = cam.getVersion();
- if(reply == 0) {
- Serial.print("Failed to get version");
- }else {
- Serial.println("-----------------");
- Serial.print(reply);
- Serial.println("-----------------");
- }
- cam.setImageSize(VC0706_640x480);
- //cam.setImageSize(VC0706_320x240);
- //cam.setImageSize(VC0706_160x120);
- uint8_t imgsize = cam.getImageSize();
- Serial.print("Image size: ");
- if(imgsize == VC0706_640x480) Serial.println("640x480");
- if(imgsize == VC0706_320x240) Serial.println("320x240");
- if(imgsize == VC0706_160x120) Serial.println("160x120");
- Serial.println("Get ready !");
- }
- void loop() {
- if(digitalRead(7)== 0) {
- delay(10);
- if(digitalRead(7)== 0) {
- if (! cam.takePicture())
- Serial.println("Failed to snap!");
- else
- Serial.println("Picture taken!");
- char filename[13];
- strcpy(filename, "IMAGE00.JPG");
- for (int i = 0; i < 100; i++) {
- filename[5] = '0' + i/10;
- filename[6] = '0' + i%10;
- // create if does not exist, do not open existing, write, sync afterwrite
- if (! SD.exists(filename)) {
- break;
- }
- }
- File imgFile = SD.open(filename, FILE_WRITE);
- uint16_t jpglen = cam.frameLength();
- Serial.print(jpglen, DEC);
- Serial.println(" byte image");
- Serial.print("Writing image to ");
- Serial.print(filename);
- while (jpglen > 0) {
- // 一次讀取32bytes
- uint8_t *buffer;
- uint8_t bytesToRead = min(32,jpglen); buffer =cam.readPicture(bytesToRead);
- imgFile.write(buffer, bytesToRead);
- jpglen -= bytesToRead;
- }
- imgFile.close();
- Serial.println("...Done!");
- cam.resumeVideo();
- }
- }
- }
復(fù)制代碼
運(yùn)行正常后,如下圖:
5.png (249.45 KB, 下載次數(shù): 73)
下載附件
2019-4-1 10:53 上傳
7.jpg (20.8 KB, 下載次數(shù): 71)
下載附件
2019-4-1 10:54 上傳
僅供參考。
|