Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 26

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

MÔN HỌC

KỸ THUẬT VI XỬ LÝ

Chương 5:
Lập trình C trên nền Keil C và nạp chương trình cho
STM32
Giảng viên: TS. Trương Cao Dũng
Điện thoại/E-mail: 0936354555 / dungtc@ptit.edu.vn
KỸ THUẬT VI XỬ LÝ
NỘI DUNG
▪ Cách thức khởi tạo và lưu chương trình cho STM32
( tạo Project)
▪ Cách tạo môi trường code trên Kelic và nạp code
cho STM32
▪ Cách cài Driver để hỗ trợ lập trình
▪ Giới thiệu sơ lược về ngôn ngữ lập trình C cho vi
điều khiển STM32

2
KỸ THUẬT VI XỬ LÝ
GIỚI THIỆU
Keil C là gì ?

“Keil C là chương trình soạn thảo sử dụng


ngôn ngữ chính là C để viết chương trình cho
vi điều khiển.Tuy nhiên nó cũng hỗ trợ cả ngôn
ngữ lập trình bậc thấp ASSEMBLY . Vì vậy, có
thể viết chương trình bằng một trong 2 ngôn
ngữ.”

Link Youtube hướng dẫn kèm link tải keilC


https://www.youtube.com/watch?v=ruxOqIbDYlM&t=28s
3
Cách thức khởi tạo và lưu chương trình
cho STM32(Tạo Project)
Cách khởi tạo Project
1. Khởi động keil C lên để bắt đầu tạo Project mới
▪ Trong phần mềm keilc Chọn Project
▪ Chọn New uVision Project

4
Cách thức khởi tạo và lưu chương trình
cho STM32(Tạo Project)
Lưu Project
2. Tạo một Fodel mới để lưu Project
▪ Lưu Project vào Folder vừa tạo

5
Cách thức khởi tạo và lưu chương trình
cho STM32(Tạo Project)
3. Tiến hành chọn chip
▪ Gõ tên chip muốn
chon vào ô “Search”
▪ Click chuột vào chip
muốn chọn
▪ Rồi nhấn “OK”
▪ Hộp thoại Manage Run-Time Environment xuất hiện

• Tiến hành chọn thiết bị


ngoại vi và thư viện hỗ
trợ
6
Cách thức khởi tạo và lưu chương trình
cho STM32(Tạo Project)
▪ Tạo file.c để viết code

7
Cách thức khởi tạo và lưu chương trình
cho STM32(Tạo Project)
4. Khi hoàn thành ta được giao diện như hình

8
Cách tạo môi trường code trong Kelic
và nạp code cho STM32
Cách tạo môi trường code trong Kelic
1. Chọn Target Options để cấu hình

▪ Ở tab target , chọn Use MicroLIB:

9
Cách tạo môi trường code trong KeliC
và nạp code cho STM32
2. Tạo file hex trong Keli C
▪ Tab Output : Đánh dấu
chọn Create HEX File để
tạo file HEX nạp cho VDK

▪ Tab C/C++

▪ Tại dòng Deline điền:


USE_STDPERIPH_DRIVER,
STM32F10X_MD

10
Cách tạo môi trường code trong Kelic
và nạp code cho STM32
▪ Sau đó mở file stm32f10x.h lên và xem hướng dẫn chọn define

▪ Lưu ý Flash để chon define

11
Cách tạo môi trường code trong Kelic
và nạp code cho STM32
▪ Khai báo trình biên dịch
• Click “OK” để hoàn thành setup
• Nhấn F7 để biên dịch chương trình

▪ Kết quả buil thành công:


12
Cách tạo môi trường code trong Kelic
và nạp code cho STM32
Nạp code cho STM32
1. Một số cách nạp code cho STM32:
▪ JTAG: nạp và gỡ rối, việc dùng JTAG được thực hiện
trên KeilC nên rất thuận tiện cho việc nạp code, debug ,
test sản phẩm,.. nhược điểm là phần cứng rườm rà.
▪ SWD : chuẩn giao tiếp 2 dây, nhỏ gọn đơn giản và chi phí
thấp hơn so với JTAG
▪ Bootloader : phần cứng đơn giản, dễ thực hiện,… nhưng
chỉ dùng cho việc nạp code

13
Cách tạo môi trường code trong Kelic
và nạp code cho STM32
2. Nạp file HEX đã buil ở trên thông qua Bootloader
▪ Chọn cổng “COM”
tương ứng và nếu có kết
nối thì KIT sẽ như hình

▪ Kích thước bộ
nhớ flash của
MCU sẽ xuất
hiện. Nhấn
next để tiếp
tục 14
Cách tạo môi trường code trong Kelic
và nạp code cho STM32
3. Chọn đường dẫn đến file hex đã
chuẩn bị sẵn
▪ Nhấn “Next” để nạp code, sau
khi nạp xong sẽ có thông báo

4. Sau khi nạp xong, đưa mạch


trở về trạng thái Main flash
memory(BOOT0 nối đất, BOOT1
tùy chỉnh). Reset mạch, mạch
chạy bình thường. 15
CÁCH CÀI DRIVER
KHÁI QUÁT VỀ DRIVER

“Các chương trình máy tính hoạt động cần có


DRIVER”
CÁCH CÀI DRIVER
CHỨC NĂNG CỦA DRIVER VỚI MÁY TÍNH

“Driver giúp cho chương trình và


phần cứng giao tiếp được với nhau
để cùng thực hiện một nhiệm vụ
nào đó.”

18
CÁCH CÀI DRIVER
CÀI ĐẶT DRIVER STM32 KHI SỬ DỤNG MẠCH NẠP ST-
LINK V2

21
CÁCH CÀI DRIVER
HƯỚNG DẪN CÀI ĐẶT DRIVER STM32 KHI SỬ DỤNG
MẠCH NẠP ST-LINK V2
B1: Truy cập vào đường link sau:
https://www.st.com/en/development-tools/stsw-link009.html
B2: Chọn “Get Software” :

22
CÁCH CÀI DRIVER
KIỂM TRA CÀI ĐẶT DRIVER MẠCH NẠP ST-LINK V2

26
NGÔN NGỮ C VỚI VĐK STM32

28
NGÔN NGỮ C VỚI VĐK STM32

29
NGÔN NGỮ C VỚI VĐK STM32

Compiler workflow

Example C language for STM32

30
NGÔN NGỮ C VỚI VĐK STM32

“Nguồn clock như là “trái tim” của


toàn bộ hệ thống, nó cung cấp xung
nhịp cho lõi vi điều khiển và các thiết
bị ngoại vi giúp chúng hoạt động
được.”

31
NGÔN NGỮ C VỚI VĐK STM32

32
NGÔN NGỮ C VỚI VĐK STM32
ỨNG
DỤNG

34

You might also like