[PIC®/AVR®/dsPIC®产品] 【CuriosityNano测评报告】+建立测试项目及开启定时器

[复制链接]
1040|2
 楼主| hu9jj 发表于 2021-1-3 19:28 | 显示全部楼层 |阅读模式
    前一个亮灯程序是在下载的范例基础上修改的,本次则从零开始建立一个全新的项目。    在MPLAB X IDE主窗口点击新建项目:


    在项目属性窗口中选择“独立项目”:


    在器件搜索窗口中输入关键字(例如15244),从下拉列表框中选择对应的器件:


    然后选择正确的编译器:


    最后输入项目名称和确定项目存放的文件夹,注意在下部的编码窗口选择相应的汉字字符集,否则程序(含注释)中无法输入汉字字符:


    点击“finish”按钮结束项目设置,此时项目框架就建成了,但还没有代码文件和头文件,这些文件可以通过代码配置器MCC来完成。在“Windows”下拉菜单中点击第一个选项“MPLAB Code Configurator”(也可以直接点击工具栏上的MCC图标),进入代码配置器:


    通常是将MCC文件保存在默认的位置,直接点击“保存”。之后便正式进入到代码配置器界面:


    选择好使用内容时钟(详见上图),然后在下面的引脚图上RA2(LED)设置为output,RC2(KEY)设置为input。我选用的是定时器0来作毫秒定时,添加好定时器0并按下图设置:


    最后一个设置项目不要漏了(因为需要下拉到最后才能看到,很容易漏设置):


    设置好之后点击左上部的“Geberate”按钮生成代码文件。然后退出MCC(再点击一次MCC图标),就可以添加代码了。不过有时退出MCC后会遇到无法编辑代码的情况,此时可退出MPLAB X IDE之后再重新进入一次就行。
    先在main.c文件中定义一个16位的全局变量ms,然后在主函数中打开中断并启动定时器0,在主循环中写入执行代码:
  1. uint16_t ms;

  2. /*
  3.                          Main application
  4. */
  5. void main(void)
  6. {
  7.     // initialize the device
  8.     SYSTEM_Initialize();
  9.     // When using interrupts, you need to set the Global and Peripheral Interrupt Enable bits
  10.     // Use the following macros to:
  11.     // Enable the Global Interrupts
  12.     INTERRUPT_GlobalInterruptEnable();
  13.     // Enable the Peripheral Interrupts
  14.     INTERRUPT_PeripheralInterruptEnable();
  15.     // Disable the Global Interrupts
  16.     //INTERRUPT_GlobalInterruptDisable();
  17.     // Disable the Peripheral Interrupts
  18.     //INTERRUPT_PeripheralInterruptDisable();
  19.     TMR0_StartTimer();
  20.    
  21.     while (1)
  22.     {
  23.         // Add your application code
  24.         if(ms>499){
  25.             ms = 0;
  26.             LED_Toggle();
  27.         }
  28.     }
  29. }



    在tmr0.c文件中也定义好外部变量ms:


    然后在中断函数中写入ms++:



    最后编译下载烧录到评估板上,LED灯便按照1秒的频率闪烁起来了,下面是动画:



    下面是测试项目的压缩包:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
yangjiaxu 发表于 2021-1-3 21:31 | 显示全部楼层
MPLAB X IDE功能还是很强大的,初始化外设配置时钟之类的很棒
CoolSilicon 发表于 2021-1-4 11:33 | 显示全部楼层
X IDE里面的MCC对底层的配置功能还是非常棒的!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:Microchip
简介:让我们来为您提供帮助。我们可提供各种资源来帮助您解决一切问题。是否需要与我们的客户支持团队联系?您可以通过电话、在线聊天功能或电子邮件与他们联系。

151

主题

1063

帖子

11

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