电子

电子 · 圈子

1421 位酷友已加入

电子圈子中包含常用的源代码、电路图、学习教程、产品样本、技术报告等干货资料,加入圈子可以上传、下载资料,也可以使用提问来寻求资料或分享你认为有价值的站外链接~

关注推荐最新

热门标签

资源

APEC车联网(IoV)白皮书(英文)

APEC车联网(IoV)白皮书(英文) 目录 1 Concept of IoV 2 IoV Technology Leads Industrial Revolution 3 Opportunities and Challenges of IoV 4 Reflection and Suggestion about the Development of IoV 本文为亚太经合组织APEC发布的IoV白皮书英文原版,来源于第50次电信和信息工作组会议(布里斯班,澳大利亚,2014年9月29日,10月3日)

电子

电子·圈子   首发

张宇哲 发布了
电子

电子·圈子   首发

张宇哲 更新了
资源

实验一 逻辑门功能测试与功能变换实验报告

设计逻辑电路来验证与门、或门、与非门、非门、异或门等基础逻辑门。请给出实验电路,并给出你的电路设 设计 “运动员动作合格”判别电路。一名主裁判与两名副裁判,必须有两人以上(且必须包括主裁判)认同。(灯灭---成功,灯亮---失败)

电子

电子·圈子   首发

张宇哲 发布了
问答

即使我们现在拥有5g技术,也无法大面积覆盖,这是为什么?

为什么5G发展速度如此之快?是什么原因使得它发展如此之快的?即使我们现在拥有5g技术,也无法在很长距离覆盖,这是为什么?

电子

电子·圈子   首发

张宇哲 更新了
资源

【实验报告】Linux 驱动程序开发

基于 ARM 的模块方式驱动程序实验

资源

在Raspberry Pi Pico上添加蜂窝网络

需要的元件 blues wireless Notecard blues wireless Notecarrier-AL Raspberry Pi Pico Adafruit BME680 blues wireless Notehub.io MicroPython 原理及流程 介绍 上周Raspberry Pi团队发布了他们的第一个微控制器Pico时,它拥有定制的双核M0,而且售价只有4美元。 我本周收到了Pico,这是一个令人印象深刻的小型设备,具有许多GPIO,外设以及对C和MicroPython的支持。并且由于Notecard Python库初始就支持MicroPython,CircuitPython和Python,因此我想将Notecard与之连接起来,并展示如何使用两者将蜂窝网络连接添加到Pico项目中。 在本文中,我将向你展示如何: 将MicroPython闪存到Raspberry Pi Pico。 接线并通过I2C连接到Notecard。 与MicroPython中的Notecard通信。 添加一个BME680温湿度传感器,并将读数发送到Notecard和Notehub.io云服务。 本项目的完整源代码,包括notecard和BME680传感器的库,位于位于notecard-pico GitHub repo,你可以在下载区下载。 刷新MicroPython 首先,我需要在Pico上安装MicroPython。我最初使用的是来自Pico官方文档的UF2镜像,但很快发现,在我最初的实验中,该发行版不包含MicroPythonujson库,并且由于Notecard会使用到JSON,而note-python库取决于JSON支持,我不得不寻找一个替代方案。 值得庆幸的是,Pimoroni团队拥有MicroPython的Pico兼容分支,其中包含ujson,因此我从他们的repo下载了最新的UF2(下载区也有) 。然后,按照官方的入门指南,当我将开发板插入USB并将UF2文件拖到计算机上的RPI-RP2大容量存储设备上时,我按住Pico上的BOOTSEL按钮,这样我就能在MicroPython上运行Pico。 即将在官方发行版中支持ujson和其他扩展的MicroPython模块。 在REPL中打招呼 为了创建Pico固件,官方文档和指南建议使用Thonny IDE,因为我将VS Code用于Python和CircuitPython开发,所以我也将其用于本项目。我从“ VS代码扩展”选项卡安装了MicroPython扩展,创建了一个项目,并通过/dev/tty.usbmodem0000000000001USB串行端口连接到Pico上的REPL ,感觉就像z-index:9999;。 过去,我在ESP32上做过一些MicroPython工作,而我最喜欢的体验之一是设备上的REPL。在物理连接到微控制器的同时检查GPIO和切换引脚真是太神奇了。因此,一旦连接,我就导入了machine库并切换了Pico板上的LED,该LED位于Pin 25。 ![2021-01-26_17_39_20_o3EpjtNx8L (2)](https://gggg-image.oss-cn-beijing.aliyuncs.com/lgkimg/2021-01-26_17_39_20_o3EpjtNx8L (2).gif) 连接到Pico时运行MicroPython代码 连接了Pico之后,就该添加Notecard了。 什么是Notecard? 由于Pico没有配备Wi-Fi,蜂窝网络或蓝牙,因此我决定将其连接到Blues Wireless Notecard,以增加蜂窝网络IoT的优势。Notecard是一款支持蜂窝网络和GPS功能的设备到云数据泵,具有500 MB数据和10年的蜂窝网络服务,价格为49美元。没有激活费,也没有月租费。 Notecard是一种30 x 34毫米的小型SoM,可以通过其m.2连接器嵌入到自定义项目中。但是,Blues还提供了一系列扩展板,称为Notecarriers,其中包括用于Notecard的m.2插槽以及许多用于原型制作的功能。对于这个项目,我使用了Notecarrier-AL ,它具有板载蜂窝网络和GPS天线,一个LiPo电池端口和一个引脚排针,非常适合本项目。 在云方面,Notecard已预先配置了与Notehub.io对话,Bluehu Wireless服务可实现从设备到云的安全数据流。Notecard将数据流分配给Notehub中的项目,然后本项目将数据同步到那些项目中以路由到你的云应用程序。 将Notecard连接到Pico Notecard可以通过串行或I2C连接到任何MCU或SBC。我为本项目选择了I2C,并使用Pico引脚图将Notecard的电源,GND,SDA和SCL引脚上的跳线连接到Pico。 Pico通过I2C连接到Notecard 在Notehub.io上创建项目 我的下一步是放下硬件一分钟,打开浏览器选项卡,然后在Notehub.io创建一个新项目。这是一个非常简单的过程,blues无线开发人员门户网站包含有关创建帐户,项目等的分步说明。一个新项目获得的关键是一个名为ProductUID的标识符,该标识符用于将Notecard与Notehub.io相关联,因此我所有的数据最终都存储在正确的位置。 使用MicroPython与Notecard对话 连接设备并准备好ProductUID之后,我准备连接到固件中的Notecard。首先,我下载了最新版本的note-python library 库,并将notecard目录复制到了Pico上的lib目录中。 接下来,我main.py在Pico上添加了几行代码以导入库,配置与Notecard的I2C连接,并发送hub.set request ,该请求用于设置ProductUID并设置一些同步规则。 然后,我上传main.py并更新lib目录然后运行我的代码。自从我使用初始化Notecard库以来没出过bug,随着我的固件执行,我所有的请求和响应都将显示在终端中。 添加传感器 我进行了Pico和Notecard的通信,但是要使其成为一个真正的项目,我需要添加一个传感器。我选择了我的首选产品Adafruit BME680,并将其连接到Pico上的I2C。 Adafruit BME680连接到Pico 与Notecard一样,我添加了一个库,以使其更易于使用BME680。由于我使用的是MicroPython,因此该库的CircuitPython版本无法原样使用,但在进行一些轻微修改后仍可以正常工作。如果你继续学习,可以我的GitHub repo中使用adafruit_bme680.py学习该库。 添加后,我修改了main.py源代码以导入库,初始化传感器并每60秒获取一次温度和湿度读数。 然后,我将所有内容加载到Pico上,并在终端上观看环境读数。 发送数据到Notehub.io 连接BME680并读取办公室中的温度和湿度后,就该将数据发送到“记录卡”(和云)了!我main.py最后一次修改了程序,每次阅读都会发送一个note.add请求。 当从BME680获取新读数时,我还添加了几行以打开Pico LED,并在将数据发送到Notecard之后将其关闭。我的程序的完整资源如下。 最后,我上传main.py并在Pico上运行了它。 当Notecard接收到新数据(称为“记录”)时,它安全地连接到Notehub.io云服务,并将该数据发送到我的项目,我通过访问本项目的事件仪表板进行了确认。 Notehub.io仪表板中的温度和湿度读数。 Notecard是一款功能强大的小型设备,并且具有MicroPython支持,可以轻松地在Pico驱动的项目中添加低成本,免费的蜂窝网络物联网!要了解有关“Notecard”的更多信息,请访问blues.io。 最后 所有需要的文件在下载区均可找到。 via:https://www.hackster.io/brandonsatrom/adding-cellular-to-the-raspberry-pi-pico-b8a4b6

资源

Raspberry Pi Pico介绍

需要的元件 Raspberry Pi Pico 原理及流程 Raspberry Pi Pico具有定制的双核ARM Cortex-M0 +处理器(RP2040),并支持无数的外围设备。 介绍 当考虑将微控制器用于需要访问大量快速外设和强大处理能力的项目时,Teensy系列电路板有许多优势。但是有一个缺点:不可定制。为了进一步说明,假设想控制一串具有全新协议的RGB LED。大多数可以写入它们的库都必须以以下两种方式之一运行。首先,可以在汇编中编程一个功能,该功能可以通过结合使用寄存器写入和nop指令来仔细地对引脚切换的时间进行计时,但这对于更改时钟速度的芯片或初学者来说几乎是不可能的。第二种方法是使用计时器,该计时器以精确的间隔生成中断,以发出引脚状态变化的信号。 特点 Raspberry Pi Pico在这方面有很大的不同。该芯片(称为RP2040)是Raspberry Pi的定制设计芯片,支持创建各种状态机以支持定制外围设备。这意味着可以设置专用硬件单元自行处理某个外围设备所需的许多IO,从而将CPU释放给其他任务。 Pico可以使用C / C ++ SDK或MicroPython进行编程,并支持许多IDE。 规格 定制的RP2040 MCU包含 双核ARM Cortex M0 +处理器,时钟频率高达133MHz 264kB的SRAM和2MB的板载闪存 26个多功能GPIO引脚 2xSPI,2xI2C,2xUART,3x12位ADC,16xPWM通道 8个可编程IO(PIO)将状态机分为两个实例,用于自定义外围设备 通过USB大容量存储进行拖放编程 温度感应器 片上准确的时钟和计时器 ARM SWD调试 一些项目构想 因此,既然你知道Pico可以做什么,以下是一些入门项目的一些建议,以使他们习惯于开发板及其功能 你好,世界/眨眼 实施WS2812协议以控制一串RGB LED 通过I2C和SPI与多个传感器对话 使用DMA与SD卡传输数据 在哪里了解更多 要查看有关Raspberry Pi Pico的信息,例如其管脚,数据表和SDK,可以访问pico.raspberrypi.org来了解更多信息。 最后 所有需要的文件在下载区均可找到。 via: https://www.hackster.io/gatoninja236/raspberry-pi-pico-hackster-spotlight-69ccb1

资源

Raspberry Pi Pico入门

本例程将会让你了解如何为Raspberry Pi Pico设置环境并为其创建自定义程序 需要的元件 Raspberry Pi Pico Cmake 原理及流程 介绍 关于Pico的一点点 你可能已经听说过有关Raspberry Pi的有关它们的小型,信用卡大小的计算机阵容的信息,这些计算机可以运行Linux操作系统。它们非常适用于需要低功耗,良好连接性和大量计算能力的情况,但是在需要实时性能和精确定时的情况下效果不佳。 这就是Raspberry Pi Pico擅长的地方。它具有许多出色的外设,包括I2C,SPI,USB等。Pico在定制芯片上包含两个快速的Arm Cortex-M0 +内核,以及一个称为可编程I / O(简称PIO)的特殊子系统。它使程序员可以创建专用的状态机(最多8个),这些状态机可以使用引脚处理IO任务,而无需进行大量的CPU交互,从而为两个任务腾出了两个内核。 SDK概述 仅加载文本编辑器并开始为具有中等高级功能的电路板编程是相当困难的。软件开发套件(SDK)只是一组库,一个编译器/链接器,调试器,有时还包括一个框架。因此,SDK可以提供必要的工具,而不是切换汇编中的特定寄存器并尝试设置汇编程序进行编译。 安装工具链和SDK 本指南介绍的是C / C ++ SDK,而不是MicroPython的SDK,并假定开发是在基于Debian或Ubuntu的OS环境中进行的。 首先在某种类型的用户文件夹中创建一个新目录,例如,使用以下命令在主目录中: 然后输入 接下来,运行以下三个命令来安装SDK和更新USB库: 然后离开那个文件夹并进入pico文件夹 最后将示例克隆到另一个文件夹中pico-examples: 然后只需运行以下两个命令来安装CMake和用于Arm的GNU嵌入式工具链,这就是你编写的代码将如何转换为机器指令的方式: 就是这样!现在已经安装了工具链和SDK,是时候开始对Pico进行编程了。 闪烁的LED 在几乎所有新的微控制器开始使用时,使LED闪烁是开发人员首先要做的事情之一,Pico也不例外。在pico文件夹中,键入 查看示例项目。然后创建并输入build目录 并使用创建PICO_SDK_PATH环境变量 最后用 默认情况下,CMake配置为生成发布版本,其中不包含调试所需的信息。要构建调试版本,请运行 现在我们可以构建眨眼程序了。类型 进入眨眼示例文件夹。其内容应如下所示: 这里有两个构建选项。首先是简单地运行,make或者make -jT在哪里运行T并发进程(通常是CPU拥有的内核数),因此对于Raspberry Pi 4,你可以运行 现在你应该能够同时看到blink.elf和blink.uf2文件。elf文件由调试器使用,而uf2文件可以复制到RP2040大容量存储设备上。 加载到设备上 对Pico进行编程非常简单。按住开发板上的BOOTSEL按钮的同时,插入Micro USB电缆。 现在,你应该能够看到名为RPI-RP2以下文件的设备: 在桌面上,将uf2文件从以前使用的文件夹拖到build/blinkUSB大容量存储设备。这将导致浏览器窗口关闭,并使Pico开始闪烁其板载LED。你也可以用相同的方式插入Pico(在插入micro USB电缆的同时按住BOOTSEL按钮),然后使用 然后为文件系统创建一个新目录: 并安装设备: 其中D是该装置(a,b,c等),并且p是分区(应为1)。因此,对于Pico sda,它看起来像 然后用复制 然后用 测试DMA 如果你以前有使用C或C ++的经验,那么你会知道要将数据从一个数组复制到另一个数组,通常需要从源数组进行迭代(读取),然后将相同的数据移至目标数组(将其写入)到目的地)。当使用Arduino Uno和一串可寻址RGB LED之类的东西时,Atmega 328p必须获取一个彩色数据缓冲区,并逐个通过GPIO引脚传输它,这意味着CPU不能做其他事情。 你还可以尝试想象一个具有两个设备的系统,其中一个设备通过某种协议将数据发送到Pico,然后Pico需要将该数据放入RAM中的某种缓冲区中,以备后用。为什么不使用专用硬件来执行此操作,而不是让CPU内核不断等待新数据到达然后存储呢?这是直接内存访问(DMA )的基本原理。 回到该pico/pico-examples/build文件夹,然后dma使用 你应该看到三个与各种示例相关的文件夹,现在我们来看一个名为的文件夹hello_dma。在文件夹中,它应如下所示: 如果在此处运行make,它将生成可以加载到板上的常用elf和uf2文件。你可以通过将UART转USB转换器连接到Pico的硬件UART引脚和接地引脚来查看输出。现在,我们来看一下代码的实际工作方式。输入以下内容转到包含源代码的文件夹 然后在文本编辑器中查看hello_dma.c文件。看起来像这样: 你会看到有一个chars称为()的字符数组,src当程序加载到芯片上时会存储在闪存中(因为它是const)。在它下面有一个指向内存中位置的指针,该位置dst具有与常量数组相同的空间分配。调用后将stdio_init_all()UART端口设置为类似功能printf,你可以看到请求了DMA通道请求chan。然后,从第27行到第30行,创建一个dma_channel_config结构并将其配置为在每次传输时递增源指针和目标指针,并设置为一次传输8位。 在dma_channel_configure()调用中,将设置目标指针和源指针以及传输次数。进行呼叫后,传输将立即开始并在传输了正确的字节数之后完成。由于在此示例中处理器没有其他操作,因此dma_channel_wait_for_finish_blocking()只需等待传输完成然后返回即可。最后,使用将来自目标缓冲区的数据打印到UART外设puts()。 最后 所有需要的文件在下载区均可找到。 via:Getting Started with the Raspberry Pi Pico - Hackster.io

资源

Raspberry Pi Pico及其扩展完整指南

需要的元件 Pico GPIO扩展 Pico HAT扩展 Pico面包板套件 Pico 原理及流程 介绍 Raspberry Pi Pico是一款售价仅为4美元的高级微控制器,自推出以来在市场上引起了极大的关注。Raspberry Pi基金会推出了Raspberry Pi Pico 。1月21日 ,Raspberry Pi以4美元的经济价格出售,使更多的人可以轻松购买此功能强大的微控制器。许多人希望Raspberry Pi Pico能够使他们的项目更智能,更高效。Raspberry Pi Foundation始终以其设备的创造力和高级功能使用户惊讶。Raspberry Pi Pico是Raspberry Pi的高级系列中的新产品,将对用户有利。在此博客中,我们将讨论与Raspberry Pi Pico及其扩展有关的每个细节,以便人们可以对该功能强大的技术做出明智的决策。 RP2040微控制器 Raspberry Pi基金会是所有技术爱好者,学生和业余爱好者的福气。凭借其先进的技术和基于性能的产品,人们可以开发使世界变得更适合每个人的事物。Raspberry Pi Foundation的开发人员开发了“ Raspberry Pi Pico具有超现代的功能,例如RP2040双核ARM Cortex-M0 +,时钟频率为133MHz,256KB RAM,30个GPIO引脚,以及广泛的接口选项。许多用户可以在他们的项目中利用Raspberry Pi Pico的可靠设计和性能,从而提高产品质量。对于技术世界来说,这将是更好的选择,因为会有更多对人们有益的产品或服务。Raspberry Pi Pico旨在为用户提供一种获得更多自由度的方式。这将使人们以经济价格轻松地创造事物,从而增加人们对技术世界的兴趣。 技术指标 Raspberry Pi在英国设计的RP2040微控制器芯片 双核ARM Cortex M0 +处理器,灵活的时钟频率高达133 MHz 264kB的SRAM和2MB的板载闪存 cast形模块允许直接焊接到载板上。 USB 1.1主机和设备支持 低功耗睡眠和休眠模式 通过USB使用大容量存储进行拖放编程 26个多功能GPIO引脚 2个SPI,2个I2C,2个UART,3个12位ADC,16个可控PWM通道 片上准确的时钟和计时器 温度感应器 片上加速浮点库 8个可编程IO(PIO)状态机,用于自定义外围设备支持。 Raspberry Pi扩展 对人们来说成为问题的一件事是,他们不希望使用凌乱的跳线电缆或复杂的焊接方法来将Raspberry Pi HAT与Raspberry Pi Pico一起运行。这可能会使人们不愿开发先进的小工具,因为这将成为忙碌或耗时的过程,这不应该发生。SB Components了解用户可能会遇到的问题。SB Components的研发部门开发了扩展功能,使用户在使用Raspberry Pi Pico时感到舒适。以下扩展将使用户体验更好 Raspberry Pi Pico面包板套件-SB Components附带了Raspberry Pi Pico面包板套件,它是一个多功能套件,其顶部包括一个“ 400点半尺寸面包板”,一个可编程蜂鸣器,4个可编程LED,4个按钮和单个5V,3v3和GND专用引脚。SB Components的开发人员构建了具有高级功能的Raspberry Pi Pico面包板套件,例如可独立控制的LED,开关,400点半尺寸面包板,可帮助用户有效地使用Raspberry Pi Pico进行项目原型设计。 Pico面包板套件 Raspberry Pi Pico HAT扩展-SB Components精心设计了Raspberry Pi Pico HAT,这是为Raspberry Pi Pico设计的输入/输出扩展板。Raspberry Pi Pico HAT Expansion的工作是以Raspberry Pi接头形式提供一组2x20引脚接头,以及一组2 x 20引脚。这将使过程变得有趣,因为可以通过Raspberry Pi Pico HAT扩展将任何为Raspberry Pi设计的HAT与Raspberry Pi Pico插入,这将使用户在其上执行高级功能。Raspberry Pi Pico HAT扩展板上有用于任何HAT的空间。可以通过将Raspberry Pi Pico和HAT直接放在具有连接电源引脚的Raspberry Pi Pico HAT扩展上来插入它。 Raspberry Pi Pico的HAT扩展 Raspberry Pi Pico GPIO扩展-SB Components开发的其他产品是Raspberry Pi Pico GPIO扩展板。它是SB Components产品范围内的先进产品,输出电压为3.3V。用户可以使用Raspberry Pi Pico GPIO扩展板通过两个来断开Raspberry Pi Pico开发板的所有引脚和电源。方式(公头或母头)。借助跳线,可以使用此设备将其连接到其他组件。有些人希望ṣ了解有关编程和硬件的更多信息,这将使他们感兴趣。 Pico GPIO扩展 最后 所有需要的文件在下载区均可找到。 via:Raspberry Pi Pico及其扩展的完整指南-Hackster.io

资源

DHT22和16x2LCD 的温度监视器

需要的元件 Arduino UNO DHT22 温度传感器 杜邦线 9V插孔连接器 液晶显示屏 Arduino IDE 原理及流程 主要目的是创建非常便携的温度和湿度感应,并成为温度和湿度测量的小工具。 在这个项目中, 没有用到面包板, 因为它Arduino 仍然能够直接为传感器和 Lcd 供电 相关代码和连接图可直接下载。 最后 所有需要的文件在下载区均可找到。 via:https://create.arduino.cc/projecthub/adrakhmat/temperature-monitor-with-dht22-and-i2c-16x2-lcd-3ddd39?ref=platform&ref_id=424_trending___&offset=386

  • 1
  • 95
  • 96
  • 97
  • 120
前往