4.4.2.1 Phần mềm STM32CubeMX:
STM32CubeMX là một chương trình hoàn thiện giúp cho việc lập trình trên STM32 dễ dàng.
Giúp cấu hình ngoại vi dễ dàng: Chọn các pin trên chip và chọn các tính năng mong muốn gắn với nó. Cấu hình Middlewares (FATS, FREERTOS), các ngoại vi như CRC, IWDG, TIMERS…, cấu hình Clock và tính toán mức độ tiêu hao năng lượng.
STM32CubeMX tự động download các driver mới nhất của ST dành cho các dòng chip của mình. ST đã không còn phát triển Standard Peripheral Libraries nữa, thay vào đó họ phát triển cấu trúc firmware mới bao gồm lớp cách ly phần cứng (HAL) bao gồm các driver cho ngoại vi, lớp Middleware bao gồm hỗ trợ TCP/IP, USB, Graphics, FAT file system, Touch library, và hệ điều hành mã nguồn mở RTOS.
Tự động tạo Project dựa trên cấu hình ở trên. STM32CubeMX đầu tiên sẽ download driver của dòng chip cần cấu hình, sau đó tạo code và copy các driver cần thiết vào project, và tạo project trên các công cụ lập trình phổ biến như Keil hay IAR.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 51
Hình 4.22 Phần mềm STM32CubeMX. *Cách tạo project:
Mở phần mềm STM32CubeMX lên, nhấn vào New Project để bắt đầu tạo project mới.
- Series: Chọn họ MCU bạn sử dụng. - Lines: Chọn dòng MCU bạn sử dụng.
- Package: Chọn kiểu đóng gói của MCU. Chọn loại MCU chính xác trong phần MCUs List. Nhấn OK.
Hình 4.23 Tạo Project.
Chọn ngoại vi cần dùng tại thẻ PinOut:
Trong danh sách Peripheral được liệt kê bên trái có cách ngoại vi mà MCU hỗ trợ, sử dụng ngoại vi nào thì Enable ngoại vi đó lên.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 52
Tại hình MCU trong khung bên phải, cấu hình trực quan từng chân của MCU theo các tính năng GPIO mà MCU hỗ trợ bằng cách click vào chân MCU và chọn chức năng cần thiết.
Hình 4.24 Chọn ngoại vi.
Cấu hình xung đồng hồ cho ngoại vi tại thẻ Clock Configuration.
Hình 4.25 Điều chỉnh xung nhịp.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 53
Hình 4.26 Cấu hình ngoại vi
Sau khi đã điều chỉnh, cấu hình những ngoại vi cần thiết, chúng ta tiến hành xuất mã nguồn để import vào các trình biên dịch như IAR, KeilC…
Hình 4.27 Xuất mã nguồn
4.4.2.2 Phần mềm Keil C:
Là phần mềm hỗ trợ người dùng trong việc lập trình vi điều khiển các dòng khác nhau (Atmel, AVR, …). Keil C giúp người dùng soạn thảo và biên dịch chương trình C hay cả ASM thành ngôn ngữ máy để nạp cho vi điều khiển giúp chúng ta tương tác giữa vi điều khiển với người lập trình.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 54
Hình 4.28 Phần mềm Keil C Uvision 5 Tạo Project Keil C:
Mở Keil C lên Project -> new Uvision Project
Hình 4.29 Tạo Project Keil C
Sau đó đặt tên cho project, ví dụ: GPIOdemo và chọn thư mục lưu để project. Bạn nên đặt tên thư mục trùng tên project để dễ nhớ.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 55
Hình 4.30 Đặt tên cho project.
Sau đó sẽ chọn chip chúng ta sử dụng:
Hình 4.31 Chọn chip
Tiếp theo, trong bảng Manage Run-Time Enviroment. Các bạn có thể tích để sử dụng CMSIS mới nhất của Keil C nó sẽ link với thư viện ổ C.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 56
Hình 4.32 Chọn CMSIS.
Bây giờ bạn copy thư viện StdPeriph_Driver download ở post trước vào thư mục chứa project ‘GPIOdemo’.
Hình 4.33 Copy thư viện.
Tạo thêm folder User để cho file mình code vào đó. Thư mục project ‘GPIOdemo’ gồm các thư mục và file như dưới đây.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 57
Hình 4.34 Tạo thêm Folder User
Bây giờ mở lại GPIOdemo project để cài đặt project. Cài đặt Create hex file tại tab Output.
Hình 4.35 Cài đặt project
Trong ô define điền: USE_STDPERIPH_DRIVER (Sử dụng thư viện peripheral của ST)
STM32F10X_MD: Sử dụng chip medium destiny (STM32F103C8T6 là chíp medium destiny)
Tích ô C99: Sử dụng chuẩn biên dịch C99. Nếu không tích sẽ gặp một số lỗi như biên dịch khi khai báo biến nằm thân chương trình.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 58
Hình 4.36 Chuyển sang task C/C++
Vẫn trong tab C/C++ bạn cần trỏ tất cả đường dẫn tới folder chứa file và thư viện biên dịch như user, CMSIS, Startup, StdPeriph_Driver.
Hình 4.37 Trỏ tất cả đường dẫn tới folder chưa file
Cài đặt mạch nạp. Ở đây dùng STlink V2 để nạp code và debug. Nếu muốn kiếm tra xem mạch nạp và có hoạt động hay không chọn Setting.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 59
Hình 4.38 Cài đặt mạch nạp.
Vậy là xong phần cài đặt Keil C. Bây giờ cần tạo file main.c bằng cách nhấn CTRL+N hoặc File->New.
Hình 4.39 Tạo file main.c
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 60
Hình 4.40 Lưu file main.c
4.4.2.3 Phần mềm lập trình cho điện thoại Android studio:
Android Studio là một phầm mềm bao gồm các bộ công cụ khác nhau dùng để phát triển ứng dụng chạy trên thiết bị sử dụng hệ điều hành Android như các loại điện thoại smartphone, các tablet... Android Studio được đóng gói với một bộ code editor, debugger, các công cụ performance tool và một hệ thống build/deploy (trong đó có trình giả lập simulator để giả lập môi trường của thiết bị điện thoại hoặc tablet trên máy tính) cho phép các lập trình viên có thể nhanh chóng phát triển các ứng dụng từ đơn giản tới phức tạp.
Hình 4.41 Phần mềm Android studio
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 61
Bước 1: Khởi động Android Studio -> File -> chọn New -> chọn New Project -> Nhập tên ứng dụng (Application name), chỉ định thư mục chứa source code (Project location) -> chọn Next.
Hình 4.42 Tạo Project Android Studio
Bước 2: Chọn Phone and Tablet -> chọn phiên bản tối thiểu SDK (tương ứng với phiên bản hệ điều hành Android) -> chọn Next
Hình 4.43 Chọn Phone and Tablet
Bước 3: Chọn Activity, trong hình nhóm chọn Empty Activity (Việc lựa chọn Activity nào còn tùy thuộc vào mục đích của người phát triển ứng dụng) -> Next
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 62
Hình 4.44 Chọn Activity
Bước 4: Nhập tên cho Activity tại Activity Name -> Finish
Hình 4.45 Nhập tên cho Activity
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 63
Hình 4.46 Tạo thành công project
4.4.2.4. Tạo Firebase:
Bước 1: Vào đường dẫn https://firebase.google.com và click chọn “Đăng nhập” để đăng ký tài khoản.
Hình 4.47 Đăng ký tài khoản Firebase
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 64
Hình 4.48 Tạo project trên Frebase
Bước 3: Điền thông tin để tạo project
Hình 4.49 Điền thông tin tạo project
Bước 4: Giao diện sau khi tạo project
Hình 4.50 Giao diện sau khi tạo project
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 65
Hình 4.51 Tạo Database cho project
Bước 6: Giao diện sau khi tạo firebase
Hình 4.52 Giao diện sau khi tạo firebase