硬件开发
文章平均质量分 58
arenascat
这个作者很懒,什么都没留下…
展开
-
如何驱动一枚30年前的音源芯片,YMF288驱动手记 Part1
驱动一块YMF288芯片,来自于yamaha的FM合成芯片,在上个世纪90年代左右,用于游戏机,电脑和声卡原创 2024-08-30 09:21:19 · 812 阅读 · 0 评论 -
51单片机最快能生成多高频率的方波?
在嵌入式系统开发中,51 单片机作为一种非常非常非常经典,贯穿上下几十年的微控制器,被广泛应用于各种电子项目中。其中,生成特定频率的方波信号是一项常见的需求。原创 2024-08-23 20:02:02 · 1482 阅读 · 0 评论 -
ESP32 无法读取EPROM的问题的解决
遭遇读出的数值很离谱的问题,但是保存和读取的函数明明写的没错原创 2023-04-25 10:33:13 · 416 阅读 · 0 评论 -
合宙Air101 的LCD和按键怎么用Arudino IDE驱动
但是选择会出现这个情况,找不到文件 fatal error: Adafruit_SPITFT.h: No such file or directory。想要驱动,需要安装一个库,下载后放在Arduino的Library文件夹下面。有个官方的资料,可以了解到是ST7735,屏幕的分辨率。有个库但是这个库是LuatOS的,所以我这边没啥用。库不完整,缺少很多文件,所以,我们要完整的库文件。不过这个库配合下直接驱动,显示x坐标需要偏移24。原因是Arduino IDE自带的这个。下载并覆盖文件夹中的库。原创 2022-09-12 16:34:41 · 2422 阅读 · 4 评论 -
合宙ESP32C3 的Arduino开发教程环境配置
ESP32C3 和ESP32S3都是基于RISCV的内核的处理器,是一个基于精简指令集(RISC)原则的开源指令集架构(ISA)。与大多数指令集相比,RISC-V指令集可以自由地用于任何目的,允许任何人设计、制造和销售RISC-V芯片和软件,所以它的性能好,又因为这个开源设计所以价格极低没有授权费用。这次我使用的是合宙出的,后面会都是用自己设计的板子,板子不带CH343的加上个屏一共是22.5,当然只是当前价格东西收到是这样,C3和S3主要还是屏幕支持上差别,比如 ESP32-C3支持QSPI。原创 2022-09-12 15:34:56 · 8550 阅读 · 5 评论 -
三步,在Win11系统下使用USBASP,不用重启不用配置
2.之后按照图上这样,选择USBasp以及libusb-win32,并且点击Install Driver。这时候你的设备管理器会出现一个带感叹号的USBasp,并且不能更新驱动。事情是这样,我遇到了这个问题,之前买的USBASP现在打不上驱动。1.3.我们需要一个小工具,网上搜索并且下载Zadig。实际上很简单,你需要先把USBASP这个插到电脑上面。3.再回去看,可以看到已经打好 驱动了。最后附带一下USBASP的引脚定义。原创 2022-08-23 10:55:36 · 2921 阅读 · 0 评论 -
三步就好,使用万用表来判断MOS管的好坏
判断MOS管的好坏的方法,对于购买了二手MOS管的情况,或者部分MOS管损坏的情况下,是比较有需要的。一些情况下,这种表面有烧毁痕迹的MOS管很容易判断为已损坏但另外一些情况下,只能通过万用表来判断MOS管 ,这里以N沟道MOS管来举例说明如何判断第一步使用二极管档位来测量MOS管,多数时候导通电压应该在4.5-5.5V之间,负极接D引脚,正极接S引脚如果导通电压过低或者接近0,那么说明已经损坏第二步测量D和S之间的电阻,如果不是.原创 2022-04-19 17:59:39 · 26632 阅读 · 2 评论 -
图形化编程好用?自制一个ESP32数显时间继电器
这个东西就是实现在一定时间内按照间隔运行,淘宝上有很多,实际上如果不是为了测试我并没有必要自己做一个。主要这个是我试着使用Mixly——一种图形化编程软件,支持Arduino IDE。这是我使用这个工具完成的一个简单项目,总的耗时为2.5小时但是随着使用,我不得不怀疑这个软件真的是给小朋友用的吗,图形化后,逻辑上面的易用性确实提升了,很多语句不用查询不用百度搜索。但是细节上的修改反而有比较多的繁琐的问题,比如说要配置一个value+1000,你不能直接写value+1000.原创 2022-04-08 17:49:56 · 2022 阅读 · 1 评论 -
轻轻松实现可编程视频输出,基于LM1881的视频叠加模块
项目描述这个项目的作用是实现一个可以叠加到视频上的文字和图形显示方案,目前单独显示正常。画面的刷新率达到PAL标准,像素为120*96,一般使用足够但是叠加部分,需要额外调试,因为和垂直信号同步有关系,目前是通过中断来解决垂直同步但是水平会滚动,具体可以使用附件中的库,配合上AVR的MCU,因为要使用5V所以整个系统用8bit是比较方便的。使用方法先说可调电阻,这个Arduino的A2输入调节功能,可以...原创 2022-03-05 14:48:09 · 507 阅读 · 0 评论 -
两段代码, C#自动获取串口号
有时候会需要获取到目前连接到电脑的串口比如左上角这样的,这次做的上位机开发过程中就使用到了这段代码。具体做法如下 /// <summary> /// 自动获取串口的端口号 /// </summary> /// <returns></returns> public void GetComList() { string[] name.原创 2021-12-22 09:31:06 · 3173 阅读 · 0 评论 -
信利Truly M128128怎么使用,用C51和Arduino驱动
1.起始事情一开始是这样的,这一块是从自动寄存柜上拆下的屏幕。已经放置了两三年了,我想着给它用一下。使用的是少见的22pin脚位然后很神奇,这玩意现在居然要卖几百块钱,这种几千都是虚标价格,实际价格应该在200-300之间,或者也没人知道具体多少。但是以前的价格我们还是可以查到的,像是这一块Truly M128128只要十几块钱这一个屏幕并不是太好驱动,最大问题是资料极其难找,我试着搜索Truly或者搜索128128都是不同的结果。...原创 2021-10-07 15:44:36 · 943 阅读 · 0 评论 -
玩转OLED,U8g2动画,增长数字和随机三角形等
1.动态数字显示从逻辑上来说,就是绘制一个实心方块,遮挡上一次绘制的内容,然后再绘制这一次的。//动画数字效果void dynamicNum(int x, int y, int num){ int i; for (i = 0; i < num; i++) { u8g2.setDrawColor(0); u8g2.drawBox(x, 10, 60, 60); u8g2.setCursor(x, y); u8g2.setDrawColor(1原创 2021-08-11 22:23:06 · 3399 阅读 · 1 评论 -
JSON解析,ESP32轻松获取时间气温和天气
三句话,让ESP32轻松获取网络时间,气温和天气前言玩ESP一定会需要获取网络上的各种讯息,而比较入门的内容就是获取网络时间,通过连接NTP服务器来完成。另一个家是获取气温和天气,通常用在时钟类的项目上面。这里提供最简单的方法说明如何获取,以及要怎么样方便快捷的解析JSON注:标题这个三句话是形容用到的头文件以及功能#include <Thread.h> //多线程#include <U8g2lib.h> //U8glib,一个知名绘图库原创 2021-08-11 22:05:57 · 6355 阅读 · 0 评论 -
解决STC8G1K08程序不能运行的问题和端口配置
前一段时间我拿到一些样片,然后去打板测试上电后自动运行IO轮流输出的程序,也就是出厂程序。这证明打的板子没有问题,可以正常使用。但是问题就来了,我发现我自己的程序跑不起来。比如这么一个最简单的点灯程序。#include "reg51.h"#include "intrins.h"sbit led1 = P1^1;sbit led2 = P1^2;sbit led3 = P1^3;sbit led4 = P1^4;void delay(int tim..原创 2021-07-23 12:59:16 · 9894 阅读 · 6 评论 -
CH423要如何使用,便宜的国产IO扩展芯片
有时候会遇到IO不够用的情况,例如说驱动LED灯,那么有没有什么便宜的,容易买到的芯片?我这次就考虑使用WCH的CH423S,这是一个比较新的IO扩展芯片。这一个芯片有最多24个输出引脚,双向IO有8个,可以说非常够用,价格在1.5元上下,并且货有不少。特点●通过两线串行接口远程扩展出8个通用输入输出引脚GPIO和16个通用输出引脚GPO。●内置电流驱动级,连续驱动电流不小于15mA,OC引脚输出1/16脉冲灌电流不小于120mA。●静态显示驱动方式支持24只发光管...原创 2021-05-29 17:36:13 · 10423 阅读 · 2 评论 -
USB协议中HID设备描述符以及键盘按键值对应编码表
前言这一个表格的主要用途是用于USB设备的开发,例如使用CH552,相关的工程:客制pc小键盘,CH552单片机HID键盘 https://oshwhub.com/TheLight/zi-ding-yi-jian-pan如果要学习USB协议以及相关的内容可以参考该表格。但不得不说一点就是CH552是一个限制比较大的单片机。按键键值...原创 2021-05-04 09:40:42 · 17154 阅读 · 3 评论 -
解决u8glib只显示一行文字或者不显示的问题
刚遇到的问题,OLED在使用u8glib这个库时候,出现了显示不全的情况,我在初始化时候调用了这两个,各有千秋,一个是只能显示两行文字一个是完全不显示U8G2_SSD1306_128X64_NONAME_2_HW_I2C u8g2(U8G2_R0); //只显示二行U8G2_SSD1306_128X64_VCOMH0_F_HW_I2C u8g2(U8G2_R0); //不显示这一个原因是因为RAM用完的缘故,所以导致无法正常的显示,u8g要使用硬件I2C,就需要占用大量的RAM用来作为B.原创 2021-04-21 16:33:22 · 1891 阅读 · 0 评论 -
解决Arduino在PlatformIO 工程中的文件结构,库要放哪里
如果你首次是用PlatformIO IDE一定会被这种文件结构绕到,不知道文件应该放哪里,我以u8glib库——最常用最强大的图形库之一为例说明。首先在Arduino---libraries中找到u8g的库之后我们需要的是src这个文件夹...原创 2021-04-07 22:00:45 · 7004 阅读 · 1 评论 -
使用PlatformIO IDE来让你的Arduino编译快上8倍
什么是PlatformIO如何用上操作很简单,首先你需要有一个Visual Studio,然后点击左侧扩展标识搜索Platform IDE,并且进行安装.之后,会先进行初始化,在自动化安装一些必要的编译器等工具后,会提示重新启动VSCode在重新启动VSCode完成后点击小房子这个标识此时就可以出现PlatformIO的主页面了点击建立新的工程,我选择了一个Arduino Nano然后配置一下新建工程的目录以及名称在第一次使用...原创 2021-04-07 21:10:40 · 14069 阅读 · 8 评论 -
使用C51单片机,89C52RC来读取热电偶温度
热电偶、简介和连接本次说明一下使用keil和C51如何实现读取MAX6675这个热电偶用的转换器,热电偶属于温度测量仪表中常用的测温元件,它直接测量温度,并把温度信号转换成热电动势信号本次使用的MAX6675是一个热电偶数字转换器,内部具有信号调节放大器、12位的模拟/数字化热电偶转换器、冷端补偿传感和校正、数字控制器、1个SPI兼容接口和1个相关的逻辑控制。我使用的是C51单片机中最经典的一款,STC89C52RC使用淘宝上卖的这种自动下载器,解决下载必须重新上电的问题.原创 2021-04-04 23:29:54 · 1758 阅读 · 1 评论 -
LGT8F328P怎么样?没有烧录器卖,掉固件又掉Bootloader
前言本来这个事情是这样的,我买了一个这个LGT8F328P MCU,它的话是说可以替代越来越昂贵的Atmega 328P,它价格确实便宜只要Arduino Nano的一半,但是在我买来之后,我发现这个东西它的问题有点多。并且非常的耗时优点和缺陷LGT8F328P相比Atmega328P优缺点比较 优势 劣势 相比Atmega328P多了DAC功能 掉固件和掉Bootloader 有一个计算加速器设计 Bootloader需要特定的 便宜,只要一半价格 资原创 2021-04-02 21:41:09 · 6741 阅读 · 4 评论 -
解决usbisp不识别无法烧录Atmega328P,Arduino不识别问题
如果使用Arduino IDE里面的烧录,可能会遇到一个问题,就是不识别国产这种廉价的USBISP点击烧录引导程序,会遭遇到找不到USB设备的问题,选哪个都会提示找不到,比如选择USBaspcould not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'因此,我们需要使用到progisp这一个软件的1.72版本选择好芯片的型号后,调用编译好的HEX文...原创 2021-04-02 17:29:23 · 5818 阅读 · 0 评论 -
如何在自己的PCB上面设计并制作反色底层丝印
前言有些板子的底部会有这种丝印,比如入门首选的Arduino UNO的底部就有着很大块的丝印,通过反色的方式显示出文字和图案,我觉得很漂亮。这次就来教一个制作这种完全贴合PCB的图案的方法。如何制作在PCB设计上我用的是立创EDA这个工具,如果使用AltiumDesigner等其他工具也差不多,可以举一反三。把已经设计好的PCB截图,然后放到PS中,我们需要先使用矩形选择工具或者钢笔工具描边,也就是绘制板型的轮廓然后填充一个颜色,可以选择白色或者灰一点的白色..原创 2021-03-29 10:29:03 · 3992 阅读 · 0 评论 -
AS5600 磁编码器的使用教程,“划时代”的设计真的好用吗?
前言如果说我们要判断一个旋钮的位置,或者是判断一个电机转了多少圈,这个电机当前的角度是什么,那么我们就会需要使用到编码器。传统的光栅方式的编码器多是增量式,输出数字编码数值,它有两个输出连接的处理器通过判断这两个输出用来判断当前所旋转的一个圈数角度等等当然了除了这一种现在还有另一种适用于小型,低转速电机上的编码器——磁编码器,通过判断磁铁的磁轴方向,从而达到判断角度的效果,这一个东西的典型应用就是最近很火的步进电机闭环控制电路。而磁铁和磁编码器是不用接触的,换句话..原创 2021-02-03 12:35:00 · 25151 阅读 · 10 评论 -
Arduino常用的附加开发版管理器网址
常用的附加开发版管理器网址STM32http://dan.drown.org/stm32duino/package_STM32duino_index.jsonSTM32https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.jsonESP8266开发板http://arduino.esp8266.com/stable/package_esp8266com_index.jsonSTM8开原创 2021-01-06 19:23:19 · 10526 阅读 · 1 评论 -
画个板子玩一玩STM32F030F4P6,也许是最便宜的32bit MCU
前言,什么是STM32F030F4P6STM32目前最便宜的芯片之一应该就是这一块,STM32F030F4P6,这一个芯片没有USB,但是其他都有,引脚少,价格低廉,如果找不到原厂,可以买替代的国产芯片,性能也一样。不管怎么样也是Cortex-M0,比8bit和16bit的性能都强,总的来说就是低价,引脚少,体积小的同时,还容易开发,有很多模拟输入可玩,还有SPI,硬件I2C等等所以,这一款MCU真的是从理论来说又便宜又好用,非常适合把玩。画个板,最小系统STM32F030其..原创 2021-01-06 18:01:00 · 19763 阅读 · 5 评论 -
最快的方法在这!使用STM32 Duino读写SD卡内的资料
SD卡的话是可以通过spi的方式来进行读取写入,还有获得关于这张卡的一些基本信息,例如容量。那么这一次的话就来说说看要如何使用stm32来读取SD卡的信息,并且用一种目前最简单的方法原创 2020-12-23 13:38:10 · 1699 阅读 · 3 评论 -
Arduino Leonardo教程:如何改成Type-C,DIY客制化键盘必备
前言目前市售的Arduino Leonardo大部分都是Micro USB接口的,而使用Type-C好处多多,这里就提供一下改Type-C的方法直接上结果要改Type-C,直接买一个这个【TYPE-C母头测试板】,然后粘到外壳上要连线,其实主要辨识的就是两个电阻连接到D-和D+,我个人建议RST这个脚位也要接个微动按钮到GND上面以备不时之需。...原创 2020-11-05 23:18:23 · 7180 阅读 · 0 评论 -
Arduino Leonardo教程:如何回车,特殊按键定义,DIY超便宜的键盘主控
想要做一把键盘,如果是实现一些简单的按键功能,要做一个宏按键,然后还有做一个知名的badusb,你可以使用Arduino Leonardo以及一些衍生的板子,例如说Pro Mini,利用Arduino,你可以更好的把控你自制的键鼠产品原创 2020-11-05 23:05:01 · 3164 阅读 · 0 评论 -
HPDL-1414驱动程序和电路开发,古典味道,加了这个芯片把自己坑了
前言这次新收到一个有趣的屏幕,HPDL 1414,是HP做的,同样款式西门子也有做,应该是用于一些仪器上的古老电子元件。本体并不是很大,1414应该十之八九是说4*4mm,这个东西小,但是亮度很高,设计上巧妙的用了一个凸透镜让数值显示的更清晰。本身段位特别多,所以可以显示大量的字符内置有一个驱动器了,所以没需要再使用上非常厉害IO扩展,这是让人觉得很方便的一点如何控制HPDL 1414要写软件之前需要先明白硬件,先来区分脚位,这一款的脚位和显示方向有差别,可以依.原创 2020-08-17 20:52:43 · 2877 阅读 · 1 评论 -
IO口不够了?基于I2C的 IO扩展芯片驱动和开发
有时候会遇到接口不够用的情况,我们就可以考虑一下使用芯片来扩展。MCP23016这一款芯片国内用的好像不多,所以今天就来讲一讲这一个芯片的使用原创 2020-05-27 18:26:23 · 20388 阅读 · 3 评论 -
世嘉土星和世嘉MD手柄定义,如何自制土星和MD手柄
世嘉土星手柄定义,如何自制世嘉土星手柄来源 Gamesx土星手柄的控制板非常简单,两个74153芯片组合成一个定制的世嘉芯片,两条选择线用于轮询四组四个按钮,如果要制作自己的土星控制器,只需把两个74153芯片插入其中,并按照此图进行接线就可以了。 控制引脚定义 pin #NameFunction 1VCC+5v (Out) 2D1Data 1 3D...翻译 2020-02-14 23:27:05 · 5186 阅读 · 0 评论 -
三极管的缺点MOS管来补,把MOS管当作开关驱动大功率器件
使用三极管控制电路,其实是比较常用的,但是功率这一块吃不消,比如最为常用的8550即使是韩国的正版产品也只能达到1.5A,国内0.5A就是极限了,而MOS管本身特性使得寄生电容小,电阻也低,很适合大功率控制下图是一个典型的8550 PNP控制电路这是我练习打板的一个电路,后面发现引脚定义没有弄好不过幸运的是三极管只有三个脚而像是下面图这样的就是一个N-Channe...原创 2019-10-23 22:22:06 · 1966 阅读 · 0 评论 -
STM32F103C8T6在Arduino中的引脚对应
STM32F103的引脚对应图片,我重新更新了一下原创 2019-10-09 13:42:09 · 5503 阅读 · 1 评论 -
MSP430F2370(三)UART串口通讯说…
在这一篇文章中,举例配置了F2370的UART,以实现与上位机(PC)的串口通讯,作为一种常用的调试手段,通常会作为库函数加入到工程中,以便于编写。因一些变更所以实验开发板从G2553变更为了F2370,当然实际上因为都是MSP430系列,在多数设置默认情况下所需要更改的只有引脚。====================================================原创 2017-03-08 11:00:34 · 1502 阅读 · 0 评论 -
MSP430G2553(一)IO外部中断说明…
这一篇文章将说明MSP430G2553的IO中断配置,整个P1的IO都可以配置IO中断,但中断处理函数只有一个,MSP430和大多数MCU一样提供上升沿、下降沿选择。在Launchpad上有按键S2,接在P1.3口,当按下后P1.3将接入高电平,从而触发中断。所有寄存器的具体名称和地址,可以查看M430G2553 datasheet 第 21页中对于P1的寄存器定义在实例代码中,配原创 2017-03-08 11:00:32 · 6328 阅读 · 1 评论 -
MSP430G2553(二)Timer定时器说明…
MSP430设计了TIMER定时器,当定时器到达设置值(依据模式而定)时候就会跳转进入中断,作为常用功能,MSP430提供了三种计数模式,G2553中具有Timer0和Timer1两个16位定时器。该文章中用一个定时执行的io口操作来演示如何设置计时器1.配置timer配置timer所用的寄存器有TACCR0 ,TACTL, TACCTL0TACCR0:定时器的比较验证寄存原创 2017-03-08 11:00:29 · 4085 阅读 · 0 评论 -
【最小开发板】Attiny85开发与实践
不要十元就能弄到一个ArduinoIDE支持的,性能比C51的89c52好的微小单片机,并且还能支持直接插在电脑上进行供电&烧录,虽然不支持串口,但也是很美妙的一件事情不是吗?这就是attiny85 usb,在国外这一件最小系统的设计叫做Digispark。相关数据:8K bytes of In-System ProgrammableFlash, 512 bytes EEPR原创 2017-03-08 10:58:36 · 27913 阅读 · 3 评论 -
AVR的INT外部中断和PCINT中断之区…
INT外部中断是几乎所有通用单片机,嵌入机中都会带有的,早期的51系列和arm系列也都有,然而大多数因为设计原因,多只有带两个INT,最近别人提到了一个“所有端口都可以外部中断”这样的说法,因为表示存疑,因此找了些资料,也就找到了avr328p自带的PCINT引脚功能 INT外部中断和AVR和PCINT具体区别如下: 差别1. INT限制在了两个端口上面,而PCINT则是所有接口都具原创 2017-03-08 10:58:22 · 3623 阅读 · 0 评论 -
Arduino下基于MPU6050的姿态数据读…
这一模块实际上就是一个集成了加速度+重力+温度传感器,并且提供一系列寄存器来供给用户读取,使用I2c最大可以获得400khz的传输速率,这里使用arduino来作为开发环境。线路连接:在这里板载的A4为328P的I2C的SDA 数据接口,接6050上面的SDA,SCL为A5(部分案例中要连接INT端到digitalPin上面,待研究)基本测试步骤为以下:1.在文件头包括Ardui原创 2017-03-08 10:58:19 · 4724 阅读 · 0 评论