Cơ Bản Về MPLAB X Cho VĐK PIC

Chào Mọi Người !
Trong quá trình học mình có sử dụng 1 số IDE dành cho PIC như mplab, ccs, microC for PIC, mplab x
Thì cá nhân mình thấy mỗi IDE có 1 ưu điểm riêng nhưng bản thân mình vẫn thích mplab X nhất.
Mình thấy trong diễn đàn vẫn chưa có bài viết hướng dẫn các bạn cơ bản về mplab X nên mình xin mạo muội viết 1 bài hướng dẫn để cho các bạn mới làm quen với PIC và có sở thích dùng mplab X như mình có thể dễ dàng làm việc với IDE mới mà cũ này của microchip.
1. Link download Mplab X IDE :

MPLAB®X IDE

| Microchip Technology Inc.

các bạn chọn phiên bản hệ điều hành phù hợp nhé.
2. Để lập trình ngôn ngữ C cho PIC trên Mplab các bạn phải download Compile phù hợp cho dòng vi điều khiển các bạn dùng nhé
XC8 dành cho vđk 8bit
XC16 dành cho vđk 16bit
XC32 dành cho vđk 32bit
các bạn chọn phiên bản và hệ điều hành phụ hợp rồi download nhé:

| Microchip Technology Inc.

3. Sau khi download 2 phần mềm trên về bạn lần lượt cài đặt từng phần mềm
và thực hiện crack bằng cách copy file exe trong thư mục crack vào thư mục cài đặt xc của bạn.
file crack mình đã upload ở cuối bài.
4. Sau khi cài đặt, chúng ta bắt đầu tạo 1 project cơ bản với mplab x
+ mở phần mềm mplab x
+ chọn vào mục New Project .

“>[​IMG] để bắt đầu tạo 1 project
+ Xuất hiện cửa sổ tạo project mới:
[​IMG]

Chọn “Microchip Embedded” và “Standalone Project”.
+ chọn next –> xuất hiện bảng lựa chọn dòng vđk mà bạn muốn sử dụng:
[​IMG]

+ Tiếp tục chọn next
[​IMG]

+ tại mục này bạn chọn none sau đó tiếp tục next

[​IMG]

Tại đây bạn chọn tool hỗ trợ, mình thường chọn Simulator

Sau đó bạn tiếp tục next
[​IMG]

Tới đây bạn cần lựa chọn compiler mà bạn muốn sử dụng, mình chọn xc16 cho PIC24, nếu là PIC16f hoặc 18f các bạn chọn xc8 nhé, ngoài ra các bạn có thể add plugin của ccs và Hi-Tech C vào trong IDE này vì vậy bạn có thể thoải mái code bằng ngôn ngữ ccs hoặc Hi-tech c.
Sau đó bạn tiếp tục next

[​IMG]

Tới đây bạn cần đặt tên project của mình, và chọn nơi sao lưu project

Tới đây thì bạn đã hoàn thành việc tạo 1 project trên mplab x
các bạn chọn finish
5. Bây h các bạn đã có thể bắt tay vào code:
+ Đầu tiên các bạn phải tạo 1 main file
upload_2014-12-26_22-52-27.

+ sau đó các bạn chọn vào configuration bits để cấu hình cho vi điều khiển
upload_2014-12-26_22-54-8.

Sau khi cấu hình xong như hình dưới :
upload_2014-12-26_22-55-8.
các bạn chọn vào generate source code to ouput được như sau :
upload_2014-12-26_22-56-24.

Các bạn copy toàn bộ đoạn config này vào file main các bạn vừa tạo
Đây là cấu trúc 1 chương trình cơ bản trên mplabx:

Mã:
// phần khai báo thư viện
#include "Hvl_Include.h"
#include "Hvl_lcd_16x2.h"
#include "Hvl_Ds18B20.h"
#include "Hvl_PWM.h"
#include "Hvl_PIDCode.h"
// phần cấu hình cho vđk pic
#pragma config FOSC = HS  // Oscillator Selection bits (HS oscillator)
#pragma config WDTE = OFF  // Watchdog Timer Enable bit (WDT disabled)
#pragma config PWRTE = OFF  // Power-up Timer Enable bit (PWRT disabled)
#pragma config BOREN = ON  // Brown-out Reset Enable bit (BOR enabled)
#pragma config LVP = OFF  // Low-Voltage (Single-Supply) In-Circuit Serial Programming Enable bit (RB3 is digital I/O, HV on MCLR must be used for programming)
#pragma config CPD = OFF  // Data EEPROM Memory Code Protection bit (Data EEPROM code protection off)
#pragma config WRT = OFF  // Flash Program Memory Write Enable bits (Write protection off; all program memory may be written to by EECON control)
#pragma config CP = OFF  // Flash Program Memory Code Protection bit (Code protection off)
/*
*
*/
// khai bao bien toan cuc
unsigned int tempr=0;
// chuong trinh chính
int main(int argc, char** argv) {
  uint8_t str[16];
  uint8_t dutyC=0;
  uint8_t Nhietdo;
  uint8_t i;
  Hvl_LCD_Init();
  Hvl_LCD_Puts("hello hoang loc");
  Hvl_PWM_init();
  Init_PID(0.8,1,1.2);
  DS18B20_Init();
  i= DS18B20_FindDevices();
  DS18B20_Config(0,15,50,DS18B20_12BIT_RES);
  while(true)
  {
  // Hvl_PWM1_Setduty(100);
  Nhietdo = DS18B20_ReadTemp(0);
  dutyC = PIDCalculator(50,40);
  sprintf(str,"T: %d, %d ",Nhietdo,dutyC);
  Hvl_LCD_Gotoxy(1,1);
  Hvl_LCD_Puts(str);
  Hvl_PWM1_Setduty(dutyC);
  __delay_ms(100);
  }
  return (EXIT_SUCCESS);
}

Vậy là đã xong, Hi vọng qua bài viết này các bạn sẽ dễ dàng hơn để tiếp cận với IDE MPLAB X.
Bài viết còn nhiều thiếu sót, mong các bạn góp ý, bổ sung để mình viết bài được đầy đủ và chính xác hơn !!!