SlideShare a Scribd company logo
1 of 9
Download to read offline
Phần cứng

    -   MSP430 Launchpad Kit ( Giá 4.3$ )
    -   1 cảm biến siêu âm SRF05
    -   Vài sợi Bus hoặc dây nối

Phần mềm:

    -   Phần mềm IAR Embedded
    -   Phần mềm PuTTy (nhận dữ liệu UART)
        Link: http://www.putty.org/




Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM
Email: loc.plsoft@gmail.com
Viết chương trình cho KIT launchpad



Mở IAR Embedded Workbench                             và làm theo các bước sau:




Đặt tên Project …




Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM
Email: loc.plsoft@gmail.com
Cài đặt các thông số sau:




Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM
Email: loc.plsoft@gmail.com
Viết chương trình cho “main.c” như sau:

#include <msp430g2553.h>
#include <stdbool.h>
////////////////Defines////////////////
#define LED1         BIT6
#define LED0         BIT0
#define DAT         BIT0 //P2.0 //input signal port
#define VCC         BIT5 //P1.5
#define GND          BIT4 //P1.4
#define KICH         BIT1
char charbuffer[8];
int i=0;
int j=0;
unsigned int capture_array[51];          // RAM array for captures
int tick=0;
int cap=0;
int pre_cap=0;
int first_pulse=0;

////////////////Function Protos////////////////
void TX(char *tx_message);
void DO_KHOANG_CACH(void);
static char *i2a(unsigned i, char *a, unsigned r);
char *itoa(int i, char *a, int r);


static char *i2a(unsigned i, char *a, unsigned r)
{
   if (i/r > 0) a = i2a(i/r,a,r);
   *a = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"[i%r];
   return a+1;
}

char *itoa(int i, char *a, int r)
{
  if ((r < 2) || (r > 36)) r = 10;
  if (i < 0)
  {
      *a = '-';
      *i2a(-(unsigned)i,a+1,r) = 0;
  }
  else *i2a(i,a,r) = 0;
  return a;
}

void TX(char *tx_message)
{
   unsigned int i=0; //Define end of string loop int
   char *message; // message variable
   unsigned int message_num; // define ascii int version variable
   message = tx_message; // move tx_message into message
   while(1)
   {
      if(message[i]==0) // If end of input string is reached, break loop.
      {break;}
      message_num = (int)message[i]; //Cast string char into a int variable
      UCA0TXBUF = message_num; // write INT to TX buffer
      i++; // increase string index
      __delay_cycles(10000); //transmission delay


Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM
Email: loc.plsoft@gmail.com
if(i>50) //prevent infinite transmit
      {
        // P1OUT |= (LED1+LED0);
          break;
      }
   } // End TX Main While Loop
} // End TX Function

int main(void)
{ WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer
   //setup clock to 1MHZ
   BCSCTL1 = CALBC1_1MHZ;                  // Set DCO to 1MHz
   DCOCTL = CALDCO_1MHZ;
   ////////////////USCI setup////////////////
   P1SEL = BIT1 + BIT2;            // Set P1.1 to RXD and P1.2 to TXD
   P1SEL2 = BIT1 + BIT2;             //
   UCA0CTL1 |= UCSSEL_2;                // Have USCI use SMCLK AKA 1MHz main CLK
   UCA0BR0 = 104;                 // Baud: 9600, N= CLK/Baud, N= 10^6 / 9600
   UCA0BR1 = 0;                // Set upper half of baud select to 0
   UCA0MCTL = UCBRS_1;                   // Modulation UCBRSx = 1
   UCA0CTL1 &= ~UCSWRST;                   // Start USCI
   ////////////////General GPIO Defines////////////////
   P1DIR |= (LED0 + LED1+GND+VCC); //define output ports

    P1OUT &= ~(LED0 + LED1+GND); //turn ports low

    P2DIR |= KICH;
    P2IE |= DAT;
    P2IFG &= ~DAT;
    P2SEL = DAT;                       // Set P2.0 to TA0
    /////////////////SETUP TIMER

   TA1CCTL0 = CM_3 + SCS + CCIS_0 + CAP + CCIE; // falling edge + CCI0A (P2.0)// + Capture Mode +
Interrupt
   TA1CTL = TASSEL_2 + MC_2;           // SMCLK + Continuous Mode

    __enable_interrupt();

    while(1)
    {
      __delay_cycles(100000);
      DO_KHOANG_CACH();
    }
}

// Timer1 interrupt service routine
#pragma vector=TIMER1_A0_VECTOR
__interrupt void TIMER1(void)
{
   if ( (first_pulse==0) & (DAT == 1) )
       {
            P1OUT |= LED1;
         pre_cap=TA1CCR0;
         first_pulse=1;

       }
    else
       {
           P1OUT &= ~LED1;
           tick = TA1CCR0;
           cap = (tick- pre_cap)/58;

Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM
Email: loc.plsoft@gmail.com
first_pulse =0;
          TA1CCR0=0;

           itoa(cap, charbuffer, 10);
           TX(charbuffer);
           TX("rn");
      }

}
void DO_KHOANG_CACH(void)
{
  P2OUT |= KICH;
  __delay_cycles(20);
  P2OUT &= ~KICH;
}

Sau khi hoàn tất thì Download chương trình xuống KIT




Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM
Email: loc.plsoft@gmail.com
Kết nối với SRF05




Chú ý: Đổi sang mode Hardware Uart bằng cách thay đổi các Switch kết nối như hình khoanh
màu vàng.

Mở chương trình PUTTY ( hi vọng bạn sẽ hiểu hình sau nói gì ) hi




Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM
Email: loc.plsoft@gmail.com
Kết quả đo:




Giải thích sơ lược về chương trình.



Chương trình sử dụng Timer1 ở chế độ Capture để bắt xung từ chân P2.0. Cứ mỗi 100ms chương
trình sẽ phát xung (20us) ra chân P1.1 để kích cho SRF05 hoạt động. SRF05 trả về giá trị đo
được ở chân P2.0.

Giá trị đo được sẽ được chia cho 58 để ra khoảng cách tính bằng centimet. Sau đó giá trị được
gửi lên máy tính.



                                          Mọi việc đã xong rồi đó.

                                              Good luck to you !




Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM
Email: loc.plsoft@gmail.com
Và đây là kết quả:




Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM
Email: loc.plsoft@gmail.com

More Related Content

What's hot

Catalog biến tần Ls starvert iG5A Manuall
Catalog biến tần Ls starvert iG5A Manuall Catalog biến tần Ls starvert iG5A Manuall
Catalog biến tần Ls starvert iG5A Manuall Beeteco
 
Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Mr Giap
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinetLập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinetXuân Thủy Nguyễn
 
Đồ Thị Matlab
Đồ Thị Matlab Đồ Thị Matlab
Đồ Thị Matlab JoneCole
 
Đồ án - Nhập môn Kỹ thuật điện - HUST
Đồ án - Nhập môn Kỹ thuật điện - HUSTĐồ án - Nhập môn Kỹ thuật điện - HUST
Đồ án - Nhập môn Kỹ thuật điện - HUSTKhang Nguyen
 
Bài tập và ứng dụng PLC
Bài tập và ứng dụng PLCBài tập và ứng dụng PLC
Bài tập và ứng dụng PLCquanglocbp
 
Huong dan dung proteus
Huong dan dung proteusHuong dan dung proteus
Huong dan dung proteusĐức Đỗ
 
Spartan 3e-vietnamese
Spartan 3e-vietnameseSpartan 3e-vietnamese
Spartan 3e-vietnamesebuianhminh
 
Giáo trình Lập trình PLC theo ngôn ngữ bậc thang.pdf
Giáo trình Lập trình PLC theo ngôn ngữ bậc thang.pdfGiáo trình Lập trình PLC theo ngôn ngữ bậc thang.pdf
Giáo trình Lập trình PLC theo ngôn ngữ bậc thang.pdfMan_Ebook
 
Bai tap lap trinh c
Bai tap lap trinh  cBai tap lap trinh  c
Bai tap lap trinh ctiểu minh
 
Chương trình điều khiển đèn giao thông cho ngã tư theo 3 chế độ dựa theo đồng...
Chương trình điều khiển đèn giao thông cho ngã tư theo 3 chế độ dựa theo đồng...Chương trình điều khiển đèn giao thông cho ngã tư theo 3 chế độ dựa theo đồng...
Chương trình điều khiển đèn giao thông cho ngã tư theo 3 chế độ dựa theo đồng...nataliej4
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bịLập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bịXuân Thủy Nguyễn
 
Ly thuyet mach dao dong
Ly thuyet mach dao dongLy thuyet mach dao dong
Ly thuyet mach dao dongSy Nam Nguyen
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 8 các công cụ trực tuyến và chuẩn đoán
Lập trình PLC S7 1200 tiếng Việt-Chuong 8 các công cụ trực tuyến và chuẩn đoánLập trình PLC S7 1200 tiếng Việt-Chuong 8 các công cụ trực tuyến và chuẩn đoán
Lập trình PLC S7 1200 tiếng Việt-Chuong 8 các công cụ trực tuyến và chuẩn đoánXuân Thủy Nguyễn
 
Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Vũ Anh
 

What's hot (20)

Catalog biến tần Ls starvert iG5A Manuall
Catalog biến tần Ls starvert iG5A Manuall Catalog biến tần Ls starvert iG5A Manuall
Catalog biến tần Ls starvert iG5A Manuall
 
Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinetLập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
 
Đồ Thị Matlab
Đồ Thị Matlab Đồ Thị Matlab
Đồ Thị Matlab
 
Đề tài: Nghiên cứu STATCOM, ứng dụng trong truyền tải điện năng
Đề tài: Nghiên cứu STATCOM, ứng dụng trong truyền tải điện năngĐề tài: Nghiên cứu STATCOM, ứng dụng trong truyền tải điện năng
Đề tài: Nghiên cứu STATCOM, ứng dụng trong truyền tải điện năng
 
Đồ án - Nhập môn Kỹ thuật điện - HUST
Đồ án - Nhập môn Kỹ thuật điện - HUSTĐồ án - Nhập môn Kỹ thuật điện - HUST
Đồ án - Nhập môn Kỹ thuật điện - HUST
 
Bài tập và ứng dụng PLC
Bài tập và ứng dụng PLCBài tập và ứng dụng PLC
Bài tập và ứng dụng PLC
 
Đề tài: Động cơ không đồng bộ ba pha, HAY, 9đ
Đề tài: Động cơ không đồng bộ ba pha, HAY, 9đĐề tài: Động cơ không đồng bộ ba pha, HAY, 9đ
Đề tài: Động cơ không đồng bộ ba pha, HAY, 9đ
 
Huong dan dung proteus
Huong dan dung proteusHuong dan dung proteus
Huong dan dung proteus
 
Spartan 3e-vietnamese
Spartan 3e-vietnameseSpartan 3e-vietnamese
Spartan 3e-vietnamese
 
Đề tài: Hệ thống điều khiển tín hiệu đèn giao thông qua xử lý ảnh
Đề tài: Hệ thống điều khiển tín hiệu đèn giao thông qua xử lý ảnhĐề tài: Hệ thống điều khiển tín hiệu đèn giao thông qua xử lý ảnh
Đề tài: Hệ thống điều khiển tín hiệu đèn giao thông qua xử lý ảnh
 
Giáo trình Lập trình PLC theo ngôn ngữ bậc thang.pdf
Giáo trình Lập trình PLC theo ngôn ngữ bậc thang.pdfGiáo trình Lập trình PLC theo ngôn ngữ bậc thang.pdf
Giáo trình Lập trình PLC theo ngôn ngữ bậc thang.pdf
 
Bai tap lap trinh c
Bai tap lap trinh  cBai tap lap trinh  c
Bai tap lap trinh c
 
Chương trình điều khiển đèn giao thông cho ngã tư theo 3 chế độ dựa theo đồng...
Chương trình điều khiển đèn giao thông cho ngã tư theo 3 chế độ dựa theo đồng...Chương trình điều khiển đèn giao thông cho ngã tư theo 3 chế độ dựa theo đồng...
Chương trình điều khiển đèn giao thông cho ngã tư theo 3 chế độ dựa theo đồng...
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bịLập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
 
Ly thuyet mach dao dong
Ly thuyet mach dao dongLy thuyet mach dao dong
Ly thuyet mach dao dong
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 8 các công cụ trực tuyến và chuẩn đoán
Lập trình PLC S7 1200 tiếng Việt-Chuong 8 các công cụ trực tuyến và chuẩn đoánLập trình PLC S7 1200 tiếng Việt-Chuong 8 các công cụ trực tuyến và chuẩn đoán
Lập trình PLC S7 1200 tiếng Việt-Chuong 8 các công cụ trực tuyến và chuẩn đoán
 
Giới thiệu chung về plc s7 1200
Giới thiệu chung về plc s7 1200Giới thiệu chung về plc s7 1200
Giới thiệu chung về plc s7 1200
 
Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520
 
Bai giang ROBOT cong nghiep
Bai giang ROBOT cong nghiepBai giang ROBOT cong nghiep
Bai giang ROBOT cong nghiep
 

Viewers also liked

Phân vùng Quy hoạch môi trường tỉnh Đồng Nai
Phân vùng Quy hoạch môi trường tỉnh Đồng NaiPhân vùng Quy hoạch môi trường tỉnh Đồng Nai
Phân vùng Quy hoạch môi trường tỉnh Đồng NaiBluebell Bing Bing
 
Chuyên đề đa bội thể tổ 1 bvtv k6-b
Chuyên đề đa bội thể  tổ 1  bvtv k6-bChuyên đề đa bội thể  tổ 1  bvtv k6-b
Chuyên đề đa bội thể tổ 1 bvtv k6-bNhân Trần
 
Tài nguyên đất Việt Nam
Tài nguyên đất Việt NamTài nguyên đất Việt Nam
Tài nguyên đất Việt NamHieu Nguyen
 
Tài nguyên đất nhóm 9-đh2 qm2-pp
Tài nguyên đất nhóm 9-đh2 qm2-ppTài nguyên đất nhóm 9-đh2 qm2-pp
Tài nguyên đất nhóm 9-đh2 qm2-ppBluebell Bing Bing
 

Viewers also liked (7)

cam bien sieu am
cam bien sieu amcam bien sieu am
cam bien sieu am
 
Msptieuluan
MsptieuluanMsptieuluan
Msptieuluan
 
Phân vùng Quy hoạch môi trường tỉnh Đồng Nai
Phân vùng Quy hoạch môi trường tỉnh Đồng NaiPhân vùng Quy hoạch môi trường tỉnh Đồng Nai
Phân vùng Quy hoạch môi trường tỉnh Đồng Nai
 
Chuyên đề đa bội thể tổ 1 bvtv k6-b
Chuyên đề đa bội thể  tổ 1  bvtv k6-bChuyên đề đa bội thể  tổ 1  bvtv k6-b
Chuyên đề đa bội thể tổ 1 bvtv k6-b
 
Dat do o viet nam
Dat do o viet namDat do o viet nam
Dat do o viet nam
 
Tài nguyên đất Việt Nam
Tài nguyên đất Việt NamTài nguyên đất Việt Nam
Tài nguyên đất Việt Nam
 
Tài nguyên đất nhóm 9-đh2 qm2-pp
Tài nguyên đất nhóm 9-đh2 qm2-ppTài nguyên đất nhóm 9-đh2 qm2-pp
Tài nguyên đất nhóm 9-đh2 qm2-pp
 

Similar to Đo khoảng cách bằng MSP430 Launchpad

Mitsubishi
MitsubishiMitsubishi
Mitsubishiddungd4
 
PLC mitsubishi
PLC mitsubishiPLC mitsubishi
PLC mitsubishiquanglocbp
 
TÓM TẮT ĐỒ ÁN.docx
TÓM TẮT ĐỒ ÁN.docxTÓM TẮT ĐỒ ÁN.docx
TÓM TẮT ĐỒ ÁN.docxNghiang6
 
Cai dat va_cau_hinh_iptables
Cai dat va_cau_hinh_iptablesCai dat va_cau_hinh_iptables
Cai dat va_cau_hinh_iptablesNguyen Van Hung
 
GUI C5- Timer.pdf
GUI C5- Timer.pdfGUI C5- Timer.pdf
GUI C5- Timer.pdfloc45227
 
Đồ Án Tốt Nghiệp Về Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Vide...
Đồ Án Tốt Nghiệp Về Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Vide...Đồ Án Tốt Nghiệp Về Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Vide...
Đồ Án Tốt Nghiệp Về Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Vide...mokoboo56
 
Báo Cáo Tốt Nghiệp Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Video...
Báo Cáo Tốt Nghiệp Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Video...Báo Cáo Tốt Nghiệp Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Video...
Báo Cáo Tốt Nghiệp Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Video...mokoboo56
 
Nmlt c15 ham_nangcao_phan2_in
Nmlt c15 ham_nangcao_phan2_inNmlt c15 ham_nangcao_phan2_in
Nmlt c15 ham_nangcao_phan2_inHuy Nguyễn
 
Hd nhanh cau hinh ip 20 g-1+0_itc-mbf
Hd nhanh cau hinh ip 20 g-1+0_itc-mbfHd nhanh cau hinh ip 20 g-1+0_itc-mbf
Hd nhanh cau hinh ip 20 g-1+0_itc-mbfhienlv
 
Lap trinh huong_doi_tuong_cpp_dhct_lesson08
Lap trinh huong_doi_tuong_cpp_dhct_lesson08Lap trinh huong_doi_tuong_cpp_dhct_lesson08
Lap trinh huong_doi_tuong_cpp_dhct_lesson08xcode_esvn
 
Sfd2012Hanoi - Hà Thụy Long - Odho: Mã nguồn mở và các bài toán vật lý
Sfd2012Hanoi - Hà Thụy Long - Odho: Mã nguồn mở và các bài toán vật lýSfd2012Hanoi - Hà Thụy Long - Odho: Mã nguồn mở và các bài toán vật lý
Sfd2012Hanoi - Hà Thụy Long - Odho: Mã nguồn mở và các bài toán vật lýVu Hung Nguyen
 
De cuong vi dieu khien
De cuong vi dieu khienDe cuong vi dieu khien
De cuong vi dieu khienjayvietnam
 
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thư Viện Số
 
C6. Timer Module.pdfdsdsd dsdd sdsd sdds sd
C6. Timer Module.pdfdsdsd dsdd sdsd sdds sdC6. Timer Module.pdfdsdsd dsdd sdsd sdds sd
C6. Timer Module.pdfdsdsd dsdd sdsd sdds sdHongVit873092
 

Similar to Đo khoảng cách bằng MSP430 Launchpad (20)

Mitsubishi
MitsubishiMitsubishi
Mitsubishi
 
PLC mitsubishi
PLC mitsubishiPLC mitsubishi
PLC mitsubishi
 
Đồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.doc
Đồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.docĐồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.doc
Đồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.doc
 
TÓM TẮT ĐỒ ÁN.docx
TÓM TẮT ĐỒ ÁN.docxTÓM TẮT ĐỒ ÁN.docx
TÓM TẮT ĐỒ ÁN.docx
 
Cai dat va_cau_hinh_iptables
Cai dat va_cau_hinh_iptablesCai dat va_cau_hinh_iptables
Cai dat va_cau_hinh_iptables
 
GUI C5- Timer.pdf
GUI C5- Timer.pdfGUI C5- Timer.pdf
GUI C5- Timer.pdf
 
Đồ Án Tốt Nghiệp Về Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Vide...
Đồ Án Tốt Nghiệp Về Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Vide...Đồ Án Tốt Nghiệp Về Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Vide...
Đồ Án Tốt Nghiệp Về Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Vide...
 
Settings
SettingsSettings
Settings
 
Báo Cáo Tốt Nghiệp Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Video...
Báo Cáo Tốt Nghiệp Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Video...Báo Cáo Tốt Nghiệp Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Video...
Báo Cáo Tốt Nghiệp Sử Dụng Các Lớp Rtp Api Xây Dựng Chương Trình Truyền Video...
 
Nmlt c15 ham_nangcao_phan2_in
Nmlt c15 ham_nangcao_phan2_inNmlt c15 ham_nangcao_phan2_in
Nmlt c15 ham_nangcao_phan2_in
 
Lesson08
Lesson08Lesson08
Lesson08
 
lab ccna ttg v3
lab ccna ttg v3lab ccna ttg v3
lab ccna ttg v3
 
Hd nhanh cau hinh ip 20 g-1+0_itc-mbf
Hd nhanh cau hinh ip 20 g-1+0_itc-mbfHd nhanh cau hinh ip 20 g-1+0_itc-mbf
Hd nhanh cau hinh ip 20 g-1+0_itc-mbf
 
Lap trinh huong_doi_tuong_cpp_dhct_lesson08
Lap trinh huong_doi_tuong_cpp_dhct_lesson08Lap trinh huong_doi_tuong_cpp_dhct_lesson08
Lap trinh huong_doi_tuong_cpp_dhct_lesson08
 
Sfd2012Hanoi - Hà Thụy Long - Odho: Mã nguồn mở và các bài toán vật lý
Sfd2012Hanoi - Hà Thụy Long - Odho: Mã nguồn mở và các bài toán vật lýSfd2012Hanoi - Hà Thụy Long - Odho: Mã nguồn mở và các bài toán vật lý
Sfd2012Hanoi - Hà Thụy Long - Odho: Mã nguồn mở và các bài toán vật lý
 
De cuong vi dieu khien
De cuong vi dieu khienDe cuong vi dieu khien
De cuong vi dieu khien
 
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
 
C6. Timer Module.pdfdsdsd dsdd sdsd sdds sd
C6. Timer Module.pdfdsdsd dsdd sdsd sdds sdC6. Timer Module.pdfdsdsd dsdd sdsd sdds sd
C6. Timer Module.pdfdsdsd dsdd sdsd sdds sd
 
Tut6 solution
Tut6 solutionTut6 solution
Tut6 solution
 
Lesson08
Lesson08Lesson08
Lesson08
 

More from FPT Telecom

Hệ thống giám sát nhiệt độ không dây thụ động Sengenuity
Hệ thống giám sát nhiệt độ không dây thụ động SengenuityHệ thống giám sát nhiệt độ không dây thụ động Sengenuity
Hệ thống giám sát nhiệt độ không dây thụ động SengenuityFPT Telecom
 
Kết nối HMI Delta - Sengenuity
Kết nối HMI Delta - SengenuityKết nối HMI Delta - Sengenuity
Kết nối HMI Delta - SengenuityFPT Telecom
 
Kết nối HMI Omron - Sengenuity
Kết nối HMI Omron - SengenuityKết nối HMI Omron - Sengenuity
Kết nối HMI Omron - SengenuityFPT Telecom
 
Windows qua cac thoi ki
Windows qua cac thoi kiWindows qua cac thoi ki
Windows qua cac thoi kiFPT Telecom
 
Vòng đời của vũ trụ
Vòng đời của vũ trụVòng đời của vũ trụ
Vòng đời của vũ trụFPT Telecom
 
Vì sao con người sợ bóng tối
Vì sao con người sợ bóng tốiVì sao con người sợ bóng tối
Vì sao con người sợ bóng tốiFPT Telecom
 
Vệ sinh ở HCM
Vệ sinh ở HCMVệ sinh ở HCM
Vệ sinh ở HCMFPT Telecom
 
Tốc độ của muôn loài
Tốc độ của muôn loàiTốc độ của muôn loài
Tốc độ của muôn loàiFPT Telecom
 
Tìm hiểu về chim cánh cụt
Tìm hiểu về chim cánh cụtTìm hiểu về chim cánh cụt
Tìm hiểu về chim cánh cụtFPT Telecom
 
Thông tin 12 tuyến xe điện ngầm
Thông tin 12 tuyến xe điện ngầmThông tin 12 tuyến xe điện ngầm
Thông tin 12 tuyến xe điện ngầmFPT Telecom
 
Thói quen xấu của dân công nghệ
Thói quen xấu của dân công nghệThói quen xấu của dân công nghệ
Thói quen xấu của dân công nghệFPT Telecom
 
Thói quen đổi điện thoại
Thói quen đổi điện thoạiThói quen đổi điện thoại
Thói quen đổi điện thoạiFPT Telecom
 
Hệ Thái Dương
Hệ Thái DươngHệ Thái Dương
Hệ Thái DươngFPT Telecom
 
Tai nạn giao thông ở VN
Tai nạn giao thông ở VNTai nạn giao thông ở VN
Tai nạn giao thông ở VNFPT Telecom
 
Hãy sống với tình người
Hãy sống với tình ngườiHãy sống với tình người
Hãy sống với tình ngườiFPT Telecom
 

More from FPT Telecom (20)

Hệ thống giám sát nhiệt độ không dây thụ động Sengenuity
Hệ thống giám sát nhiệt độ không dây thụ động SengenuityHệ thống giám sát nhiệt độ không dây thụ động Sengenuity
Hệ thống giám sát nhiệt độ không dây thụ động Sengenuity
 
Kết nối HMI Delta - Sengenuity
Kết nối HMI Delta - SengenuityKết nối HMI Delta - Sengenuity
Kết nối HMI Delta - Sengenuity
 
Kết nối HMI Omron - Sengenuity
Kết nối HMI Omron - SengenuityKết nối HMI Omron - Sengenuity
Kết nối HMI Omron - Sengenuity
 
Windows qua cac thoi ki
Windows qua cac thoi kiWindows qua cac thoi ki
Windows qua cac thoi ki
 
Windows 8
Windows 8Windows 8
Windows 8
 
Vòng đời của vũ trụ
Vòng đời của vũ trụVòng đời của vũ trụ
Vòng đời của vũ trụ
 
Vì sao con người sợ bóng tối
Vì sao con người sợ bóng tốiVì sao con người sợ bóng tối
Vì sao con người sợ bóng tối
 
Vệ sinh ở HCM
Vệ sinh ở HCMVệ sinh ở HCM
Vệ sinh ở HCM
 
Tỷ phú
Tỷ phúTỷ phú
Tỷ phú
 
Tốc độ của muôn loài
Tốc độ của muôn loàiTốc độ của muôn loài
Tốc độ của muôn loài
 
Tinhte.vn
Tinhte.vnTinhte.vn
Tinhte.vn
 
Tìm hiểu về chim cánh cụt
Tìm hiểu về chim cánh cụtTìm hiểu về chim cánh cụt
Tìm hiểu về chim cánh cụt
 
Thông tin 12 tuyến xe điện ngầm
Thông tin 12 tuyến xe điện ngầmThông tin 12 tuyến xe điện ngầm
Thông tin 12 tuyến xe điện ngầm
 
Thói quen xấu của dân công nghệ
Thói quen xấu của dân công nghệThói quen xấu của dân công nghệ
Thói quen xấu của dân công nghệ
 
Thói quen đổi điện thoại
Thói quen đổi điện thoạiThói quen đổi điện thoại
Thói quen đổi điện thoại
 
Thần Chết
Thần ChếtThần Chết
Thần Chết
 
Hệ Thái Dương
Hệ Thái DươngHệ Thái Dương
Hệ Thái Dương
 
Tai nạn giao thông ở VN
Tai nạn giao thông ở VNTai nạn giao thông ở VN
Tai nạn giao thông ở VN
 
Hãy sống với tình người
Hãy sống với tình ngườiHãy sống với tình người
Hãy sống với tình người
 
Sài Gòn
Sài GònSài Gòn
Sài Gòn
 

Đo khoảng cách bằng MSP430 Launchpad

  • 1. Phần cứng - MSP430 Launchpad Kit ( Giá 4.3$ ) - 1 cảm biến siêu âm SRF05 - Vài sợi Bus hoặc dây nối Phần mềm: - Phần mềm IAR Embedded - Phần mềm PuTTy (nhận dữ liệu UART) Link: http://www.putty.org/ Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM Email: loc.plsoft@gmail.com
  • 2. Viết chương trình cho KIT launchpad Mở IAR Embedded Workbench và làm theo các bước sau: Đặt tên Project … Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM Email: loc.plsoft@gmail.com
  • 3. Cài đặt các thông số sau: Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM Email: loc.plsoft@gmail.com
  • 4. Viết chương trình cho “main.c” như sau: #include <msp430g2553.h> #include <stdbool.h> ////////////////Defines//////////////// #define LED1 BIT6 #define LED0 BIT0 #define DAT BIT0 //P2.0 //input signal port #define VCC BIT5 //P1.5 #define GND BIT4 //P1.4 #define KICH BIT1 char charbuffer[8]; int i=0; int j=0; unsigned int capture_array[51]; // RAM array for captures int tick=0; int cap=0; int pre_cap=0; int first_pulse=0; ////////////////Function Protos//////////////// void TX(char *tx_message); void DO_KHOANG_CACH(void); static char *i2a(unsigned i, char *a, unsigned r); char *itoa(int i, char *a, int r); static char *i2a(unsigned i, char *a, unsigned r) { if (i/r > 0) a = i2a(i/r,a,r); *a = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"[i%r]; return a+1; } char *itoa(int i, char *a, int r) { if ((r < 2) || (r > 36)) r = 10; if (i < 0) { *a = '-'; *i2a(-(unsigned)i,a+1,r) = 0; } else *i2a(i,a,r) = 0; return a; } void TX(char *tx_message) { unsigned int i=0; //Define end of string loop int char *message; // message variable unsigned int message_num; // define ascii int version variable message = tx_message; // move tx_message into message while(1) { if(message[i]==0) // If end of input string is reached, break loop. {break;} message_num = (int)message[i]; //Cast string char into a int variable UCA0TXBUF = message_num; // write INT to TX buffer i++; // increase string index __delay_cycles(10000); //transmission delay Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM Email: loc.plsoft@gmail.com
  • 5. if(i>50) //prevent infinite transmit { // P1OUT |= (LED1+LED0); break; } } // End TX Main While Loop } // End TX Function int main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer //setup clock to 1MHZ BCSCTL1 = CALBC1_1MHZ; // Set DCO to 1MHz DCOCTL = CALDCO_1MHZ; ////////////////USCI setup//////////////// P1SEL = BIT1 + BIT2; // Set P1.1 to RXD and P1.2 to TXD P1SEL2 = BIT1 + BIT2; // UCA0CTL1 |= UCSSEL_2; // Have USCI use SMCLK AKA 1MHz main CLK UCA0BR0 = 104; // Baud: 9600, N= CLK/Baud, N= 10^6 / 9600 UCA0BR1 = 0; // Set upper half of baud select to 0 UCA0MCTL = UCBRS_1; // Modulation UCBRSx = 1 UCA0CTL1 &= ~UCSWRST; // Start USCI ////////////////General GPIO Defines//////////////// P1DIR |= (LED0 + LED1+GND+VCC); //define output ports P1OUT &= ~(LED0 + LED1+GND); //turn ports low P2DIR |= KICH; P2IE |= DAT; P2IFG &= ~DAT; P2SEL = DAT; // Set P2.0 to TA0 /////////////////SETUP TIMER TA1CCTL0 = CM_3 + SCS + CCIS_0 + CAP + CCIE; // falling edge + CCI0A (P2.0)// + Capture Mode + Interrupt TA1CTL = TASSEL_2 + MC_2; // SMCLK + Continuous Mode __enable_interrupt(); while(1) { __delay_cycles(100000); DO_KHOANG_CACH(); } } // Timer1 interrupt service routine #pragma vector=TIMER1_A0_VECTOR __interrupt void TIMER1(void) { if ( (first_pulse==0) & (DAT == 1) ) { P1OUT |= LED1; pre_cap=TA1CCR0; first_pulse=1; } else { P1OUT &= ~LED1; tick = TA1CCR0; cap = (tick- pre_cap)/58; Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM Email: loc.plsoft@gmail.com
  • 6. first_pulse =0; TA1CCR0=0; itoa(cap, charbuffer, 10); TX(charbuffer); TX("rn"); } } void DO_KHOANG_CACH(void) { P2OUT |= KICH; __delay_cycles(20); P2OUT &= ~KICH; } Sau khi hoàn tất thì Download chương trình xuống KIT Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM Email: loc.plsoft@gmail.com
  • 7. Kết nối với SRF05 Chú ý: Đổi sang mode Hardware Uart bằng cách thay đổi các Switch kết nối như hình khoanh màu vàng. Mở chương trình PUTTY ( hi vọng bạn sẽ hiểu hình sau nói gì ) hi Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM Email: loc.plsoft@gmail.com
  • 8. Kết quả đo: Giải thích sơ lược về chương trình. Chương trình sử dụng Timer1 ở chế độ Capture để bắt xung từ chân P2.0. Cứ mỗi 100ms chương trình sẽ phát xung (20us) ra chân P1.1 để kích cho SRF05 hoạt động. SRF05 trả về giá trị đo được ở chân P2.0. Giá trị đo được sẽ được chia cho 58 để ra khoảng cách tính bằng centimet. Sau đó giá trị được gửi lên máy tính. Mọi việc đã xong rồi đó. Good luck to you ! Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM Email: loc.plsoft@gmail.com
  • 9. Và đây là kết quả: Nguyễn Phước Lộc, K09 – Automation Control - ĐHBK Tp.HCM Email: loc.plsoft@gmail.com