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不支持串口下载。
-
🔧烧录软件:推荐使用
AVRDUDESS
:https://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