【RISC-V】使用Arduino IDE开发环境编写的Hifive1开发板演示程序(Demo)。

Sipeed麦克风阵列板练习 麦克风阵列板 Maix Dock Sipeed 阅读详情

                                               

RISC-V指令架构现在非常热,大有未来全球标准指令集之势。Hifive1是Sifive公司推出第一个商用RISC-V开发板,里面预装了一个三色发光二极管的颜色渐变的演示程序,但没有提供源代码,所以本人就仿照Hifive1开发板的演示效果,使用Arduino IDE写了这样一个模仿原效果的演示程序,如下供参考:

const int Interval = 50; //ms {1+}
const int MaxColorValue = 80; //{1..255}

const int PinCount = 3;
const int PinGreen = 3, PinBlue = 5, PinRed = 6;
const int ColorPin[PinCount] = {PinRed, PinGreen, PinBlue};

int CurPinNo = 0; //{0..2};
int ColorValue[PinCount] = {0, 0, 0};

int LastPinNo;
boolean Checked = false;

void setup() {
  for (int i=0; i<PinCount; i++) {pinMode(ColorPin[i], OUTPUT);}

  ColorValue[CurPinNo] = MaxColorValue;
  LastPinNo = CurPinNo - 1;
  if (LastPinNo < 0) {LastPinNo += PinCount;}

  Serial.begin(115200);
  for (int i=1; i<=4; i++) {
    if (Serial) {break;}
    delay(5);
  }
   
  Serial.println("");  
  Serial.println("                SIFIVE, INC.");
  Serial.println("");
  Serial.println("         5555555555555555555555555");
  Serial.println("        5555                   5555");
  Serial.println("       5555                     5555");
  Serial.println("      5555                       5555");
  Serial.println("     5555       5555555555555555555555");
  Serial.println("    5555       555555555555555555555555");
  Serial.println("   5555                             5555");
  Serial.println("  5555                               5555");
  Serial.println(" 5555                                 5555");
  Serial.println("5555555555555555555555555555          55555");
  Serial.println("  55555          555555555           55555");
  Serial.println("    55555          55555           55555");
  Serial.println("      55555          5           55555");
  Serial.println("        55555                  55555");
  Serial.println("          55555              55555");
  Serial.println("            55555          55555");
  Serial.println("             55555       55555");
  Serial.println("               55555   55555");
  Serial.println("                 555555555");
  Serial.println("                   55555");
  Serial.println("                     5");
  Serial.println("");
  Serial.println("              'led_fade' Demo");
  Serial.println("");
  Serial.println("55555555555555555555555555555555555555555555555");
  Serial.println("5555555 Are the LEDs Changing? [y/n]  555555555");
  Serial.println("55555555555555555555555555555555555555555555555");
}


void loop() {  
  for (int i=0; i<PinCount; i++) {
    analogWrite(ColorPin[i], 255 - ColorValue[i]); 
  }                       //0=Brightest, 255=Darkest;
  
  if (ColorValue[CurPinNo]== MaxColorValue) {
    if (++CurPinNo  >= PinCount) {CurPinNo  = 0;}
    if (++LastPinNo >= PinCount) {LastPinNo = 0;}
  }
  
  --ColorValue[LastPinNo];
  ++ColorValue[CurPinNo ];
  
  String Input = "";
  while (Serial.available() > 0){
    Input += (char) Serial.read();
    delay(5);
  }
  if (!Checked) {
    Input.toLowerCase();
    if (Input == "y") {
      Serial.println(Input);
      Serial.println("PASS");
      Checked = true;
    }  
    if (Input == "n") {
      Serial.println(Input);
      Serial.println("FAIL");
      Checked = true;
    }  
  }
  
  delay(Interval);
}
RED-V RISC-V开发板实战:Freedom Studio与Zephyr RTOS开发环境配置与点灯指南 RISC-V作为一种开源指令集架构,其核心原理在于通过精简、模块化的设计,为开发者提供了高度的定制自由和透明的底层控制。这一特性使其在嵌入式系统、物联网和定制化芯片领域展现出巨大的技术价值,尤其适合对成本、功耗和自主可控有严格要求的应用场景。在具体工程实践中,开发者常需面对开发环境配置、硬件抽象层操作等挑战。本文以SparkFun RED-V开发板(搭载SiFive FE310核心)为例,聚焦于**Freedom Studio**集成开发环境和**Zephyr RTOS**实时操作系统这两种主流方案,详细解 阅读详情

相关推荐

K210入门-环境搭建与点灯测试(一)

本文主要针对小白使用K210进行入门,以及自己学习的总结与笔记使用。本文主要进行环境搭建与点灯测试。

weixin_44597885的博客 2456

K210入门教程

历经了电赛,视觉部分由于openmv高昂的价格难以承担,于是将目光转移到了K210身上,这块一二百块钱即可拥有神经网络的摄像头,拿它做点小项目练练手。

qq_52644862的博客 1万+

自组织映射神经网络(SOM)

目录 1 背景:自组织(竞争型)神经网络 2竞争学习的概念与原理 2.1 竞争学习的步骤 2.2 示例 3SOM典型结构 4SOM网的权值调整域 5 SOM Kohonen 学习算法 6 SOM示例 7SOM设计细节 7.1输出层设计 7.2输出层节点排列的设计 7.3 权值初始化问题 7.4学习率的设计 7.5设计拓扑领域 8SOM功能分析 8.1 保序映射 8.2数据压缩 8.3 特征提取 9自组织映射神经网络与K均值算法的区别...

weixin_39910711的博客 1万+

K210——声源定位、声音识别

来了,K210的声源定位。

戚晨夕的博客 3万+

STM32F407与W5100S的SPI通信实战:从硬件连接到TCP服务器搭建

本文详细介绍了STM32F407微控制器通过SPI接口驱动W5100S以太网模块,并搭建TCP服务器的完整实战过程。内容涵盖硬件连接、SPI驱动配置、网络参数设置及Socket编程,重点解析了SPI通信时序、W5100S寄存器操作和TCP连接管理,为嵌入式网络通信开发提供实用指南。

weixin_29173777的博客 193

东方财富网股票API逆向分析:手把手教你破解动态参数(2024最新版)

本文详细解析了2024年东方财富网股票API的动态参数生成机制,包括回调函数、身份验证和时效控制参数的逆向工程方法。通过实战代码演示,帮助开发者破解动态参数,实现高效稳定的股票数据爬取,适用于金融数据分析和量化交易场景。

weixin_29091105的博客 1025

真正的RISC-V开发板——VEGA织女星开发板开箱评测

前言 由于最近ARM公司要求员工“停止所有与华为及其子公司正在生效的合约、支持及未决约定”,即暂停与华为的相关合作,大家纷纷把注意力投向了另一个的处理器架构RISC-V,它是基于精简指令集(RISC)的一个开源指令集架构。相比于其他指令集,“RISC-V 指令集可以自由地用于任何目的,允许任何人设计、制造和销售 RISC-V 芯片和软件”,正是由于这种开放性,于2015年成立的RISC-V基金会...

whik1194的博客 7295

VS2015+Qt+OpenCV+open62541开发过程(05_VS2015中使用OPCUA open62541通过Kepware读写PLC数据)

此外还需要所需lib包:WS2_32.Lib(opcua通讯用到的库,opcua使用socket通讯,需使用此库),添加#pragma comment(lib,"ws2_32.lib") 语句,有的文章说需要添加ws2_32.lib文件或ws2_32.dll到项目资源中,貌似影响不大。2.在VS中选择x64平台会报错,选择x86平台可以用,应该是ws2_32.lib相关的库不支持64位,目前没有解决,继续后面的实验,看看用Qt后是否可以解决。6.VS中建立的变量,与读取的OPC点数据类型注意对应。

zzh17的博客 1862

RISC-V处理器的设计与实现(三)—— 上板验证(基于野火征途Pro开发板)

这一次我们完成了将我们做的处理器移植到板子上,并且在使用我们的处理器运行C语言实现的流水灯程序,并且成功运行。这是不是意味着。。。。我们也能在我们的处理器上跑一个简易的操作系统!接下来我会研究如何到我们的处理器上跑起来一个简易的操作系统,之后也会更新相关的文章~

欢迎一起交流问题! 8361

体验灵雀云-创建基于Docker的云服务

今天体验了一下灵雀云,创建了第一个基于Docker的云服务。 1.登录灵雀云 2.开始使用 登录之后,从"控制台"进入操作界面,开始创建服务。 首先需要选择一个镜像。灵雀云已经为您提供了一些常用的镜像列表。请在“常用镜像”列表中,选择“其它”,然后找到“alauda/hello-world”镜像,点击它右侧的“选择”按钮,进入服务参数配置页面。 选择完要创建的

tomcat的专栏 3234

手把手教你学GPU的KMD专栏--3.1 设备初始化流程深度解析

本文深入解析了KMD(内核模式驱动)设备初始化流程,这是GPU驱动开发最基础且关键的环节。初始化流程包括6个核心阶段:KMD模块加载、PCIe设备探测匹配、GPU硬件初始化、显存分配映射、中断系统配置和设备注册。每个阶段都有详细步骤解析,涉及关键数据结构和错误处理机制。文章还分析了常见问题(驱动加载失败、显存分配失败、中断配置失败)的解决方案,并指出未来趋势将向动态初始化、安全增强和AI优化方向发展。正确高效的初始化流程是确保GPU被操作系统安全使用的前提,也是后续内存管理、任务调度等功能的基础。

MHD0815的博客 262

【RISC-V】Hifive1开发板在Arduino IDE中的配置方法

. 操作系统: 建议使用Ubuntu 16.04 LTS,据说这是设计Hifive1开发板的公司SiIive使用的操作系统版本。可以使用安装在虚拟机上Ubuntu。Sifive官方暂时不支持Windows版的Arduino IDE;对于macOS,虽然官方说是支持的,但实际使用时编译会报错。Ubuntu 16.04 LTS的下载地址: http://releases.ubuntu.com/rele...

BlueStorm的博客 2306

Qemu开发ARM篇-3、qemu运行uboot演示

在上一篇文章中,我们搭建了交叉编译工具链,并成功进行了uboot的交叉编译,在该篇中,我们将演示如何利用qemu运行上一篇中交叉编译的uboot程序。

sinat_33909696的博客 1211

K210-烧录出厂固件

在资料中的程序源码汇总文件夹下找到出厂固件,名称为canmv_yahboom_vx.x.x.bin,其中vx.x.x为版本号。这里以烧录v2.0.5版本固件为例。点击浏览,选择要烧录的固件文件,中间的烧录地址不需要改,默认为0x00000就可以。注意:此步骤会清空K210模块的Flash程序空间,清空后程序空间后,请重新烧录固件才能连接CanMV IDE。在擦除设置中选择模式为全片擦除,选择K210模块的串口号,点击擦除开始清空程序空间。为了恢复出厂固件设置,在烧录出厂固件前,请先执行一次全片擦除操作。

ai_moe的博客 6476

Linux 内核中 ARP 协议的全链路解析:从触发机制到物理层发送

核心设计思想按需解析:减少不必要的 ARP 请求,降低网络负载。分层解耦:协议栈各层(邻居子系统、Netfilter、驱动)职责分离,提高扩展性。ARP的核心作用是将IP映射为MAC地址,确保数据链路层能正确封装帧。其触发时机围绕“未知MAC地址需求”展开,覆盖通信初始化、缓存更新、网络变更及维护等多种场景。

数字人生 367

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

浅谈 RISC-V 软件开发生态之 IDE

软件开发者是芯片公司非常重要的资产,CPU做出来是不够的,要让更多的软件开发者用这颗芯片才是成功。今天简单谈一些关于 RISC-V 开发的软件生态相关,主要是关于 RISC-V 的开发 IDE,就是集成开发环境。集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的软件开发服务套(组)。

猫哥 的沉淀、积累、总结。天天学习,好好向上...c/c++,嵌入式 linux,Android,HarmonyOS,AIOT) 5842

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

平头哥 BeagleV-Ahead TH1520 RISC-V 高性能开发板开箱硬件评测

平头哥的TH1520 Soc 是一款低功耗、高性能、高安全、多模态感知和多媒体AP 能力的AI 处理器芯片,可用于视频会议一体机、人脸识别考勤门禁、医学成像等AI 边缘计算应用场景。基于多核异构架构,集成RISC-V 指令架构的四核C910 和单核C906 处理器,并内嵌了多个强大硬件加速引擎,搭载4TOPS@int8 AI 算力的NPU,提供性能优化的高端应用。支持双通道外部存储器接口,支持LPDDR4/LPDDR4X,提供最大存储带宽达34GB/s,同时提供满足多变应用的外设接口。

韦东山嵌入式专栏 4968

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

RISC-V 开发板经验

一直在留意RISC-V的发展,但是很无奈,之前上市的RISC-V开发板,要么天价,要么是超低配,性能拉跨,然后2022年偶然看到了国产 vision five 2板子的预售,jh7110,4核risc-v 1.5ghz,而且配了GPU,关键是价格不贵,4GB版本预售价400来块,报着顶多被坑400来块的决心,定了一块板。希望是编译器还没有优化到位导致的,但是问题是,这个计算并不复杂,并没有什么可以优化的,而是特意不使用cpu各种扩展指令的基本计算,因此后续出现性能大的提升,可能性不大了。

2301_80187653的博客 2316

入手RISC-V开发板

RISC-V开发板初次上手

sharpblade's Blog 1175

蜂鸟E203开源RISC-V开发板:蜂鸟FPGA开发板和JTAG调试器介绍

为了便于初学者能够快速地学习RISC-V CPU设计和RISC-V嵌入式开发,蜂鸟E203开源MCU原型SoC(在本文中将其简称为“MCU SoC”或者“SoC”)定制了基于Xilinx FPGA的专用开发板(在本文中将其简称为“FPGA开发板”)和专用JTAG调试器(在本文中将其简称为“JTAG调试器”)

zoomdy's blog 2万+

K210视觉识别模块学习笔记1:第一个串口程序_程序烧录与开机启动

今日开始学习K210视觉识别模块:简单的认识与串口程序 既然K210作为一个视觉识别外设模块来使用,我认为第一个程序 就没必要学点灯之类的了,直接学习串口如何配置开始为妥,毕竟后面都要用到.....

NULL指向我的博客 6695

【跟我学RISC-V】(一)认识RISC-V指令集并搭建实验环境

跟我一起学RISC-V指令集吧

April_Zhao的博客 2万+

国产RISC-V开发板RV-STAR初体验

RV-STAR开发板初体验 在芯来科技的公众号上看到,他们出了一块RISC-V的开发板,赶紧入手了一块,虽然武汉现在疫情很严重,但还是很快就收到了快递包裹,激动的想要看看这块板子怎么样。 先来个正面特写吧,宝石绿的板面,板载两颗芯片,这也是很少见的了;整个板子周围布满了各种外设接口,非常有科技感。 官方的文档说,它采用的是TYPEC的供电口,还可以用来下载程序。这个还蛮方便,我的小...

2949

Canmv K210开发板文件下载——将程序烧录到Canmv Cam

Canmv IDE针对K210开发板的程序烧录和Python脚本下载提供了高效解决方案。它简化了开发流程,通过串口通信实现数据传输,支持二进制文件、模型文件的烧录及Python脚本的格式化处理。它解决了传统开发中手动操作繁琐、容易出错的问题,提高了开发效率。此外,通过优先使用TF卡进行存储,改进了数据的稳定性和访问速度。这些改进为开发者提供了一个更加便捷、高效的开发体验。

欢迎来到我的博客!聚焦人工智能、强化学习、深度学习、图像处理等热门领域,探索ROS操作系统、嵌入式开发、边缘计算的技术应用,分享前沿技术与实践经验。 7204

micropython仿真器_MicroPython 介绍

现在开源硬件中最热门的 MicroPython 是英国剑桥大学的教授 Damien George(达米安·乔治)所发明,Damien George 是一名计算机工程师,他每天都要使用 Python 语言工作,同时也在做一些机器人项目。有一天,他突然冒出了一个想法:能否用Python语言来控制单片机,进行实现对机器人的操控呢?可能很多读者都知道,Python 是一款非常容易使用的脚本语言,它的语法简...

weixin_39744230的博客 744
上一篇: 【Delphi】解决的TIdFtp组件在使用压缩方式下载有时会报错的问题 [更新:Delphi 10.3又有新Bug]
下一篇: 【RISC-V】Hifive1开发板在Arduino IDE中的配置方法
BlueStorm
博客等级 码龄25年 74粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值