1、开发环境搭建
因个人习惯了标准库开发的方法,每次新增直接复制工程模板。虽然工程模板会导致编译、存放空间有鸡肋问题,但是对个人这么马虎的人说笨方法往往有效吧。也可以删减不需要的文件来减负。
工程模板文件示意
USER 文件夹
找到任何一个官方工程实例,分别拷贝n32g401_it.c,n32g401_it.h,main.c
SYSTEM 文件夹
从 bsp_delay.c 文件中直接拷贝,后面若用到也同样复制工程模板即可。
存放了常用的系统滴答延时函数、用 UART4 做 printf 串口打印。
CMSIS 文件夹
直接拷贝官方文件夹,存放内核,MCU 启动、配置文件
FW_LIB 文件夹
直接拷贝官方文件夹,存放 MCU 的外设源文件
KEI_PRJ 存放软件工程
新建工程后,点击【魔术棒】,输入:USE_STDPERIPH_DRIVER 即可。
对于 HARDWARE,源代码,至此工程模板建立基本完成;
见附件
2、测评内容之 LIN 通讯网络示意 应用开发的 USART1(PB6,PB7) 作为 LIN 主机端,向标准 LIN 通信模块持续发送 LIN 指令报文;结合 LIN 入门.pdf 文档可清楚了解 LIN 总线的知识点。 因为 RGB_LED 氛围灯是已有项目中使用的集成度很高的 LED driver 芯片,使用 ID=0x3A 发送亮度数值,位于第一个字节,范围 0~255;改变 KEY2 按键可以提高亮度,KEY3 可以降低亮度; 使用 ID=0x39 发送颜色数值,也位于第一个字节,范围 0~63;改变 KEY1 按键可以改变颜色,循环增加; 三颗 LED 是用作 LIN 报文发送的状态指示灯; UART4 接口用来实时打印发送的 LIN 数据指令;因 ID 指令需要向右移动一位。故 ID=0x3A 在打印的结果中实际为 0xBA;
2.1 LIN 的 uart 串口配置
2.2 LIN 的指令格式配置 作为主机模式下,参考 LIN 总线格式定义必须一个 break 段和 0x55 的同步帧;
获取 PID 字段。因为主机发送的 ID 都需要进行保护校验位计算获得;
数据段
校验和分为两种:标准和增强型 我们用到的是增强型:
2.3、LIN 指令命令
按键改变数值,从而改变颜色或亮度; 3、 测评内容之 KEY 和 LED key 根据硬件电路特性配置位带上拉会更稳定些;
led 通常配置成推挽模式就好;
4、测评内容之实物 4.1 使用 图莫斯监测 LIN 总线数据
4.2、使用串口打印数据
4.3、实物照片
4.4 实物视频
测试总结:N32G401作为M4内核,优势相同成本下可以获得更好的DSP和FUP支持;本实例未进行这一性能的测验;主要围绕LIN通信外设单元其源代码的移植,花费2个小时完成。其标准库文件非常清楚,多多熟悉就可以完全掌握。