【雕爷学编程】Arduino动手做(197)---零知 STM32F103RBT6 标准开发板2

news2024/11/27 13:50:58

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下来——小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百九十七:零知开发板 STM32F103RBT6 主芯片 标准板 替代arduino uno

在这里插入图片描述
在这里插入图片描述
零知实验室是研究前沿电子应用技术非盈利实验室, 并专注于开放开源推广电子技术, 让人更简单快乐的学习电子技术, 拥有完善、强大的团队,包括嵌入式硬件、 嵌入式软件、 网站前后台等技术工程师和资深项目leader。

零知实验室致力于打造中国本土软硬件开源平台, 通过这个开放的平台, 不管是拥有专业知识背景的电子爱好者、 创客以及智能硬件开发者,还是没有专业知识背景的孩子、 业余爱好者, 都能很容易的完成从想法到原型的快速实现。 同时 我们专注于物联网WIFI、BLE、ZigBee 等无线技术和常用传感器如温湿度、 姿态、图像、颜色、声音等模块的应用, 在我们的 帮助下将让你的智能硬件产品获取各种传感器数据更加容易, 连接网络更加简单。

零知实验室官网 http://www.lingzhilab.com/

在这里插入图片描述

由零知实验室研发的零知标准板已经正式发布,零知标准板采用Arduino UNO相同的板框设计,因此尺寸与之完全相同,同时引脚接口和UNO也完全兼容。零知标准板使用了STM32F103RBT6 作为MCU,采用32位高性能ARM核心,使之工作频率高达72MHz;拥有大容量存储空间-20KB RAM、128KB FLASH;包含37个IO引脚、15路PWM、15路ADC(12位精度)、一个USB设备接口、一个USB转串口设备接口;可以使用USB、AC-DC适配器、LI-PO等多种方式供电;同时零知标准板配合零知开发工具能实现一键下载,使用非常方便。

在这里插入图片描述

在这里插入图片描述

点击确定,然后就可以看到如下界面,示例也正常显示,表示正常安装啦:

在这里插入图片描述

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百九十五:零知开发板 STM32F103RBT6 主芯片 标准板 替代arduino uno
项目之一:简单串口输出和板载LED灯闪烁

实验开源代码

/*
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百九十五:零知开发板 STM32F103RBT6 主芯片 标准板 替代arduino uno
项目之一:简单串口输出和板载LED灯闪烁
*/

// 复位或上电后运行一次:
void setup()
{
  //在这里加入初始化相关代码,只运行一次:

  //板载LED灯 - LED_BUILTIN 引脚,设置为输出模式
  pinMode(LED_BUILTIN, OUTPUT);

  //开启串口,设置波特率9600
  Serial.begin(9600);
}

//一直循环执行:
void loop()
{
  // 在这里加入主要程序代码,重复执行:

  //串口打印信息,在串口调试窗口观察该打印信息
  Serial.println("零知开源,让电子制作变得更简单!");

  //让LED引脚输出高电平
  digitalWrite(LED_BUILTIN, HIGH);

  //延时一会儿,便于肉眼能观察
  delay(500);

  //LED引脚输出低电平
  digitalWrite(LED_BUILTIN, LOW);
  delay(500);
}

主要编程界面

在这里插入图片描述

实验串口输出

在这里插入图片描述

实验场景图

在这里插入图片描述

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百九十五:零知开发板 STM32F103RBT6 主芯片 标准板 替代arduino uno
项目之二:检测按键输入,来控制LED灯的亮和灭

实验开源代码

/*
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百九十五:零知开发板 STM32F103RBT6 主芯片 标准板 替代arduino uno
项目之二:检测按键输入,来控制LED灯的亮和灭
*/

#define KEY 0 //连接按键引脚编号 

// 复位或上电后运行一次:
void setup()
{
        //在这里加入初始化相关代码,只运行一次:
        //开启串口,设置波特率9600
        Serial.begin(9600);
       Serial.println("准备就绪");
        //按键引脚设置为输入模式
        pinMode(KEY, INPUT);
        pinMode(LED_BUILTIN, OUTPUT);
}

//一直循环执行:
void loop()
{
        // 在这里加入主要程序代码,重复执行:
        digitalWrite(LED_BUILTIN, HIGH);

        if (digitalRead(KEY) == LOW)
        {
                //消除抖动的影响
                delay(10);
                if (digitalRead(KEY) == LOW)
                {
                        Serial.println("按键按下了");
                        digitalWrite(LED_BUILTIN, LOW);

                        //等待按键释放
                        while (digitalRead(KEY) == LOW)
                        {
                                delay(10);
                        }
                }
        }
}

实验串口输出

在这里插入图片描述

实验场景图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/847477.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SAP ABAP元素域值描述通过函数(DD_DOMVALUE_TEXT_GET)获取

代码如下&#xff1a; PERFORM FRM_GET_DOMVALUE_TEXT USING ZMMD_ZFLZQ <GFS_DATA>-ZFLZQ CHANGING <GFS_DATA>-ZZQTEXT .IF <GFS_DATA>-ZXYLX IS NOT INITIAL .PERFORM FRM_GET_DOMVALUE_TEXT USING ZMMD_ZXYLX <GFS_DATA>-ZXYLX CHANGING <GFS_…

matlab使用教程(11)—创建随机数

MATLAB 使用算法来生成伪随机数和伪独立数。这些数在数学意义上并非严格随机和独立的&#xff0c;但它们能够通过各种随机和独立统计测试&#xff0c;并且其计算可以重复&#xff0c;方便用于测试或诊断目的。 rand 、 randi 、 randn 和 randperm 函数是创建随机数数组的主要…

C++核心编程:C++中的引用

C中的引用 引用的基本语法 作用&#xff1a;给变量起别名 语法&#xff1a;数据类型 & 别名 原名 //比如给一个int变量a命名一个别名 b int &b a;b 20; cout<< a << endl;//a 20引用的注意事项 引用必须初始化 int &b;//错误的引用在初始化后&…

美国超导:一家第四次工业革命中的小型成长型公司

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 总结: &#xff08;1&#xff09;在韩国研究人员宣布发现首个常压室温超导体LLK-99这个潜在的革命性化合物,并大肆宣传后&#xff0c;美国超导(AMSC)的股票暴涨了60%。 &#xff08;2&#xff09;美国超导是一家专门从事超…

13 Java 多线程见的通信 volatile synchronized,Java多线程等待通知机制, ThreadLocal的使用

volatile synchronized ThreadLocal 线程间的通信 volatile synchronizedvolatile和synchronized关键字线程等待/通知机制ThreadLocal的使用 线程间的通信 volatile synchronized 线程开始运行&#xff0c;拥有自己的栈空间&#xff0c;就如同一个脚本一样&#xff0c;按照既定…

揭秘无人机在水利行业中如何应用

无人机的应用已经成为现代科技的重要组成部分&#xff0c;在水利行业中&#xff0c;无人机的应用同样发挥了极其重要的作用。无人机在水利行业中的应用&#xff0c;不仅提高了工作效率&#xff0c;还极大地降低了人力和物力成本&#xff0c;为水利工作注入了新的活力。 一、无人…

git clone 报错Filename too long

1.使用git clone代码&#xff0c;爆出Filename too long错误 2.原因分析 因为我很少看git clone日志&#xff0c;所以从未想过是clone异常&#xff0c;而且也看到代码clone下来了&#xff0c;所以我就显然以为代码clone成功&#xff0c;但是使用idea打开代码后发现大量代码无法…

字符函数、字符串函数、内存函数

目录 求字符串长度&#xff1a; size_t strlen ( const char * str ); 无长度限制的字符串函数 字符串拷贝&#xff1a; char * strcpy ( char * destination, const char * source ); 字符串追加&#xff1a; char * strcat ( char * destination, const char * source ); 字…

COSV Schema 1.0正式对外发布,棱镜七彩参与制定工作

近期&#xff0c;CCF版开源漏洞信息描述规范COSV Schema 1.0正式制定并对外发布&#xff0c;棱镜七彩参与制定工作。 图 COSV Schema 1.0制定过程贡献单位及专家名单 作为开源软件治理与软件供应链安全领域的先行者&#xff0c;棱镜七彩一直致力于提升开源效能、防范开源漏洞。…

源码分析——LinkedList源码分析

文章目录 1.LinkedList简介2.内部结构分析3.LinkedList源码分析3.1构造方法3.2add方法3.3根据位置取数据的方法3.4根据对象得到索引的方法3.5检查链表是否包含某对象的方法&#xff1a; 1.LinkedList简介 LinkedList是一个实现了List接口和Deque接口的双端链表。 LinkedList底…

2024考研408-计算机网络 第五章-传输层学习笔记

文章目录 前言一、传输层提供的服务1.1、传输层的功能1.2、传输层的两个协议&#xff08;TCP、UDP&#xff09;1.3、传输层的寻址与端口&#xff08;常见端口介绍&#xff09; 二、UDP协议2.1、认识UDP功能和特点2.2、UDP首部格式2.3、UDP伪首部字段分析2.4、伪首部校验UDP用户…

Unity 基础函数

Mathf&#xff1a; //1.π-PI print(Mathf.PI); //2.取绝对值-Abs print(Mathf.Abs(-10)); print(Mathf.Abs(-20)); print(Mathf.Abs(1)); //3.向上取整-Ce il To In t float f 1.3f; int i (int)f; …

无人机光伏巡检系统的全新作用解析,提升效率保障安全

随着光伏发电行业的快速发展&#xff0c;光伏电站的规模越来越大&#xff0c;光伏维护和巡检成为一个巨大的挑战。为解决传统巡检方法的低效率和安全风险问题&#xff0c;无人机光伏巡检系统应运而生&#xff0c;并成为提升光伏巡检效率和保障安全的利器。 首先&#xff0c;无人…

我的Python教程:使用Pyecharts画关系节点图

示例源码1 from pyecharts import options as opts from pyecharts.charts import Graphnodes [{"name": "结点1", "symbolSize": 10},{"name": "结点2", "symbolSize": 20},{"name": "结点3&qu…

【泊松过程数学公式推导】

latex常见用法如下&#xff1a;https://blog.csdn.net/ViatorSun/article/details/82826664 高等教育出版社 **浙江大学《概率论与数理统计》**一 书关于泊松过程的推导如下&#xff1a; 理解了上面的思路才能更好的理解泊松过程的数学模型和本质。 上面的思路是&#xff1a; …

【LeetCode 75】第二十二题(1657)确定两个字符串是否接近

目录 题目: 示例: 分析: 代码运行结果: 题目: 示例: 分析: 给我们两种操作,问我们可不可以通过两种操作将word1转变成word2. 第一种操作是交换两个现有字符的位置. 那么这就意味着,只要word1和word2有相同的字符并且相同字符的数量一致,那么word1就能通过交换位置来转变…

Shiro是什么?为什么要用Shiro?

前言 本文小新为大家带来 Shiro入门概述 相关知识&#xff0c;具体内容包括Shiro是什么&#xff0c;为什么要用 Shiro&#xff0c;Shiro与Spring Security 的对比&#xff0c;Shiro的基本功能&#xff08;包括&#xff1a;基本功能框架&#xff0c;功能简介&#xff09;&#x…

org.springframework.beans.factory.UnsatisfiedDependencyException:

今天碰到了一个数据库表中有2个主键&#xff0c;结果利用mp生成的po类&#xff0c;出现了一系列问题&#xff0c;报了这个错误&#xff0c;一看是这个实体类自带了2个filedId注解&#xff0c;运行springboot能不报错吗&#xff1f;报错信息挺有意思的&#xff0c;所以写了这篇博…

服务器时钟同步

服务器时钟同步 文章目录 服务器时钟同步背景windows时钟同步Linux机器上的时钟同步Centos时钟同步Ubuntu系统时钟同步 查看是否同步的命令 背景 运维&#xff0c;XXX服务器慢了2秒&#xff0c;导致XXX业务没有正常执行&#xff0c;请立即排查为啥会有时钟不同步的问题。 首先…

无涯教程-Perl - continue 语句函数

可以在 while 和 foreach 循环中使用continue语句。 continue - 语法 带有 while 循环的 continue 语句的语法如下- while(condition) {statement(s); } continue {statement(s); } 具有 foreach 循环的 continue 语句的语法如下- foreach $a (listA) {statement(s); } co…