Tải bản đầy đủ (.docx) (32 trang)

Đồng Hồ Thời Gian Thực Sử Dụng Module RTC DS1307

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.1 MB, 32 trang )

TRƯỜNG ĐẠI HỌC DUY TÂN
KHOA ĐIỆN - ĐIỆN TỬ
------

ĐỒ ÁN CDIO
CR397

ĐỀ TÀI
Đồng Hồ Thời Gian Thực Sử Dụng
Module RTC DS1307

Giảng viên hướng dẫn: Huỳnh Bá Cường
Sinh viên thực hiện: Võ Hữu An
Trần Văn Ty

Năm học 2022-2023

1


Mục lục
LỜI NÓI ĐẦU.......................................................3
1.1 Lý do chọn đề tài........................................3
1.2 Mục tiêu nghiên cứu....................................3
1.3 Đối tượng nghiên cứu..................................4
1.4 Phương pháp nghiên cứu.............................4
2.1

Module DS1307.........................................5

2.1.1 Giới thiệu chung..........................................................5


2.1.2 Cấu tạo và đặc điểm....................................................6

2.2 MCU STM32F103C6Tx..................................7
2.2.1 Giới thiệu tổng quan....................................................7
2.2.2 Giới thiệu về kit STM32C6Tx........................................8

2.3 Màn hình LCD 16x2.....................................9
2.3.1 Thơng số kĩ tht.......................................................9
2.3.2 Chức năng của từng chân LCD 1602:...........................11

2.4 Chuẩn giao tiếp I2C...................................11
2.4.1 Giới thiệu giao tiếp I2C..............................................11
2.4.2 Một master với nhiều slave........................................15
2.4.3 Nhiều master với nhiều slave.....................................15

CHƯƠNG 3: THIẾT KẾ MẠCH...............................17
3.1

Giới thiệu về phần mềm..........................17

3.1.1 Giới thiệu về Proteus.................................................17
3.1.2 Giới thiệu phần mềm STM32CubeMX.........................19
3.1.3 Phần mềm lập trình KelC..........................................23

3.2

Sơ đồ khối chức năng..............................26

3.3


Sơ đồ nguyên lý......................................26

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN......................29
TÀI LIỆU THAM KHẢO.........................................30

2


LỜI NÓI ĐẦU

1.1 Lý do chọn đề tài
Đồng hồ thời gian thực là một phần quan trọng trong hệ
thống nhúng (embedded systems): Đồng hồ thời gian thực
được sử dụng trong các hệ thống nhúng để đồng bộ hoạt
động, ghi lại thời gian và cung cấp thơng tin thời gian chính
xác. Nghiên cứu về đồng hồ thời gian thực giúp hiểu rõ hơn về
cách thiết kế, triển khai và quản lý hệ thống nhúng.
Ứng dụng trong mạng máy tính và giao tiếp mạng: Đồng
hồ thời gian thực là một thành phần quan trọng trong việc
đồng bộ hóa mạng và giao tiếp mạng. Nghiên cứu về đồng hồ
thời gian thực giúp cải thiện độ chính xác và đồng bộ hóa
trong các ứng dụng mạng, chẳng hạn như giao tiếp VoIP, chia
sẻ tệp và cơ sở dữ liệu phân tán.
Ứng dụng trong hệ thống điều khiển thời gian thực: Đồng
hồ thời gian thực là một thành phần quan trọng trong hệ
thống điều khiển thời gian thực, như hệ thống tự động hóa
cơng nghiệp, hệ thống lái tự động trong xe hơi và robot. Việc
nghiên cứu đồng hồ thời gian thực giúp cải thiện hiệu suất,
đáng tin cậy và tính chính xác của các hệ thống này.
Công nghệ Internet of Things (IoT): Trong môi trường IoT,

nhiều thiết bị phải hoạt động đồng bộ và cung cấp thơng tin
thời gian chính xác. Đồng hồ thời gian thực là một yếu tố
quan trọng trong việc xác định và đồng bộ thời gian trong các
mạng IoT phức tạp. Nghiên cứu về đồng hồ thời gian thực
trong ngữ cảnh IoT có thể giúp tối ưu hóa hiệu suất và đáng
tin cậy của mạng lưới IoT.

3


Quản lý và đồng bộ hóa dữ liệu: Đồng hồ thời gian thực
được sử dụng để đồng bộ hóa các hoạt động
1.2 Mục tiêu nghiên cứu.
-

Tìm hiểu nguyên lý hoạt động , cách ứng dụng DS1307.

-



duy

thuật

toán



tạo


code

C

nạp

vào

chip

STM32f103C6Tx để hiện thị thời gian thực lên màn hình LCD
16x2.
-

Củng cố kiến thức cơ bản về các linh kiện điện tử, rèn luyện
kĩ năng vẽ mạch, in mạch cũng như làm mạch thực tế thông
qua phần mềm thiết kế Protues.

1.3
-

Đối tượng nghiên cứu.
DS1307

-

MCU STM32F103C6Tx

-


LCD 16x2

-

Phần mềm STM32CubeMx.

-

Phần mềm Keil C.

-

Phần mềm mô phỏng Proteus.

1.4 Phương pháp nghiên cứu
-

Sử dụng phương pháp nghiên cứu lý thuyết.

-

Vẽ và chạy mạch trên phần mền mô phỏng,

4


-

CHƯƠNG 2: LINH KIỆN ĐIỆN TỬ


2.1 Module DS1307
2.1.1 Giới thiệu chung.
Mạch thời gian thực RTC DS1307 được sử dụng để cung cấp thông
tin thời gian: ngày, tháng, năm, giờ, phút, giây,...cho Vi điều khiển
qua giao tiếp I2C, mạch tích hợp sẵn pin backup để duy trì thời
gian trong trường hợp khơng cấp nguồn, ngồi ra mạch cịn được
tích hợp thêm IC EEPROM AT24C32 để lưu trữ thơng tin khi cần,
thích hợp cho các ứng dụng điều khiển hoặc đồng bộ dữ liệu thời
gian thực RTC.

5


Hình 2.1: DS1307

2.1.2 Cấu tạo và đặc điểm.
6


2.1.2a

Cấu tạo

DS1307 là chip thời gian thực hay RTC (Read time clock). Đây là
một IC tích hợp cho thời gian bởi vì tính chính xác về thời gian
tuyệt đối cho thời gian : Thứ, ngày,tháng, năm, giờ, phút, giây.
DS1307 là chế tạo bởi Dallas. Chip này có 7 thanh ghi 8 bit mỗi
thanh ghi này chứa : Thứ , ngày, tháng, năm, giờ , phút, giây.
Ngồi ra DS1307 cịn chứa 1 thanh ghi điều khiển ngõ ra phụ và

56 thanh ghi trống các thanh ghi này có thể dùng như là RAM.
DS1307 được đọc thông qua chuẩn truyền thông I2C nên do đó để
đọc được và ghi từ DS1307 thơng qua chuẩn truyền thơng này. Do
nó được giao tiếp chuẩn I2C nên cấu tạo bên ngồi nó rất đơn
giản. Ví dụ 1 dạng đóng vỏ của DS1307 như sau :
+ trên là hai dạng cấu tạo của ds1307. chip này có 8 chân và
chúng ta hay dùng là dạng dip và các chân nó được mơ tả như
sau :
+ x1 và x2 là đầu vào dao động cho ds1307. cần dao động thạch
anh 32.768khz.[separator].
+ vbat là nguồn nuôi cho chip. nguồn này từ ( 2v- 3.5v) ta lấy pin
có nguồn 3v. đây là nguồn cho chip hoạt động liên tục khi khơng
có nguồn vcc mà ds1307 vẫn hoạt động theo thời gian.
+ vcc là nguồn cho giao tiếp i2c. điện áp cung cấp là 5v chuẩn và
được dùng chung với vi xử lý. nếu mà vcc khơng có mà vbat có thì
ds1307 vẫn hoạt động bình thường nhưng mà khơng ghi và đọc
được dữ liệu..
+ gnd là nguồn mass chung cho cả vcc và vbat.
+ sqw/out là một ngõ ra phụ tạo xung dao động (xung vuông).
+ scl và sda là hai bus dữ liệu của ds1307. thông tin truyền và ghi
đều được truyền qua 2 đường truyền này theo chuẩn i2c.
2.1.2b Thông số kĩ thuật
 Điện áp làm việc: 3.3V đến 5V
 Bao gồm 1 IC thời gian thực DS1307
 Các thành phần cần thiết như thạch anh 32768kHz, điện
trở pull-up và tụ lọc nguồn đều được tích hợp trên board
 LED báo nguồn
 Có sẵn pin dự phịng duy trì thời gian khi mất điện
 5-pin bao gồm giao thức I2C sẵn sàng giao tiếp: INT
(QWO), SCL, SDA, VCC và GND


7


 Dễ dàng thêm một đồng hồ thời gian thực để dự án của
bạn
 Nhỏ gọn và dễ dàng để lắp thêm vào bo mạch hoặc test
board

.

2.2 MCU STM32F103C6Tx
2.2.1 Giới thiệu tổng quan
-

Stm32f103c8t6 là vi điều khiển 32bit, thuộc họ f1 của dòng chip stm32 hãng st.

-

Lõi arm cotex m3.

-

Tốc độ tối đa 72mhz.

-

Bộ nhớ :
 64 kbytes bộ nhớ flash
 20 kbytes sram


-

Clock, reset và quản lý nguồn
 điện áp hoạt động từ 2.0 → 3.6v.
 sử dụng thạch anh ngoài từ 4mhz → 20mhz.
 thạch anh nội dùng dao động rc ở mode 8mhz hoặc 40khz.

-

Chế độ điện áp thấp:
 có các mode: ngủ, ngừng hoạt động hoặc hoạt động ở chế độ chờ.
 cấp nguồn ở chân vbat bằng pin ngoài để dùng bộ rtc và sử dụng dữ liệu
được lưu trữ khi mất nguồn cấp chính.

-

2 bộ adc 12 bit với 9 kênh cho mỗi bộ
 khoảng giá trị chuyển đổi từ 0 – 3.6 v
 có chế độ lấy mẫu 1 kênh hoặc nhiều kênh.

-

Dma:
 7 kênh dma
 có hỗ trợ dma cho adc, uart, i2c, spi.

-

7 bộ timer:

 timer 16 bit hỗ trợ các mode input capture/ output compare/ pwm.

8


 1 timer 16 bit hỗ trợ để điều khiển động cơ với các mode bảo vệ ngắt
input, dead-time.
 watchdog timer để bảo vệ và kiểm tra lỗi.
 1 systick timer 24 bit đếm xuống cho hàm delay,….
-

Có hỗ trợ 9 kênh giao tiếp:
 bộ i2c.
 bộ usart
 2 spi
 1 can
 usb 2.0 full-speed interface

-

Kiểm tra lỗi crc và 96-bit id

2.2.2 Giới thiệu về kit STM32C6Tx

9


Hình 2.2: Kit STM32F103C6Tx
Các thơng số kĩ thuật:
 Điện áp cấp 5VDC qua cổng Micro USB sẽ được chuyển đổi thành 3.3VDC

qua IC nguồn và cấp cho Vi điều khiển chính.
 Tích hợp sẵn thạch anh 8Mhz.
 Tích hợp sẵn thạnh anh 32Khz cho các ứng dụng RTC.


Ra chân đầy đủ tất cả các GPIO và giao tiếp: CAN, I2C, SPI, UART,
USB,...



Tích hợp Led trạng thái nguồn, Led PC13, Nút Reset.



Kích thước: 53.34 x 15.24mm.

2.3 Màn hình LCD 16x2
2.3.1 Thơng số kĩ thuât

10


Hình 2.5: màn hình LCD 16x2
Hiện giờ, thiết bị hiển thị LCD 1602 (Liquid Crystal Display) được dùng
trong rất nhiều các ứng dụng của VĐK. LCD 1602 có rất nhiều ưu điểm so với các
dạng hiển thị khác như: khả năng hiển thị kí tự đa dạng (kí tự đồ họa, chữ, số, ); đưa
vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau dễ dàng , tiêu tốn rất ít
tài ngun hệ thống, giá thành rẻ,…
Thơng số kĩ thuật của mà hình LCD 1602:
- Điện áp MAX : 7V

- Điện áp MIN : - 0,3V
- Điện áp ra mức thấp : <0.4V
- Điện áp ra mức cao : > 2.4
- Hoạt động ổn định : 2.7-5.5V
11


- Dòng điện cấp nguồn : 350uA – 600uA
- Nhiệt độ hoạt động : - 30 - 75 độ C
2.3.2 Chức năng của từng chân LCD 1602:
- Chân số 1 - VSS : chân nối đất cho LCD được nối với GND của mạch điều
khiển.
- Chân số 2 - VDD : chân cấp nguồn cho LCD, được nối với VCC=5V của mạch
điều khiển.
- Chân số 3 - VE : điều chỉnh độ tương phản của LCD.
- Chân số 4 - RS : chân chọn thanh ghi, được nối với logic "0" hoặc logic "1":
+ Logic “0”: Bus DB0 - DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ
“ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read)
+ Logic “1”: Bus DB0 - DB7 sẽ nối với thanh ghi dữ liệu DR bên trong LCD
- Chân số 5 - R/W : chân chọn chế độ đọc/ghi (Read/Write), được nối với logic
“0” để ghi hoặc nối với logic “1” đọc.
- Chân số 6 - E : chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus
DB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân này như
sau:
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào thanh ghi bên trong khi
phát hiện một xung (high-to-low transition) của tín hiệu chân E.
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên
(low-to-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống
mức thấp.
- Chân số 7 đến 14 - D0 đến D7: 8 đường của bus dữ liệu dùng để trao đổi thơng

tin với MPU. Có 2 chế độ sử dụng 8 đường bus này là: Chế độ 8 bit (dữ liệu được
truyền trên cả 8 đường, với bit MSB là bit DB7) và Chế độ 4 bit (dữ liệu được
truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7).
- Chân số 15 - A : nguồn dương cho đèn nền.
- Chân số 16 - K : nguồn âm cho đèn nền.

2.4 Chuẩn giao tiếp I2C
2.4.1 Giới thiệu giao tiếp I2C
I2C kết hợp các tính năng tốt nhất của SPI và UART. Với I2C, bạn có thể kết
nối nhiều slave với một master duy nhất (như SPI) và bạn có thể có nhiều master
điều khiển một hoặc nhiều slave. Điều này thực sự hữu ích khi bạn muốn có nhiều
hơn một vi điều khiển ghi dữ liệu vào một thẻ nhớ duy nhất hoặc hiển thị văn bản
trên một màn hình LCD.

12


Giống như giao tiếp UART, I2C chỉ sử dụng hai dây để truyền dữ liệu giữa
các thiết bị:

SDA (Serial Data) - đường truyền cho master và slave để gửi và nhận dữ liệu.

SCL (Serial Clock) - đường mang tín hiệu xung nhịp.

I2C là một giao thức truyền thông nối tiếp, vì vậy dữ liệu được truyền từng bit dọc
theo một đường duy nhất (đường SDA).

Giống như SPI, I2C là đồng bộ, do đó đầu ra của các bit được đồng bộ hóa với việc
lấy mẫu các bit bởi một tín hiệu xung nhịp được chia sẻ giữa master và slave. Tín
hiệu xung nhịp ln được điều khiển bởi master.


Cách hoạt động của I2C
Với I2C, dữ liệu được truyền trong các tin nhắn. Tin nhắn được chia thành các
khung dữ liệu. Mỗi tin nhắn có một khung địa chỉ chứa địa chỉ nhị phân của địa chỉ
slave và một hoặc nhiều khung dữ liệu chứa dữ liệu đang được truyền. Thông điệp
cũng bao gồm điều kiện khởi động và điều kiện dừng, các bit đọc / ghi và các bit
ACK / NACK giữa mỗi khung dữ liệu:

13


Điều kiện khởi động: Đường SDA chuyển từ mức điện áp cao xuống mức điện áp
thấp trước khi đường SCL chuyển từ mức cao xuống mức thấp.

Điều kiện dừng: Đường SDA chuyển từ mức điện áp thấp sang mức điện áp cao sau
khi đường SCL chuyển từ mức thấp lên mức cao.

Khung địa chỉ: Một chuỗi 7 hoặc 10 bit duy nhất cho mỗi slave để xác định slave
khi master muốn giao tiếp với nó.

Bit Đọc / Ghi: Một bit duy nhất chỉ định master đang gửi dữ liệu đến slave (mức
điện áp thấp) hay yêu cầu dữ liệu từ nó (mức điện áp cao).

Bit ACK / NACK: Mỗi khung trong một tin nhắn được theo sau bởi một bit xác
nhận / không xác nhận. Nếu một khung địa chỉ hoặc khung dữ liệu được nhận thành
công, một bit ACK sẽ được trả lại cho thiết bị gửi từ thiết bị nhận.

Địa chỉ
I2C khơng có các đường Slave Select như SPI, vì vậy cần một cách khác để cho
slave biết rằng dữ liệu đang được gửi đến slave này chứ khơng phải slave khác. Nó

thực hiện điều này bằng cách định địa chỉ. Khung địa chỉ luôn là khung đầu tiên sau
bit khởi động trong một tin nhắn mới.

Master gửi địa chỉ của slave mà nó muốn giao tiếp với mọi slave được kết nối với
nó. Sau đó, mỗi slave sẽ so sánh địa chỉ được gửi từ master với địa chỉ của chính nó.
Nếu địa chỉ phù hợp, nó sẽ gửi lại một bit ACK điện áp thấp cho master. Nếu địa
chỉ khơng khớp, slave khơng làm gì cả và đường SDA vẫn ở mức cao.

Bit đọc / ghi
Khung địa chỉ bao gồm một bit duy nhất ở cuối tin nhắn cho slave biết master muốn
ghi dữ liệu vào nó hay nhận dữ liệu từ nó. Nếu master muốn gửi dữ liệu đến slave,
bit đọc / ghi ở mức điện áp thấp. Nếu master đang yêu cầu dữ liệu từ slave, thì bit ở
mức điện áp cao.

14


Khung dữ liệu
Sau khi master phát hiện bit ACK từ slave, khung dữ liệu đầu tiên đã sẵn sàng được
gửi.

Khung dữ liệu ln có độ dài 8 bit và được gửi với bit quan trọng nhất trước. Mỗi
khung dữ liệu ngay sau đó là một bit ACK / NACK để xác minh rằng khung đã
được nhận thành công. Bit ACK phải được nhận bởi master hoặc slave (tùy thuộc
vào cái nào đang gửi dữ liệu) trước khi khung dữ liệu tiếp theo có thể được gửi.

Sau khi tất cả các khung dữ liệu đã được gửi, master có thể gửi một điều kiện dừng
cho slave để tạm dừng quá trình truyền. Điều kiện dừng là sự chuyển đổi điện áp từ
thấp lên cao trên đường SDA sau khi chuyển tiếp từ thấp lên cao trên đường SCL ,
với đường SCL vẫn ở mức cao.


Các bước truyền dữ liệu I2C
-

Master gửi điều kiện khởi động đến mọi slave được kết nối bằng cách
chuyển đường SDA từ mức điện áp cao sang mức điện áp thấp trước khi
chuyển đường SCL từ mức cao xuống mức thấp.

-

Master gửi cho mỗi slave địa chỉ 7 hoặc 10 bit của slave mà nó muốn giao
tiếp, cùng với bit đọc / ghi.

-

Mỗi slave sẽ so sánh địa chỉ được gửi từ master với địa chỉ của chính nó.
Nếu địa chỉ trùng khớp, slave sẽ trả về một bit ACK bằng cách kéo dòng
SDA xuống thấp cho một bit. Nếu địa chỉ từ master không khớp với địa chỉ
của slave, slave rời khỏi đường SDA cao.
Master gửi hoặc nhận khung dữ liệu.

-

-

Sau khi mỗi khung dữ liệu được chuyển, thiết bị nhận trả về một bit ACK
khác cho thiết bị gửi để xác nhận đã nhận thành công khung.

-


Để dừng truyền dữ liệu, master gửi điều kiện dừng đến slave bằng cách
chuyển đổi mức cao SCL trước khi chuyển mức cao SDA.

15


2.4.2 Một master với nhiều slave
Vì I2C sử dụng định địa chỉ nên nhiều slave có thể được điều khiển từ một
master duy nhất. Với địa chỉ 7 bit sẽ có 128 (2 mũ 7) địa chỉ duy nhất. Việc sử dụng
địa chỉ 10 bit khơng phổ biến, nhưng nó cung cấp 1.024 (2 mũ 10) địa chỉ duy nhất.
Để kết nối nhiều slave đến một master duy nhất, bạn có thể đấu dây như thế này,
với điện trở kéo lên 4,7K Ohm kết nối đường SDA và SCL với Vcc:

2.4.3 Nhiều master với nhiều slave
Nhiều master có thể được kết nối với một slave hoặc nhiều slave. Sự cố với
nhiều master trong cùng một hệ thống xảy ra khi hai master cố gắng gửi hoặc nhận
dữ liệu cùng một lúc qua đường SDA. Để giải quyết vấn đề này, mỗi master cần
phải phát hiện xem đường SDA thấp hay cao trước khi truyền tin nhắn. Nếu đường
SDA thấp, điều này có nghĩa là một master khác có quyền điều khiển bus và master
đó phải đợi để gửi tin nhắn. Nếu đường SDA cao thì có thể truyền tin nhắn an toàn.
Để kết nối nhiều master với nhiều slave, hãy sử dụng sơ đồ sau, với các điện trở kéo
lên 4,7K Ohm kết nối các đường SDA và SCL với Vcc:
16


Ưu điểm và nhược điểm của I2C
Có rất nhiều điều ở I2C có thể khiến nó nghe có vẻ phức tạp so với các giao
thức khác, nhưng có một số lý do chính đáng khiến bạn có thể muốn hoặc không
muốn sử dụng I2C để kết nối với một thiết bị cụ thể:


1.Ưu điểm
-

Chỉ sử dụng hai dây

-

Hỗ trợ nhiều master và nhiều slave

-

Bit ACK / NACK xác nhận mỗi khung được chuyển thành công
17


-

Phần cứng ít phức tạp hơn so với UART

-

Giao thức nổi tiếng và được sử dụng rộng rãi

2.Nhược điểm
-

Tốc độ truyền dữ liệu chậm hơn SPI
Kích thước của khung dữ liệu bị giới hạn ở 8 bit
Cần phần cứng phức tạp hơn để triển khai so với SPI


CHƯƠNG 3: THIẾT KẾ MẠCH
3.1

Giới thiệu về phần mềm

3.1.1 Giới thiệu về Proteus

Hình 3.1 Giao diện của Protues 8.11.

Proteus là phần mềm cho phép mô phỏng hoạt động của mạch điện tử bao gồm
phần thiết kế mạch và viết chương trình điều khiển cho các họ vi điều khiển như
MCS-51, PIC, AVR, …

18


Proteus là phần mềm mô phỏng mạch điện tử của Lancenter Electronics, mô
phỏng cho hầu hết các linh kiện điện tử thông dụng, đặc biệt hỗ trợ cho cả các MCU
như PIC, 8051, AVR, Motorola.
Phần mềm bao gồm 2 chương trình: ISIS cho phép mơ phỏng mạch và ARES
dùng để vẽ mạch in. Proteus là công cụ mô phỏng cho các loại Vi Điều Khiển khá
tốt, nó hỗ trợ các dòng VĐK PIC, 8051, PIC, dsPIC, AVR, HC11, MSP430,
ARM7/LPC2000 ... các giao tiếp I2C, SPI, CAN, USB, Ethenet,... ngoài ra cịn mơ
phỏng các mạch số, mạch tương tự một cách hiệu quả. Proteus là bộ công cụ chuyên
về mô phỏng mạch điện tử.
ISIS đã được nghiên cứu và phát triển trong hơn 12 năm và có hơn 12000
người dùng trên khắp thế giới. Sức mạnh của nó là có thể mô phỏng hoạt động của
các hệ vi điều khiển mà khơng cần thêm phần mềm phụ trợ nào. Sau đó, phần mềm
ISIS có thể xuất file sang ARES hoặc các phần mềm vẽ mạch in khác.
Trong lĩnh vực giáo dục, ISIS có ưu điểm là hình ảnh mạch điện đẹp, cho phép

ta tùy chọn đường nét, màu sắc mạch điện, cũng như thiết kế theo các mạch mẫu
(templates)
Những khả năng khác của ISIS là:
• Tự động sắp xếp đường mạch và vẽ điểm giao đường mạch.
• Chọn đối tượng và thiết lập thơng số cho đối tượng dễ dàng
• Xuất file thống kê linh kiện cho mạch
• Xuất ra file Netlist tương thích với các chương trình làm mạch in thơng dụng.
• Đối với người thiết kế mạch chun nghiệp, ISIS tích hợp nhiều cơng cụ giúp cho
việc quản lý mạch điện lớn, mạch điện có thể lên đến hàng ngàn linh kiện.
• Thiết kế theo cấu trúc (hierachical design)
• Khả năng tự động đánh số linh kiện


19


3.1.2 Giới thiệu phần mềm STM32CubeMX
3.1.2a Phần mềm Arduino IDE là gì ?
Phần mềm STM32CubeMX giúp người lập trình có thể cấu hình các chức
năng cho các dịng vi điều khiển STM32 thông qua giao diện đồ họa và tạo ra code
từ các cấu hình đó . Nó giúp tự động giải quyết các xung đột về Pin out và giúp cho
việc lập trình trên STM32 trở nên dễ dàng hơn và tiết kiệm được rất nhiều thời gian
nghiên cứu và phát triển .
3.1.2b Giao diện khi khởi động STM32CubeMX
2. Tạo 1 project mới
Sau khi nhấn vào File -> New Project thì giao diện chọn vi điều
khiển STM32 sẽ hiện ra:
 Chọn vi điều khiển: tại mục Part Number Search các bạn
nhập vào tên vi điều khiển mà mình muốn cấu hình (ví dụ vi
điều khiển STM32F103C8 được sử dụng trong khóa học lập

trình STM32 của TAPIT)
 Bắt đầu Project: nhấn vào Start Project
Bên cạnh đó, các bạn cũng có thể lọc vi điều khiển theo các
thông số như giá tiền (cost), số chân nhập xuất (IO), bộ nhớ
chương trình (Flash, Eeprom), bộ nhớ dữ liệu (Ram), tốc độ tối đa
CPU (Freq.) tại mục MCU Filters. Sau khi chọn xong vi điều khiển,
các bạn có thể đọc thêm mơ tả các tính năng (Features), sơ đồ
khối (Block Diagram), các tài liệu của hãng (Dos &Resources) hoặc
tải về Datasheet để đọc.

20



×