这是2024年的第一篇博客,2023年笔者经历了一连串的生活、工作、学习上的转折和调整,跌跌撞撞时光飞逝,转眼间就踏着元旦的钟声步入了2024年,前思后想、辗转反侧、犹豫再三不知道从哪里开始博客新的篇章,这个问题坦诚说笔者从元旦一直想到今天,脑子里也时不时地像放电影一样的思考了好多个博客更新方向。
不知道从哪里开始那就从老地方出发,还是围绕着这块豌豆开发板继续更新,这块板子凝聚了笔者很多心血,所以心里还是想把它做得更完整更实用,让这块开发板更贴近于实际项目,早上打开CSDN的手机APP,欣慰地发现“FPGA基础知识”专栏接近200人的关注,而“FPGA 20个例程”专栏也有接近300人的关注,在这里也谢谢大家的点赞关注。
其实就单纯的FPGA开发而言,主流三个方向:1. 视频采集处理;2. 数字信号计算;3. 高速接口设计,笔者打算先更新前两个方向,所以也买了两个高端的摄像头模组和一个AD9220 ADC采集模块,后续笔者也会动手绘制一块AD9220外扩板,而高速接口设计这个方向需要留出一些时间,因为工作项目中并没有涉及所以总体来说接触比较少,想着以后多花点时间去沉淀下整理好再动笔毕竟不想水博客写些没有价值的内容。
同时通过博客很多的私信,笔者也了解到也有很多在校本科生和研究生同学在看博客,还是就业为王的思想,如果在学校学习FPGA设计同时学有余力,个人建议可以学一些MCU和DSP开发的知识,工作几年后不难发现真实的项目往往还是MCU+FPGA,DSP+FPGA的组合形式居多,那么这时候如果能掌握一些MCU和DSP开发则对于就业来说,显然选择余地就更大了。
MCU包括主流的ST和GD,DSP包括经典的TI C2000系列笔者会好好更新,再做几款精致的SOC外扩板插到豌豆开发板的CMOS摄像头连接器处,打造专业的MCU+FPGA和DSP+FPGA实战硬件平台,当然这里也会涉及到很多知识,而其中最主要的便是整个嵌入式软件架构可靠性的问题,笔者会围绕不同的硬件平台和实际需求,结合多年工作积累,做出一些源于真实项目的嵌入式软件架构体系。
比如前端是一颗GD32F103带有OLED显示按键、编码器控制的显示板;一颗STM32F407带有USBTMC、CAN、RS485、LAN等多种接口的通信板;一颗TMS320F2806系列的多路ADC采集板等,那么通信接口CAN、UART、SPI、FMC、EMIF如何定义报文的收发和确认方式、系统里MCU、DSP和FPGA分别承担什么任务,怎么做好嵌入式软件规划才能让一个系统里的SOC芯片都稳定可靠地运行。
目前打算博客主要先更新两个方向:一个是基于ADI公司的12位并行ADC的AD9220,配合豌豆开发板自带两个DAC:TLC5615、AD9708做一些数据信号处理实验,归纳总结FPGA中常用的FIR、IIR、CIC滤波器在Vivado环境下的使用细节以及一些数字通信解调技术实现方法,另一个是基于国产兆易GD32F103的开发,因为目前国产化MCU的呼声越来越大且GD32相比STM32的生态更窄、资料更少,所以在这里会做成一个GD32专栏,把通用的ADC采集、DAC输出、PWM采集输出、定时器配置、USB配置、CAN和UART配置、EEPROM存储、OLED刷屏等总结归纳起来。