Tải bản đầy đủ (.pdf) (27 trang)

Nghiên cứu thiết kế thiết bị huấn luyện báo vụ trên công nghệ DSPIC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (513.95 KB, 27 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP
---------------------------------------

LUẬN VĂN THẠC SĨ KỸ THUẬT

NGHIÊN CỨU THIẾT KẾ THIẾT BỊ HUẤN LUYỆN BÁO VỤ
TRÊN CÔNG NGHỆ DSPIC

Ngành: KỸ THUẬT ĐIỆN TỬ
Mã số:
Học viên: HOÀNG VIỆT SƠN

Người HD khoa học: PGS.TS ĐỖ XUÂN TIẾN

THÁI NGUYÊN NĂM 2011

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




1
Luận văn thạc sỹ kỹ thuật

Hướng dẫn KH: PGS.TS: Đỗ Xuân Tiến

LỜI MỞ ĐẦU
Đối với quân đội ta nhiệm vụ trọng tâm trong thời bình là huấn luyện chiến
đấu để đảm bảo cho bộ đội có đủ sức mạnh tinh thần, vật chất sẵn sàng hoàn thành
các nhiệm vụ đƣợc giao.


Quán triệt chủ trƣơng hiện đại hoá quân đội. Đáp ứng các yêu cầu ngày càng
tăng của công tác huấn luyện quân sự trong thời kỳ đổi mới và hiện đại.
Sự phát triển vƣợt bậc của khoa học kỹ thuật trong những năm gần đây. Đối
với lĩnh vực quân sự, công nghệ điện tử, tin học nói chung và kỹ thuật vi xử lý nói
riêng đƣợc ứng dụng để cải tiến, nâng cấp và chế tạo ra các trang thiết bị mới phục
vụ huấn luyện chiến đấu và sẵn sàng chiến đấu.
Hiện nay phƣơng thức truyền tin vô tuyến điện báo MORSE (Bảng mã
MORSE chính là cở sở để mã hoá / giải mã thông tin khi thực hiện truyền tin vô
tuyến điện báo) vẫn là phổ biến. Qua quá trình học tập, cùng với sự tìm hiểu tại các
đơn vị thông tin. Tôi nhận thấy rằng các trang thiết bị dùng cho huấn luyện báo vụ
hiện nay còn rất thô sơ. Chính vì vậy, phải sử dụng phƣơng pháp huấn luyện thủ
công là chủ yếu. Từ đó chất lƣợng huấn luyện báo vụ, cũng nhƣ trình độ của đội
ngũ nhân viên báo vụ hiện nay còn nhiều hạn chế.
Thông qua nội dung các môn học của khoá học, Đã trang bị các kiến thức rất
đầy đủ về lập trình chƣơng trình điều khiển cho các ONCHIP, cũng nhƣ các kiến
thức về thiết kế các mạch điện chức năng có ứng dụng các ONCHIP. Trên cơ sở của
bộ vi xử lý cơ bản của hãng Intel, ngày nay với công nghệ cao ngƣời ta đã chế tạo ra
các bộ vi xử lý ONCHIP có tốc độ xử lý nhanh, dung lƣợng bộ nhớ ROM, RAM
lớn và tích hợp sẵn nhiều chức năng. Tiểu biểu là các ONCHIP nhƣ 89, AVR, ...
đặc biệt là PIC và DSPIC do hãng MICROCHIP sản xuất.
PIC, DSPIC phù hợp với tất cả các ứng dụng từ đơn giản đến phức tạp. Đặc
biệt nó rất phù hợp khi giải quyết các bài toán về điều khiển, nên ngƣời ta còn gọi
nó là vi điều khiển PIC, DSPIC.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




2

Luận văn thạc sỹ kỹ thuật

Hướng dẫn KH: PGS.TS: Đỗ Xuân Tiến

Ngoài việc dùng ngôn ngữ lập trình ASM thông dụng, chúng ta còn có thể sử
dụng các ngôn ngữ lập trình khác nhƣ : C, PASCAL, BASIC..để lập trình cho hệ
thống của mình.
Tất cả các nội dung trên là lý do chính thúc đẩy tôi đi đến chọn đề tài cho luận văn
tốt nghiệp có tên là: "Nghiên cứu thiết kế thiết bị huấn luyện báo vụ trên công
nghệ DSPIC".
Đề tài gồm có các chƣơng:
+ Chƣơng một: Tổng quan về công nghệ vi điều khiển PIC, DSPIC.
+ Chƣơng hai: Lập trình cho các chức năng của PIC, DSPIC.
+ Chƣơng ba: Tổng quan về thiết bị huấn luyện báo vụ chuyên dùng.
+ Chƣơng bốn: Thiết kế và chế tạo phần cứng.
+ Chƣơng năm: Thiết kế và lập trình phần mềm.
Kết quả nghiên cứu của đề tài là một sản phẩm sẽ đƣợc ứng dụng tại các đơn
vị huấn luyện trong quân đội, đảm bảo thông tin vô tuyến điện báo.
Ngoài ra kết quả nghiên cứu của đề tài còn mở ra một hƣớng mới trong việc
ứng dụng công nghệ PIC, DSPIC để nghiên cứu thiết kế, chế tạo các trang thiết bị
mới trong quân sự hiện nay.
Nội dung của luận văn còn là một nguồn tài liệu tƣơng đối đầy đủ về công
nghệ PIC, DSPIC, cách đƣa công nghệ này và các ứng dụng thực tế... Giúp cho các
sinh viên khác, hoặc cho những ai muốn học tập và nghiên cứu để ứng dụng công
nghệ này.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên





3
Luận văn thạc sỹ kỹ thuật

Hướng dẫn KH: PGS.TS: Đỗ Xuân Tiến

Chương 1
TỔNG QUAN VỀ CÔNG NGHỆ VI ĐIỀU KHIỂN PIC, DSPIC
1.1. Giới thiệu về hệ vi điều khiển PIC, DSPIC
Vi điều khiển thực chất là một cấu trúc siêu nhỏ, nó bao gồm các linh kiện
điện tử có kích thƣớc cỡ MICRO hoặc NANO. Các linh kiện này đƣợc kết hợp với
nhau, sau đó đƣợc nối tới các thiết bị bên ngoài thông qua các chân của vi điều
khiển. Chính vì vậy khi hiểu đƣợc kiến trúc của vi điều khiển, chúng ta sẽ rất thuận
tiện khi sử dụng chúng vào ứng dụng của mình.
Kiến trúc của vi điều khiển, cũng giống nhƣ kiến trúc máy tính. Các vi điều
khiển hiện nay, thƣờng phổ biến ở một trong hai dạng kiến trúc sau. Kiến trúc VON
NEUMANN, và kiến trúc HARVARD. Sự khác nhau giữa hai kiến trúc này, là ở
chỗ việc tổ chức bộ nhớ dữ liệu và bộ nhớ chƣơng trình.
Kiến trúc VON NEUMANN tổ chức bộ nhớ dữ liệu và bộ chƣơng trình
chung với nhau, do vậy vi điều khiển có kiến trúc này sẽ sử dụng chung đƣờng
truyền (BUS). Ƣu điểm của vi điều khiển có kiến trúc này là tận dụng đƣợc tài
nguyên bộ nhớ, nhƣng nhƣợc điểm là tốc độ xử lý không đạt cao.
Còn kiến trúc HARVARD lại tách rời bộ nhớ dữ liệu và bộ nhớ chƣơng
trình, do đó đƣờng truyền (BUS) của nó đƣợc tách riêng ra. Vì vậy vi điều khiển có
kiến trúc này là đạt tốc độ xử lý cao, nhƣng nhƣợc điểm là không tận dụng đƣợc tài
nguyên bộ nhớ. Mặt khác đƣờng truyền dữ liệu và đƣờng truyền lệnh điều khiển, có
thể có dung lƣợng khác nhau.
Hiện nay có 3 họ vi điều khiển nổi tiếng, đó là 8051 (Bao gồm cả AVR),
MOTOROLA và PIC (Bao gồm cả DSPIC). Để hiểu đƣợc vi điều khiển, sử dụng
thành thạo nó chúng ta cần phải có các kiến thức sau:

- Tìm hiểu về kiến trúc máy tính, cơ bản về kiến trúc VON MEUMANN,
kiến trúc HARVARD;
- Tìm hiểu khái niệm RISC, CISC;
- Khái niệm thanh ghi;
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




4
Luận văn thạc sỹ kỹ thuật

Hướng dẫn KH: PGS.TS: Đỗ Xuân Tiến

- Khái niệm STACK;
- Khái niệm con trỏ POINTER;
- Khái niệm địa chỉ, địa chỉ gián tiếp của một thanh ghi;
- Khái niệm về định thời (TIMER);
- Khái niệm về ngắt trong, ngắt ngoài.
- Các chuẩn giao tiếp RS232, USB, I2C....
- Thành thạo một trong số các ngôn ngữ lập trình cho vi điều khiển.
PIC là tên viết tắt của "Máy tính thông minh" (PROGRAMMABLE
INTELLIGENT COMPUTER) do hãng GENERAL INSTRUMENT đặt tên cho
con vi điều khiển đầu tiên của hãng là PIC1650. Đây là con vi điều khiển đầu tiên,
đồng thời nó còn là tiền đề cho sự ra đời của các vi điều khiển họ PIC sau này của
hãng.
Họ vi điều khiển PIC có cấu trúc HARVARD, do vậy nó có tốc độ xử lý rất
cao. Đồng thời dung lƣợng bộ nhớ dữ liệu, bộ nhớ chƣơng trình tƣơng đối lớn. Họ
vi điều khiển PIC phù hợp với các ứng dụng từ đơn giản đến các ứng dụng phức
tạp, đặc biệt nó phù hợp với các ứng dụng có liên quan đến các cơ cấu điều khiển.

Đến ngày nay, PIC1650 đƣợc phát triển thành PIC16C54. Hãng
MICROCHIP (WWW.MICROCHIP.COM) đang tiếp tục phát triển các sản phẩm vi
điều khiển, trong đó có vi điều khiển PIC.
Cho đến nay, các sản phẩm vi điều khiển PIC của MICROCHIP đã gần 100
loại sản phẩm từ họ 10Fxxx, 18LFxxx, 18Fxxx đến các họ 12Cxxx, 12Fxxx,
16Cxxx, 17Cxxx, 16Fxxx, 16Fxxx,16FxxxA, 16LFxxxA, 18Fxxx, 18LFxxx... Tuy
nhiên có một số họ PIC hiện nay không còn đƣợc sản xuất nữa. Hiện nay hãng
MICROCHIP đã có các họ vi điều khiển 16-BIT, gồm PIC24H và PIC24F. Tiếp
đến là họ vi điều khiển 32-BIT có tên là PIC32MX, và mới đây nhất là họ vi điều
khiển DSPIC30F và DSPIC33F.
Phân loại PIC theo các chữ cái: Các họ PIC xxCxx đƣợc đƣa vào một nhóm,
gọi là nhóm OTP (ONE TIME PROGRAMMANBLE). Nhóm này chỉ có thể lập
trình và nạp chƣơng trình cho nó đƣợc một lần duy nhất, và không thể thay đổi

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




5
Luận văn thạc sỹ kỹ thuật

Hướng dẫn KH: PGS.TS: Đỗ Xuân Tiến

chƣơng trình bên trong của nó bằng mạch điện thông thƣờng. Nhóm thứ hai theo
cách phân chia này, đó là số còn lại với các chữ cái F, hoặc LF và duy nhất 16C84.
Nhóm này là nhóm FLASH, cho phép ghi xoá bằng các mạch điện tử thông thƣờng
(Ngày nay ngƣời ta còn sản xuất các loại này). Chúng ta gọi nhóm này là nhóm
FLASH, nhƣng thực tế thì nó bao gồm cả nhóm EEPROM và FLASH. Tuy nhiên,
vì chung đặc điểm là có thể ghi xoá nhiều lần nên chúng ta gọi chung thành nhóm

FLASH.
Phân loại PIC theo hai con số đầu tiên của sản phẩm: Đây là cách phân loại
thông dụng, bởi vì các họ PIC và DSPIC hiện này đều thuộc nhóm FLASH. Do vậy
cách phân loại này sẽ nói lên đƣợc sự khác nhau của các họ vi điều khiển PIC và
DSPIC. Loại thứ nhất là dòng PIC cơ bản (BASE-LINE), gồm các PIC 12Cxxx,
loại thứ hai là các dòng PIC 10,12F và 16, gọi là dòng phổ thông (MID-RANGE).
Loại thứ ba là dòng PIC 18 (HIGH-END). Sự khác nhau của các dòng này chính là
độ dài lệnh (INSTRUCTION WORD LENGTH), với dòng BASE-LINE có độ dài
lệnh là 12 BIT, MID-RANGE có độ dài lệnh là 14 BIT và HIGH-END có độ dài từ
lệnh là 16-BIT. Tuy nhiên các dòng PIC có độ dài từ lệnh lớn hơn thì thƣờng có bộ
nhớ ROM, RAM lớn hơn, tích hợp sẵn nhiều chuẩn giao tiếp... ví dụ:
Dòng PIC 16F8xxA đây là dòng PIC MID-RANGE, thông dụng nhất hiện
nay ở Việt Nam là PIC 16F877A. Cấu hình cụ thể của dòng này nhƣ sau:
Bảng 1-1. Cấu hình của PIC16FxxxA

Từ bảng trên chúng ta thấy rằng PIC 16F877A có cấu hình nhƣ sau:
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




6
Luận văn thạc sỹ kỹ thuật

Hướng dẫn KH: PGS.TS: Đỗ Xuân Tiến

- Bộ nhớ chƣơng trình (PROGRAM MEMORY): 14.3 KBYTES.
- Số lệnh điều khiển (WORD INSTRUCTIONS): 8192 lệnh.
- Bộ nhớ SRAM: 368 BYTES.
- Bộ nhớ EEPROM (bộ nhớ EPROM nội): 256 BYTES.

- Số chân I/O = 33 chân.
- Số chân nhận tín hiệu vào để chuyển đổi A/D 10 BIT: 8 chân.
- Tích hợp sẵn 2 bộ giao tiếp PWM (Điều khiển động cơ).
- Tích hợp sẵn 1 giao tiếp SPI.
- Tích hợp sẵn 1 giao tiếp I2C.
- Tích hợp sẵn 1 giao tiếp USART.
- Tích hợp sẵn 2 bộ định thời 8 BIT, và 1 bộ định thời 10 BIT.
- Tích hợp sẵn 2 bộ so sánh.
Dòng PIC 18Fxxxx đây là dòng PIC HIGH-END, thông dụng nhất hiện nay
ở Việt Nam là PIC 18F4550. Cấu hình cụ thể của dòng này nhƣ sau:
Bảng 1-2. Cấu hình của PIC18Fxxxx

Từ bảng trên chúng ta thấy rằng PIC 18F4550 có cấu hình nhƣ sau:
- Bộ nhớ chƣơng trình (PROGRAM MEMORY): 32 KBYTES (Lớn gấp 2
lần so với dòng 16F877A).
- Số lệnh điều khiển (WORD INSTRUCTIONS): 16384 lệnh.
- Bộ nhớ SRAM: 2048 BYTES.
- Bộ nhớ EEPROM (bộ nhớ EPROM nội): 256 BYTES.
- Số chân I/O = 35 chân.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




7
Luận văn thạc sỹ kỹ thuật

Hướng dẫn KH: PGS.TS: Đỗ Xuân Tiến


- Số chân nhận tín hiệu vào để chuyển đổi A/D 10 BIT: 13 chân.
- Tích hợp sẵn 2 bộ giao tiếp PWM (Điều khiển động cơ).
- Tích hợp sẵn 1 giao tiếp SPI. Tích hợp sẵn 1 giao tiếp I2C.
- Tích hợp sẵn 1 giao tiếp USART.
- Tích hợp sẵn 1 bộ định thời 8 BIT, và 3 bộ định thời 16 BIT.
- Tích hợp sẵn 2 bộ so sánh.
- Tích hợp sẵn 1 chuẩn giao tiếp USB.
Còn đối với dòng DSPIC cũng có cấu hình cụ thể nhƣ sau:
Bảng 1-3. Cấu hình của DSPIC30Fxxxx

1.2. Cấu trúc của PIC, DSPIC
1.2.1. Cấu trúc bộ chân cắm
PIC và DSPIC thƣờng có cấu trúc vỏ chíp (Bộ chân cắm) kiểu QFN, TQFP...nhƣng
thông dụng nhất vẫn là kiểu PDIP. Cụ thể nhƣ sau:

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên




8
Luận văn thạc sỹ kỹ thuật

Hướng dẫn KH: PGS.TS: Đỗ Xuân Tiến

Hình 1-1. Cấu trúc bộ chân cắm QFN, TQFP của PIC

Hình 1-2. Cấu trúc bộ chân cắm PDIP của DSPIC và PIC

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên





9
Luận văn thạc sỹ kỹ thuật

Hướng dẫn KH: PGS.TS: Đỗ Xuân Tiến

1.2.2. Chức năng các chân của vi điều khiển
Một chân của vi điều khiển thƣờng có nhiều chức năng, nhƣng tại một thời
điểm nó chỉ thực hiện đƣợc một chức năng cụ thể. Việc thực hiện chức năng nào là
do ngƣời lập trình quy định, chức năng của một chân có thể đƣợc thay đổi khi vi
điều khiển đang hoạt động. Thông thƣờng các chân của vi điều khiển đƣợc chia
thành các nhóm sau đây:
- Các chân dùng để cấp nguồn.
- Các chân dùng để nối tới thạch anh.
- Các cổng I/O.
- Các chân chức năng.
Ví dụ vi điều khiển 18F4550, chức năng của các chân cơ bản nhƣ sau:
Trong đó các chân cơ bản có chức năng nhƣ sau:
+ Các chân cấp nguồn:
- Chân 11, 32 (VDD).
- Chân 12, 31(VSS).
+ Các chân nối tới thạch anh, hoặc bộ dao động ngoài:
- Chân 13 (Osc1).

Hình 1-3. Cấu trúc chi tiết bộ chân cắm của PIC 18F4550
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên





data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....



data error !!! can't not
read....


data error !!! can't not
read....



data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....

data error !!! can't not
read....


data error !!! can't not
read....

data error !!! can't not
read....


data error !!! can't not
read....


data error !!! can't not
read....



×