飞思卡尔k02时钟问题

2019-03-26 07:54发布

                我想用外部8M的时钟,请哪位大神指导一下,我配的时钟寄存器有没有错。或者有没有人解答一下,飞思卡尔K系列单片机怎么配置使用外部晶振。
              SIM->CLKDIV1 = (uint32_t)0xFFFFFFFFu;
                SIM_SCGC5  |=SIM_SCGC5_PORTA_MASK;
                /* MCG_C2: LOCRE0=0,RANGE=2,HGO=0,EREFS=1,LP=0,IRCS=0 */
                MCG->C2 = (uint8_t)((MCG_C2 & (uint8_t)~(uint8_t)(  MCG_C2_LOCRE0_MASK |
                                                                                                      MCG_C2_RANGE(0x01) |
                                                                                                      MCG_C2_HGO_MASK |
                                                                                                      MCG_C2_LP_MASK |
                                                                                                      MCG_C2_IRCS_MASK )) |
                                                                                       (uint8_t)(MCG_C2_RANGE(0x01) |
                                                                                                      MCG_C2_HGO_MASK |
                                                                                                      MCG_C2_EREFS_MASK ));
                /* MCG_C1: CLKS=0,FRDIV=3,IREFS=0,IRCLKEN=0,IREFSTEN=0 */
                MCG->C1 |=MCG_C1_CLKS(0x02) |
              MCG_C1_FRDIV(0x04)|MCG_C1_IREFS_MASK;                  
                /* MCG_C4: DMX32=0,DRST_DRS=0 */
                  MCG_C4 &= (uint8_t)~(uint8_t)((MCG_C4_DMX32_MASK | MCG_C4_DRST_DRS(0x03)));
                /* OSC_CR: ERCLKEN=1,??=0,EREFSTEN=0,??=0,SC2P=0,SC4P=0,SC8P=0,SC16P=0 */
                  OSC_CR = OSC_CR_ERCLKEN_MASK;
                /* MCG_C7: OSCSEL=0 */
                MCG_C7 &= (uint8_t)~(uint8_t)(MCG_C7_OSCSEL(0x03));
                while((MCG->S & MCG_S_OSCINIT0_MASK) == 1u);
                while((MCG->S & MCG_S_IRCST_MASK) != 0u);
                while((MCG->S & 0x0Cu) != 0x08u);   


此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
sblpp
1楼-- · 2019-03-26 15:02
楼主是想配置到多少M呢?
建议使用PE工具来生成时钟配置。
jpxuchao
2楼-- · 2019-03-26 19:05
sblpp 发表于 2015-12-3 21:41
楼主是想配置到多少M呢?
建议使用PE工具来生成时钟配置。

我没有,我用的是KEIL5,底层要自己写,我想配置成72M的
freebsder
3楼-- · 2019-03-26 23:00
用PE配,没记错的话可以直接生成keil工程。最好结合ksdk,省事。
jpxuchao
4楼-- · 2019-03-27 04:38
freebsder 发表于 2015-12-4 09:24
用PE配,没记错的话可以直接生成keil工程。最好结合ksdk,省事。

你有PE的安装包吗
freebsder
5楼-- · 2019-03-27 04:45
jpxuchao 发表于 2015-12-4 10:34
你有PE的安装包吗

你不会去官网看看吗?

一周热门 更多>