0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【中科昊芯Start_DSC28034PNT湖人开发板试用体验】DSC28034PNT片上系统时钟及中断向量初始化

开发板试用精选 ? 来源:开发板试用 ? 作者:电子发烧友论坛 ? 2022-11-18 16:37 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文来源电子发烧友社区,作者:jf_55236000, 帖子地址:https://bbs.elecfans.com/jishu_2292645_1_1.html

在使用一款新的MCU时,首先要做的事情就是要配置好芯片的系统时钟及中断向量,这样才能让MCU的基本内核跑起来,看了DSC28034PNT的官方例程,DSP2803x_SysCtrl.c文件中基本已经将各种系统时钟模式配置的很全面详细了,通过调用配置好的函数,就可以完成自己想要的系统时钟模式配置,由于官方例程是将片上内部12Mhz时钟通过PLL倍频10倍成120Mhz作为系统时钟,现在我们将其改为使用外部10Mhz晶振通过PLL倍频12倍成120Mhz作为系统时钟,具体配置代码如下:


/******************************************************************

*函数名:void SystemInit(void) *参 数 :无 *返回值:无 *作 用 :初始化DSP片上外设 ******************************************************************/ void SystemInit(void) { DisableDog(); // Disable the watchdog


(*Device_cal)(); // Oscillator calibration values XtalOscSel(); // SelectExternal CRYSTAL oscillator as Clock Source InitPll(DSP28_PLLCR, DSP28_DIVSEL); // Initialize the PLL control InitPeripheralClocks(); // Initialize the peripheral clocks InitFlash(); // Initializes the Flash Control registers InitPieCtrl(); // Initializes the PIE control registers IER = 0x0000; // Disable CPU Interrupt and Flag IFR = 0x0000; InitPieVectTable(); // Initializes the PIE vector table InitCpuTimer(); // Initializes the Timer

}

首先关闭看门狗,防止在喂狗之前系统复位,然后打开并选择外部10M晶振作为系统PLL的输入时钟,通过修改宏定义设置DSP28_PLLCR为12,DSP28_DIVSEL为3,PLL将10M晶振时钟倍频10倍分频1倍成120Mhz作为系统时钟,然后再打开各种用到的外设的时钟,并根据不同的系统时钟频率初始化Flash访问等待时间,然后再关闭PIE中断和系统总中断,并清除所有中断的中断标志位,上面所有配置函数除了InitCpuTimer()为自己配置的,其他均为调用官方驱动库。

InitCpuTimer()为初始化一个定时器,计数器每1us减1,计数周期为1s中,后序将利用这个定时器测量一些函数或算法的执行时间,以评估DSC28034PNT的运算性能,InitCpuTimer()的初始化代码如下:


/******************************************************************

*函数名:void InitCpuTimer(void) *参 数 :无 *返回值:无 *作 用 :初始化定时器 ******************************************************************/ void InitCpuTimer(void) { //==========CPU Timer 0=========================// CpuTimer0Regs.PRD.all = 1000000; // Initialize timer period to 1s: CpuTimer0Regs.TPR.bit.PSC = 120; // Initialize pre-scale counter to divide by 1 (SYSCLKOUT): CpuTimer0Regs.TPR.bit.TDDR = 120; CpuTimer0Regs.TCR.bit.TSS = 1; // Make sure timer is stopped: CpuTimer0Regs.TCR.bit.TRB = 1; // Reload all counter register with period value: CpuTimer0Regs.TCR.bit.TIE = 0; // 0 = Disable/ 1 = Enable Timer Interrupt CpuTimer0Regs.TCR.bit.TSS = 0; // Start CpuTimer0 }

不知道写啥,暂时先写这么多

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 中科昊芯
    +关注

    关注

    5

    文章

    84

    浏览量

    5627
  • 开发板试用
    +关注

    关注

    3

    文章

    302

    浏览量

    2450
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    中科Core_DSC280025C开发板的外部中断问题

    获得中科Core_DSC280025C开发板开发板后,我就抓紧时间研究,无奈学识浅薄,学得很
    发表于 08-08 22:06

    中科Core_DSC280025C开发板试用体验】---定时器中断方式的LED流水灯

    中科Core_DSC280025C开发板的单片机是32位单片机,运算速度快,但引脚配置又有点像Arduino,所以假如编写流水灯程序不像
    发表于 08-07 22:14

    中科Core_DSC280025C开发板试用体验】---LED闪烁灯

    中科Core_DSC280025C开发板试使用了
    发表于 08-07 11:51

    [经验] 【中科Core_DSC280025C开发板试用体验】---模拟SPI及定时器的应用

    状态*/ GPIO_config(); /*初始化PIE与清PIE寄存器,关CPU中断*/ Interrupt_initModule(); /*初始化中断向量
    发表于 08-07 11:07

    中科Core_DSC280025C开发板试用体验】+4. CAN外设调试(含源码)

    前言 大家好,非常感谢电子发烧友与中科提供的DSC280025C开发板,这是一款DSP的开发板
    发表于 08-05 20:46

    中科Core_DSC280025C开发板试用体验】+SCI测试与代码解读

    (); / 关中断,清中断 / Interrupt_initModule(); / 初始化中断向量表 / Interrupt_initVectorTable(); EALLOW;
    发表于 07-17 10:42

    中科Core_DSC280025C开发板试用体验】+epwm输出测试与代码解读

    )互补的三相epwm输出,这款芯片也具备这些功能,设置也简单; /系统时钟初始化/ Device_init(); /GPIO锁定/ Device_initGPIO(); /GPIO配置,用于显示
    发表于 07-14 19:15

    中科Core_DSC280025C开发板试用体验】+3.DSP基础外设调试(含源码)

    前言 大家好,非常感谢电子发烧友与中科提供的DSC280025C开发板,这是一款DSP的开发板
    发表于 07-13 16:07

    中科Core_DSC280025C开发板试用体验】+epwm周期性启动光照传感器工程

    (以及外设)时钟和看门狗、flash配置等任务 Device_initGPIO();/GPIO锁定解除/ /关中断,清中断/ Interrupt_initModule(); /初始化
    发表于 07-11 20:55

    中科Core_DSC280025C开发板试用体验】+2.RAM工程与FLASH工程对比

    前言 大家好,非常感谢电子发烧友与中科提供的DSC280025C开发板,这是一款DSP的开发板
    发表于 07-04 10:37

    中科Core_DSC280025C开发板试用体验】+1.开箱之浮点计算对比

    中科Core_DSC280025C开发板试用体验】+1.开箱之浮点计算对比 前言 大家好,
    发表于 06-29 10:01

    AioneMotor_DSC28034_L3F驱控一体现货库存

    AioneMotor_DSC28034_L3F驱控一体中科新推出的性能卓越电机驱控一体
    发表于 06-27 09:07

    中科Core_DSC280025C开发板免费试用

    Core_DSC280025C核心使用了HXS320F28025C RISC-V ? DSP芯片,该芯片集成了吴自主研发的H28x内
    的头像 发表于 06-03 19:30 ?383次阅读
    <b class='flag-5'>中科</b><b class='flag-5'>昊</b><b class='flag-5'>芯</b>Core_<b class='flag-5'>DSC</b>280025C<b class='flag-5'>开发板</b>免费<b class='flag-5'>试用</b>

    中科DSP产品及公司信息

    库和驱动库,帮助用户降低迁移成本,缩短开发周期。同时,公司还推出了多种开发板和核心,如Core_DSC28027和Start_DSC28034
    发表于 04-07 09:16

    追加名额丨米尔瑞微RK3576开发板有奖试用

    米尔与瑞微合作发布的新品基于瑞微RK3576应用处理器的MYD-LR3576开发板免费试用活动加码啦~~米尔追加了2块价值849元的MYD-LR3576
    的头像 发表于 11-22 01:00 ?738次阅读
    追加名额丨米尔瑞<b class='flag-5'>芯</b>微RK3576<b class='flag-5'>开发板</b>有奖<b class='flag-5'>试用</b>