LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
LỜI GIỚI THIỆU
:
Khi xã hội càng phát triển thì con người ngày càng tự hoàn thiện mình hơn;
đồng thời cũng có những nhu cầu cao hơn về mọi mặt; trong đó có việc Quản Lý
Nhân Sự. Nắm bắt được nhu cầu đó, các nhà khoa học đã nghiên cứu và chế tạo ra
Máy Chấm Công, ngày càng tốt hơn và hiệu quả hơn.
Vì những tiện lợi nêu trên mà tôi đã nhận đề tài Luận Văn Tốt Nghiệp của
mình là : “Thiết Kế và Thi Công Máy Chấm Công”. Một đề tài mới và đầy triển
vọng.
Sau nhiều tháng tìm tòi học hỏi, tôi đã thành công.
Nội dung Luận Văn gồm có các phần chính như sau :
• Phần I : Giới Thiệu về Máy Chấm Công .
• Phần II : Giới Thiệu Riêng Về Vi Điều Khiển AT89C51 .
• Phần III : Giới Thiệu Sơ Lược Về Nguyên Lý Hồng Ngoại .
• Phần IV : Giới Thiệu Sơ Lược Về Các Nghi Thức Truyền Dữ
Liệu .
Xoáy Trọng Tâm Vào Chuẩn RS 485 và RS 232 .
• Phần V : Giới Thiệu Khái Quát Về Tất Cả Các Linh Kiện Được
Dùng Trong Luận Văn .
• Phần VI : Giải Thích Sơ Lược Nguyên Lý Làm Việc .
• Phần VII : Giải Thuật Và Lưu Đồ Chương Trình .
• Phần VIII : Thi Công Lắp Ráp – Sơ Đồ Mạch In .
Để có được thành công như hôm nay, tôi xin chân thành cảm ơn sự giúp đỡ
hết sức nhiệt tình của thầy hướng dẫn : LÊ QUANG THUẦN và các thầy cô trong
Bộ Môn cũng như trong khoa. Bên cạnh đó, tôi cũng xin cảm ơn những ý kiến đóng
góp của các bạn đã giúp đỡ tôi hoàn thành Đề Tài này.
Tuy nhiên, vì thời gian có hạn nên không thể tránh khỏi những thiếu sót.
Rất mong nhận được sự đóng góp thêm nữa của quý thầy cô và các bạn.
Xin Chân Thành Cảm Ơn Rất Nhiều !
GIỚI THIỆU SƠ LƯC MÁY CHẤM CÔNG
Và HỆ THỐNG MÃ VẠCH
I. Lòch Sử Phát Triển :
Từ những chiếc máy bấm lỗ lên thẻ đến những máy in thời điểm đi và về
của nhân viên, Máy Chấm Công do tác dụng hữu ích của nó trong việc quản lý
công nhân số lượng đã phát triễn không ngừng cùng thời đại.
Cùng với sự phát triển toàn diện của Khoa Học Kỹ Thuật cuối thế kỷ 20 về
nhiều lónh vực, trong đó mạnh nhất là Công Nghệ Số – Vi Xử Lý và Công Nghệ
Quang Điện Tử; Máy Chấm Công thế hệ mới hiện nay đã có thể giao tiếp trực tiếp
với Máy Vi Tính hữu tuyến thông qua các cổng và các chuẩn giao tiếp hoặc vô
tuyến viễn thông. Dẫn đến việc xuất hiện các thế hệ Máy Chấm Công Kỹ Thuật
Số sử dụng Hồng Ngoại tuyến đọc các thẻ khoét lỗ.
Bên cạnh đó, hệ thống mã vạch cũng phát triễn và ngày càng được ứng dụng
rộng rãi. Vì vậy, việc ứng dụng thẻ mang mã vạch để chấm công là điều phát triễn
tất yếu.
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
3
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
II. Ứng Dụng Thực Tiễn :
Khi cần quản lý nhân sự, theo dõi thời gian làm việc của nhân viên để đánh
giá năng lực làm việc cũng như thái độ công tác của nhân viên, tại các công ty
người ta thường sử dụng Máy Chấm Công. Như trên đã đề cập, Máy Chấm Công
trên thới giới đã được sử dụng rộng rãi từ lâu và ở Việt Nam chúng cũng đã xuất
hiện khá lâu với mục đích ghi lại thời gian ra, vào của công nhân trong các cơ sở
sản xuất hay các cơ quan, xí nghiệp. Chính vì vậy mà nó được gọi là “Time
Record”. Phát triển từ những chiếc máy đục lỗ và in thời gian làm việc (Ra/Vào),
đến nay Máy Chấm Công đà có những thế hệ có thể giao tiếp với Máy Vi Tính,
làm cho việc quản lý càng dễ dàng, hiệu quả hơn, tiện lợi, an toàn và chính xác
hơn. Đó cũng là nội dung của đề tài Luận Văn Tốt Nghiệp mà tôi nhận.
Để đáp ứng được những chức năng thiết yếu của một Máy Chấm Công hiện
• Tra tìm công việc trong quá trình sản xuất.
• Tra tìm tài liệu, vật liệu.
• Quản lý ngày giờ công, báo thời gian và sự có mặt.
• Lưu kho.
Cùng với sự phát triển nhanh của mã vạch, mã 2 chiều ra đời và phát triển
đã cho phép ứng dụng mã vạch trong nhiều lãnh vực khác như : quản lý hồ sơ nhân
sự , quản lý và trao đổi thông tin, tài liệu nghiên cứu khoa học .
* Khả năng áp dụng công nghệ mã số mã vạch ở Việt Nam :
Do yêu cầu nền kinh tế thò trường ngày càng phát triển ở trong nước và quan
hệ giữa các nước trên thế giới ngày càng mở rộng cho nên đã đến lúc chúng ta
không thể không áp dụng công nghệ mã vạch ở Việt Nam.
Việc áp dụng mã vạch ở Việt Nam chủ yếu phục vụ các đối tượng sau:
- Các sản phẩm hàng hóa xuất khẩu : các sản phẩm này muốn bán sang
các nước châu Á, ASEAN và các nước khác như Trung Quốc, Nhật Bản,
Mỹ... thì phải có mã số vật phẩm, nếu không có thì ta phải chấp nhận
cho nước bạn ghi mã vạch cho mình không nhưng tốn kém mà còn phải
từ bỏ chủ quyền của mình.
- Các sản phẩm hàng hóa sản xuất ra để bán ở các siêu thò trong nước.
- Các cơ sở kinh doanh muốn quản lý một cách hiện đại, nhanh chóng,
chính xác dây chuyền sản xuất của mình từ lúc nhập nguyên liệu đến
thành phẩm.
- Một số ngành dòch vụ, y tế, văn hóa phẩm, giao thông.
- Các ngành quản lý nhân sự , an ninh...
* Hoạt động của EAN - VN : ( European Article Numbering – Việt Nam )
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
5
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
EAN -VN được thành lập cuối năm 1994, trở thành thành viên chính thức
của EAN quốc tế vào tháng 5 - 1995, là tổ chức được giao nhiệm vụ quản lý và
khác. Do đó, đến năm 1992, tên của tổ chức được đổi th ành EAN –
Quốc Tế có hơn 80 thành viên đại diện cho các tổ chức EAN quốc gia.
Các tổ chức này hỗ trợ và thông tin đầy đủ về mã số, mã vạch của EAN
trong các công ty, xí nghiệp là thành viên trong nước mình.
* Hệ thống tiêu chuẩn của EAN:
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
6
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
- Hệ thống tiêu chuẩn EAN về nhận biết quốc tế đối với sản phẩm, dòch
vụ và đòa điểm cho phép các nhà công nghiệp và kinh doanh trao đổi
thông tin một cách chắc chắn.
- Các tiêu chuẩn EAN – Quốc Tế :
• Tiêu chuẩn phân đònh hàng hóa, dòch vụ và đòa điểm.
• Tiêu chuẩn mã bổ sung để thông tin các dữ liệukhong thể lấy từ
Máy Tính hoặc truyền qua EDI ( Electronic Data Interchange ).
• Các mã vạch tiêu chuẩn cho phép lấy tự động và chính xác các
dữ liệu phân đònh và dữ liệu bổ sung.
• Mẫu tiêu chuẩn cho giao dòch thương mại được thông tin từ Máy
Tính đến Máy Tính.
Các tiêu chuẩn của EAN – Quốc Tế được áp dụng không những trong thương
mại và công nghiệp để nhận biết hàng tiêu dùng, mà còn trong quản lý các sản
phẩm sách, hàng dệt, chăm sóc sức khỏe, tự động hóa ... . Các ký hiệu mã vạch
sau đã được thiết kế và tiêu chuẩn hóa để áp dụng trong EAN :
1. EAN ( EAN-8, EAN-13 )
2. ITF – 14.
3. UCC/ EAN – 128.
4. Do yêu cầu ngày càng tăng của các công ty thành viên về phương pháp
trao đổi thông tin thương mại, EAN lập nên EAN – COM là tiêu chuẩn
trao đổi thông tin điện tử nội bộ đa ngành công nghiệp. Tiêu chuẩn này
1974 ở Châu Âu và sau đó được sử dụng ở hầu hết các nước trên
thế giới.
+ Mã số EAN :
Trong hệ thống mã số EAN có hai loại, một loại 13 con số ( EAN -13 )
và loại kia sử dụng 8 con số ( EAN - 8 ).
• Mã số EAN -13 gồm 13 con số có cấu tạo như sau:
- Ba con số đầu (kể từ bên trái) là mã số quốc gia.
- Bốn con số tiếp theo là mã số nhà sản xuất.
- Năm con số sau nữa là mã số sản phẩm.
- Số cuối cùng là số kiểm tra.
Để bảo đảm tính thống nhất và tính duy nhất của mã số, mã quốc gia
phải do tổ chức mã số vật phẩm quốc tế ( EAN – Quốc tế ) cấp cho các
quốc gia thành viên của tổ chức này. Mã số quốc gia của Việt Nam là 893.
Mã số nhà sản xuất do tổ chức mã số vật phẩm quốc gia cấp cho các
nhà sản xuất là thành viên của họ. Ở Việt Nam, mã số nhà sản xuất do
EAN – Việt Nam cung cấp cho các thành viên của mình.
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
8
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
Mã số sản phẩm do nhà sản xuất qui đònh cho hàng hóa của mình.
Nhà sản xuất đảm bảo mỗi hàng hóa chỉ có một mã số, không được có bất
kỳ sự nhầm lẫn nào.
Số kiểm tra C là một con số được tính dựa vào 12 con số đứng trước
nó, dùng để kiểm tra việc ghi đúng những con số nói trên.
• Mã số EAN - 8 có cấu tạonhư sau :
- Ba số đầu (kể từ bên trái) là mã số quốc gia.
- Bốn con số tiếp theo là mã số hàng hóa. Con số này do tổ chức mã số
quốc gia cấp cho sản phẩm của từng nhà sản xuất theo đơn xin sử dụng
mã EAN - 8 của nhà sản xuất.
Mã vạch là một nhóm các vạch và khoảng trống đặt cạnh mã số dùng để
thể hiện con số của mã số.
Người ta chuyển các con số thành các vạch đen trắng để các máy quét
( Scaner ) có thể “đọc” được các con số này.
Có nhiều loại mã vạch, loại thể hiện mã số EAN gọi là mã vạch EAN, loại
thể hiện mã UPC gọi là mã vạch UPC.
Trong mã vạch EAN, mỗi con số được thể hiện bằng hai vạch và hai khoảng
trống, theo 3 kiểu ( phương án ) khác nhau ( A, B, C ). Mỗi vạch hoặc khoảng trống
có chiều rộng từ 1 đến 4 modun, mỗi modun có chiều rộng là 0,33 mm.
Mã vạch EAN -13 có cấu tạo như sau :
Kể từ bên trái là khu vực để trống ( quiet zone ) không ghi ký hiệu nào cả,
ký hiệu bắt đầu, ký hiệu dãy số bên trái, ký hiệu phân cách, ký hiệu dãy số bên
phải, ký hiệu số kiểm tra, ký hiệu kết thúc, sau đó là khu vực để trống bên phải.
Toàn bộ khu vực mã vạch EAN -13 tiêu chuẩn có kích thước chiều dài là 37,29 mm
và chiều cao là 26,26 mm.
Mã vạch EAN - 8 cũng có cấu tạo tương tự nhưng kích thước chiều dài chỉ là
26,73mmvà chiều cao cũng chỉ là 21,84mm .
Mã vạch UPC có cùng nguyên tắc cấu tạo như mã EAN. Trong mã vạch
UPC, con số đầu tiên và con số cuối cùng được đặt bên cạnh khu vực mã vạch
( trong khi mã vạch EAN, tất cả các con số được đặt dưới khu vực mã vạch ) .
4. Đọc mã vạch :
Để đọc mã vạch, người ta sử dụng một máy quét, trong máy quét có một
nguồn sáng Laser, một bộ phận cảm biến quang điện ( Photo-Diode ), một bộ giãi
mã. Máy quét được nối với Máy Tính bằng đường dây dẫn hoặc bộ phận truyền tín
hiệu vô tuyến. Nguyên tắc hoạt động như sau : nguồn sáng Laser phát chùm tia
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
khoảng trống. Đây là loại mã vạch có chiều dài không hạn chế, mã được cả chữ số
và chữ cái nên được áp dụng rất rộng rãi trong nhiều ngành: quản lý tự động, trong
thư viện và các loại vé, phiếu.
* Code 2.5 :
Code 2.5 là loại mã vạch rất đơn giản, phi liên tục, tức là chỉ có vạch
biểu thò thông tin. Mỗi ký tự thể hiện bằng 5 vạch rộng và 3 vạch hẹp, vạch rộng
do 3 modun tạo thành, vạch hẹp do 1 modun tạo thành.
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
11
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
* Code 2.5 xen kẽ :
Nguyên lý của code 2.5 xen kẽ giống như mã code 2.5, chỉ khác ở chỗ là
khoảng cách giữa vạch tới vạch cũng là một bộ phận của mã thông tin. Phần vạch
thể hiện 1 ký tự . Vì vậy mã code 2.5 xen kẽ có mật độ thông tin cao,được ứng
dụng rộng rãi trong công nghiệp và cả trong thương mại .
Code 2.5 xen kẽ còn gọi là ITF ( Interleaved Two of Five ) . Trong đo,ù
ITF-14 là mã của 14 con số thể hiện mã EAN -13 và thêm 1 số chỉ số lượng được
sử dụng rộng rãi trên các hộp, thùng hàng.
* Code 128 :
Code 128 là loại mã vạch có thể mã hóa được tất cả các số, các chữ cái
hoa và các chữ cái thường, các ký hiệu toán và các ký tự đặc biệt, tức là toàn bộ
128 ký tự trong mã tiêu chuẩn dùng để trao đổi thông tin bằng mã ASCII. Loại mã
này được áp dụng rất rộng rãi trong nhiều ngành kinh tế kỹ thuật .
Một tập tin con của Code 128 là EAN-128 được ứng dụng rất rộng rãi, có
- Những cách đóng gói khác nhau về lượng cũng ph có mã số khác
nhau: bia 330ml, 650ml...
- Màu sắc khác nhau cũng phải có mã số khác nhau. Ví dụ : áo sơ mi
xanh, vàng.
- Một số sản phẩm ghép thành bộ cũng cần mã số khác nhau, ví dụ : hộp
trang điểm, máy sấy tóc: mã của từng sản phẩm và mã của cả bộ sản
phẩm.
PHẦN II :
CẤU TRÚC VÀ ỨNG DỤNG VI ĐIỀU KHIỂN
AT89C51
I. GIỚI THIỆU CẤU TRÚC PHẦN CỨNG HỌ MSC-51 (AT89C51):
-Đặc điểm và chức năng hoạt động của các IC họ MSC-51 hoàn toàn tương tự
như nhau. Ở đây giới thiệu IC AT89C51 là một họ IC vi điều khiển do hãng Atmel
sản xuất. Các đặc điểm của AT89C51 được tóm tắt như sau :
√ 2 KB EEPROM (Flash ROM) bên trong.
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
13
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
√ 128 Byte RAM nội.
√ 4 Port xuất /nhập I/O 8 bit.
√ Giao tiếp nối tiếp bất đồng bộ .
√ Có thể mở rộng 64 KB vùng nhớ Mã ngoài (ROM ngoài) thông qua 16bit
đòa chỉ và chân tín hiệu PSEN.
√ Có thể mở rộng 64 KB vùng nhớ Dữ Liệu ngoài (RAM ngoài) thông qua
16bit đòa chỉ và 2 chân tín hiệu RD và WR.
√ Xử lí Boolean (hoạt động trên bit đơn).
√ 210 vò trí nhớ có thể đònh vò bit.
√ 4 µs cho hoạt động nhân hoặc chia.
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
14
I/O PORT
SERIAL
PORT
EA\
RST
ALE\
PSEN\
P
0
P
1
P
2
P
3
Address\Data
TXD RXD
TIMER 2
TIMER1
TIMER1
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
II. KHẢO SÁT SƠ ĐỒ CHÂN AT89C51, CHỨC NĂNG TỪNG CHÂN:
1.Sơ đồ chân AT89C51:
Hình 2.2 Só đồ chân IC AT89C51
2. Chức năng các chân của AT89C51:
- AT89C51 có tất cả 40 chân có chức năng như các đường xuất nhập. Trong
đó có 24 chân có tác dụng kép (có nghóa 1 chân có 2 chức năng), mỗi đường có thể
hoạt động như đường xuất nhập hoặc như đường điều khiển hoặc là thành phần của
các bus dữ liệu và bus đòa chỉ.
a.Các Port:
7
8
3 9
3 8
3 7
3 6
3 5
3 4
3 3
3 2
2 1
2 2
2 3
2 4
2 5
2 6
2 7
2 8
1 7
1 6
2 9
3 0
1 1
1 0
4 02 0
E A / V P
X 1
X 2
R E S E T
P 3 . 2
A L E / P
P 3 . 1
P 3 . 0
V c cG N D
C 1 6
3 3 p
C 1 7
3 3 p
X 1
1 1 . 0 5 9 M H z
R X D
T X D
/ I N T 0
/ I N T 1
T I M E R 0
T I M E R 1
/ W R
/ R D
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
- Port 2 là 1 port có tác dụng kép trên các chân 21 - 28 được dùng như các
đường xuất nhập hoặc là byte cao của bus đòa chỉ đối với các thiết bò dùng bộ nhớ
mở rộng.
* Port 3:
- Port 3 là port có tác dụng kép trên các chân 10 - 17. Các chân của port này
có nhiều chức năng, các công dụng chuyển đổi có liên hệ với các đặc tính
đặc biệt của AT89C51 như ở bảng sau:
Bit Tên Chức năng chuyển đổi
P3.0 RXT Ngõ vào dữ liệu nối tiếp.
P3.1 TXD Ngõ xuất dữ liệu nối tiếp.
P3.2
chỉ và bus dữ liệu do đó phải tách các đường dữ liệu và đòa chỉ. Tín hiệu ra ALE ở
chân thứ 30 dùng làm tín hiệu điều khiển để giải đa hợp các đường đòa chỉ và dữ
liệu khi kết nối chúng với IC chốt (TTL 74573,74373,v.v…).
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
17
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
- Tín hiệu ra ở chân ALE là một xung trong khoảng thời gian port 0 đóng vai
trò là đòa chỉ thấp nên chốt đòa chỉ hoàn toàn tự động.
Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động trên chip và có
thể được dùng làm tín hiệu Clock cho các phần khác của hệ thống. Chân ALE được
dùng làm ngõ vào xung lập trình cho EPROM trong AT89C51.
* Ngõ tín hiệu /EA(External Access):
- Tín hiệu vào /EA ở chân 31 thường được mắc lên mức 1 hoặc mức 0. Nếu
ở mức 1, AT89C51 thi hành chương trình từ ROM nội trong khoảng đòa chỉ thấp 8
Kbyte. Nếu ở mức 0, AT89C51 sẽ thi hành chương trình từ bộ nhớ mở rộng.
Chân /EA được lấy làm chân cấp nguồn 21V khi lập trình cho EPROM trong
AT89C51.
* Ngõ tín hiệu RST (Reset) :
-Ngõ vào RST ở chân 9 là ngõ vào Reset của AT89C51. Khi ngõ vào tín
hiệu này đưa lên cao ít nhất là 2 chu kỳ máy, các thanh ghi bên trong được nạp
những giá trò thích hợp để khởi động hệ thống. Khi cấp điện mạch tự động Reset.
* Các ngõ vào bộ dao động X1, X2:
- Bộ dao động được tích hợp bên trong AT89C51, khi sử dụng người thiết kế
chỉ cần kết nối thêm thạch anh và các tụ như hình vẽ trong sơ đồ. Tần số thạch anh
thường sử dụng cho AT89C51 là 12Mhz. Tuy nhiên, thạch anh 11.059Mhz lại được
dùng nhiều trong truyền thông nối tiếp bất đồng bộ vì tính ổn đònh và ít sai số đối
với tốc độ truyền (Baudrate). Trong trường hợp các IC (thiết bò) khác trong Kit cần
phải có xung Clock thì có thể lấy trực tiếp từ chân X2 rồi cho qua bộ Đếm (Counter
: 4bit, 8bit,…) để chia tần thích hợp có thể sử dụng cho IC đó.
* Chân 40 (Vcc) được nối lên nguồn 5V và chân 20 thì nối Mass.
2D 6F 6E 6D 6C 6B 6A 69 68
2C 67 66 65 64 63 62 61 60 A8 AF AC AB AA A9 A8 IE
2B 5F 5E 5D 5C 5B 5A 59 58
2A 57 56 55 54 53 52 51 50 A0 A7 A6 A5 A4 A3 A2 A1 A0 P2
29 4F 4E 4D 4C 4B 4A 49 48
28 47 46 45 44 43 42 41 40 99 không được đòa chỉ hoá bit SBUF
27 3F 3E 3D 3C 3B 3A 39 38 98 9F 9E 9D 9C 9B 9A 99 98 SCON
26 37 36 35 34 33 32 31 30
25 2F 2E 2D 2C 2B 2A 29 28 90 97 96 95 94 93 92 91 90 P1
24 27 26 25 24 23 22 21 20
23 1F 1E 1D 1C 1B 1A 19 18 8D không được đòa chỉ hoá bit TH1
22 17 16 15 14 13 12 11 10 8C không được đòa chỉ hoá bit TH0
21 0F 0E 0D 0C 0B 0A 09 08 8B không được đòa chỉ hoá bit TL1
20 07 06 05 04 03 02 01 00 8A không được đòa chỉ hoá bit TL0
1F Bank 3 89 không được đòa chỉ hoá bit TMOD
18 88 8F 8E 8D 8C 8B 8A 89 88 TCON
17 Bank 2 87 không được đòa chỉ hoá bit PCON
10
0F Bank 1 83 không được đòa chỉ hoá bit DPH
08 82 không được đòa chỉ hoá bit DPL
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
19
Đòa chỉ
byte
Đòa chỉ bit Đòa chỉ bit
Đòa chỉ
byte
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
07 Bank thanh ghi 0 81 không được đòa chỉ hoá bit SP
00 (mặc đònh cho R0 -R7) 88 87 86 85 84 83 82 81 80 P0
byte có chứa các đòa chỉ từ 20F đến 2FH và các bit còn lại chứa trong nhóm thanh
ghi có chức năng đặc biệt.
- Ý tưởng truy xuất từng bit bằng phần mềm là các đặc tính mạnh của
Microcontroller xử lý nói chung. Các bit có thể được đặt, xóa, AND, OR, . . . , với 1
lệnh đơn. Đa số các Microcontroller xử lý đòi hỏi một chuỗi lệnh đọc – sửa – ghi
để đạt được mục đích tương tự. Ngoài ra các Port cũng có thể truy xuất được từng
bit.
- 128 bits truy xuất từng bit này cũng có thể truy xuất như các byte hoặc như
các bits, phụ thuộc vào lệnh được dùng.
Các bank thanh ghi:
- 32 byte thấp của bộ nhớ nội được dành cho các Bank thanh ghi, từ Bank 0
đến Bank 4. Bộ lệnh AT89C51 hổ trợ 8 thanh ghi có tên là R0 đến R7 và theo mặc
đònh sau khi reset hệ thống, các thanh ghi này có các đòa chỉ từ 00H đến 07H, tức
Bank 0.
- Các lệnh dùng các thanh ghi R0 đến R7 sẽ ngắn hơn và nhanh hơn so với
các lệnh có chức năng tương ứng dùng kiểu đòa chỉ trực tiếp. Các dữ liệu được dùng
thường xuyên nên dùng một trong các thanh ghi này.
- Do có 4 bank thanh ghi nên tại một thời điểm chỉ có một bank thanh ghi
được truy xuất bởi các thanh ghi R0 đến R7 để chuyển đổi việc truy xuất các bank
thanh ghi ta phải thay đổi các bits chọn bank trong thanh ghi trạng thái.
2. Các thanh ghi có chức năng đặc biệt:
- Các thanh ghi nội của AT89C51 được truy xuất ngầm đònh bởi bộ lệnh.
- Các thanh ghi trong AT89C51 được đònh dạng như một phần của RAM
trên chip vì vậy mỗi thanh ghi sẽ có một đòa chỉ (ngoại trừ thanh ghi bộ đếm
chương trình và thanh ghi lệnh vì các thanh ghi này hiếm khi bò tác động trực tiếp).
Cũng như R0 đến R7, AT89C51 có 21 thanh ghi có chức năng đặc biệt (SFR:
Special Function Register) ở vùng trên của RAM nội từ đòa chỉ 80H đến FFH.
Chú ý: tất cả 128 đòa chỉ từ 80H đến FFH không được đònh nghóa, chỉ có 21
thanh ghi có chức năng đặc biệt được đònh nghóa sẵn các đòa chỉ.
- Khi cộng những giá trò BCD (Binary Code Decimal), cờ nhớ phụ AC được
set nếu kết quả 4 bit thấp nằm trong phạm vi điều khiển 0AH÷ 0FH. Ngược lại
AC= 0.
• Cờ 0 (Flag 0):
- Cờ 0 (F0) là 1 bit cờ đa dụng dùng cho các ứng dụng của người dùng.
• Những bit chọn bank thanh ghi truy xuất:
- RS1 và RS0 quyết đònh dãy thanh ghi tích cực. Chúng được xóa sau khi
reset hệ thống và được thay đổi bởi phần mềm khi cần thiết.
- Tùy theo RS1, RS0 = 00, 01, 10, 11 sẽ được chọn Bank tích cực tương ứng
là Bank 0, Bank1, Bank2, Bank3.
RS1 RS0 BANK
0 0 0
0 1 1
1 0 2
1 1 3
Bảng 2.4 Set Bank thanh ghi
• Cờ tràn OV (Over Flag) :
- Cờ tràn được set sau một hoạt động cộng hoặc trừ nếu có sự tràn toán học.
Khi các số có dấu được cộng hoặc trừ với nhau, phần mềm có thể kiểm tra bit này
để xác đònh xem kết quả có nằm trong tầm xác đònh không. Khi các số không có
dấu được cộng bit OV được bỏ qua. Các kết quả lớn hơn +127 hoặc nhỏ hơn –128
thì bit OV = 1.
• Bit Parity (P):
- Bit tự động được set hay Clear ở mỗi chu kỳ máy để lập Parity chẳn với
thanh ghi A. Sự đếm các bit 1 trong thanh ghi A cộng với bit Parity luôn luôn chẵn.
Ví dụ A chứa 10101101B thì bit P set lên một để tổng số bit 1 trong A và P tạo
thành số chẵn.
- Bit Parity thường được dùng trong sự kết hợp với những thủ tục của Port nối
tiếp để tạo ra bit Parity trước khi phát đi hoặc kiểm tra bit Parity sau khi thu.
• Thanh ghi B:
trình con và lấy lại khi kết thúc chương trình con …
• Con trỏ dữ liệu DPTR (Data Pointer):
- Con trỏ dữ liệu (DPTR) được dùng để truy xuất bộ nhớ ngoài là một thanh
ghi 16 bit ở đòa chỉ 82H (DPL: byte thấp) và 83H (DPH: byte cao). Ba lệnh sau sẽ
ghi 55H vào RAM ngoài ở đòa chỉ 1000H:
GVHD : Thầy LÊ QUANG THUẦN SVTH : ĐỖ TRÍ NHỰT – 49701036
24
LUẬN VĂN TỐT NGHIỆP 01 - 2002 THIẾT KẾ VÀ THI CÔNG MÁY CHẤM CÔNG
MOV A , #55H
MOV DPTR, #1000H
MOV @DPTR, A
- Lệnh đầu tiên dùng để nạp 55H vào thanh ghi A. Lệnh thứ hai dùng để
nạp đòa chỉ của ô nhớ cần lưu giá trò 55H vào con trỏ dữ liệu DPTR. Lệnh thứ ba sẽ
di chuyển nội dung thanh ghi A (là 55H) vào ô nhớ RAM bên ngoài có đòa chỉ chứa
trong DPTR (là 1000H).
• Các thanh ghi Port (Port Register):
- Các Port của AT89C51 bao gồm Port0 ở đòa chỉ 80H, Port1 ở đòa chỉ
90H, Port2 ở đòa chỉ A0H, và Port3 ở đòa chỉ B0H. Tất cả các Port này đều có thể
truy xuất từng bit nên rất thuận tiện trong khả năng giao tiếp.
• Các thanh ghi Timer (Timer Register):
- AT89C51 có chứa hai bộ đònh thời/ bộ đếm 16 bit được dùng cho việc đònh
thời được đếm sự kiện. Timer0 ở đòa chỉ 8AH (TLO: byte thấp ) và 8CH (THO:
byte cao). Timer1 ở đòa chỉ 8BH (TL1: byte thấp) và 8DH (TH1: byte cao). Việc
khởi động timer được SET bởi Timer Mode (TMOD) ở đòa chỉ 89H và thanh ghi
điều khiển Timer (TCON) ở đòa chỉ 88H. Chỉ có TCON được đòa chỉ hóa từng bit .
• Các thanh ghi Port nối tiếp (Serial Port Register) :
- AT89C51 chứa một Port nối tiếp cho việc trao đổi thông tin với các thiết
bò nối tiếp như Máy Tính, Modem hoặc giao tiếp nối tiếp với các IC khác. Một
thanh ghi đệm dữ liệu nối tiếp (SBUF) ở đòa chỉ 99H sẽ giữ cả hai dữ liệu truyền
và dữ liệu nhập. Khi truyền dữ liệu ghi lên SBUF, khi nhận dữ liệu thì đọc SBUF.