0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【昉·星光 2(VisionFive 2)RISC-V单板计算机】SDL开发

嵌入式USB开发 来源:嵌入式USB开发 作者:嵌入式USB开发 2023-07-21 09:08 次阅读

前言

Simple DirectMedia Layer是一个跨平台开发库,旨在通过OpenGL和Direct3D提供对音频、键盘、鼠标、操纵杆和图形硬件的低级访问。视频播放软件、模拟器和流行游戏(包括Valve的获奖目录和许多Humble Bundle游戏)都使用了它。

SDL正式支持Windows、macOS、LinuxiOSAndroid。在源代码中可以找到对其他平台的支持。

SDL是用C编写的,可以本地使用c++工作,并且还有其他几种语言的绑定,包括c#Python

SDL 2.0在zlib许可下发布。该许可证允许您在任何软件中自由使用SDL。

详见官网:https://www.libsdl.org/

本文以SDL开发为例,来体验本板GUI程序得开发。

安装

得益于本板运行完整的debian系统,支持apt直接安装包,
所以可以直接安装sdl开发环境,避免可交叉编译部署得麻烦。
s呼入如下指令直接安装SDL开发环境。

sudo apt-get install libsdl2-dev

代码

编写测试代码sdltest.c
输入如下指令

nano sdltest.c
输入如下代码
代码比较简单不再详叙

#include < SDL2/SDL.h >

#include < stdio.h >

#include < stdlib.h >

#include < stdbool.h >

 

int main(int argc, char *argv[])

{

    SDL_Window *window = SDL_CreateWindow("demo", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 640, 480, SDL_WINDOW_SHOWN);

    SDL_Renderer *renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);

    bool quit = false;

    SDL_Event event;

 

    SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);

    while (!quit) {

        while (SDL_PollEvent(&event)) {

            switch (event.type) {

            case SDL_QUIT:

                quit = true;

                break;

            case SDL_MOUSEMOTION:

                if(SDL_GetMouseState(NULL, NULL) &SDL_BUTTON(1))

                    SDL_RenderDrawPoint(renderer, event.motion.x, event.motion.y);

                break;

            }

        }

 

        SDL_RenderPresent(renderer);

        SDL_Delay(1000 / 60);

    }

    SDL_DestroyWindow(window);

    SDL_DestroyRenderer(renderer);

    return 0;

}

编译

对于小型项目我们可以直接板上开发,
直接板上编译
输入如下指令编译,链接SDL2库。

gcc sdltest.c -o sdltest -lSDL2

测试

编译完后输入如下指令进行测试

./sdltest

总结

得益于本板强劲得性能和运行完整得Debian系统,可以直接
安装开发环境,基于板上直接开发,避免了交叉编译部署得麻烦。
以上通过SDL得开发体验,可以看出整个过程非常高效简单。
可以将本板作为轻量化还开发主机使用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单板计算机
    +关注

    关注

    0

    文章

    68

    浏览量

    15506
  • SDL
    SDL
    +关注

    关注

    0

    文章

    18

    浏览量

    7281
  • RISC-V
    +关注

    关注

    41

    文章

    1904

    浏览量

    45047
  • RISC-V处理器
    +关注

    关注

    0

    文章

    74

    浏览量

    9896
收藏 人收藏

    评论

    相关推荐

    【昉·星光 2(VisionFive 2)RISC-V单板计算机】尝试玩3D赛车-帧率有点低

    【昉·星光 2(VisionFive 2)RISC-V单板计算机】尝试玩3D赛车-帧率有点低
    的头像 发表于 07-21 09:05 884次阅读
    【昉·<b class='flag-5'>星光</b> 2(<b class='flag-5'>VisionFive</b> 2)<b class='flag-5'>RISC-V</b><b class='flag-5'>单板计算机</b>】尝试玩3D赛车-帧率有点低

    ·星光 2 高性能RISC-V单板计算机试用体验】开箱及装载Debian系统

    上周收到了·星光 2高性能RISC-V单板计算机开发板,在此非常感谢赛
    发表于 01-24 00:32

    ·星光 2 高性能RISC-V单板计算机体验】VisionFive2开箱+安装Ubuntu

    ·星光 2 高性能RISC-V单板计算机体验】VisionFive2开箱+安装Ubuntu
    发表于 02-21 17:49

    ·星光 2 高性能RISC-V单板计算机体验】为 Ubuntu 安装 Docker 及常用软件

    ·星光 2 高性能RISC-V单板计算机体验】为 Ubuntu 安装 Docker 及常用软件 目的 为了更好的利用
    发表于 02-21 17:54

    科技·星光RISC-V单板计算机首发试用

    ·星光VisionFive全球第一代高性价比的可运行Linux的RISC-V单板计算机,采用64位RI
    发表于 04-12 10:14

    RISC-V专题】赛科技·星光RISC-V单板计算机首发试用

    ! 上海赛科技作为此次活动的合作厂商,同步上线·星光RISC-V单板计算机VisionFive
    发表于 04-14 15:17

    RISC-V VisionFive星光单板计算机)系列课程

    利用赛科技VisionFive单板计算机学习Linux系统第一期:交叉编译是什么第二期:学习和使用RISC-V(第一部分)第三期:在VisionF
    发表于 04-15 15:01

    【赛科技·星光RISC-V单板计算机试用体验】·星光RISC-V单板机上手之Debian系统烧录+访问+点灯

    为了显示效果,此处放置图片版,可以访问 https://bbs.elecfans.com/jishu_2284499_1_1.html 查看原始排版良好版本 报名了赛RISC-V单板计算机
    发表于 06-03 15:09

    【赛科技·星光RISC-V单板计算机试用体验】开箱报告

    前几天收到了赛科技·星光RISC-V单板计算机,给大家做一下简单介绍。其主要接口和功能有1.2.4 GHz 无线及蓝牙 4.2(BLE)
    发表于 06-26 22:14

    【赛科技·星光RISC-V单板计算机试用体验】开箱+心得

    【赛科技·星光RISC-V单板计算机试用体验】开箱+心得2022年4月14日上午,我从发烧友研习社公众号看到了“【重磅集结】14款
    发表于 07-06 20:54

    RISC-V专题】·星光 2VisionFive 2RISC-V单板计算机免费试用

    VisionFive 2是全球首款集成3D GPU的高性能量产RISC-V 单板计算机 。与上一代相比,VisionFive
    发表于 05-16 11:26

    ·星光 2 高性能RISC-V单板计算机体验】使用之一:星光 2开箱之硬件分析

    ·星光 2 是全球首款集成了GPU的高性能RISC-V单板计算机。与·
    发表于 07-28 15:02

    ·星光 2 高性能RISC-V单板计算机体验】2更换Debian操作系统

    接上两篇:【·星光 2 高性能RISC-V单板计算机体验】1初识赛科技StarFive -
    发表于 08-31 00:03

    RISC-V + OpenCV 计算机视觉】用 VisionFive 2 ·星光 2 进行物体识别

    广泛应用于视频监控、自动驾驶等领域。 基于Debain操作系统和OpenCV框架,赛科技在VisionFive 2·星光
    发表于 09-08 11:42

    VisionFive 2单板计算机成功支持Docker容器解决方案

    科技进一步获取。 关于 VisionFive 2 VisionFive 2 是全球第一款集成 3D GPU 的高性能量产
    发表于 09-08 11:45