任务介绍
本次选择的任务是MCU(1) - 用于简易示波器/频谱仪/信号发生器的核心板,在此次设计中,想设计一片属于自己的开发板,刚好有这次的机会,我可以将自己的想法设计一块开发板,完成属于自己的核心板,其中的功能是能替代上面的功能,这次我就选择了F4系列,性能强大,是替代的核心首选。
设计方案
本次设计就是将核心板所有引脚引出,这里的设计不想浪费资源,在设计过程中,可能会遇到引脚要使用到,但是没有正常的引出,可能会导致引脚不能正常的使用,所以,本次就将所有的引脚引出作为设计,这个设计也是为后面的突发情况做了解决方法。
在本次测试上,添加一个IO口来测试软件是否能正常的驱动,作为我们的调式接口引脚。
PCB介绍
在完成画板的工作之后,将KICAD的制版文件和孔位图上传到PCB的厂家,打了三块样版,来调试一下板子的功能是否正常,将引脚引出,配置了相关的外部晶振,和必要的滤波电容,在搭配按键来实现我们的相关引脚操作。添加了一块串口CH340N,可以直接通过TYPEC来实现串口的读写,方便我们的开发调试信息接收处理。

PCB正面

PCB背面
焊接调试
在得捷购买的主控到了,开始焊接。由于手上没有洗板水,导致板子上的焊油比较多。

这里的晶振暂时不需要8M这里暂时没有焊接,按键还不太需要使用到这里也没有进行焊接,在焊接的过程中把引脚拉出来了一点,也将小心焊好,手上的材料封装不是很多,有些封装则使用0402来焊接完成。
调试程序
连接到TYPEC,可以正常的识别到串口

通过板子调试端口连接的时候,查找不到STLINK的端口

后面排查发现其中的PA13和PA14被我看错连接到PB13和PB14,才导致识别不到调试接口


这是算设计的失误,但由于我将所有引脚引出来,也可以进行补救。
将STLINk的跳线接到正确的引脚进行烧录

我们可以看到现在能正常的识别到芯片。

后续的话吗,因为这个是核心版,后面在扩展版设计的时候,重新将烧录引脚给引出来,还能进行补救。
程序下载烧录
这里我是将以前的F4代码进行修改,实现呼吸灯的效果,这里只是图片我们看不出太大差别。
这里的呼吸灯的引脚在PC13

烧录完成效果

实现的逻辑是通过定时器对引脚进行翻转实现呼吸灯的效果
void breatheLED(void) {
if(count >= 100) {
count = 0;
if(direct == 0) {
dutyfactor++;
} else if(direct == 1) {
dutyfactor--;
}
}
if(dutyfactor <= 0) {
direct = 0;
} else if(dutyfactor >= 100) {
direct = 1;
}
if(count < dutyfactor) {
HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET);
} else {
HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET);
}
}
总结
这次第一次参加Make Blocks活动,在俩天内设计完成这个板卡,但是烧录引脚给弄错了,在时间紧张的情况下,还是更需要保持仔细耐心的检查相关引脚的配置,后续只能通过扩展版来实现将引脚重新实现,在设计的时候也将所有引脚给引出来,也是担心引脚设计错误,还能补救一下。最终也是有惊无险的完成此次调试。