应广单片机如何制作一个编程器,创建您的第一个项目,并实现“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&仿真器
  • 应广单片机烧录器
  • 代码生成器
模数转换器ADC 如何工作?应广科技官网公布的PMS132/PMS132B8单片机,ADC 装进程的步骤,有 7 个寄存器需要配置

模数转换器ADC 如何工作?应广科技官网公布的PMS132/PMS132B8单片机,ADC 装进程的步骤,有 7 个寄存器需要配置


应广单片机烧录方法,PMS133/PMS134 的烧录脚为 PA3,PA4,PA5,PA6,VDD,GND 这 6 只引脚,随着烧录器版本的不同,每种封装形式烧录方法也不尽相同

应广单片机烧录方法,PMS133/PMS134 的烧录脚为 PA3,PA4,PA5,PA6,VDD,GND 这 6 只引脚,随着烧录器版本的不同,每种封装形式烧录方法也不尽相同


应广单片机YFS1224 系列12bit ADC 型 MTP MCU 带 2K-bit EEPROM,包含两个部分:PFS122B MCU,2Kbit EEPROM,是一款 12bit ADC 类型的 MTP MCU

应广单片机YFS1224 系列12bit ADC 型 MTP MCU 带 2K-bit EEPROM,包含两个部分:PFS122B MCU,2Kbit EEPROM,是一款 12bit ADC 类型的 MTP MCU


应广单片机PMB180 8 位 OTP 型单片机带充电,IC充电器使用与设定,PMB180 的充电器做电性量测V1 电压波形:(CC Mode, R1 = 10Kohm, C1 = 1uF)

应广单片机PMB180 8 位 OTP 型单片机带充电,IC充电器使用与设定,PMB180 的充电器做电性量测V1 电压波形:(CC Mode, R1 = 10Kohm, C1 = 1uF)


单片机选型指南,项目开发如可购买单片机,这里分享干货让你少找弯路,选择微控制器(MCU)的10个步骤,推荐几款常用的单片机

单片机选型指南,项目开发如可购买单片机,这里分享干货让你少找弯路,选择微控制器(MCU)的10个步骤,推荐几款常用的单片机


PMS152G应广科技8 位 OTP SuLED IO 型单片机,工作温度范围:-40°C ~ 85°C,烧录方法,请使用 PDK5S-P-003x 烧录,1.25KW OTP 程序存储

PMS152G应广科技8 位 OTP SuLED IO 型单片机,工作温度范围:-40°C ~ 85°C,烧录方法,请使用 PDK5S-P-003x 烧录,1.25KW OTP 程序存储


应广科技单片机应用开发中PMC-APN003 IO 输出引脚连接长导线时的应用需知,PA3 用于控制 TRIAC,线路接法为 PA3 输出引脚先接100 公分长的导线

应广科技单片机应用开发中PMC-APN003 IO 输出引脚连接长导线时的应用需知,PA3 用于控制 TRIAC,线路接法为 PA3 输出引脚先接100 公分长的导线


应广触摸单片机 PMS161 触摸功能内含一个触摸检测电路,用户可通过寄存器 ESOCR配置触摸模块电源

应广触摸单片机 PMS161 触摸功能内含一个触摸检测电路,用户可通过寄存器 ESOCR配置触摸模块电源


应广科技 PMB183 8 位 OTP 型单片机带充电,内置一个硬件充电器,此充电器为完全恒流/恒压线性充电,可用于单节锂离子电池充电管理

应广科技 PMB183 8 位 OTP 型单片机带充电,内置一个硬件充电器,此充电器为完全恒流/恒压线性充电,可用于单节锂离子电池充电管理


低功耗高效能语音控制IC,为您的设备赋予语音交互能力,应广科技语音单片机芯片打造极致语音控制体验的IC选择

低功耗高效能语音控制IC,为您的设备赋予语音交互能力,应广科技语音单片机芯片打造极致语音控制体验的IC选择


PMB180应广单片机8 位 OTP 型单片机带充电,内置一个硬件充电器。此充电器为完全恒流/恒压线性充电,可用于单节锂离子电池充电管理

PMB180应广单片机8 位 OTP 型单片机带充电,内置一个硬件充电器。此充电器为完全恒流/恒压线性充电,可用于单节锂离子电池充电管理


PMC-APN002 过电压保护应用需知,IO 输入电压高过 VDD 或低于 GND,都可能造成应广单片机损伤,或是因内部电流引发单片机不正常工作

PMC-APN002 过电压保护应用需知,IO 输入电压高过 VDD 或低于 GND,都可能造成应广单片机损伤,或是因内部电流引发单片机不正常工作


语音芯片IC_MCU单片机语音方案,使用Arduino和蓝牙DIY语音控制家庭自动化案例,用语音命令无线控制家用电器和灯光

语音芯片IC_MCU单片机语音方案,使用Arduino和蓝牙DIY语音控制家庭自动化案例,用语音命令无线控制家用电器和灯光


PMS154C单片机8位PWM计数器/比较器使用,选择 PA3 为负输入和 Vinternal R 为正输入,Vinternal R 的电压为(18/32)*VDD,AC 阻容降压供电

PMS154C单片机8位PWM计数器/比较器使用,选择 PA3 为负输入和 Vinternal R 为正输入,Vinternal R 的电压为(18/32)*VDD,AC 阻容降压供电


语音控制IC应广单片机(MCU)如何设计声控灯应用解决方案?将介绍设计过程中的关键阶段,包括组件选择、电路设计、电源、编程和测试

语音控制IC应广单片机(MCU)如何设计声控灯应用解决方案?将介绍设计过程中的关键阶段,包括组件选择、电路设计、电源、编程和测试


开发实力

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

全球渠道

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

品质保证

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

售后服务

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

服务热线

0755-88364040
18902464556

义隆代理

烧录开发

技术支持

申请样品

扫描微信二维码