[DemoCode下载] N76E003系统时钟选择

[复制链接]
3788|15
 楼主| dongliushui 发表于 2018-5-19 23:52 | 显示全部楼层 |阅读模式
  1. /*---------------------------------------------------------------------------------------------------------*/
  2. /*                                                                                                         */
  3. /* Copyright(c) 2017 Nuvoton Technology Corp. All rights reserved.                                         */
  4. /*                                                                                                         */
  5. /*---------------------------------------------------------------------------------------------------------*/

  6. //***********************************************************************************************************
  7. //  Nuvoton Technoledge Corp.
  8. //  Website: http://www.nuvoton.com
  9. //  E-Mail : MicroC-8bit@nuvoton.com
  10. //  Date   : Apr/21/2017
  11. //***********************************************************************************************************

  12. //***********************************************************************************************************
  13. //  File Function: N76E003 System clock select demo code
  14. //***********************************************************************************************************

  15. #include "N76E003.h"
  16. #include "SFR_Macro.h"
  17. #include "Function_define.h"
  18. #include "Common.h"
  19. #include "Delay.h"

  20. //========================================================================
  21. //  The test process:
  22. //        1. Power on is run as default HIRC, show LED Fsys tickle faster
  23. //         2. toggle P3.0 to GND.
  24. //        2. call modify Fsys code to LIRC.
  25. //        3. LED tickle speed slowly than before.
  26. //========================================================================
  27. void main(void)
  28. {

  29. /* Note
  30.   MCU power on system clock is HIRC (16 MHz)
  31.         Please keep P3.0 HIGH before you want to modify Fsys to LIRC
  32. */
  33.        
  34.           Set_All_GPIO_Quasi_Mode;                           // In Common.h define
  35.     set_CLOEN;                                                                                                                            // Also can check P1.1 CLO pin for clock to find the Fsys change.
  36.                 set_P30;
  37.                 while (P30)                                                                                                                                        // when P3.0 keep high, clock out HIRC
  38.                 {   
  39.                                 clr_GPIO1;                                                                                                                        // Check LED output tickle time
  40.         Timer0_Delay1ms(200);
  41.         set_GPIO1;
  42.         Timer0_Delay1ms(200);
  43.                 }
  44.        
  45. ////------------------------------------------------------------------------------------------------------
  46. ///*********************************** Change system closk source ***************************************/
  47. ////------------------------------------------------------------------------------------------------------
  48.               
  49. ////***** HIRC enable part *****               
  50. //                set_HIRCEN;                                                                                                //step1: enable HIRC clock source run
  51. //                while((CKSWT&SET_BIT5)==0);                                //step2: check ready
  52. //                clr_OSC1;                                                                                                        //step3: switching system clock source if needed
  53. //                clr_OSC0;
  54. //                while((CKEN&SET_BIT0)==1);                                //step4: check system clock switching OK or NG
  55. //
  56. ////***** LIRC enable part*****
  57. ////** Since LIRC is always enable, switch to LIRC directly
  58.                 set_OSC1;                                                                                                        //step3: switching system clock source if needed
  59.                 clr_OSC0;  
  60.                 while((CKEN&SET_BIT0)==1);                                //step4: check system clock switching OK or NG        
  61.                 clr_HIRCEN;
  62.    
  63. ////--------------------------------------------------------------------------------------------------------
  64.    
  65. /*
  66.   Now Fsys = LIRC , LED tickle slowly.
  67. */
  68.     while(1)
  69.     {
  70.                                 clr_GPIO1;                                                                                                                        // Check LED output tickle time
  71.         clr_P00;
  72.         set_GPIO1;
  73.         set_P00;
  74.     }
  75. /* =================== */
  76. }


 楼主| dongliushui 发表于 2018-5-19 23:59 | 显示全部楼层
heisexingqisi 发表于 2018-5-20 09:44 | 显示全部楼层
这个设置没有难度,结构图和对应的寄存器
heisexingqisi 发表于 2018-5-20 11:46 | 显示全部楼层
dui ,可以输出测量。
gejigeji521 发表于 2018-5-20 21:39 来自手机 | 显示全部楼层
这个方法不错,可以看出来时钟的变化
xixi2017 发表于 2018-5-20 22:58 | 显示全部楼层
切换两个时钟源。
antusheng 发表于 2018-5-20 23:53 | 显示全部楼层
这个输出,还可以为外接提供一个时钟源呢。
捉虫天师 发表于 2018-5-21 17:38 | 显示全部楼层
学习了,好简单啊。
小灵通2018 发表于 2018-5-21 21:13 | 显示全部楼层
这个芯片时钟就2个,比较好高。
598330983 发表于 2018-5-22 13:15 | 显示全部楼层
自从用了这个芯片,我觉得其他的51都是渣渣
dongnanxibei 发表于 2018-5-23 10:25 | 显示全部楼层
16M的还可以修改一下。
dongnanxibei 发表于 2018-5-23 10:25 | 显示全部楼层
手册提供了修改16M的方法,用于波特率匹配。
yiyigirl2014 发表于 2018-5-23 16:50 | 显示全部楼层
例子里好像没有设置16.6M的,需要从手册抄下来。
天灵灵地灵灵 发表于 2018-5-23 23:42 | 显示全部楼层
新唐的003就是好用,方便,通俗移动。
xinpian101 发表于 2018-5-24 16:41 | 显示全部楼层
应该把这些常用设置封装成函数,直接调用就可以了。
mhwgonx 发表于 2023-10-24 20:12 | 显示全部楼层
新手请教,如何修改测试,能够看出绿色LED灯的慢闪。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

537

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部