AVR晶体管测试仪开源项目编译

news2025/1/10 18:07:59

AVR晶体管测试仪开源项目编译


  • 📍原项目地址:https://github.com/Mikrocontroller-net/transistortester/tree/master
  • 🌿 https://github.com/svn2github/transistortester
  • 🌿 https://github.com/wagiminator/ATmega-Transistor-Tester/tree/master
  • 📌立创开源广场项目:https://oshwlab.com/wagiminator/y-atmega-transistortester-smd
  • 📄📑项目介绍:https://www.mikrocontroller.net/articles/AVR_Transistortester

✨目前328P/PB单片机价格趋于合理范围,项目所使用的器件比较少,自制成本比较低。

  • 🍁基于晶体管测试仪开源项目制作的各型号:在这里插入图片描述

📘编译器版本和配置

✨推荐使用最新的编译器。如果选择使用原项目代码进行编译的话,可以使用低版本的WinAVR-20100110进行编译,后面更新的项目需要使用最新的AVR编译器来编译才行,否则会报下面的错误:

在这里插入图片描述

  • 🎈WinAVR-20100110下载地址:https://sourceforge.net/projects/winavr/files/WinAVR/20100110/或者https://osdn.net/projects/sfnet_winavr/
  • 🎈最新的编译器版本选择:GCC Compilers for AVR下载地址:https://www.microchip.com/en-us/tools-resources/develop/microchip-studio/gcc-compilers
  • 选择AVR编译器:
    在这里插入图片描述

  • 🌿基于window环境变量配置:将编译工具链下载下来并解压,将路径添加到系统环境变量中。
    在这里插入图片描述

在这里插入图片描述

  • 🌿测试是否添加成功:在命令提示符窗口中输入:avr-gcc --version

在这里插入图片描述

🔨功能配置
  • 🌿具体的硬件功能和型号配置,transistortester-是在头文件中配置,ATmega-Transistor-Tester是在Makefile中配置
    在这里插入图片描述

在这里插入图片描述

🛠项目编译
  • 🌿将项目源码下载后,在make文件夹内的地址栏输入cmd,按回车。
    在这里插入图片描述
  • 输入make按回车即可进行编译。
    在这里插入图片描述
  • 🎉如果编译时报错,可能是编译器版本问题,或者系统环境变量没有成功。重新配置后,如果重新编译程序,必须使用make clean清理一下,不然,可能重新编译也还会报错。
  • 📜编译完成:
    在这里插入图片描述在这里插入图片描述

📗烧录工具

如果有avrisp或者usbasp工具最好,通过ISP接口下载。因为全新的裸片MCU不支持串口下载。

  • 🔧烧录软件:推荐使用AVRDUDESShttps://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/

  • 🌿这里使用328PB,CH340串口烧录做演示:
    在这里插入图片描述

  • 🌿熔丝位配置参考项目具体介绍

avrdude -c usbasp -p m328p -U lfuse:w:0xff:m -U hfuse:w:0xdb:m -U efuse:w:0xfd:m
avrdude -c usbasp -p m328p -U flash:w:TransistorTester.hex
avrdude -c usbasp -p m328p -U eeprom:w:TransistorTester.eep

⛳编译报错解决方案

  • 🧨如果使用win10 X64系统,搭建的AVR编译环境,在编译项目时,可能会遇到找不到头文件的问题,由于编译器兼容性的问题,需要替换对应的msys-1.0.dll,复制到 winavr下 utils\bin 中覆盖.如果使用最新的编译工具链不存在这个问题。
  0 [main] sh 13304 sync_with_child: child 11844(0x14C) died before initialization with status code 0xC0000142
   38575 [main] sh 13304 sync_with_child: *** child state waiting for longjmp
/usr/bin/sh: fork: Resource temporarily unavailable

  • 🥕可以参考:http://www.openedv.com/posts/list/46357.html
    https://bbs.21ic.com/icview-1073342-1-1.html

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

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

相关文章

python 只有ListNode类的情况下,创建链表和遍历链表

class ListNode:def __init__(self, val0, nextNone):self.val valself.next nextif __name__ __main__: linklist dummy ListNode() for x in ([2,4,3]): linklist .next ListNode(x) linklist linklist .nextwhile dummy:print(dummy.val)dummy dummy.next 这里的…

互联网应用主流框架整合之SpringMVC基础组件开发

多种传参方式 在前一篇文章互联网应用主流框架整合之SpringMVC初始化及各组件工作原理中讨论了最简单的参数传递,而实际情况要复杂的多,比如REST风格,它往往会将参数写入请求路径中,而不是以HTTP请求参数传递;比如查询…

云渲染动画:C4D如何正确渲染导出动画?

​C4D是一款功能强大的3D建模、动画和渲染软件,在制作动画时,正确的渲染和导出流程至关重要,以确保动画质量和流畅性。 帧率概念 动画就是一幅幅图片连贯起来,30帧/秒,就是一秒出现30张图片一般国外都是30&#xff0c…

2024年6.18有必要购买正版FL Studio21吗?

对于是否需要购买FL Studio的正版软件,我们认为强烈推荐用户购买正版软件,而不是使用盗版软件。 FL Studio 21是一款功能强大的音乐编曲制作软件。尽管你可能没有接触过音乐制作,也能通过fl Studio 21,撰写,整理&#…

3dmax在设计3D模型时闪退解决方法---模大狮模型网

3ds Max 在设计 3D 模型时闪退可能由多种原因造成,以下是一些常见的解决方法: 更新显卡驱动程序: 一个过时或不稳定的显卡驱动程序可能导致 3ds Max 闪退。请确保你的显卡驱动程序是最新版本,并且与 3ds Max 兼容。 关闭不必要的…

轻易云-轻企AI知识库的智能创作与个性化管理

随着人工智能技术的飞速发展,AI助手正逐渐成为我们生活和工作中不可或缺的伙伴。轻易云AI助理,作为这一领域的佼佼者,以其无所不知、无所不能的AI创作模型,为用户带来了前所未有的智能体验。 一、AI创作模型的丰富性 在轻易云AI助…

CG-85D 振弦式渗压计厂家 测量孔隙水压力或液位

产品概述 振弦式渗压计适合埋设在水工建筑物和基岩内,或安装在测压管、钻孔、堤坝、管道或压力容器中,以测量孔隙水压力或液位。主要部件均采用特殊钢材制造,适合在各种恶劣环境中使用。特殊的稳定补偿技术使传感器具有极小的温度补偿系数。…

Python学习从0开始——Kaggle时间序列001

Python学习从0开始——Kaggle时间序列001 一、具有时间序列的线性回归1.时间序列2.时间序列线性回归1.时间步特征2.滞后特征 二、趋势1.介绍2.移动平均图3.设计趋向4.使用 三、季节性1.介绍2.季节图和季节指标季节性的指标 3.傅里叶特征和周期图用周期图选择傅里叶特征计算傅里…

智能生态网络(IEN)在智能城市中的应用

随着城市的发展,智能生态网络(IEN)正在改变城市的运作方式。对于城市白领来说,了解IEN如何提升城市生活质量、促进可持续发展和提高效率非常重要。 什么是智能生态网络(IEN)? IEN是一个将物联网…

手机如何扫描拍照?方法分享

手机如何扫描拍照?在数字化时代,手机扫描拍照软件已经成为我们日常生活和工作中不可或缺的工具。无论是快速识别纸质文档,还是将照片中的文字转化为可编辑的文本,这些软件都为我们提供了极大的便利。然而,市面上的手机…

【主要推荐算法概览,包括召回与排序】

文章目录 1、基于内容的推荐协同过滤推荐两大类2、召回算法2.1、基于规则策略的召回2.2、5类基础召回算法2.2.1、关联规则召回算法2.2.2、聚类召回算法2.2.3、朴素贝叶斯召回算法2.2.4、协同过滤召回算法2.2.5、矩阵分解召回算法 2.3、基于复杂算法的召回2.3.1、嵌入方法召回&a…

史上最全,呕心沥血总结oracle推进SCN方法(八)

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG数据库运维(如安装迁移,性能优化、故障应急处理等) 公众号:老苏畅谈运维 欢迎关注本人公众号,更多精彩与您分享。前面介…

雷达频段由来及应用

在雷达行业中,以雷达工作频率划分为若干的波段,由低到高的顺序是:高频(HF)、甚高频(VHF)、超高频(UHF)、L波段、S波段、C波段、X波段、Ku波段、K波段和Ka波段。微波波段的…

Xcode无法使用设备:Failed to prepare the device for development

问题: Xcode无法使用设备开发,失败报错如下: Failed to prepare the device for development. This operation can fail if the version of the OS on the device is incompatible with the installed version of Xcode. You may also need…

Pygame的基本应用

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 Pygame有很多模块,每个模块又有很多方法,在此不能够逐一讲解,所以,我们通过一个实例来学习Pygame&…

机器学习归一化特征编码

特征缩放 因为对于大多数的机器学习算法和优化算法来说,将特征值缩放到相同区间可以使得获取性能更好的模型。就梯度下降算法而言,例如有两个不同的特征,第一个特征的取值范围为1——10,第二个特征的取值范围为1——10000。在梯度…

leetcode 122 买卖股票的最佳时机||(动态规划解法)

题目分析 题目描述的已经十分清楚了,不做过多阐述 算法原理 状态表示 我们假设第i天的最大利润是dp[i] 我们来画一下状态机 有两个状态,买入后和卖出后,我们就可以使用两个dp表来解决问题 f[i]表示当天买入后的最大利润 g[i]表示当天卖出…

uniapp开发微信小程序预加载分包

微信小程序分包是一种优化小程序项目结构和性能的方式。它允许开发者将小程序代码包拆分成多个子包,在用户需要时动态加载这些子包,从而减少小程序的首次加载时间和主包的体积。(总体积不得大于20M,主包(共同文件静态资…

613作业

#include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {this->setWindowTitle("QQ");//窗口名this->setWindowIcon(QIcon("C:\\Users\\a8360\\Desktop\\4f603444-8a85-4d52-94d7-ab8c2f5f54a0.png"));this->res…

6.13长难句打卡

Hard times may hold you down at what usually seems like the most inopportune time, but you should remember that they won’t last forever. 艰难时刻可能会在你最不顺心的时刻让你低迷,但请相信,它们不会永远持续下去。