1. C语言 stm32系列、gd32系列单片机开发,驱动GPIO、UART、SPI、ADC等片内外设,基于keil MDK平台,jlink烧录器烧录与debug;
2. FreeRTOS轻量级操作系统;
3. linux应用开发,socket编程、硬件驱动编写等;
4. git版本管理;
5. Android程序开发;
6. Python脚本编写。
1. RFID读写器ARM层功能开发,基于OMAP-L138芯片,挂载NFS调试,socket套接字与PC上位机通过TCP/IP通信,UDP广播心跳包等。编写驱动程序驱动GPIO,蜂鸣器,LCD等设备。用CJSON储存数据于文件系统,存放于emmc分区。
2. 音乐合成器开发,基于gd32系列芯片,驱动UART、SPI、I2C、ADC、DAC以及Timer等外设,实现业务需求。裸板开发或者使用FreeRTOS进行任务调度,使用fifo数据结构处理队列以及实现对电压以电容充放电曲线变化的工控算法编写等。
3. Android灯具后台控制软件编写,配合团队完成对灯具后台控制软件的UI实现、业务逻辑进行编写。
根据原理图,独立开发控制该产品的嵌入式软件,软件结构包括bootloader、dfu升级和app应用三个模块,根据相关寄存器的某个位来选择跳转程序地址。裸板开发,主要用到UART、ADC、Timer定时器、SPI等外设加上业务逻辑来实现该产品。
基于gd32系列芯片开发,主要控制来自上位机软件通过usb连接该模块,将usb转音频口,数据转成usb协议格式进行收发。也可通过MIDI(UART)口与其他设备进行通信,将收到的数据转成CV电压通过SPI连接DAC芯片产生对应的电压。板后有按键控制模式等业务功能。
基于gd32系列芯片开发,主要控制来自上位机软件通过usb连接该模块,将usb转音频口,数据转成usb协议格式进行收发。也可通过MIDI(UART)口与其他设备进行通信,将收到的数据转成CV电压通过SPI连接DAC芯片产生对应的电压。板后有按键控制模式等业务功能。