本帖最后由 full_stack 于 2020-7-18 12:35 编辑
前些日子收到了华大开发板。
板子靓照
可以看到板子外设密度很高,真是一块不错的开发板。
模块说明
在选型方面,开发板MCU型号为:HC32F460PETB,是基于Cortex-M4高性能大容量宽温级(B: -40-105℃)的LQFP封装,
看文件 EV-HC32F460-LQFP100-050-V12_LAYOUT_20190111.pdf,是四层板
作为一款MCU开发板,这样的配置很不错了。
获取开发板的资料有官网、gitee以及ftp
分别是:
https://www.hdsc.com.cn/
ftp://HdscCustomer:HdscGuest2019!@ftp.hdsc.com.cn/
https://gitee.com/hdscmcu/hc32f460
至于ftp查看资料方式,可以直接映射网络位置
使用例程我也亮个oled,
发现oled真是漂亮
利用官方提供的资源再测试一下CAN通信,
硬件连接如图
官方例程CAN的通信速率是1M,
玩过很多开发板,虽然开发板提供了各种速率的寄存器配置,但是很少有直接用1M做例程的,
- void CAN_RxIrqCallBack(void)
- {
- if(true == CAN_Irq**Get(CanRxIrq**))
- {
- CAN_Irq**Clr(CanRxIrq**);
- CAN_IrqCmd(CanRxIrqEn, Disable);
- CAN_Receive(&stcRxFrame);
- u8RxFlag = true;
- }
- }
- if(true == u8RxFlag)
- {
- u8RxFlag = false;
- if(1u == stcRxFrame.Cst.Control_f.RTR)
- {
- // continue;
- }
- else
- {
- //<<Can Tx
- stcTxFrame.StdID = 0xAAul;
- stcTxFrame.Control_f.DLC = stcRxFrame.Cst.Control_f.DLC;
- stcTxFrame.Control_f.IDE = stcRxFrame.Cst.Control_f.IDE;
- for(u8Idx=0u; u8Idx<stcRxFrame.Cst.Control_f.DLC; u8Idx++)
- {
- stcTxFrame.Data[u8Idx] = stcRxFrame.Data[u8Idx];
- }
- CAN_SetFrame(&stcTxFrame);
- CAN_TransmitCmd(CanPTBTxCmd);
- CAN_IrqCmd(CanRxIrqEn, Enable);
- }
- }
程序是这样写的,CAN在接收到一帧数据之后,判断是否是数据帧,
如果是数据帧,则发送接收到的数据
利用CANTest,1ms的间隔连发500次,完美接收500次数据
|