- Nếu nhập đúng sẽ hiển thị kết quả phép tính.. - Nếu nhập sai thì sẽ hiển th lị ỗi.. - Nếu nhập sai mà chưa nhấn nhấn =, để nhập lại nhấn phím C trên bàn phím để xóa màn hình và nh p lậ
Trang 1BÁO CÁO TI N TRÌNH LÀM BÀI T P L N Ế Ậ Ớ
ĐỀ TÀI: CALCULATOR
Nhóm 4
Tên MSSV
Phan Thanh Sơn 1712979
Phạm Công Thanh 1713110
Dương Đình Anh Tú 1811318
Đỗ Đình Tứ 1713890
Trang 2I Product Requirement
1 Tên: Calculator with keypad & LCD
2 Mục đích:
Thiết kế m t máy tính sộ ử dụng vi điều khi n PIC tính toán các sể ố nguyên Bao gồm 4 chức năng cộng, tr , nhân, chia (+, -, *, /) ừ Người dùng nh p các phép ậ tính t bàn phím và hi n th k t qu trên LCD ừ ể ị ế ả
3 Input and output:
Types of data: Digital
Thiết bị đầu vào, đầu ra:
- Input: Bàn phím 4x4 (10 phím nh p s t 0 t i 9, 4 phím tính toàn +, -, *, /, 1 ậ ố ừ ớ phím clear, 1 phím = để lấy kết quả)
- Output: Màn hình LCD 16x2 hi n th k t qu ể ị ế ả
4 Use case:
- Người dùng nhập phép tính t bàn phím và hi n th k t qu trên LCD ừ ể ị ế ả
Trang 3- Nếu nhập đúng sẽ hiển thị kết quả phép tính
- Nếu nhập sai thì sẽ hiển th lị ỗi
- Nếu nhập sai mà chưa nhấn nhấn =, để nhập lại nhấn phím C trên bàn phím để xóa màn hình và nh p lậ ại
5 Functions:
- Một phím nguồn ON/OFF: khi máy ở chế độ ắ t t nh n 1 lấ ần để ậ b t máy, khi ở chế độ ho t đ ng nh n 1 lạ ộ ấ ần để t tắ
- LCD hiển thị các trường hợp:
Nếu nhập đúng phép tính sẽ hiển th ra k t qu phép tính ị ế ả
Nếu nh p sai phép tính s ậ ẽhiển th thông báo ERROR ị
Dùng phím C để xóa màn hình khi nh p sai ho c khi mu n th c hiậ ặ ố ự ện một phép tính mới
- Độ chính xác của kết quả phép tính là bốn chữ số sau d u ph y ấ ẩ
Trang 46 Performance:
Kết qu ả được hi n th sau 0.5s khi nhể ị ấn phím “=”
Xóa màn hình được thực hiện sau 0.5s khi nhấn phím “C” Bật/tắt máy sau 0.5s khi nh n phím ON/OFF ấ
7 Giá thành s n xu ả ất:
Chi phí s n xuả ất một simple calculator thấp
Giá thành không ảnh hưởng nhiều t i vi c thiớ ệ ết kế
8 Nguồ n:
Nguồn s d ng là pin 9V ử ụ
9 Kích thước, trọng lượng:
Kích thước nhỏ gọn
Trọng lượng khoảng 200g
10 Lắp đặt:
Thiết b là mị ột máy tính b túi linh ỏ hoạt, có th mang theo ể
11 Chứng nhận:
Thiết bị đảm b o an toàn khi sả ử dụng
Độ chính xác cao khi tính toán
Trang 5II Design Specification:
System description Miêu t– ả h ệ thống:
-Thiết bị máy tính cầm tay: có khả năng tính toán các phép tính cơ bản (cộng, trừ, nhân, chia) t d ừ ữ liệu được nhậ ạp t i bàn phím (Keypad) và hi n th phép tính và k t qu lên ể ị ế ả màn hình LCD Độ trễ của thiết bị đạt mức dưới 1ms
-System architecture – Kiến trúc h ệ thống:
-Sơ đồ khối:
System Connectivity:
• Cung cấp nguồn bằng Pin 9V
Trang 6 Funtional design:
A Button interface (KEYPAD 4X4)
Purpose:
-Cung cấp tương tác với 16 nút nhấn trên keypad Requirement:
-Nút nhấn của keypad ổn định, tuổi thọ cao
-Kết nối chặt chẽ -Nút nhấn là loại nhấn thả (push button) Description:
No Hardware Interface Component
part number
Note
1 Keypad 4x4 Scan ,GPIO HS000066 on-board, 2mm
pitch
Software and spec Note
Keypad Driver Độ trễ thấp 0.5s
Trang 7B Display: LCD 16x2
Purpose:
-Hiển thị data được nhập vào (phép tính) và kết quả của phép tính Requirement:
-Hiển thị rõ ràng
No Hardware Interface Component
part number
Note
2 LCD 1602 I2C HS000620 https://hshop.vn/pro
ducts/lcd-text-lcd1602-xanh-lo
Trang 8
C.Power Supply;
Purpose:
-Sạc lại pin trong thiết bị, cấp trực tiếp vào thiết bị
Requirement:
Input voltage: 5V DC
Output voltage: 9V
Maximum current supply: 3A
Battery: Pin 9V
Hardware Component Interface Componet
part number
Note
1 Charger IC
2 Regulator to 9V DC/DC,
LDO
Trang 9Hardware considering
Item Hardware Description Importance Cost (VNĐ)
MCU PIC 16F877A Must have 100.000
LCD 1602 LCD 1602 Must have 30.000
Keypad 4x4 Keypad 4x4 Must have 20.000
Buck 9v-5v Buck 9v-5v Nice to have 30.000
Battery Monitor Battery Monitor Nice to have 30.000
Micro controller selection
Peripheral Interface Pincount Requirement
Trang 10III Phần c ng: ứ
Vi x lý PIC ử 16f877A 65k
Phần cứng dùng để nhập và hi n th dữ li u ể ị ệ
IV Phần mền:
- Sử dụng code C để ập trình l
- Phần mền dùng để chạy mô phỏng “Proteus”
- Phần mền nạp code chạy mô phỏng “PIC C Compiler”
- Yêu cầu về code:
Code quét phím
Code tính toán
Code thông báo lỗi
Code hi n th k t qu ra màn hình ể ị ế ả
Code bật/tắt máy
V Kiểm tra:
Cắm ngu n ki m tra tồ ể ừng thiết bị phần c ng xem có hoứ ạ ột đ ng t t hay không ố Chạy mô phỏng để xem nối dây và ki m tra code có chể ạy đúng theo yêu cầu đề ra không
Viết một vài code đơn giản rồi nạp vào PIC để kiểm tra xem có hoạt động bình thường không
Trang 11Phân tích v 5 về ấn đề cơ bản c a h ủ ệ thố ng nhúng
1.Constraints:
- Giá thành thấp (<600.000 VNĐ)
- Thời gian s d ng lâu v i 1 l n s c ử ụ ớ ầ ạ
- Thời gian đáp ứng là dưới 1s
2.Functions Issues :
- Có thể thực hiện được đúng các phép tính cộng tr nhân chia và hi n th phép tính ừ ể ị
và k t qu lên màn hình ế ả
- Có cầu chì để ảo vệ mạch khi có hi b ện tượng quá dòng
3.Real time –
- H ệ thống là Non/Soft realtime: Delay <1s
4.Concurrent
-Đa chức năng:
+Quét bàn phím (keypad) để đọc dữ liệu
+Ghi d ữ liệu vào b ộ nhớ
+Xử lý d ữ liệu, th c hiự ện phép tính
+Hiển thị d ữ liệu trên LCD
5.Reactive
-Tương tác không liên tục
+Bật ngu n theo yêu c u (không liên tồ ầ ục)
*Bật khi s dử ụng
-Phản ứng với bên ngoài theo định k ì
+Các s ự kiện là định kì : H ệ thống quét keypad theo định kì liên tục để lấy dữ liệu từ người dung thông qua bàn phím
Trang 12HỢP ĐỒNG NHÓM
Team 4
Team member Roles Signature
Phan Thanh Sơn System Design
Phạm Công Thanh Hardware Design
Dương Đình Anh Tú System Engineer
Đỗ Đình Tứ Software Design
Task Responsible member
1 Develop system architecture Tứ
2 Design Hardware Thanh
3 Develop software Sơn
4 Integrate and test Tú
Team meeting 8AM, Sunday, weekly
Team rules
1 Participate in all team meetings
2 Listen carefully to all comments at meetings
3 Complete all assigned task before deadlines
4 Focus on results rathe than excuses after
Trang 13KẾ HOẠCH TRI ỂN KHAI
Project planning
Product name Calculator with keypad & LCD
Main feature Calculate
Estimated time 3 months
Start: 15 Oc, 2020 Estimated cost PIC microcontroller: 100.000 VNĐ
LCD: 30.000 VNĐ Keypad: 20.000 VNĐ Others: 200.000 VNĐ Tools: 100.000 VNĐ
Team member 1 Leader
2 Hardware design
3 Software design
4 Integrate and test
Schedule Month 1 Month 2 Month 3
1 Design system architecture
2 Design hardware part
2.1 Design central control
board
2.2 Design interface
2.3 Implement hardware board
3 Develop software part
3.1 Develop control algorithm
3.2 Develop driver, user
interface
3.3 Implement software
program
4 Integrate and test
4.1 Simulate operations
4.2 Verify system