应广单片机如何制作一个编程器,创建您的第一个项目,并实现“Hello world”功能,一些知名品牌的简单8位微控制器要么难以购买,而Padauk微控制器则成为了一个可能的替代品

整理编辑:逐高电子技术开发部 / 日期:2024-4-19

台湾Padauk公司被誉为生产最实惠单片机微控制器的厂商。虽然这些微控制器功能并不复杂,但它们足以应对简单设备所需执行的基本任务。详细介绍了Padauk公司的特性和产品线。如果您想要获取更多数据,可以访问Padauk的官方网站。

现在,一些知名品牌的简单8位微控制器要么难以购买,要么价格高昂得令人咋舌。而Padauk微控制器则成为了一个可能的替代品。他们的产品线中既有一次性可编程的产品,也有支持多次编程的产品。在下面的文章中,

我将分步指导您如何制作一个编程器,创建您的第一个项目,并实现“Hello world”功能。

需要说明的是,虽然Padauk公司也提供官方的品牌编程器,但其价格大约在0.3美金左右,成本较高。而自制的编程器成本会低很多,并且可以支持对大量微控制器进行固件烧录。

这款编程器是由FreePDK社区开发和维护的。所有必要的文件都已上传至GitHub。本文基于EEVblog上关于同一主题的系列视频整理而成,该系列视频分为五个部分详细讲解了整个过程。我参考了视频内容,但个人而言,通过文字和图片的方式更容易理解和操作。

第一部分是关于FreePDK编程器

对于大多数非专业人士来说,直接理解其工作原理可能会有些困难。不过,您可以在GitHub上找到相关的文档和资料,那里详细记录了FreePDK编程器的使用方法、原理以及所需的文件。通过仔细阅读和参考这些资料,您将能够逐步了解并掌握如何使用FreePDK编程器进行微控制器的编程和烧录工作。

image

第二步,印刷电路板

在Githab上,你可以下载Gerber并在生产现场订购。另一种选择是在国内流行的营销机构购买现成的产品。它是这样的:

image

Размеры её 73х22 мм.

我完全理解您对设计师和开发人员的尊重与赞扬,他们在创造这个设备时所付出的努力是无可估量的。他们精心设计的每一个细节都体现了对技术和艺术的追求,这是值得我们所有人敬佩的。

关于设备的尺寸问题,确实,有些设备的安装非常密集,细节极小,这无疑增加了安装和操作的难度。然而,这也正是技术的魅力所在,它挑战我们的极限,让我们在微小的空间中创造出无限的可能。

您提到的在GitHub上找到Bom(Bill of Materials,材料清单)的做法非常明智。这将帮助您更好地了解设备所需的所有组件,并确保您在安装过程中不会遗漏任何关键部分。同时,您自己整理Bom的过程也体现了您对项目的认真和负责态度。

程序的核心——STM32F072C8T6微控制器,虽然可能在市场上不太容易找到,但相信通过您的努力和耐心,一定能够找到并成功将其集成到您的项目中。

image

在这里可以比较板上的规格和位置,非常方便。

image

花了几个小时,我们得到了这样的结果:

 

image

作为一项实验,一种带有焊锡膏和烤箱的变体仍在测试中。用薄塑料(300微米)做了一个模板,在印刷平台上钻了洞。

image

我在煎饼锅上看到了一切。玻璃盖可以让你在线观看整个过程:

image

 

如果您不想连接焊料浆料,并且您正在焊接焊料,那么将组件0603替换为组件0402是一个很好的选择。是的,小的,你需要一个好的镊子和镜片,但下降更容易和更快。结果是这样的:

 

image

固件坐标

来自Free PDK社区的原始固件说明:按项目划分:

下载dfu-util-0.11二进制文件;
从GitHub下载固件:(下载代码/下载ZIP);
下载EASYPDKPROG文件。在win64文件夹中使用DFU-UTIL.EXE;
按照上面的说明:按下程序上的按钮,插入USB,设备应该在设备管理器中定义如下:

image

最后,单击替换驱动程序按钮。让我们等待5分钟,在此之后,设备管理器现在应该定义为“STM32 BOOTLOADER”。如果一切正常,则直接跳转到PDK程序员微控制器的固件。

按下按钮并插入USB,等待操作系统的反应,释放按钮。

进入win64文件夹,打开命令行:Shift + PKM(鼠标右键)在空位置/“打开命令窗口”。命令行将打开。从上面的指令中插入一行:

dfu-util -d 0483:df11 -a "@Internal Flash / 0x080000000 /064*0002Kg"——dfuse-address 0x08000000 -D EASYPDKPROG.dfu

点击“Enter”。如果一切正常,答案是这样的:

image

 

因此,来自Free PDK社区的PADAUK应广科技微控制器程序员已经准备好工作了。固件完成后,当连接到USB设备管理器时,程序员没有定义(至少对我来说)。

检查坐标

Free PDK程序员的应用程序被称为EASYPDKPROG,通过命令行运行。我们从这里下载。开箱。将程序连接到USB。现在从命令行中打开一个文件夹:Shift + PKM在任何空闲位置,并选择“打开命令窗口”。

在打开的窗口中输入命令:easypdkprog probe。

这个命令检查连接的程序员和微控制器。如果她没有看到程序员,她会这样回答:

image

如果一切正常,程序检测到程序员,那么答案是:

image

如果从列表中安装了一个微控制器,则响应必须包含它的名称:

image

您可以在命令行中输入PFS154可用的命令之一。

easypdkprog probe -检查程序和安装的微控制器的连接;
easypdkprog -n PFS154读出。ihx -从微控制器读取文件readout.ihx;
easypdkprog -n PFS154编写Test1。ihx—用于将文件写入微控制器;
完整的命令列表可以在页面上查看。


下面是微控制器的列表。横线标记为不支持。

MCU390
PMC131 PMS132 PMS132B PMS133 PMS134
PMC251 PMS271
PMS150C PMS152 PFS154 PMS154B PMS154C
PMS171B(社区列表将其列为支持,但在请求时,EASYPDKPROG将其视为“不支持”)
PMS15A
PFS172 PFS173

顺便说一下,你可以使用FreePDK-WRITER程序,这样你就不用自己输入命令了:源代码可以从这里下载。可执行文件没有发布在那里,所以你必须自己编译它。我为你做的:FreePDK-WRITER。两个。exe文件都应该在同一个文件夹中。

image

 

答案也会出现在CMD窗口中。下面是两个编译后的文件:一个用于可重复编程的PFS154,另一个用于可一次性编程的PMS150C(价格为3美分)。

Blink - 150C
Blink - 154 - 1


让我们试着去核实一下。不幸的是,对于150摄氏度来说,这将是第一次也是最后一次。这是不可挽回的损失。

在这两种情况下,LED都挂在PA4输出上。程序员连接方案也是标准的:

image

image

在某些情况下,连接的外设不允许微控制器正常固件。因此,Pin PA4上的LED最好在固件后连接。
固件成功后,PFS154微控制器在命令行中得到这样的响应:

image

这意味着一切都很顺利。请记住,控制器上的电源只在固件加载时提供,要看到闪烁的LED,必须提交外部电源。

很明显的第二部分:编译器和代码编辑器

要为Padauk微控制器编写程序,需要一个编译器和一个编辑器。我们将使用SDCC (Small Device C Compiler)作为编译器。从这里下载并安装SSDC。在撰写本文时,已经有了4.4.0版本。但最好下载4.2.0版本。它是免费PDK社区为程序员创建所有文件的地方。使用最新的发行版可能需要调整一些文件。下载并安装。

第二步是选择一个支持SDCC编译器的代码编辑器。最初我选择了CodeBlocks,但后来我转到了VS Code,我觉得它更方便。如果您对CodeBlocks感到满意,这里有关于如何使用它的详细描述。

在这里,我将描述VS Code的工作,其中添加了一个脚本,允许您在没有命令行的情况下绕过它。从这里下载针对Windows的VS Code发行版。安装。

现在有必要下载宏,以避免使用命令行。我们从GitHub下载存储库。我们把它打开,放在任何地方。您需要将easypdkprog文件放在宏包中。

简单介绍一下GitHub上的Free PDK文件,特别是一些代码示例。提供了三页的Padauk微控制器代码示例。

sdcc-pdk-code-examples—这里有一些sdcc编译器的示例,它们不需要任何额外的包含。编译代码可以简单地复制并粘贴到编辑器中。
免费-pdk-examples -这里是由MCUs社区提供的。简单的复制是必要的。您需要在项目中添加include文件。因此,代码变得更容易阅读和理解。
fppa-code-examples -这些是来自制造商的示例,代码很好。但是它只编译到与出厂程序员一起使用的本地IDE中。


最有趣的版本是free-pdk-examples。请注意,页面上有一个警告,该方法仍在开发中,需要谨慎使用。

Free PDK社区在GitHub上发布了大量示例代码。你可以用它们来学习。他们在这里。

image

使用图标创建一个干净的文件:

image

给他起个名字xxx。c。例如Mayak 7.c。插入GitHub的代码。从这里复制代码BlinkLED/main.c。

根据作者的想法,构建应该使用Make程序来完成,构建算法在Makefile文件中的每个示例中都有描述。这个文件将一些定义添加到代码中,这些定义的值在Makefile中设置。我们不会使用这个程序(它本身和脚本都是在linux下编写的),所以我们将在代码的开头手动指定这些defile。

#define PFS154
#define F_CPU 1000000
#define TARGET_VDD_MV  4000
#define TARGET_VDD  4.0

现在我们可以使用上面下载和安装的宏。编译代码的命令是“Ctrl+Shift+B”。在下拉框中,选择微控制器的比特率。在我们的例子中,PFS154是14。编译立即开始。如果没有错误,文本将显示为下面的截图。最重要的是“完成”。

image

我们还需要几支队伍:

要检查连接的程序和/或微控制器,请按“Ctrl+P”热键,在弹出窗口中输入“task+ space”,选择“Probe MC”。得到的结果:

image

对于微控制器固件,请按“Ctrl+P”热键,在弹出窗口中输入“task+ space”,选择“Write to MC”。在下拉菜单中选择我们的微控制器。

应广单片机技术资料

  • 台湾应广单片机官网
  • 应广单片机例程
  • 应广单片机编程指南
  • 应广单片机定时器
  • 技术开发工具
  • 应广单片机IDE&仿真器
  • 应广单片机烧录器
  • 代码生成器
应广单片机跃龙PFC161基于MINI-C的应广单片机编程测试代码,7触摸键8位MTP类型单片机PA5的2MS脉冲波

应广单片机跃龙PFC161基于MINI-C的应广单片机编程测试代码,7触摸键8位MTP类型单片机PA5的2MS脉冲波


PMS161触摸键OTP类型应广单片机开发方案,包含一个最多5键的电容式触摸控制电路

PMS161触摸键OTP类型应广单片机开发方案,包含一个最多5键的电容式触摸控制电路


PMS163是一款集成有PWM生成器、触摸功能、ADC模数转换器等组件的单片机

PMS163是一款集成有PWM生成器、触摸功能、ADC模数转换器等组件的单片机


PMS132/PMS132B单片机(MCU),模拟-数字转换器(ADC) 模块,当启用内部 BG/2v/3v/4v 为参考高电压时,必须保证 IHRC 为开启状态

PMS132/PMS132B单片机(MCU),模拟-数字转换器(ADC) 模块,当启用内部 BG/2v/3v/4v 为参考高电压时,必须保证 IHRC 为开启状态


PMS150G应广单片机在编程期间在PA5上使用较低的电压,但在VCC上使用比PMS150C更高的电压,PMS150G 可以在1.8V下运行而 PMS150C 至少需要2.0V

PMS150G应广单片机在编程期间在PA5上使用较低的电压,但在VCC上使用比PMS150C更高的电压,PMS150G 可以在1.8V下运行而 PMS150C 至少需要2.0V


触摸键OTP类型单片机选型padauk(应广)PMS1606,时钟源内部高频RC振荡器(IHRC),内部低频 RC 振荡器(ILRC),Bandgap 电路提供1.2V Bandgap电压

触摸键OTP类型单片机选型padauk(应广)PMS1606,时钟源内部高频RC振荡器(IHRC),内部低频 RC 振荡器(ILRC),Bandgap 电路提供1.2V Bandgap电压


PMS150C应广单片机构建了一个简单的闪烁自行车灯开发案例,虽然许多人可能会使用滑动开关和555定时器来实施此项目,BOM成本也要低得多

PMS150C应广单片机构建了一个简单的闪烁自行车灯开发案例,虽然许多人可能会使用滑动开关和555定时器来实施此项目,BOM成本也要低得多


PMC-APN011应广半自动烧录机台使用说明,提高烧录,适用范围所有单片机系列,针对所有单片机型号(特别是 PMS150B)在半自动机台做烧录时,其烧录过程有可能会受 到半自动机台

PMC-APN011应广半自动烧录机台使用说明,提高烧录,适用范围所有单片机系列,针对所有单片机型号(特别是 PMS150B)在半自动机台做烧录时,其烧录过程有可能会受 到半自动机台


PFC151应广单片机工业级8位 MTP IO 类型单片机,2KW MTP 程序储存器 (可编程1,000次以上),128 Bytes 数据储存器,两个8位定时器可产生6/7/8-bit PWM波形

PFC151应广单片机工业级8位 MTP IO 类型单片机,2KW MTP 程序储存器 (可编程1,000次以上),128 Bytes 数据储存器,两个8位定时器可产生6/7/8-bit PWM波形


PFS122B 8位MTP类型应广科技单片机,带12位电阻式 ADC 最新开发资料更新,不建议使用于 AC 阻容降压供电或有高 EFT 要求的应用,应广8位高性能精简指令集CPU

PFS122B 8位MTP类型应广科技单片机,带12位电阻式 ADC 最新开发资料更新,不建议使用于 AC 阻容降压供电或有高 EFT 要求的应用,应广8位高性能精简指令集CPU


应广单片机MCU关于休眠的设置与注意事项,分两个部分写,省电模式和掉电模式,这也是规格书上描述的官方叫法,本文统称为休眠模式

应广单片机MCU关于休眠的设置与注意事项,分两个部分写,省电模式和掉电模式,这也是规格书上描述的官方叫法,本文统称为休眠模式


PGS134应广单片机8bit MCU带12bit ADC&EEPROM,KW 程序储存器,256 Bytes 数据存储器(128*16),对所有带唤醒功能的IO,都支持两种可选择地唤醒速度

PGS134应广单片机8bit MCU带12bit ADC&EEPROM,KW 程序储存器,256 Bytes 数据存储器(128*16),对所有带唤醒功能的IO,都支持两种可选择地唤醒速度


语音单片机方案,应广科技芯片型号PMS121的应用说明,1.5KW OTP 程序储存器,PB0提供NMOS开漏及PB7提供PMOS特大电流输出,ADC模块时有6个寄存器需要配

语音单片机方案,应广科技芯片型号PMS121的应用说明,1.5KW OTP 程序储存器,PB0提供NMOS开漏及PB7提供PMOS特大电流输出,ADC模块时有6个寄存器需要配


应广科技2024新产品型号目录,逐高电子一级代理,应广单片机(MCU)报价选型包含:G Series(MTP +EEP),B Series(Battery Charger+MCU),l/O型-OTP Series,A/D型- MTP Series, I/O型MCU,A/D型MCU,触控型MCU ,高抗EFT干扰MCU

应广科技2024新产品型号目录,逐高电子一级代理,应广单片机(MCU)报价选型包含:G Series(MTP +EEP),B Series(Battery Charger+MCU),l/O型-OTP Series,A/D型- MTP Series, I/O型MCU,A/D型MCU,触控型MCU ,高抗EFT干扰MCU


应广科技单片机PS173微控制器作为编码器计数器的实例应用成功案例,过读取每个信号何时发生变化并跟踪哪个信号首先发生变化,编码器上的计数可以准确地递增或递减

应广科技单片机PS173微控制器作为编码器计数器的实例应用成功案例,过读取每个信号何时发生变化并跟踪哪个信号首先发生变化,编码器上的计数可以准确地递增或递减


开发实力

专业资深的软硬件开发工程师团队,熟悉行业客户产品硬件技术平台解决方案

全球渠道

为客户提供高性价比的产品和服务,满足客户及时快速的电子生产制造需求

品质保证

专业的测试保证团队,保证每批方案的稳定性,兼容性,和抗干扰性

售后服务

专业的技术服务团队,24小时为客户提供各种软硬件的技术支持和售后服务

服务热线

0755-88364040
18902464556

义隆代理

烧录开发

技术支持

申请样品

扫描微信二维码