You are on page 1of 10

BÀI TẬP NGẮT NGOÀI

BƯỚC 1: KẾT NỐI PHẦN CỨNG

BƯỚC 2: Tạo Project

Chọn file ->New Project->STM32

MCU/MPU Selector -> Commercial Part Number-> Nhập tên board


Hình 2

Đặt tên Project->next-> Finish

Sau khi đặt tên xong cho trương trình ngắt ngoài sẽ xuất hiện như hình

Hinh3

BƯỚC3: tiến hành cài đặt cấu hình cho chip


Bước 1: Chọn RCC để bật High Speed Clook( HSE) -> Cystal/ Cermaic Resoatinor

Cấu hình thạch anh( xung clook)

(Mạch RCC là mạch tạo dao động)

Hình4 Cấu hình thạch anh

Đọc tên file referene manual của chip xác định chân nạp SWDIO và SWCLK. Với chip STM32F407
VETx thì là chân PA13 và PA14.

Đọc trên file referene manual hoặc datasheet xác định các chân nối với led .với chip STM32F407 VETx
thì các chân PD12…PD15. Cấu hình những chân này là GIPO_OUTPUT.

Hình5 cấu hình chân GIPO


Bước 2: chọn SYS Debug ->Serial Wire

Hình6 SYS chân nạp

Bước 3 : để thực hiện bài ngắt ta cần chọn chọn chân ngắt Pa0: GPIO_EXTI0

Chọn vào NIVC bật cờ ngắt lên như bên hình7

Hình7 bật cờ ngắt

BƯƠC 4 : Cấu hình xung clock


Hình8 cấu hình xung clock cho chip

BƯỚC 5: Gererate code.

Sau khi khởi tạo code, Build code để kiểm tra xem có lỗi hay không. Nếu thành công sẽ như hình9 sau

Hình9 Gererate code và build kiểm xa lỗi cấu hình

BƯỚC 6: Code và nạp code

Bước 1: Sau khi khởi tạo code thành công ta tiến hành code trong phần main của chương trình

Code led: HAL_GPIO_TogglePin(Led1_GPIO_Port, Led1_Pin);

HAl_delay(500);
Hình10 Code đèn led

Bước 2 sau khi chạy chương trình led hoàn thành ta tiến hành chọn vào STM32F4XX_IT.C

Hình11 chọn stm32xx_it.c

Sau khi chọn ta tiến hành viết code để thực hiện chương trình ngắt( viết code ở ngay begin EXTI

Code: HAL_GIPO_TogglePin(Led3_GPIO_Port, led3_Pin);

HAL_GIPO_TogglePin(Led4_GPIO_Port, led4_Pin);

Sử dụng thư viện HAL

Unit8_data send : là truyền dữ liệu đi

Unit8_data_Recevied: là dữ liệu nhận được

Cấu trúc lệnh HAL_GIPO_TogglePin(GIPO_PORT, GIPO_PIN).câu lệnh có chức năng là đảo trạng thái
của chân cần điều khiển từ 0 lên 1 hoặc ngược lại từ 1 xuống 0

GPIO_PORT ; Vị trí Port điều khiển


GPIO_PIN: vị trí chân muốn điều khiển tại Port đã chọn

HÀM DELAY: có chức năng làm trễ thời gian sáng tắt của led

Như hình12 bên dưới

Hình12 code :Chương trình ngắt

Để kiểm tra chương trình ta chọn hoặc crtl+B

Sau khi không có lỗi ta tiến hành chạy trương trình run configurations…
Video thực hiện: https://www.youtube.com/shorts/WlNPn5u-8pM

You might also like