【新提醒】华大单片机(hc32l073pata)环境搭建及点灯源程序

官网链接: http://www2.keil.com/mdk5
   安装教程自己在网上可以找到
   2)安装华大ide包
    官网链接: www.hdsc.com.cn/Category82-1425?All=1
    安装教程:双击IDE运行包,然后一直往下操作
    注意:如果是自己找的包,或者是某宝给的,使用这种包flash download 里边可能会找不到华大芯片的类型,加也加不进去。所以还是建议使用官方的。
  3)连接板子,下好驱动
   使用的是st-link,st-link在keil安装目录下有,一般是安装目录\ARM\STLink ,里边有个exe程序,运行然后device connect(就按着程序提示一直装),装好之后打开电脑->属性->设备管理器,就能看到有个STM32 stlink的,说明装好了。
  4)下载
   打开keil,然后打开点灯的例程(如果是自己找的SDK,记得要核对芯片的型号是否是自己板子的类型)
   魔术棒->debug->stlink debugger 然后按setting
   正常情况下是SW device 有显示地址 ,debug adapter 有显示正确内容 flash download有显示芯片型号
   如果SW device 没显示,说明没识别到芯片(我之前用的jlink识别不到,就换了个stlink,暂时没想到别的方法可以解决)
   如果flash download 没有对应的芯片,点add自己加进去,如果add的列表没有芯片的型号,要么自己把flm文件给放到对应的flash文件夹,要么就重新装ide包。(都不行的话就没办法了)
   点击 rebuild(两个向下箭头的图标)编译,没问题的话,就点旁边的download,最后点击一个带d的放大镜图标进入调试,点击run就可以看到板子上的灯在闪

如果下载成功灯没闪的话,要么是硬件的问题,要么是程序的问题。
程序的问题,需要翻原理图,看代码对应的端口是否是连接到led的那个端口
硬件的问题,电路连接是否正确,仿真器是否能正确识别

制作出来的实物图如下:

单片机源程序如下:

  1. /******************************************************************************

  2. * Include files

  3. ******************************************************************************/

  4. #include "gpio.h"

  5. /******************************************************************************

  6. * Local pre-processor symbols/macros ('#define')

  7. ******************************************************************************/

  8. /******************************************************************************

  9. * Global variable definitions (declared in header file with 'extern')

  10. ******************************************************************************/

  11. /******************************************************************************

  12. * Local type definitions ('typedef')

  13. ******************************************************************************/

  14. /******************************************************************************

  15. * Local function prototypes ('static')

  16. ******************************************************************************/

  17. /******************************************************************************

  18. * Local variable definitions ('static')                                      *

  19. ******************************************************************************/

  20. /******************************************************************************

  21. * Local pre-processor symbols/macros ('#define')

  22. ******************************************************************************/

  23. /*****************************************************************************

  24. * Function implementation - global ('extern') and local ('static')

  25. ******************************************************************************/

  26. static void App_LedInit(void);

  27. /**

  28. ******************************************************************************

  29. ** \brief  Main function of project

  30. **

  31. ** \return uint32_t return value, if needed

  32. **

  33. ** This sample

  34. **

  35. ******************************************************************************/

  36. int32_t main(void)

  37. {

  38. ///< LED端口初始化

  39. App_LedInit();

  40. while(1)

  41. {

  42. ///< LED点亮

  43. Gpio_SetIO(EVB_LEDR_PORT, EVB_LEDR_PIN);

  44. delay1ms(1000);

  45. ///< LED关闭

  46. Gpio_ClrIO(EVB_LEDR_PORT, EVB_LEDR_PIN);

  47. delay1ms(1000);

  48. }

  49. }

  50. static void App_LedInit(void)

  51. {

  52. stc_gpio_cfg_t stcGpioCfg;

  53. ///< 打开GPIO外设时钟门控

  54. Sysctrl_SetPeripheralGate(SysctrlPeripheralGpio, TRUE);

  55. ///< 端口方向配置->输出(其它参数与以上(输入)配置参数一致)

  56. stcGpioCfg.enDir = GpioDirOut;

  57. ///< 端口上下拉配置->下拉

  58. stcGpioCfg.enPu = GpioPuDisable;

  59. stcGpioCfg.enPd = GpioPdEnable;

  60. ///< LED关闭

  61. Gpio_ClrIO(EVB_LEDR_PORT, EVB_LEDR_PIN);

  62. ///< GPIO IO LED端口初始化

  63. Gpio_Init(EVB_LEDR_PORT, EVB_LEDR_PIN, &stcGpioCfg);

  64. }

  65. /******************************************************************************

  66. * EOF (not truncated)

  67. ******************************************************************************/

(0)

相关推荐