zoukankan      html  css  js  c++  java
  • 003-CH579M学习开发-新建工程说明

    <p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/LearnCH579M" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

    说明

    CH579M就是个ARM M0 内核的单片机,其实建立工程没有啥.

    只要是STM32玩的好,这节就相当于复习下.

    如果STM32玩的不好,这节你也许不知道我说的是啥!

    因为这节我十分的直接了当,这节我只是说明建立工程遇到的问题!

    开始

    1.建一个文件夹

    2.文件夹里面再建几个文件

    3.把例程src文件夹里面的所有文件拷贝到library

    4.新建工程

    4.弄三个分组

    5.把 libraryStdPeriphDriver 里面的所有.c文件添加进去

    5.添加启动文件

    6.设置下头文件路径

    7.新建一个main.c文件

    8.把main.c文件添加到user里面

    9.编写以下程序,并编译

    #include "CH57x_common.h"
    
    int main()
    {
        
    }

    9.这是因为缺少操作u盘的库文件

    U盘,蓝牙,蓝牙组网的库文件是单独的

    10.如果不使用单片机驱动U盘,可以把下面两个文件移除,再次编译就不会有错误了

    10.如果使用单片机驱动U盘,把U盘库文件添加到工程即可

    建一个文件夹用来存放U盘库文件

    拷贝库文件

    建一个分组,然后把文件添加进去

    设置下头文件路径

    编译的时候说缺少这两个数组的定义

    可以参考源例程里面的定义一下

    10.使用串口1打印下,看看单片机是否真的可以工作

    #include "CH57x_common.h"
    
    __align(4) UINT8  RxBuffer[ MAX_PACKET_SIZE ];  // IN, must even address
    __align(4) UINT8  TxBuffer[ MAX_PACKET_SIZE ];  // OUT, must even address
    
    int main()
    {
        GPIOA_SetBits(GPIO_Pin_9);
        GPIOA_ModeCfg(GPIO_Pin_8, GPIO_ModeIN_PU);            // RXD-ÅäÖÃÉÏÀ­ÊäÈë
        GPIOA_ModeCfg(GPIO_Pin_9, GPIO_ModeOut_PP_5mA);        // TXD-ÅäÖÃÍÆÍìÊä³ö£¬×¢ÒâÏÈÈÃIO¿ÚÊä³ö¸ßµçƽ
        UART1_DefInit();
        
        UART1_SendString("11223344", 8 );
        while(1)
        {
            
        }
    }

     

    其它

    例程提供的库函数要比STM32提供的库函数还完善,就是为了用户使用去的.

    例程里面已经有个延时函数,也映射了printf函数

    假设想使用串口1作为printf打印,可以

    注意哈,例程提供的printf是阻塞式的,一般我不用这种,希望大家伙打印日志的时候自己加上环形队列+中断发送.

  • 相关阅读:
    MQ(二):ActiveMQ基础概念以及案例
    MQ(一):消息中间件开篇
    Nginx(三):Nginx基本概念以及用法
    Nginx(二):Nginx基本安装
    Nginx(一):Nginx初识
    配置中心(十)Config:环境搭建
    声明式服务调用(Feign)九:环境搭建
    服务监控(Hystrix Dashboard、Turbine)八:环境搭建
    服务保护机制(Hystrix)七:环境搭建
    客户端负载均衡(Ribbon)六:环境搭建
  • 原文地址:https://www.cnblogs.com/yangfengwu/p/15028427.html
Copyright © 2011-2022 走看看