<पूर्व>
#include & lt; unistd.h & gt; # शामिल करें & lt; stdio.h & gt; # शामिल करें & lt; fcntl.h & gt; #include & lt; linux / fb.h & gt; # शामिल करें & lt; sys / mman.h & gt; Int main () {int fbfd = 0; Struct fb_var_screeninfo vinfo; Struct fb_fix_screeninfo finfo; लंबे समय तक int screensize = 0; चार एफबीपी = 0; Int x = 0, y = 0; लंबे इंट स्थान = 0; // fbfd = open ("/ dev / fb0", O_RDWR) पढ़ने और लिखने के लिए फ़ाइल खोलें; If (! Fbfd) {printf ("त्रुटि: फ़्रेमबफर डिवाइस नहीं खोल सकता। \ N"); बाहर निकलने के (1); } Printf ("फ़्रेमबफर डिवाइस सफलतापूर्वक खोला गया था। \ N"); // स्थिर स्क्रीन जानकारी प्राप्त करें यदि (ioctl (fbfd, FBIOGET_FSCREENINFO, और amp; finfo)) {printf ("निश्चित जानकारी पढ़ने में त्रुटि। \ N"); बाहर निकलने के (2); } // चर स्क्रीन जानकारी प्राप्त करें यदि (ioctl (fbfd, FBIOGET_VSCREENINFO, & amp; vinfo)) {printf ("चर जानकारी को पढ़ने में त्रुटि। \ N"); बाहर निकलने के (3); } // बाइट्स में स्क्रीन के आकार को स्क्रीनसेज़ करें = vinfo.xres * vinfo.yres * vinfo.bits_per_pixel/8; // मेमोरी को मेमोरी के लिए मेमोरी = fbp = (चार *) mmap (0, स्क्रीन आकार, PROT_READ | PROT_WRITE, MAP_SHARED, एफबीएफडी, 0); यदि ((int) fbp == -1) {printf ("त्रुटि: फ्रेमबफर डिवाइस मेमोरी में मैप करने में असफल। \ N"); बाहर निकलने के (4); } Printf ("फ़्रेमबफर डिवाइस को सफलतापूर्वक स्मृति में मैप किया गया था। \ N"); के लिए (y = 0; y & lt; 240; y ++) {for (x = 0; x & lt; 320; x ++) {x = 100; Y = 100; // जहां हम पिक्सेल को डालने जा रहे हैं, // चित्रा को पिक्सेल स्थान = (x + vinfo.xoffset) को रखने के लिए स्मृति में कहां है * (vinfo.bits_per_pixel/4) + (y + vinfo.yoffset) * finfo.line_length ; * (एफबीपी + स्थान) = 255; }} मनलम (एफबीपी, स्क्रीनसेज); करीब (fbfd); वापसी 0; } त्रुटि: पंक्ति संख्या 57 में त्रुटि हो रही है: 'unary *' का अमान्य प्रकार तर्क ('लंबे अंतराल' है)
चार fbp = 0;
होना चाहिए था
char * fbp;
No comments:
Post a Comment