Nội dung của đềtài trong gia đoạn thực tập dừng lại ởmức độtìm hiểu và thi công
mạch mô phỏng. Chi tiết của các yêu cầu được đưa ra theo thứtựlần lựoc nhưsau: tìm
hiểu tồng quan vềvi điều khiển PIC, tìm hiểu các phần mền có thểlập trình cho vi điều
khiển PIC bằng ngôn ngữC và lựa chọn một phần mền thích hợp nhất, tìm hiểu giao tiếp
vi điều khiển PIC với máy tính thông qua cổng USB. Thiết kếmạch và viết chương trình
có thểtruyền nhận dữliệu với máy tính qua cổng USB. Các yêu cầu trên sẽ được giải
quyết tuần tựthông qua 4 phần, mỗi phần được phân ra làm nhiều mục nhỏ. Phần 1 sẽ
trình bày một cách tổng quan vềvi điều khiển PIC. Tuy nhiên trọng tâm chính của phần
này là so sánh giữa các trình biên dịch cho dạng ngôn ngữdùng cho vi điều khiển PIC.
Dựa trên sựso sánh trên chúng ta sẽquyết định sửdụng loại trình biên dịch nào được sử
dụng cho viết thiết kếmạch demo sửdụng giao tiếp USB sẽ được trình bày trong phần 4.
Trong phần 2 sẽtrình bày khái quát vềchuẩn giao tiếp USB. Đây cũng chính là phần cốt
lõi của toàn bộbản báo cáo. Phần 2 được chia làm tám mục nhỏ được đánh sốthứtựtheo
hệthống sốla mã. Mục đầu tiên trình bày ngắn gọn vềlịch sửhình thành và phát triển
của chuẩn giao tiếp USB. Mục số2 sẽ đềcập đến các thành phần cấu thành chuẩn giao
tiếp, phần này giúp ta làm quen với một sốthuật ngữthường dùng.Sau khi được làm quen
với các thuật ngữ,chúng ta sẽchuyển sang mục 3 với các thông tin vềcác thành phần
chính tham gia trực tiếp quá trình vận chuyển. Sang mục số4 sẽ đem đến cho chúng ta
những chi tiết vềcác loại kiểu truyền nhận. Trong mỗi kiểu truyền sẽnhắc đến các đặc
tính của từng kiểu truyền nhưlà tính sẵn sàng của thiết bị, cấu trúc kiểu truyền, kích
thước lớn nhất của từng gói dữliệu cũng nhưtốc độcủa mỗi kiểu truyền. Mỗi thông tin
vềmột kiểu truyền sẽ được nhắc lại nhiều trong ởphía sau. Tiếp theo chúng ta sẽ được
tìm hiểu thêm vềcơchếhoạt động của giao tiếp thông qua sự điểm danh, đây là hoạt
động cơbản và quan trọng nhất trong quá trình truyền nhận dữliệu giữa thiết bịvà máy
tính .Trong mục 5 này sẽtrình bày từng bước của quá trình điểm danh. Các mục còn lại
trình bày một phần của quá trình giao tiếp diễn ra trên host, các mục này bao gồm giao
tiếp trên host và host lựa chọn driver. Riêng mục 7 sẽ đềcập đến driver thiết bị. Phần 3
của báo cáo mô tảviệc thi công mạch demo giao tiếp USB, các bản mô tảmạch luận lý
của mạch được thểhiện qua các hình trong Orcad capture cis, phần này cũng bao gồm
luôn đoạn code firmware cho vi điều khiển. Phần cuối cùng của bản báo cáo sẽgiới thiệu
một sốhàm cơbản trong viết ứng dụng giao tiếp với thiết bị.
53 trang |
Chia sẻ: ngtr9097 | Lượt xem: 2395 | Lượt tải: 3
Bạn đang xem trước 20 trang tài liệu Đồ án Thiết kế và thi công mạch hẹn giờ đa năng có thể cấu hình qua cổng USB, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
BÁO CÁO ĐỒ ÁN TIN HỌC
Đề tài :
Thiết kế và thi công mạch hẹn giờ đa năng có thể cấu
hình qua cổng USB
GVHD : Bùi Văn Hiếu
SV : Trần Quốc Gia Phú MSSV:50404428
Trần Hạ Long MSSV:50401405
TP. HỒ CHÍ MINH, 6/2008
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 1
Giới Thiệu.
Nội dung của đề tài trong gia đoạn thực tập dừng lại ở mức độ tìm hiểu và thi công
mạch mô phỏng. Chi tiết của các yêu cầu được đưa ra theo thứ tự lần lựoc như sau: tìm
hiểu tồng quan về vi điều khiển PIC, tìm hiểu các phần mền có thể lập trình cho vi điều
khiển PIC bằng ngôn ngữ C và lựa chọn một phần mền thích hợp nhất, tìm hiểu giao tiếp
vi điều khiển PIC với máy tính thông qua cổng USB. Thiết kế mạch và viết chương trình
có thể truyền nhận dữ liệu với máy tính qua cổng USB. Các yêu cầu trên sẽ được giải
quyết tuần tự thông qua 4 phần, mỗi phần được phân ra làm nhiều mục nhỏ. Phần 1 sẽ
trình bày một cách tổng quan về vi điều khiển PIC. Tuy nhiên trọng tâm chính của phần
này là so sánh giữa các trình biên dịch cho dạng ngôn ngữ dùng cho vi điều khiển PIC.
Dựa trên sự so sánh trên chúng ta sẽ quyết định sử dụng loại trình biên dịch nào được sử
dụng cho viết thiết kế mạch demo sử dụng giao tiếp USB sẽ được trình bày trong phần 4.
Trong phần 2 sẽ trình bày khái quát về chuẩn giao tiếp USB. Đây cũng chính là phần cốt
lõi của toàn bộ bản báo cáo. Phần 2 được chia làm tám mục nhỏ được đánh số thứ tự theo
hệ thống số la mã. Mục đầu tiên trình bày ngắn gọn về lịch sử hình thành và phát triển
của chuẩn giao tiếp USB. Mục số 2 sẽ đề cập đến các thành phần cấu thành chuẩn giao
tiếp, phần này giúp ta làm quen với một số thuật ngữ thường dùng.Sau khi được làm quen
với các thuật ngữ,chúng ta sẽ chuyển sang mục 3 với các thông tin về các thành phần
chính tham gia trực tiếp quá trình vận chuyển. Sang mục số 4 sẽ đem đến cho chúng ta
những chi tiết về các loại kiểu truyền nhận. Trong mỗi kiểu truyền sẽ nhắc đến các đặc
tính của từng kiểu truyền như là tính sẵn sàng của thiết bị, cấu trúc kiểu truyền, kích
thước lớn nhất của từng gói dữ liệu cũng như tốc độ của mỗi kiểu truyền. Mỗi thông tin
về một kiểu truyền sẽ được nhắc lại nhiều trong ở phía sau. Tiếp theo chúng ta sẽ được
tìm hiểu thêm về cơ chế hoạt động của giao tiếp thông qua sự điểm danh, đây là hoạt
động cơ bản và quan trọng nhất trong quá trình truyền nhận dữ liệu giữa thiết bị và máy
tính .Trong mục 5 này sẽ trình bày từng bước của quá trình điểm danh. Các mục còn lại
trình bày một phần của quá trình giao tiếp diễn ra trên host, các mục này bao gồm giao
tiếp trên host và host lựa chọn driver. Riêng mục 7 sẽ đề cập đến driver thiết bị. Phần 3
của báo cáo mô tả việc thi công mạch demo giao tiếp USB, các bản mô tả mạch luận lý
của mạch được thể hiện qua các hình trong Orcad capture cis, phần này cũng bao gồm
luôn đoạn code firmware cho vi điều khiển. Phần cuối cùng của bản báo cáo sẽ giới thiệu
một số hàm cơ bản trong viết ứng dụng giao tiếp với thiết bị.
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 2
MỤC LỤC
Phần 1: Tổng quan về PIC và các trình biên dịch C cho PIC ............................................. 5
I) TỔNG QUAN VỀ VI ĐIỀU KHIỂN PIC .................................................................. 5
II) Phần đánh giá trên forum của CCS:............................................................................ 8
III) Phần đánh giá trên forum của microchip: ................................................................. 13
IV) Quyết định loại trình biên dịch: ................................................................................ 13
Phần 2:Giao tiếp USB....................................................................................................... 15
I) Sự ra đời của chuẩn USB:......................................................................................... 15
II) Các cấu thành giao tiếp USB: ................................................................................... 15
III) Các thành phần tham gia vận chuyển: ...................................................................... 17
IV) Các kiểu truyền(tranfer):........................................................................................... 18
V) Sự điểm danh: ........................................................................................................... 28
VI) Giao tiếp từ Host:...................................................................................................... 33
VII) Giao tiếp trên host:.................................................................................................... 34
VIII) Host lựa chọn driver ................................................................................................ 35
Phần 3:Thiết kế mạch giao tiếp USB thuộc lớp HID........................................................ 37
I) Mục tiêu: ................................................................................................................... 37
II) Thi công mạch: ......................................................................................................... 37
III) Viết firmware:........................................................................................................... 39
Phần 4:Viết ứng dụng giao tiếp chuẩn USB trên host ...................................................... 48
I) Giới thiệu chung về lập trình ứng dụng trên host : ................................................... 48
II) Các quy trình để nhận biết một thiết bị usb : ............................................................ 48
III) Các hàm Read và Write : .......................................................................................... 51
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 3
Mục lục hình
Hình 1:Sơ đồ chân. ............................................................................................................. 8
Hình 2:Kiến trúc hình sao phân tầng USB........................................................................ 17
Hình 3:Các giao dịch trong truyền điều khiển read. ......................................................... 21
Hình 4: Các giao dịch trong truyền điều khiển write........................................................ 22
Hình 5: Giao dịch IN và OUT của hai kiểu truyền bulk và ngắt. ..................................... 24
Hình 6: Giao dịch đồng bộ IN và OUT............................................................................. 27
Hình 7 :Module kết nối USB và điều khiển trong Orcard capture cis. ............................ 38
Hình 8: Module hiển thị. ................................................................................................... 39
Hình 9: sơ đồ giao tiếp từ chương trình ứng dên driver. ................................................. 48
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 4
Mục lục bảng
báng1:Những đặc tính thiết bị............................................................................................. 7
Bảng2:Bảng so sánh các trình soạn thảo code cho vi điều khiển PIC. ............................. 13
Bảng3: mô tả các dây trong cáp truyền............................................................................. 15
Bảng4:so sánh tốc độ các kiểu truyền............................................................................... 20
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 5
Phần 1: Tổng quan về PIC và các trình
biên dịch C cho PIC
I)Tổng quan về vi điều khiển PIC:
1.Những tính năng lõi mới:
a)Công nghệ nanowatt :
- Tất cả các thiết bị chip trong họ PIC18F2455/2550/4455/4550 đều có đặc trưng
chung là giảm bớt năng lượng tiêu thụ đáng kể trong suốt quá trình hoạt động của chip.
Gồm có các chế độ sau :
-Alternate run Modes ( Chế độ chạy luân phiên ) : xung clock được điều khiển từ bộ
tạo xung Timer1 hoặc từ khối tạo dao động nội, trong suốt quá trình thực thi đoạn mã
năng lượng tiêu hao có thể chỉ bằng 90% so với những chip khác .
-Multiple Idle Modes (Chế độ chạy đa nhàn rỗi) : Mạch điều khiển có thế chạy với
việc nhân của CPU bị vô hiệu hóa .Nhưng các thiết bị ngoại vi vẫn còn hoạt động.Trong
trang thái này , mức tiêu thụ năng lượng có thể được giảm không nhiều , ít hơn 4% so với
nhu cầu của sự hoạt động thông thường.
-On-the-fly Mode Switching : Chế độ quản lý năng lượng này được điều khiển bởi mã
của user trong suốt quá trình hoạt động .Ở chế độ này cho phép user thể hiện ý tưởng tổ
chức tiết kiệm năng lượng trong thiết kế phần mềm .
-Low consumption in Key : Nhu cầu năng lượng cho cả Timer1 và Watchdog Timer
đã được giảm đến mức tối thiểu .
b)Universal Serial Bus (USB) :
- Thiết bị trong họ PIC18F2455/2550/4455/4550 tích hợp một module giao tiếp USB
tương ứng với USB Specification Revision 2.0 .
- Module này hỗ trợ cả hai sự kết nối low-speed(1.5 Mb/s) và full-speed ( 12 Mb/s)
cho tất cả các kiểu chuyển đổi dữ liệu được hỗ trợ.
- PIC18F4550 cũng tích hợp transceiver(máy thu) và regulator(máy điều chỉnh) 3.3V
riêng , đồng thời hỗ trợ việc sử dụng những transceiver bên ngoài và regulator điện áp
khác.
c)Multiple Oscillator Options And Features (Đa tuỳ chọn bộ tạo dao động và
những tính năng ) :
Tất cả các thiết bị trong họ PIC18F2455/2550/4455/4550 cung cấp 12 sự chọn lựa
khác nhau bộ phận tạo dao động.Cho phép user có phạm vi lựa chọn lớn hơn trong việc
phát triển ứng dụng phần cứng.Bao gồm :
a. Bốn chế độ Crystal : dùng thạch anh hay bộ tạo dao động bằng gốm
b. Bốn chế độ xung clock ngọai : cho phép tuỳ chọn sử dụng 2 chân ( chân nhận dao
động ngoại vào và chân đưa ra xung clock đã được chia 4 ra) hoặc sử dụng 1 chân (chân
nhận dao động ngoại vào , chân còn lại được dùng như cổng I/O chung )
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 6
c. Khối thiết bị tạo dao động nội :cung cấp clock 8 MHz (độ sai lệch 2%) , một nguồn
INTRC(xấp xỉ 31kHz,ổn định qua nhiệt độ và nguồn VDD) , một dải 6 sự lựa chọn tần số
clock từ 125kHz đến 4MHz, vậy là có tổng cộng 8 tần số dao động để người dùng lựa
chọn .
Tuỳ chọn này còn cho phép giải phóng 1 chân bộ tạo dao động để sử dụng như
cổng I/O chung.
d. Chế độ đa tần số của bộ tạo xung clock PLL : sẵn có cho cả chế độ high_speed
crystal và chế độ tạo dao đông ngoại , cho phép một dải ộ xung clock từ 4MHz đến
48MHz.
e. Hoạt động xung clock bất đồng bộ : cho phép module USB chạy với xung clock tạo
ra bởi bộ dao động tần số cao trong khi phần còn lại của thiết bị vi điều khiển hoạt dộng
với xung clock tạo ra bởi bộ tạo dao động low-power nội .
f. Bên cạnh tính sẵn sàng như một nguồn tạo dao động , khối tạo dao động nội còn
cung cấp một nguồn tham khảo ổn định tạo ra những tính năng bổ sung cho chip ,giúp
thao tác được linh hoạt:
- Fail-safe Clock Monitor : liên tục theo dõi nguồn tạo dao động chính , dự phòng một
tín hiệu tần số do bộ tạo dao động nội cung cấp . Nếu xuất hiện clock hoạt động không
như mong muốn , bộ điều khiển được chuyển tới khối tạo dao động bên trong hay một
chế độ kết thúc an toàn.
-Two-Speed Start-up : cho phép dùng bộ tạo dao động nội như nguồn tạo clock trong
Power-on Reset , hay wake-up from sleep , cho đến khi nguồn tạo clock chính sẵn sàng.
2.Những tính năng đặc biệt khác:
a)Memory Endurance(Sự kéo dài bộ nhớ):
Sự gia tăng flash cell cho cả bộ nhớ chương trình và bộ nhớ dữ liệu EEPROM ước
tính có thể thực hiện việc xoá/ghi lên đến 100 ngàn lần cho bộ nhớ chương trình , 1 triệu
lần cho EEPROM . Dữ liệu có thể được đảm bảo lưu trữ trong hơn 40 năm .
b)Sefl-Programmability :
Khả năng tự lập trình , bằng cách sử dụng bootloader routine (được xác định trong
khối protected Boot ở đầu bộ nhớ chương trình)
c)Extened Instruction Set (Mở rộng tập lệnh) :
Thêm vào 8 lệnh mới và mode đánh địa chỉ Offset bằng kí tự đánh chỉ số
d)Enhanced CCP Module (Tăng cường module CCP):
-Trong mode PWM module này cung cấp 1,2 hay 4 chân output (được điều chế) để
điều khiển việc chạy half-bridge và full-bridge .
-Những tính năng khác : tự động shutdown để vô hiệu hoá PWM output trong ngắt
hay trường hợp có lựa chọn điều kiện ; tự động restart để kích hoạt lại output khi điều
kiện đã bị xoá .
e)Enhanced Addressable USART :
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 7
Automatic Baud Rate Detection và Baud Rate Generator 16-bit để tăng dộ phân giải .
Khi vi điều khiển dùng khối tạo dao động nội , EUSART cung cấp chế độ ổn định cho
những ứng dụng giao tiếp với bên ngoài mà không cần đến nguồn crystal ngoại (hay
nguồn năng lượng hỗ trợ).
f)10-bit A/D Converter (Bộ biến đổi ADC 10-bit):
Module này hợp nhất thời gian thu nhận chương trình , khi 1 kênh truyền được chọn
lựa và một quá trình chuyển đổi xảy ra , không cần chờ thời gian làm mẫu và như vậy
giảm bớt code overhead .
g)Dedicated ICD/ICSP Port ( Dành cho ICD/ICSP Port):
Cho phép người dùng phát triển những ứng dụng dùng I/O cường độ cao mà vẫn giữ
khả năng nhập chương trình và debug trong mạch .
3.Những đặc tính thiết bị :
Tính năng
Tần số làm việc DC-48 MHz
Bộ nhớ chương trình(bytes) 32k
Bộ nhớ chương trình(lệnh) 16384
Bộ nhớ dữ liệu(bytes) 2k
Bộ nhớ dữ liệu EEPROM(bytes) 256
Những nguồn ngắt 20
I/O ports Port A,B,C,D,E
Timers 4
Capture/Compare/PWM Modules 1
Enhanced Capture/Compare/
PWM Modules
1
Truyền thông tuần tự MSSP , Enhanced USART
USB 1
Streaming Parallel Port(SPP) Có
10-bit Analog-to-Digital Modules 13 kênh Input
Comparators 2
Resets ( và Delays) POR, BOR, lệnh RESET, Stack Full,
Stack Underflow , (PWRT,OST),
Programmable Low-Voltage Detect có
Programmable Brown-out Reset Có
Lệnh Set 75 lệnh ; 83 với tập lệnh mở rộng
được cho phép
Packages 40-pin PDIP
44-pin QFN
44-pin TQFP
báng1:Những đặc tính thiết bị.
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 8
4.Sơ đồ chân :
Hình 1:Sơ đồ chân.
II)Đánh giá các trình biên dịch:
Hiện nay trên thế giới, có rất nhiều nhà sãn trình biên dịch dựa theo ngôn ngữ C dành
cho các dòng vi điều khiển PIC. Trong số các trình biên dịch này, có một số đựơc sử
dụng rất rộng rãi và phồ biến trên toàn thế giới như :CCS –C, Microchip C18,C30; Hi-
tech PICC , IAR embedded Workbench. Các trình biên dịch này chiếm hầu hết thị phần
trong lĩnh vực trình biên dịch cho PIC. Do có nhiều trình biên dịch nên viêc lựa chọn ra
một trong số đó sẽ không dễ dàng cho lắm. Viêc lựa chọn này cũng phải dựa trên nhiều
tiêu chí để phù hợp với điều kiện và mục đich sử dụng. Tiêu chí để đánh giá đựơc một
chưong trình cũng có rất nhiều. Thông thường khi đánh giá người ta chỉ đánh giá dựa
theo một số tiêu chí chủ yếu như là: giá cả, đặc điểm ngôn ngữ, thư viện hỗ trợ, IDE và
benchmark. Trong phần này sẽ trình bày việc so sánh các trình biên dịch thông qua các
tiêu chí đã đề cập ở trên. Phần so sánh này được thực hiện bởi những người có kinh
nghiệm về lập trình PIC trên diễn đàn khá nổi tiếng về vi điều khiển PIC. Các diễn đàn
thường do các công ty sãn xuất trình biên dịch lập ra hoặc do những người phát triển các
ứng dụng vi điều khiển lập ra.
1.Phần đánh giá trên forum của CCS:
-Phần đánh giá được trình bày theo dạng bảng so sánh. Bảng được lấy từ Forum tại địa
chỉ:
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 9
https://www.ccsinfo.com/content.php?page=newcompilercomp#CCS.
CCS – C v.4 Microchip
C18 v3.0/
C30 v2.05
Hi-Tech PICC
V 9.5
IAR embedded
Workbench
v2.21
Phần 1 Sản phẩm / giá
PIC hỗ trợ pic 12 , 14 ,16
và 24 bit
C18 pic 16
bit
C30 pic 24
bit
PICC pic 12 bit
và 14 bit
PICC18 pic 16-
bit
dsPICC pic 24-
bit
PIC16/17 pic
14 bit
PIC18 pic 16
bit
dsPIC pic 24
bit
Hệ điều hành Windows ,Linux Windows Windows ,Linux
Mac OS ,Sun
Windows
Giá
cả
License:
12-bit = $50
14-bit = $150
16-bit = $200
24-bit = $250
12-bit, 14-bit +
IDE = $350
12-bit, 14-bit,
16-bit + IDE =
$500
24-bit + IDE =
$350
12-bit, 14-bit,
16-bit, 24-bit +
IDE = $600
License:
16-bit + IDE
= $495
24-bit + IDE
= $895
License:
12-bit, 14-bit +
IDE = $950
16-bit + IDE =
$950
24-bit + IDE =
$1,150
16-bit, 24-bit +
IDE = $2,400
Support:
12-bit, 14-bit +
IDE = $250
16-bit + IDE =
$250
24-bit + IDE =
$250
16-bit, 24-bit +
IDE = $250
License:
14-bit + IDE =
$2,695
16-bit + IDE =
$2,695
24-bit + IDE =
$2,695
Includes:
1-year
Warranty
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 10
Maintenance:
(30-60 days
included)
12-bit =
$40/year
14-bit =
$100/year
16-bit =
$125/year
24-bit =
$150/year
12-bit, 14-bit +
IDE =
$200/year
12-bit, 14-bit,
16-bit + IDE =
$250/year
24-bit + IDE =
$175/year
12-bit, 14-bit,
16-bit, 24-bit +
IDE = 275/year
Bộ kit hỗ trợ
phát triển
Có Có Có Có
Tương thích
với Mplab
Có Có Có Có
Phần 2 Đặc điểm ngôn ngữ
Tự động cấp
phát bộ nhớ
RAM
Có Không Không Không
Kiểu dữ liệu Integers:
int1
int8
int16
int32
Float:
32-bit
Integers:
int8
int16
int32
Float:
32-bit for
C18/C30
64-bit for
C30
Integers:
int1
int8
int16
int32
Float:
24-bit
32-bit
Integers:
int8
int16
int32
Float:
32-bit
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 11
Theo chuẩn C Có Có Có Có
Phần mở rộng
trình biên dịch
24 13 15 5
Đệ quy Không Có Không Không
Hỗ trợ
Assembly
Có Có Có Có
Chuỗi bit Có Không Không Không
Bỏ các hàm
không sử dụng
Có Không Không Có
Con trỏ trỏ
đến hằng
Có Có Có Có
Ghi đè hàm Có Không Không Không
Tham số tham
khảo
Có Có Không Không
Tham số mặc
định
Có Không Không Không
Có thể xác
định dữ liệu C
trong bộ nhớ
không phải là
RAM
Có Không Không Không
Tự động đóng
gói các biến
bit
Có Không Có Không
Phần 3 Thư viện hỗ trợ
Các hàm về
char/string
Có Có Có Có
Thư viện math Có Có Có Có
Các hàm về hệ
thống file
Không Không Không Có
Các hàm về bộ
nhớ động
Có Không Không Có
Phần 1: Tổng quan về vi điều khiển PIC và so sánh các trình biên dịch C cho PIC
SV:Trần Quốc Gia Phú, Trần Hạ Long - 12
Thư viện động
RS232
Có Không Không Không
Thư viện động
SPI
Có Không Không Không
Thư viện động
I2C
Có Không Không Không
Thư viện IO Có Có Có Có
Hàm xây dựng
sẵn của
PIC® MCU
Có (80 hàm) Có (54 hàm) Không Không
Hàm tạo trễ Có Có Không Không
RTOS Có (chỉ đi cùnng
với IDE)
Không Có (mua ứng
dụng riêng
Không
Phần 4 IDE
IDE + debug Có Có Có Có
Hỗ trợ tạo
project
Có Có Có Có
Tự động sinh
tài liệu
Có Không Không Không
Tự động kiểm
tra lỗi văn bản
Có Không Không Không
Phần 5 Benchmark
Chương trình
đọc nhiệt độ
và hiển thị lên
màn hình LCD
ROM: 1638
RAM: 34
ROM: 3036
RAM: 293
ROM: 3879
RAM: 30
ROM: 7838
RAM: 148
Số thực dấu
chấm động ,ví
dụ :
float f = 5.0, g
= 600.0, h;
h = f*g;
Time: 27.5 us
ROM: 350
RAM: 28
Time: 42.5 us
ROM: 416
RAM: 286
Time: 83.4 us
ROM: 428
RAM: 22
Time: 27.6 us
ROM: 454
RAM: 33
Phần 1: Tổng quan về vi điều khiển P