当前位置: 首页 > news >正文

建设c2c网站需要多少投资深圳品牌策划公司计划书

建设c2c网站需要多少投资,深圳品牌策划公司计划书,软件技术就业前景分析,seo顾问服务 乐云践新专家编写使用多buffer的应用程序 文章目录编写使用多buffer的应用程序一、 编写一个支持单buffer、多buffer的APP二、 编译程序2.1 设置工具链2.2 编译三、上机测试3.1 恢复内核使用自带的LCD驱动3.2 禁止开发板自带的GUI程序3.3 把测试程序放到板子上、执行四、 LCD自动黑屏致谢一…编写使用多buffer的应用程序 文章目录编写使用多buffer的应用程序一、 编写一个支持单buffer、多buffer的APP二、 编译程序2.1 设置工具链2.2 编译三、上机测试3.1 恢复内核使用自带的LCD驱动3.2 禁止开发板自带的GUI程序3.3 把测试程序放到板子上、执行四、 LCD自动黑屏致谢一、 编写一个支持单buffer、多buffer的APP 循环显示整屏幕的红、绿、蓝、黑、白。 二、 编译程序 2.1 设置工具链 对于IMX6ULL export ARCHarm export CROSS_COMPILEarm-linux-gnueabihf- export PATH$PATH:/work/imx6ull-sdk/ToolChain/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf/bin2.2 编译 #include sys/mman.h #include sys/types.h #include sys/stat.h #include unistd.h #include linux/fb.h #include fcntl.h #include stdio.h #include string.h #include sys/ioctl.h #include time.hstatic int fd_fb; static struct fb_fix_screeninfo fix; /* Current fix */ static struct fb_var_screeninfo var; /* Current var */ static int screen_size; static unsigned char *fb_base; static unsigned int line_width; static unsigned int pixel_width;/******************************************************************************** FunctionName: lcd_put_pixel* Author: Hilbert* DateTime: 2023年2月23日T12:38:510800* Purpose: 在LCD指定位置上输出指定颜色描点* param: x坐标y坐标颜色 *******************************************************************************/ void lcd_put_pixel(void *fb_base, int x, int y, unsigned int color) {unsigned char *pen_8 fb_basey*line_widthx*pixel_width;unsigned short *pen_16; unsigned int *pen_32; unsigned int red, green, blue; pen_16 (unsigned short *)pen_8;pen_32 (unsigned int *)pen_8;switch (var.bits_per_pixel){case 8:{*pen_8 color;break;}case 16:{/* 565 */red (color 16) 0xff;green (color 8) 0xff;blue (color 0) 0xff;color ((red 3) 11) | ((green 2) 5) | (blue 3);*pen_16 color;break;}case 32:{*pen_32 color;break;}default:{printf(cant surport %dbpp\n, var.bits_per_pixel);break;}} }void lcd_draw_screen(void *fb_base, unsigned int color) {int x, y;for (x 0; x var.xres; x)for (y 0; y var.yres; y)lcd_put_pixel(fb_base, x, y, color); }/* ./multi_framebuffer_test single* ./multi_framebuffer_test double*/ int main(int argc, char **argv) {int i;int ret;int nBuffers;int nNextBuffer 1;char *pNextBuffer;unsigned int colors[] {0x00FF0000, 0x0000FF00, 0x000000FF, 0, 0x00FFFFFF}; /* 0x00RRGGBB */struct timespec time;time.tv_sec 0;time.tv_nsec 100000000;if (argc ! 2){printf(Usage : %s single|double\n, argv[0]);return -1;}fd_fb open(/dev/fb0, O_RDWR);if (fd_fb 0){printf(cant open /dev/fb0\n);return -1;}if (ioctl(fd_fb, FBIOGET_FSCREENINFO, fix)){printf(cant get fix\n);return -1;}if (ioctl(fd_fb, FBIOGET_VSCREENINFO, var)){printf(cant get var\n);return -1;}line_width var.xres * var.bits_per_pixel / 8;pixel_width var.bits_per_pixel / 8;screen_size var.xres * var.yres * var.bits_per_pixel / 8;nBuffers fix.smem_len / screen_size;printf(nBuffers %d\n, nBuffers);fb_base (unsigned char *)mmap(NULL , fix.smem_len, PROT_READ | PROT_WRITE, MAP_SHARED, fd_fb, 0);if (fb_base (unsigned char *)-1){printf(cant mmap\n);return -1;}if ((argv[1][0] s) || (nBuffers 1)){while (1){/* use single buffer */for (i 0; i sizeof(colors)/sizeof(colors[0]); i){lcd_draw_screen(fb_base, colors[i]);nanosleep(time, NULL);}}}else{/* use double buffer *//* a. enable use multi buffers */var.yres_virtual nBuffers * var.yres;ioctl(fd_fb, FBIOPUT_VSCREENINFO, var);while (1){for (i 0; i sizeof(colors)/sizeof(colors[0]); i){/* get buffer */pNextBuffer fb_base nNextBuffer * screen_size;/* set buffer */lcd_draw_screen(pNextBuffer, colors[i]);/* switch buffer */var.yoffset nNextBuffer * var.yres;ioctl(fd_fb, FBIOPAN_DISPLAY, var);ret 0;ioctl(fd_fb, FBIO_WAITFORVSYNC, ret);nNextBuffer !nNextBuffer;nanosleep(time, NULL);}}}munmap(fb_base , screen_size);close(fd_fb);return 0; }设置好工具链后把use_multi_framebuffer上传到Ubuntu在该目录下执行make即可 三、上机测试 3.1 恢复内核使用自带的LCD驱动 恢复驱动程序修改drivers/video/fbdev/Makefile恢复内核自带的mxsfb.c如下 obj-$(CONFIG_FB_MXS) mxsfb.o #obj-$(CONFIG_FB_MXS) lcd_drv.o编译设备树 把设备村文件复制到内核arch/arm/boo/dts目录 重新编译内核、设备树 make zImage make dtbs替换内核、设备树 把编译出来的arch/arm/boot/zImage、arch/arm/boot/dts/imx6ull-14x14.dtb放到开发板的/boot目录 3.2 禁止开发板自带的GUI程序 在开发板上执行以下命令 [originalubuntu:~]# mv /etc/init.d/S99myirhmi2 /etc/ [originalubuntu:~]# reboot3.3 把测试程序放到板子上、执行 以下命令在开发板中执行。 挂载NFS vmware使用NAT(假设windowsIP为192.168.1.100) [originalubuntu:~]# mount -t nfs -o nolock,vers3,port2049,mountport9999 192.168.1.100:/work/nfs_rootfs /mntvmware使用桥接或者不使用vmware而是直接使用服务器假设Ubuntu IP为192.168.19.25 [originalubuntu:~]# mount -t nfs -o nolock,vers3 192.168.96.25:/work/nfs_rootfs /mnt复制、执行程序 [originalubuntu:~]# cp /mnt/multi_framebuffer_test /bin [originalubuntu:~]# multi_framebuffer_test single 或 multi_framebuffer_test double四、 LCD自动黑屏 为了省电LCD在10分钟左右会自动黑屏。 如果你正在运行multi_framebuffer_test程序可能会有如下提示(以IMX6ULL为例) [ 961.147548] mxsfb 21c8000.lcdif: cant wait for VSYNC when fb is blank这表示当屏幕为blank(黑屏)时无法等待VSYNC。 我们可以禁止LCD自动黑屏执行以下命令即可 #close lcd sleep echo -e \033[9;0] /dev/tty1 echo -e \033[?25l /dev/tty1致谢 以上笔记源自韦东山老师的视频课程感谢韦老师,韦老师是嵌入式培训界一股清流为嵌入式linux开发点起的星星之火也愿韦老师桃李满园。聚是一团火散是满天星 在这样一个速食的时代坚持做自己慢下来潜心琢磨心怀敬畏领悟知识才能向下扎到根向上捅破天背着世界往前行 仅此向嵌入行业里的每一个认真做技术的从业者致敬
http://www.sczhlp.com/news/263324/

相关文章:

  • 茶网站源码网站案例分析湖南
  • 河源市住房和城乡建设局网站茂名市电白区住房和城乡建设局网站
  • 店铺装修网站wordpress 模板 管理系统
  • 娄底市网站建设南通网站推广排名
  • 深圳建网站培训学校积分网站运营建设投标书
  • 莱州相亲网站百度广告怎么投放
  • 2025 年 11 月码垛机厂家推荐排行榜,全自动码垛机,高低位码垛机,编织袋/纸箱/桶/粉料/肥料码垛机,码垛机器人,江苏无锡全自动码垛机厂家推荐
  • 俄罗斯网站模版如何查询公司名称能不能注册
  • KL散度
  • 目录映射
  • 英文网站建设easy手机网站怎么制作内容
  • 东莞企业免费模版网站建设wordpress 主题 打包
  • 网站开发 h5 h4网站图片相册代码
  • 做鞋的网站网站注册建设费用
  • a站播放量最高的视频哪里可以学ps软件网课
  • 辽宁丹东建设工程信息网站破解版成年猫咪版永久
  • 信息化建设 网站建设等方面北京微信网站
  • wp如何做引擎网站自建网上商城
  • 网站建设详细的步骤有哪些电商平台的营销方式
  • 具有价值的专业网站建设平台上海松江网站建设公司
  • 公共建设工程中心网站蒲城网站建设wzjseo
  • 如何评判一个网站建设的怎么样怎么建设幸运28网站
  • 新源网站建设做微博分析的网站
  • 搭建网站服务器多少钱网站一直百度上搜不到是怎么回事
  • 网站建设客户定位东莞市区最繁华的地方
  • 玉山网站建设怎样推广品牌
  • 做网站项目时 需求分析的内容深圳外贸建站模板
  • 网站建设中一般要多久全国最火的电商代运营公司
  • 手机网站适配手机网站仿站
  • 百度怎么搜索到自己的网站上海高端网站建设制作