使用 MCC 写一个 PIC 单片机闪灯程序。MCC 是一个 PIC 图形化代码配置生成工具,是一个 MAPLAB X IDE 的插件。也可以不使用 MCC 生成代码,自己手工写配置代码,麻烦一些。
开发环境
IDE: MAPLAB X IDE v6.00
单片机:16位 PIC 单片机:PIC24FJ192GB106
编译器:XC16 v2.00
操作系统: Win10
烧录工具:PIC Kit 3.5
软件an'zhuang
先安装 MAPLAB X IDE, 再安装 编译器 xc16:
新建工程
启动 MAPLAB X IDE:
依次点击 File >> New Project
选择 Microchip Embedded >> Standalone Project, 点击 Next
选择单片机型号,然后点击 Next
选择 编译器,然后点击 Next:
给工程起一个名字,选择存放目录:
注意我的代码文件编码格式选了 UTF-8, 你可以给句自己爱好选择其他的。
新建完成后的工程如下:
没有任何代码文件
生成代码
我们使用 MCC 生成基本的系统配置代码。
点击工具栏中的 MCC 按钮,调出 MCC 接面。注意 MCC 启动时需要翻墙,要不然会卡住。
MCC 启动成功后的画面如下:
选择 System Module 选项卡,配置系统时钟:
这里我板子上的晶振是 8MHz, 我通过使能 PLL 把单片机系统时钟配置为了 16MHz:
点击 Pin Module 选项卡,配置 LED 引脚:
配置为完成后,点击左侧边栏中的 Generate 按钮生成代码:
生成完成后,点击工具栏的 MCC 按钮,关闭 MCC。
写闪灯代码
自动生成的 main 函数代码如下:
/**
Generated main.c file from MPLAB Code Configurator
@Company
Microchip Technology Inc.
@File Name
main.c
@Summary
This is the generated main.c using PIC24 / dsPIC33 / PIC32MM MCUs.
@Description
This source file provides main entry point for system initialization and application code development.
Generation Information :
Product Revision : PIC24 / dsPIC33 / PIC32MM MCUs - 1.171.1
Device : PIC24FJ192GB106
The generated drivers are tested against the following:
Compiler : XC16 v1.70
MPLAB : MPLAB X v5.50
*/
/*
(c) 2020 Microchip Technology Inc. and its subsidiaries. You may use this
software and any derivatives exclusively with Microchip products.
THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES, WHETHER
EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE, INCLUDING ANY IMPLIED
WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A
PARTICULAR PURPOSE, OR ITS INTERACTION WITH MICROCHIP PRODUCTS, COMBINATION
WITH ANY OTHER PRODUCTS, OR USE IN ANY APPLICATION.
IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE,
INCIDENTAL OR CONSEQUENTIAL LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND
WHATSOEVER RELATED TO THE SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS
BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE
FULLEST EXTENT ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN
ANY WAY RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY,
THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
MICROCHIP PROVIDES THIS SOFTWARE CONDITIONALLY UPON YOUR ACCEPTANCE OF THESE
TERMS.
*/
/**
Section: Included Files
*/
#include "mcc_generated_files/system.h"
/*
Main application
*/
intmain(void)
{
// initialize the device
SYSTEM_Initialize();
while (1)
{
// Add your application code
}
return1;
}
/**
End of File
*/
添加 闪灯代码:
#include "mcc_generated_files/system.h"
#include "mcc_generated_files/pin_manager.h" // 为了使用 LED_Toggle() 函数
#define FOSC _XTAL_FREQ // 为了使用 __delay_ms() 函数
#define FCY (FOSC/2) // 为了使用 __delay_ms() 函数
#include <libpic30.h> // 为了使用 __delay_ms() 函数, 需要定义 FCY
/*
Main application
*/
intmain(void)
{
// initialize the device
SYSTEM_Initialize();
while (1)
{
// Add your application code
LED_Toggle();
__delay_ms(200);
}
return1;
}
烧写程序
按下键盘 F11 编译程序。编译完成后点击烧写按钮烧写程序。弹出工具选择对话框,选择你的烧录工具:
我的烧录工具是 PIC Kit 3.5。
加作者微信:jiyuyun18, 交流更多电子技术。
留言:嵌入群,加入嵌入式软件技术交流群