查看: 18312|回复: 33

[原创] 迅速开发K64的RGB三色灯【keil5+超核库】

[复制链接]
  • TA的每日心情
    开心
    2016-12-23 10:15
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    15

    主题

    257

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1061
    最后登录
    2018-5-13
    发表于 2015-10-30 10:40:05 | 显示全部楼层 |阅读模式
    本帖最后由 努力的人 于 2015-10-31 16:00 编辑

    RGB三色灯有三个引脚,分别是三原色RED、BLUE、GREEN。低电平时点亮相应颜色的灯,根据配色可以产生各种颜色的灯,使用方便。下面开始讲解工程,使用超核的库




    这个是建立完工程的图片,建议直接使用工程模版,自己新建的总会出问题,可能是这个库兼容性不那么好,但是 ...

    这个是建立完工程的图片,建议直接使用工程模版,自己新建的总会出问题,可能是这个库兼容性不那么好,但是 ...
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2016-12-23 10:15
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    15

    主题

    257

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1061
    最后登录
    2018-5-13
     楼主| 发表于 2015-10-30 10:42:34 | 显示全部楼层
    1. #include "gpio.h"
    2. #include "common.h"
    3. /* CH Kinetis固件库 V2.50 版本 */
    4. /* 修改主频 请修改 CMSIS标准文件 system_MKxxxx.c 中的 CLOCK_SETUP 宏 */

    5. /* GPIO 工作模式 */
    6. /*
    7. *         @arg kGPIO_Mode_IFT :悬空输入
    8. *         @arg kGPIO_Mode_IPD :下拉输入
    9. *         @arg kGPIO_Mode_IPU :上拉输入
    10. *         @arg kGPIO_Mode_OOD :开漏输出 如果不清楚这2种输出的区别请 百度..
    11. *         @arg kGPIO_Mode_OPP :推挽输出
    12. */



    13. void GPIO_Initial()
    14. {
    15.         GPIO_QuickInit(HW_GPIOB, 22, kGPIO_Mode_OPP);
    16.         GPIO_QuickInit(HW_GPIOB, 21, kGPIO_Mode_OPP);
    17.         GPIO_QuickInit(HW_GPIOE, 26, kGPIO_Mode_OPP);
    18.         
    19.         GPIO_WriteBit(HW_GPIOB, 22, 1);//RED
    20.         GPIO_WriteBit(HW_GPIOB, 21, 1);//BLUE
    21.         GPIO_WriteBit(HW_GPIOE, 26, 1);//GREEN
    22. }
    23. int main(void)
    24. {
    25.     /* 初始化Delay */
    26.     DelayInit();
    27.    
    28.     /* 另外一种初始化方式: 结构体模式的初始化 有点类似STM32固件库*/
    29. //    GPIO_InitTypeDef GPIO_InitStruct1;
    30. //    GPIO_InitStruct1.instance = HW_GPIOE;
    31. //    GPIO_InitStruct1.mode = kGPIO_Mode_OPP;
    32. //    GPIO_InitStruct1.pinx = 6;
    33. //    GPIO_Init(&GPIO_InitStruct1);
    34.    
    35. //GOIO初始化函数
    36.     GPIO_Initial();
    37.     while(1)
    38.     {

    39.         //DelayMs(500);
    40.                 GPIO_ToggleBit(HW_GPIOB, 22);
    41.                 DelayMs(1000);
    42.                 GPIO_ToggleBit(HW_GPIOB, 22);
    43.                 GPIO_ToggleBit(HW_GPIOB, 21);
    44.                 DelayMs(1000);
    45.                 GPIO_ToggleBit(HW_GPIOB, 21);
    46.                 GPIO_ToggleBit(HW_GPIOE, 26);
    47.                 DelayMs(1000);
    48.                 GPIO_ToggleBit(HW_GPIOE, 26);
    49.     }
    50. }
    复制代码
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-12-23 10:15
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    15

    主题

    257

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1061
    最后登录
    2018-5-13
     楼主| 发表于 2015-10-30 10:43:39 | 显示全部楼层
    本帖最后由 努力的人 于 2015-10-31 12:03 编辑

    一、库已经在启动文件中使能时钟了,想要更改时钟频率可以看启动文件的代码,只需修改CLOCK_SETUP宏定义的值即可
    #include <stdint.h>
    #include "MK64F12.h"

    #define DISABLE_WDOG    1

    #ifndef CLOCK_SETUP
    #define CLOCK_SETUP     0
    #endif
    /* Predefined clock setups
       0 ... Multipurpose Clock Generator (MCG) in FLL Engaged Internal (FEI) mode
             Default  part configuration.
             Reference clock source for MCG module is the slow internal clock source 32.768kHz
             Core clock = 96MHz, BusClock = 48MHz
       1 ... Multipurpose Clock Generator (MCG) in PLL Engaged External (PEE) mode
             Maximum achievable clock frequency configuration.
             Reference clock source for MCG module is an external clock source 50MHz
             Core clock = 120MHz, BusClock = 60MHz
       2 ... Multipurpose Clock Generator (MCG) in Bypassed Low Power Internal (BLPI) mode
             Core clock/Bus clock derived directly from an fast internal clock 4MHz with no multiplication
             The clock settings is ready for Very Low Power Run mode.
             Core clock = 4MHz, BusClock = 4MHz
       3 ... Multipurpose Clock Generator (MCG) in Bypassed Low Power External (BLPE) mode
             Core clock/Bus clock derived directly from the RTC oscillator clock source 32.768kHz
             The clock settings is ready for Very Low Power Run mode.
             Core clock = 32.768kHz, BusClock = 32.768kHz
       4 ... Multipurpose Clock Generator (MCG) in PLL Engaged External (PEE) mode
             USB clock setup
             USB clock divider is set for USB to receive 48MHz input clock.
             Reference clock source for MCG module is an external clock source 50MHz
             USB clock divider is set for USB to receive 48MHz input clock.
             Core clock = 120MHz, BusClock = 60MHz
       5 ... Multipurpose Clock Generator (MCG) in Bypassed Low Power External (PEE) mode
             Core clock/Bus clock derived directly from an external clock 50MHz
             Core clock = 180MHz, BusClock = 80MHz
    */二、GPIO_QuickInit(uint32_t nstance, uint32_t pinx, GPIO_Mode_Type  mode )函数的说明
    uint8_t GPIO_QuickInit (uint32_t instance,
    uint32_t pinx,
    GPIO_Mode_Type mode

    )
    instanceGPIO模块号
    • HW_GPIOA 芯片的PORTA端口
    • HW_GPIOB 芯片的PORTB端口
    • HW_GPIOC 芯片的PORTC端口
    • HW_GPIOD 芯片的PORTD端口
    • HW_GPIOE 芯片的PORTE端口



    pinx   端口上的引脚号 0~31
    mode引脚工作模式
    • kGPIO_Mode_IFT 悬空输入
    • kGPIO_Mode_IPD 下拉输入
    • kGPIO_Mode_IPU 上拉输入
    • kGPIO_Mode_OOD 开漏输出
    • kGPIO_Mode_OPP 推挽输出


    控制引脚电平翻转的两种方法:
    1.使用GPIO_ToggleBit(HW_GPIOE, 6);   只需更改端口和引脚即可   
    2.使用位带操作:PEout(6) = !PEout(6);



    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-12-23 10:15
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    15

    主题

    257

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1061
    最后登录
    2018-5-13
     楼主| 发表于 2015-10-30 10:47:56 | 显示全部楼层
    本帖最后由 努力的人 于 2015-10-30 15:11 编辑

    资料123456

    CH_K_Manual.chm

    505.85 KB, 下载次数: 43, 下载积分: 威望 1

    1-超核电子-渡鸦开发板说明书.pdf

    2.22 MB, 下载次数: 83, 下载积分: 威望 1

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-12-23 10:15
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    15

    主题

    257

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1061
    最后登录
    2018-5-13
     楼主| 发表于 2015-10-30 10:55:53 | 显示全部楼层
    可以自己将LED配成其他颜色,例如红+蓝+绿=白
    上传整个工程,以后只需在这个,K64FN1M那个文件夹中继续建立新的文件夹,把RGB文件夹下的东西拷过来然后修改变为其他工程

    k64.rar

    15.8 MB, 下载次数: 273, 下载积分: 威望 1

    完整工程文件

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-1-6 07:38
  • 签到天数: 736 天

    连续签到: 1 天

    [LV.9]以坛为家II

    21

    主题

    3486

    帖子

    6

    金牌会员

    Rank: 6Rank: 6

    积分
    5093
    最后登录
    2024-1-7
    发表于 2015-10-30 10:57:27 | 显示全部楼层
      学习学习
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    27

    主题

    320

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    484
    最后登录
    2016-3-28
    发表于 2015-10-30 10:58:18 | 显示全部楼层
    谢谢分享
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2016-12-23 10:15
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    15

    主题

    257

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1061
    最后登录
    2018-5-13
     楼主| 发表于 2015-10-30 11:40:56 | 显示全部楼层

    互相学习
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-12-23 10:15
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    15

    主题

    257

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1061
    最后登录
    2018-5-13
     楼主| 发表于 2015-10-30 11:41:11 | 显示全部楼层

    共同进步哦
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    33

    主题

    292

    帖子

    0

    高级会员

    Rank: 4

    积分
    600
    最后登录
    2016-4-19
    发表于 2015-10-30 13:10:10 | 显示全部楼层

    谢谢分享
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-8-2 15:16 , Processed in 0.102201 second(s), 29 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表