1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ hiển thị thời gian, cài đặt giờ và cài đặt báo thức luận văn, đồ án, đề tài tốt nghiệp

39 2,8K 16
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ hiển thị thời gian, cài đặt giờ và cài đặt báo thức
Trường học University of Technology and Education
Chuyên ngành Embedded Systems / Microcontroller
Thể loại Luận văn, đồ án, đề tài tốt nghiệp
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 39
Dung lượng 7,08 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ hiển thị thời gian, cài đặt giờ và cài đặt báo thức luận văn, đồ án, đề tài tốt nghiệp

Trang 1

LOI MO DAU

Đất nước ngày một phát triển Mục tiêu công nghiệp hóa, hiện đại hóa đất

nước phải đựa vào khoa học kỹ thuật Vấn đề con người là vấn đề tiên quyết trong

việc có đạt được mục tiêu công nghiệp hóa hiện đại hóa đất nước hay không

Để có đội ngũ nhân lực có trình độ, nắm vững kiến thức khoa học kỹ thuật thì

ngoài việc nâng cao chất lượng đào tạo lý thuyết còn cần những nội dung thực hành thực tế để người học củng cô kiến thức lý thuyết đã được trang bị trên giảng đường, đồng thời có kỹ năng xử lý những vấn đề mà thực tiễn đặt ra

Để nhằm mục đích đó, trong chương trình đào tạo bậc đại học ngành Tự động hóa tại Học viện KTQS có rất nhiều đồ án được giao cho sinh viên sau khi đã trải

qua những môn học trang bị kiến thức trên lớp nhằm giúp sinh viên tông hợp lại những kiến thức mà mình đã được trang bị Đồ án xử lý tin là một trong số đó Với báo cáo được giao: “ Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh với các chế độ: Hiễn thị thời gian, cài đặt giờ và cài

đặt báo thức” sau một thời gian tìm hiêu và thực hiện đê tài dưới sự hướng dân của Thây Trịnh Mạnh Tuyên và Thây Nguyên Văn Xuân, nhóm chúng em đã hoàn thành đô án Do trình độ còn hạn chê nên chắc chăn đô án không tránh khỏi những sai sót Nhóm chúng em xin được các thây sửa chữa, chỉ bảo đê hoàn thiện tôt hơn

Hà nội, ngày 10 tháng 05 nam 2011

Sinh viên nhóm II lớp ĐKTĐ K13

HVKTQS

Trang 2

Báo cáo thực tập DKTD K13 HVKTQS

GIOI THIEU PHAN CUNG CUA BORD MACH VI DIEU KHIEN

1.1 Khéi vi xử lý trung tâm

a CPU 89C51

Bộ vi điều khiển 8051 được hãng Intel cho ra mắt vào năm 1981,với 128 byte

RAM, 4Kbyte ROM, 4 cổng vào / ra 8bit, hai bộ định thời, một cổng nối tiếp, tất cả

được tích hợp trên một chip Bộ vi điều khiển 8051 là bộ xử lý 8 bit, tức là CPU chỉ

làm việc được với 8 bit dữ liệu Dữ liệu lớn hơn 8 bit sẽ được chia thành các dữ liệu

8 bit để xử lý 8051 trở nên phổ biến sau khi Intel cho phép các nhà sản xuất khác

sản xuất và bán bắt kì dạng biến thể nào của 8051 mà họ muốn với điều kiện họ phải

để mã chương trình tương thích với 8051 Từ đó dẫn đến sự ra đời nhiều phiên bản

của 8051 với các tốc độ khác nhau và dung lượng ROM trên chip khác nhau Tuy nhiên điều quan trọng là mặc đù có nhiều biến thể của 8051 nhưng tắt cả các lệnh

đều tương thích với 8051 ban đầu Điều này có nghĩa là nếu chương trình được viết cho một phiên bản 8051 nào đó thì cũng sẽ chạy được với mọi phiên bản khác mà không phụ thuộc vào hãng sản xuất Chíp AT§9C5I là phiên bản 8051 của hãng Atmel Corproration

b Sơ đồ cấu trúc phần cứng chip AT89C51

* CPU: Bộ xử lý trung tâm bao gồm các thành phần sau:

-Thanh ghi tích lũy A

-Thanh ghi tích lũy phụ B

-Khối logic số học ALU(Arithmetic Logical Unit)

-Thanh ghi từ trạng thái chương trình PSW(Program Status Word) -Thanh ghi bộ đếm chương trình PC

Trang 3

-Thanh ghi con tro ngan xép SP

-B6n băng thanh ghi

-Bộ giải mã lệnh

-Bộ điều khiển thời gian và lôgIc

Ngắt ngoài

ETC

ngắt chương trình Timer 2 aém

* Khối điều khiển ngắt

* Khối điều khiển và quản lý Bus

Trang 4

Là các chân từ 32 đến 39 trên 8051, được kí hiệu là P0.0, P0.1 cho đến

P0.7 Có 2 công dụng Trong các thiết kế có tối thiểu thành phần port 0 được sử

dụng làm nhiệm vụ xuất / nhập Trong các thiết kế lớn hơn có bộ nhớ ngoài thì nó

trở thành bus địa chỉ và bus đữ liệu đa hợp Đây là một port xuất nhập song hướng

cuc mang ho 8 bit Néu duoc str dung như là một ngõ xuất thì mỗi chân có thể kéo 8

ngõ vào TTL Khi mức I được viết vào chân của port 0, các chân này có thể dùng

như là các ngõ nhập tổng trở cao Port 0 cũng nhận các byte code (byte mã chương trinh) khi lập trình Flash, và xuất ra các byte code khi kiểm tra chương trình Cần phải có các điện trở pullup bên ngoài khi thực hiện việc kiểm tra chương trình + Port 1:

Port 1 chỉ có một công dụng là xuắt/nhập, các chân số 1 đến 8 trên 8051 Cac

chân của port 1 được kí hiệu là PI.0, P1.1, , P1.7 va duge ding dé giao tiếp VỚI thiết bị bên ngoài khi có yêu cầu Chỉ được sử dụng để giao tiếp với các thiết bị

4

Trang 5

ngoại vi mà không có chức năng nào khác nữa Nó là một port xuất/nhập song

hướng 8 bịt có các điện trở pullup bên trong Các bộ đếm ngõ ra của port I có thé kéo hoặc cung cấp 4 ngõ nhập TT Khi mức l được viết vào các chân của portl, chúng được kéo lên cao bởi các điện trở pullup nội và có thê được dùng như là các

ngõ nhập Nếu đóng vai trò là ngõ nhập các chân của port 1 sẽ cấp dòng Iu do các điện trở pullup bên trong

+ Port 2:

Là các chân từ số 21 dén 28 trên 8051, kí hiệu các chan 1a P2.0, P2.1, P2.7

Có 2 công dụng, hoặc làm nhiệm vụ xuất/ nhập hoặc là byte địa chỉ cao của bus địa chỉ 16 bit cho các thiết kế có bộ nhớ chương trình ngoài hoặc các thiết kế có nhiều

hơn 256 byte bộ nhớ dữ liệu ngoài Port 2 cũng có điện trở pullup ở bên trong Các

bộ đệm ngõ ra của port 2 có thể kéo hoặc cung cấp 4 ngõ vào TTL Khi các mức I

được viết vào các chân của port 2 thì chúng được dùng như các ngõ vào Khi được

dùng như các ngõ vào các chân của port 2 cũng cung cấp dòng I„ do các điện trở trong

+ Port 3:

Các chân số 10 đến số 17 trên 8051, kí hiệu là P3.0, P3.1 P3.7 có 2 công

dụng Dùng làm nhiệm vụ xuất / nhập và khi không làm nhiệm vụ này thì mỗi chân

của port 3 có các chức năng riêng như sau:

P3.0(RxD)- Chân nhận dữ liệu của port nói tiếp

P3.1(TxD)- Chân phát dữ liệu của port nối tiếp

P3.2 (INTO ) - Ngõ vào ngắt ngoài 0

P3.3(INTL )- Ngõ vào ngắt ngoài I

P3.4(T0)- Ngõ vào của bộ định thời/đếm 0

P3.5(T1)- Ngõ vào của bộ định thời/đếm 1

P3.6( WR )- Điều khiển ghi bộ nhớ dữ liệu ngoài

5

Trang 6

ROM để cho phép đọc các byte lệnh Các mã nhị phân của chương trinh hay opcode

(mã thao tác) được đọc từ EP-ROM, qua bus dữ liệu và được chốt vào thanh ghi

lệnh IR của 8051 để được giải mã Tín hiệu PSEN_ ở logic 0 trong xuốt thời gian

tìm -nạp lệnh Khi thực thi một chương trình chứa ở ROM nội thi PSEN ở mức

logic 1

+ Chan ALE:

Day 1a chan cho phép chét dia chi Trén 8051 day la chan số 30, nó là một chân để giải đa hợp bus dữ liệu và bus địa chỉ Chân ALE_ xuất tín hiệu đẻ chót địa

chỉ vào một thanh ghi ngoài trong suốt 1/ 2 chu kì của bộ nhớ Sau khi điều này đã

được thực hiện, các chân của port 0 sẽ xuất/nhập dữ liệu Được dùng làm xung clock

cho hệ thống Chân ‘ALE có tần số bằng 1/6 tần số của mạch dao động bên trong chip điều khiển và có thể được dùng làm xung clock cho phần còn lại của hệ thống

Nếu mạch giao động có tần số 12MHz, tín hiệu “ALE có tần số 2MHz Ngoại lệ duy nhất là trong thời gian thực thi lệnh MOVX, thì một xung ALE sẽ bị bỏ qua Chân “ALE còn được dùng đề nhận xung ngõ vào lập trình cho EPROM trên chip điều khiển họ 8051 này

+ Chân EA:

Chân số 31, là chân truy xuất ngoài được nối vào 5V hoặc đất GND (logic 0) Khi nối vào 5V thì thực thi chương trình trong ROM nội Nếu chân này nói đất thì

Trang 7

chương trình cần thực thi chứa ở bộ nhớ ngoài Các phiên bản của họ 8051 sau này

còn sử dụng chân EA lam chan nhan dién ap cap điện 2IV cho việc lập trình

EPROM ni (nap EPROM)

+ Chan RESET:

Là chân số 9, ngõ vào RST là ngõ vào xóa chính của 8051 dùng để thiết lập

lại trạng thái ban đầu cho hệ thống hay gọi tắt là reset hệ thống Khi ngõ vào này được treo ở logic 1 tối thiểu hai chu kì máy, các thanh ghi bên trong 8051 sẽ được

nạp các giá trị thích hợp cho việc khởi động lại hệ thống

+5V +5V +5V

100n 10UF 10uF

RST RST Reset

»

<8.2Ka 28.2ka

Manual reset Power-on reset

Reset bing tay Reset khi cấp nguồn

Hinh 1.3: Mach RESET 8051

+ Cac chin XTALI va XTAL2:

Mạch giao động bên trong chip 8051 duoc ghép voi thach anh bên ngoài qua các chan này Đó là các chân số 18 và 19

Trang 8

Báo cáo thực tập DKTD K13 HVKTQS

Cac tu 6n dinh cũng được chọn theo yêu cầu, tần số thạch anh là 12MHz, 16MHz tu gốm có giá trị từ 27 đến 33pF, thường chọn là 33pF đề ổn định làm việc cho thạch anh

Ngoài mạch tạo dao động bằng thạch anh chúng ta cũng có thể tao một mạch

dao động dùng công logic

8051 TTL 19

XTALI Oscillator

Trang 9

CHUONG 2 GIAO TIẾP ỨC VÀ IC THỜI GIAN THỰC DS1307

2.1 Giao tiếp ÚC

Giao thức ưu tiên truyền thông nối tiếp được phát triển bởi Philips

Semiconductor và được gọi là bus I”C Vì nguồn gốc nó được thiết kế là để điều khiển liên thông IC (Inter-Intergrated Circuit) nên nó được đặt tên là I2C Tất cả các chip có tích hợp và tương thích với IC đều có thêm một giao diện tích hợp trên

Chip dé truyền thông trực tiếp với các thiết bị tương thích IˆC khác Việc truyền đữ liệu nói tiếp theo hai hướng 8 bit được thực thi theo 3 chế độ sau:

+ Chuan (Standard)—100 Kbits/sec

+ Nhanh (Fast)—400 Kbits/sec

+ Téc dé cao (High speed)—3.4 Mbits/sec

Duong bus thuc hién truyén thong nối tiếp ỨC gồm hai đường là đường truyền dữ liệu nói tiếp SDA và đường truyền nhịp xung đồng hồ nối tiếp SCL Vico ché hoat động là đồng bộ nên nó cần có một nhịp xung tín hiệu đồng bộ Các thiết bị

hỗ trợ IˆC đều có một địa chỉ định nghĩa trước, trong đó một số bit địa chỉ là thấp có thể cấu hình Đơn vị hoặc thiết bị khởi tạo quá trình truyền thông là đơn vị Chủ và

cũng là đơn vị tạo xung nhịp đồng bộ, điều khiển cho phép kết thúc quá trình truyền

Nếu đơn vị Chủ muốn truyền thông với đơn vị khác nó sẽ gửi kèm thông tin địa chỉ của đơn vị mà nó muốn truyền trong dữ liệu truyền Đơn vị Tớ đều được gán và

đánh địa chỉ thông qua đó đơn vị Chủ có thể thiết lập truyền thông và trao đổi đữ

liệu Bus đữ liệu được thiết kế để cho phép thực hiện nhiều đơn vị Chủ và Tớ ở trên cùng Bus Quá trình truyền thông ỨC được bắt đầu bằng tin hiéu start tao ra boi đơn

vị Chủ Sau đó đơn vị Chủ sẽ truyền đi dữ liệu 7 bit chứa địa chỉ của đơn vị Tớ mà

nó muốn truyền thông, theo thứ tự là các bit có trọng số lớn nhất MSB sẽ được

truyền trước Bit thứ tám tiếp theo sẽ chứa thông tin để xác định đơn vị Tớ sẽ thực

Trang 10

Báo cáo thực tập DKTD K13 HVKTQS

hiện vai trò nhận (0) hay gửi (1) dữ liệu Tiếp theo sẽ là một bit ACK xác nhận bởi đơn vị nhận đã nhận được 1 byte trước đó hay không Đơn vị truyền (gửi) sẽ truyền

đi 1 byte dữ liệu bắt đầu bởi MSB Tại điểm cuối của byte truyền, đơn vị nhận sẽ tạo

ra một bit xác nhận ACK mới Khuôn mẫu 9 bit này (gồm 8 bit dữ liệu va l bit xác

nhận) sẽ được lặp lại nếu cần truyền tiếp byte nữa Khi đơn vị Chủ đã trao đổi xong

dữ liệu cần nó sẽ quan sát bit xác nhận ACK cuối cùng rồi sau đó sẽ tạo ra một tín

hiệu dừng STOP để kết thúc quá trình truyền thông lC là một giao diện truyền thông đặc biệt thích hợp cho các ứng dụng truyền thông giữa các đơn vi trên cùng

một bo mạch với khoảng cách ngắn và tốc độ thấp Ví dụ như truyền thông giữa

CPU với các khối chức năng trên cùng một bo mạch như EEPROM, cảm biến, đồng

hồ tạo thời gian thực Hầu hết các thiết bị hỗ trợ lC hoạt động ở tốc độ 400Kbps,

một số cho phép hoạt động ở tốc độ cao vài Mbps IC khá đơn giản đề thực thi kết

nối nhiều đơn vị vì nó hỗ trợ cơ chế xác định địa chỉ

2.2 IC thời gian thực DS1307

DS1307 là chip đồng hồ thời gian thực (RTC : Real-time clock), khái niệm thời gian thực ở đây được dùng với ý nghĩa thời gian tuyệt đối mà con người đang

sử dụng, tình bằng giây, phút, giờ DS1307 là một sản phẩm của Dallas

Semiconductor (một công ty thuộc Maxim Integrated Products) Chip này có 7

thanh ghi 8-bit chứa thời gian là: giây, phút, giờ, thứ (trong tuần), ngày, thang, năm Ngoài ra DS1307 còn có 1 thanh ghi điều khiển ngõ ra phụ và 56 thanh ghi trống có

thể dùng như RAM DS1307 xuất hiện ở 2 gói SOIC và DIP có 8 chân như trong

Trang 11

Các chân của DS1307 được mô tả như sau:

» XI và X2: là 2 ngõ kết nói với 1 thạch anh 32.768KHz làm nguồn tạo dao động cho chịp

* VBAT: cực dương của một nguồn pin 3V nuôi chip

* GND: chan mass chung cho ca pin 3V và Vcc

« Vcc: nguồn cho giao điện I2C, thường là 5V và dùng chung với vi

điều khiển Chú ý là nếu Vcc không được cấp nguồn nhưng VBAT được cấp thì DS1307 vẫn đang hoạt động (nhưng không ghi và đọc được)

»° SQW/OUT: một ngõ phụ tạo xung vuông (Square Wave / Output

Driver), tần số của xung được tạo có thể được lập trình Như vậy chân này hầu như

không liên quan đến chức năng của DS1307 là đồng hồ thời gian thực

* SCL va SDA la 2 đường giao xung nhịp và dữ liệu của giao diện I2C Cấu tạo bên trong DS1307 bao gồm một số thành phần như mạch nguồn,

mạch dao động, mạch điều khiển logic, mạch giao diện I2C, con trỏ địa chỉ và các

thanh ghi (hay RAM) Sử dụng DS1307 chủ yếu là ghi và đọc các thanh ghi của chip này Vì thế có 2 vấn đề cơ bản đó là cấu trúc các thanh ghi và cách truy xuất các thanh ghi này thông qua giao diện I2C Như đã trình bày, bộ nhớ DS1307 có tat

cả 64 thanh ghi 8-bit được đánh địa chỉ từ 0 đến 63 (từ 00H đến 3FH theo hệ

HexaDecimal) Tuy nhiên, thực chất chỉ có 8 thanh ghi đầu là dùng cho chức năng

“đồng hồ” (RTC) còn lại 56 thanh ghi bỏ trống có thể được dùng chứa biến tạm như RAM nếu muốn Bảy thanh ghi đầu tiên chứa thông tin về thời gian của đồng hồ bao gồm: giây (SECONDS), phút (MINUETS), giờ (HOURS), thứ (DAY), ngày

(DATE), thang (MONTH) va nam (YEAR) Viéc ghi giá trị vào 7 thanh ghi này tương đương với việc “cài đặt” thời gian khởi động cho RTC Việc đọc giá trị từ 7

thanh ghi là đọc thời gian thực mà chip tạo ra Ví dụ, lúc khởi động chương trình,

chúng ta ghi vào thanh ghi “giây” giá trị 42, sau đó 12s chúng ta đọc thanh ghi nay, chúng ta thu được gia tri 54 Thanh ghi tht 8 (CONTROL) 1a thanh ghi diéu khién

II

Trang 12

Báo cáo thực tập DKTD K13 HVKTQS

xung ngõ ra SQW/OUT (chân 6) Tuy nhiên, do chúng ta không dùng chân

SQW/OUT nên có thé bd qua thanh ghi thứ 8 Tổ chức bộ nhớ của DS1307 được

trình bày trong hình 2.2

sale SECONDS

MINUTES HOURS DAY DATE MONTH YEAR 07H CONTROL

56 x 8 3FH

Hình 2.3 Tổ chức các thanh ghi thời gian của DS1307

Vì 7 thanh ghi đầu tiên là quan trọng nhất trong hoạt động của DSI307, chung ta sẽ khảo sát các thanh ghi này một cách chi tiết Trước hết hãy quan sát tổ

chức theo từng bit của các thanh ghi này như trong hình 2.3

12

Trang 13

+ Thanh ghi giây (SECONDS): thanh ghi này là thanh ghi đầu tiên

trong bộ nhớ của DSI307, địa chỉ của nó là 0x00 Bốn bit thấp của thanh ghi này chứa mã BCD 4-bit của chữ số hàng đơn vi cua gia tri giây Do gia tri cao nhất của chữ số hàng chục là 5 (không có giây 60) nên chỉ cần 3 bit là có thể mã hóa được (số

5 =101, 3 bit) Bit cao nhất, bit 7, trong thanh ghi này là 1 điều khiển có tên CH (Clock halt — treo đồng hồ), nếu bit này được set bằng 1 bộ dao động trong chip bị

vô hiệu hóa, đồng hồ không hoạt động Vì vậy, nhất thiết phải reset bit này xuống 0 ngay từ đầu

+ Thanh ghi phut (MINUTES): co dia chỉ 01H, chứa giá trị phút của

đồng hồ Tương tự thanh ghi SECONDS, chỉ có 7 bit của thanh ghi này được dùng lưu mã BCD của phút, bit 7 luôn luôn bằng 0

+ Thanh ghi giờ (HOURS): có thé nói đây là thanh ghi phức tạp nhất

trong DS1307 Thanh ghi này có địa chỉ 02H Trước hết 4-bits thấp của thanh ghi

này được dùng cho chữ số hàng đơn vị của giờ Do DS1307 hỗ trợ 2 loại hệ thống

hiển thị giờ (gọi là mode) là 12h (1h đến 12h) và 24h (1h đến 24h) giờ, bit6 xác lập

hệ thống giờ Nếu bit6=0 thì hệ thống 24h được chọn, khi đó 2 bit cao 5 và 4 dùng

mã hóa chữ số hàng chục của giá trị giờ Do giá trị lớn nhất của chữ số hàng chục trong trường hợp này là 2 (=10, nhị phân) nên 2 bit 5 va 4 là đủ để mã hóa Nếu

bit6=1 thi hé thống 12h được chọn, với trường hợp này chỉ có bit 4 dùng mã hóa chữ

số hàng chục của giờ, bit 5 chỉ buổi trong ngày, AM hoặc PM Bit§ =0 là AM va bit5=1 là PM Bit 7 luôn bằng 0

+ Thanh ghi thứ (DAY - ngày trong tuần): nằm ở địa chỉ 03H Thanh ghi DAY chi mang giá trị từ 1 đến 7 tương ứng từ Chủ nhật đến thứ 7 trong I tuần

Vì thế, chỉ có 3 bit thấp trong thanh ghi này có nghĩa

Các thanh ghi còn lại có cấu trúc tương tự, DATE chứa ngày trong

tháng (1 đến 31), MONTH chứa tháng (1 đến 12) và YEAR chứa năm (00 đến 99)

13

Trang 14

Hình 2.4 Cấu trúc DS1307

2.3 Thuật toán giao tiếp IˆC giữa VĐK va DS1307

+ Điều kiện START và STOP

* START và STOP là những điều kiện bắt buộc phải có khi một thiết bị

chủ muốn thiết lập giao tiếp với một thiết bị nào đó trong mạng I2C START là điều

kiện khởi đầu, báo hiệu bắt đầu của giao tiếp, còn STOP báo hiệu kết thúc một giao tiếp Hình I1 mô tả điều kiện START và điều kiện STOP khi giao tiếp 12C giữa DS1307 voi vi điều khiển

14

Trang 15

START condition STOP condition _—=

data ine change |

— of dea | ata va — _—

Hình 2.5: Điều kiện START và STOP

* Ban đầu khi chưa thực hiện quá trình giao tiếp, cả hai đường SDA và SCL déu 6 mire cao (SDA = SCL = HIGH) Luc nay bus lˆC được coi là “rỗi” (“bus free”), sẵn sàng cho một giao tiếp Hai điều kiện START và STOP là không thê

thiếu trong viéc giao tiếp giữa các thiết bị I2C, tat nhiên là trong giao tiép này cũng không ngoại lệ

* Điều kiện START: một sự chuyển đổi trạng thái từ cao xuống thấp trên đường SDA trong khi đường SCL đang ở mức cao (cao = 1; thấp = 0) báo hiệu

một điều kiện START

* Điều kiện STOP: Một sự chuyên đổi trạng thái từ mức thấp lên cao

trên đường SDA trong khi đường SCL đang ở mức cao

* Cả hai điều kiện START và STOP đều được tạo ra bởi thiết bị chủ

Sau tin hiéu START, bus I’C coi nhu dang trong trạng thái làm việc (busy) Bus ?’C

sẽ rỗi, sẵn sàng cho một giao tiếp mới sau tín hiệu STOP từ phía thiết bị chủ

* Sau khi có một điều kiện START, trong qua trình giao tiếp, khi có

một tín hiệu START được lặp lại thay vì một tín hiệu STOP thì bus PC vẫn tiếp tục

15

Trang 16

heat ACK ACK Lies

m [“—— _ MORE BYTES ARE START CONDITION

khi bắt đầu và kết thúc 1 truyền 1 chuỗi, nhận dạng địa chỉ được thực hiện bởi phần

cứng sau khi chấp nhận địa chỉ của slave và bit một chiều

* Chế độ slave phát ( chế độ DS1307 đọc ): byte đầu tiên slave nhận

được tương tự như chế độ slave ghi Tuy nhiên trong chế độ này thì bit chiều lại chỉ chiều chuyền ngược lại Chuỗi đữ liệu được phat đi trên SDA bởi DS1307 trong khi

chuỗi xung clock vao chan SCL

+ Để làm việc với DS1307, ta thuc hiện các bước như sau:

*START ỨC

* Ghi: 0DxH (Đây là địa chỉ của DS1307 đo nhà sản xuất quy định trong giao tiếp I2C) với: x=0: Ghi đữ liệu vào DS1307 x=1: Đọc dữ liệu vào DS1307

16

Trang 17

* Ghi tham số x nay vào, có nghĩa là việc tiếp theo là chúng ta ghi hay

đọc dữ liệu từ con DS1307 tùy vào giá trị x=0 (ghi dữ liệu) hay x=l (đọc dữ liệu)

* Ghi vào địa chỉ thanh ghi cần ghi hoặc cần đọc (bảng đồ thanh ghi

cua DS1307 nay đã được giớ thiệu ở hình 3 & hình 4)

* Ghi hoặc đọc dữ liệu

* STOP I2C + Một ví dụ minh họa cho việc đọc ghi

* Thanh ghi có địa chỉ 01H chứa Data về “phút”, muốn set phút vào

DS1307 chúng ta làm theo quy trình: START-›Ghi: 0D0H-—>›Ghi tiếp: 01H—›Ghi tiếp: <thông số cần cài đặt (BCD)> —>Ghi tiếp hoặc STOP nếu chỉ muốn cài đặt thời gian cho phút

}

A= ACKNOWLEDGE DATA TRANSFERRED

P — STOP (X+1 BYTES + ACKNOWLEDGE}

“RW - READ/WRITE OR DIRECTION BIT ADDRESS = DOh

Hình 2.7: Chế độ Ghi của DS1307

* Nếu muốn Gihi vào địa chỉ 01H rồi kế tiếp Ghi vào địa chỉ 04H chang

hạn thì chúng ta phải START lại từ đầu—>Ghi vào 0D0H (để xác định sẽ Ghi vào DS1307 _ hướng giao tiếp là Ghi vào) —GhI tiếp 04H—>Ghi dữ liệu của thanh ghi

cần cài đặt—>STOP I2C

* Tương tự, nếu chúng ta muốn đọc thì trước hết chúng ta phải ghi vào

địa chỉ cần đọc: tức là vẫn tiếp tục tiến hành 3 thủ tục START—›Ghi 0D0H—›Ghi vào địa chỉ (địa chỉ của thanh ghi mà ta muốn đọc đữ liệu) Sau đó, mới START lại

17

Trang 18

Báo cáo thực tập DKTD K13 HVKTQS

rồi ghi lại 0DIH (lúc này mới thông báo là ta sẽ đọc từ DS1307), tiếp theo cứ đọc

bình thường (thanh ghi đọc được sẽ là thanh ghi có địa chỉ ta mới vừa ghi vào), tiếp tục đọc thì địa chỉ cần đọc sẽ tự động tăng lên cho đến khi STOP I2C

§ - START DATA TRANSFERRED

A — ACKNOWLEDGE (%+1 BYTES + ACKNOWLE! ; NOTE: LAST DATA BYTE IS

P - STOP FOLLOWED BY A NOT AC! DGE { A) SIGNAL)

A = NOT ACKNOWLEDGE

“RW ~ READ/WRITE OR DIRECTION BIT ADDRESS x D1h

Hình 2.8: Chế độ Đọc của DS1307

18

Ngày đăng: 25/10/2013, 12:47

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Sơ đồ khối bộ vi xử lý 8051 - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 1.1 Sơ đồ khối bộ vi xử lý 8051 (Trang 3)
Hình 1.2: Hình ảnh và sơ đô chân 8051 GND CÍ 20 215 P20 (A8) - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 1.2 Hình ảnh và sơ đô chân 8051 GND CÍ 20 215 P20 (A8) (Trang 4)
Hình 1.3: Mạch RESET 8051 +  Các  chân  XTALI  và  XTA1L2:  - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 1.3 Mạch RESET 8051 + Các chân XTALI và XTA1L2: (Trang 7)
Hình 1.4: Mạch tạo dao động dùng thạch anh - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 1.4 Mạch tạo dao động dùng thạch anh (Trang 7)
Hình 1.5: Mạch tạo đao động dùng cổng lô-gic - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 1.5 Mạch tạo đao động dùng cổng lô-gic (Trang 8)
trình bày trong hình 2.2. - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
tr ình bày trong hình 2.2 (Trang 12)
Hình 2.4. Cấu trúc DS1307 - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 2.4. Cấu trúc DS1307 (Trang 14)
Hình 2.5: Điều kiện START và STOP - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 2.5 Điều kiện START và STOP (Trang 15)
* Ghi vào địa chỉ thanh ghi cần ghi hoặc cần đọc (bảng đồ thanh ghi của  DS1307  này  đã  được  giớ  thiệu  ở  hình  3  &amp;  hình  4) - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
hi vào địa chỉ thanh ghi cần ghi hoặc cần đọc (bảng đồ thanh ghi của DS1307 này đã được giớ thiệu ở hình 3 &amp; hình 4) (Trang 17)
Hình 2.8: Chế độ Đọc của DS1307 - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 2.8 Chế độ Đọc của DS1307 (Trang 18)
Hình 3.1: Sơ đồ bố tri linh kiện trên mạch in - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 3.1 Sơ đồ bố tri linh kiện trên mạch in (Trang 19)
Hình 3.2: Sơ đồ đi dây mạch in lớp TOP - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 3.2 Sơ đồ đi dây mạch in lớp TOP (Trang 20)
Hình 3.3: Sơ đồ đi dây lớp BOTTOM - Đề tài thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 led 7 thanh với các chế độ  hiển thị thời gian, cài đặt giờ và cài đặt báo thức   luận văn, đồ án, đề tài tốt nghiệp
Hình 3.3 Sơ đồ đi dây lớp BOTTOM (Trang 20)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w