[MCU] 【小华HC32F448测评】第一篇之硬件电路与环境搭建

学学学学学学学   2023-8-1 19:33 楼主

    一、小华HC32F448开发板硬件资源综述

            作为工控板,448开发板硬件设备资源齐全,官方性能评估能达到250 DMIPS(Device-Moment-In-Personalized-Experience),且在电机驱动和ADC采样方面有丰富资源,能主应用与步进电机和伺服电机、变频器电机驱动,

image.png  

   二、小华HC32F448开发板硬件电路 

  1.     整体是蓝色调的板,可以看到上面放置了很多芯片,稍后将对部分主要芯片及电路左右进行解答
  2.     有多种接口用来供电和测试用,比较常用的都有,可以直接用typec接口供电和烧录,但是没有usb母头;

     f45f22bb54f786cb25cec28743fe1ea.jpg   4e3b7812e621363184ff32947e1b9ec.jpg

                                                         图2:448开发板正面

  1.    官方版图开发板绘画原理图分为了6个模块,再于顶层模块通过接口衔接(感觉画得很正规且好看),子模块包含了CAN、LIN,ADC、Flash、LED、key、SRAM、POWER、UART-SPI—IIC、DAP和主控448.

                                                        ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​                    ​​​​​​​    ​​​​​​​    ​​​​​​​     image.png

            图4:模块声明

                                                      image.png  

    图5:顶层模块

    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    ​​​​​​​    image.png  

图6:PCB

 

  1.     F448的DEBUG电路齐全,有SWD,JTAG,UART,DAP。DAP对我们小白来说应该是比较陌生没有听说过的,那么我们来讲讲DAP。
            CMSIS-DAP是一种用于在ARM Cortex-M系列微控制器上进行调试和固件升级的协议。它是由ARM公司开发的一种标准化的调试协议,被广泛应用于基于ARM Cortex-M系列微控制器的开发和生产过程中。 CMSIS-DAP协议是基于通用串行总线(Universal Serial Bus,USB)的,因此可以通过USB连接器和USB线缆与微控制器进行连接。它使用USB协议来进行数据传输,并定义了一套标准的命令集,用于控制和管理微控制器的运行状态和数据传输。        
            CMSIS-DAP可以通过JTAG和SWD连接到设备进行调试,我们可以用USB直接连接typec接口后,在keil5软件的魔术棒中进行设置后可以直接进行下载和调试程序,在F448的开发板中,官方用HC32F460芯片作为DAP的芯片,且作为一个虚拟串口进行调试。

image.png   image.png  

图7:DeBUG电路

  1. 在CAN和LIN电路中,LIN控制芯片用了TJA1027,TJA1027是一款由STMicroelectronics(意法半导体)生产的汽车级CAN/LIN收发器。它支持汽车网络中的控制器局域网(Controller Area Network,CAN)和 LIN(Local Interconnect Network)两种协议,可以用于汽车电子系统的信息传输和控制。 TJA1027具有多种功能,包括数据包缓冲区、错误检测和纠正、过压保护、电源管理等。它还支持多种工作模式,包括CAN、LIN、同时支持CAN和LIN等。此外,TJA1027还具有低功耗、高可靠性和高温度范围等特点,适用于汽车电子系统的各种应用场景。

image.png  

  1. 子模块中还包含着一个SMART CARD模块,即开发板背面那个黑色盒子。用的芯片是52400-25ALF​​​​​​​芯片,由NXP Semiconductors(恩智浦半导体)生产,属于NXP的Kinetis系列微控制器,具有高性能、低功耗、高可靠性等,在smart card中,52400-25ALF微控制器可以用于存储个人信息、进行数据加密和安全认证等。例如,它可以用于身份证、银行卡、社会保障卡等。此外,52400-25ALF微控制器还可以支持多种外设,如CAN、LIN、USB等
    image.png  
  2. 在F448模块原理图电路中右下角有两块芯片,SN74CB3Q3257和TCA9539用来扩展PIN口,即复用功能。
    1. 其中TCA9539是一款由NXP Semiconductors(恩智浦半导体)生产的多路复用器。它可以用于将多个I/O口与单个I/O口或中断引脚进行复用,从而实现更高效的I/O管理。 TCA9539具有9个输入/输出通道,每个通道都可以配置为输入或输出。它还支持多种功能,包括上拉电阻、下拉电阻、中断触发等。此外,TCA9539还具有低功耗、高可靠性等特点,适用于各种应用场景。在F448电路中,TCA芯片中,用SDA和SCL来控制CD、LCD和3个LED灯。
    2. SN74CB3Q3257芯片是由TI生产的多通道数字电路芯片,在F448电路中用来控制TRECE和CAN。​​​​​​​ image.png  
  3. 编译环境搭建与创建工程​​​​​​​
    1. 下载keil5,keil5的安装教程从网上借鉴
    2. 从小华官方下载HC32F448_IDE压缩包,然后直接解压下载到keil5的MDK所在目录即可。
      image.png   image.png  
    3. 再从小华官方下载例程和驱动文件所在压缩包HC32F448_DDL_Rev,这个压缩包里包含了几个文件夹,document放了一个检索官方函数API的工具,即下面中间这张图,可以用来检索我们所需要的函数。drivers是主要的一些头文件和源文件放置的地方,projects文件夹里面放了例程example和模板项目文件夹template。
      image.png   image.png image.png
    4.    接下来我们用template文件夹里的模板文件夹来尝试点亮LED灯,因为是第一次使用,我们先借鉴一下example文件夹里gpio例程。打开template模板文件工程发现对比与gpio例程,在driver里缺少了hc32_ll_gpio.c和hc32_ll_utility.c,需要添加。
    5. 鼠标点击driver文件夹后右键,然后选择Add Existing Files,然后选drivers文件夹,然后选hc32_ll_driver文件夹,进去之后inc文件夹放头文件,src放源文件,我们分别把gpio.h,gpio.c,utility.c,utility.h加入文件夹。
      image.png   image.png    image.png   image.png  
    6. 我们直接粘贴复制gpio例程的main.c的内容到template的main.c,gpio例程的做用是点亮开发板上的LED3,并且每2s循环点亮。
    7. 如果按前面的步骤把gpio的例程复制到template里,会报错说找不到gpio.c和gpio.h的函数和结构体,但是我们明明已经把文件都放在了driver里面了,这是为什么呢?我们打开gpio.c就会发现问题是因为源文件执行的时候没有进入放函数的#if……#endif里面,而判定条件是(LL_GPIO_ENABLE == DDL_ON),现在没有进入显然是LL_GPIO_ENABLE不等于DDL_ON,我们进一步查询LL_GPIO_ENABLE的定义的源头是在hc32f3xx_conf.h的51行和70行,如所预料,初始define里GPIO_ENABLE=DDL_OFF,我们需要改成DDL_ON就可以了。
    8. image.png     image.png image.png  
    9.   把ENABLE打开之后,编译就通过了,这也告诫了我们以后写开发板程序的时候需要把ENABLE先打开。如果依然报错的话,可以点击一个文件夹然后右键打开manage,然后调节driver里Files里源文件的先后顺序。我们更改main.c源文件里第50行的DLY_MS的宏定义数值,单位值1为1ms,2000为2s。
      image.png   image.png  
         image.png
    10. 最后我们打开魔术棒(图标像一个魔术棒,在主界面栏目第三行那里),打开界面后先选Device选择HC32F448MCTI芯片(看开发板主芯片丝印),然后在Output里勾选Create HEX File选项,再打开Debug,选择CMSIS-DAP Debugger,然后用usb直接连接开发板后按一下复位键,复位键是k0,即六个按键里按钮是蓝色那那个,再然后在keil主界面第一行选择Flash,再点击download下载。


      第一篇测评结束,下一次用uart和界面交互写个hello word。
本帖最后由 学学学学学学学 于 2023-8-4 17:36 编辑

回复评论 (1)

大佬一出手,帖子果然精彩,希望多来EEWORLD发表这样的优秀帖子。
点赞  2023-8-5 06:58
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复