Nó cung cấp những hố trợ mở rộng trên chip dung cho những biến một bítnhư là kiểu dữ liệu riêng biệt cho phép quản lý và kiểm tra bit trực tiếp trong hệ điềukhiển AT89S52 cung cấp những
Trang 1LỜI NÓI ĐẦU
Trong những năm gần đây theo sự tiến bộ của khoa học kỹ thuật, công cuộc côngnghiệp hóa hiện đại hóa đất nước đang diễn ra khá nhanh Trước tình hình đó đã cókhá nhiều yêu cầu cấp bách và cũng là những thách thức được đặt ra cho giới trí thức.Quảng cáo luôn là một trong các vấn đề đóng vai trò quan trọng trong sự pháttriển của một công ty, doanh nghiệp hay thậm chí là của một cửa hàng Quảng cáo tốt
sẽ đem lại nhiều lợi ích to lớn Cũng chính vì vậy mà không ngạc nhiên khi hàng nămcác doanh nghiệp đã đầu tư rất nhiều vào vấn đề này Một trong những biện pháp được
ưa dùng hiện nay đó là sử dụng bảng quảng cáo bằng đèn LED, vì sự đơn giản, bắtmắt, chi phí hợp lý cũng như tính hiệu quả của nó Những bảng thông tin, cổng chàohay những bảng LED quảng cáo với màu sắc sặc sỡ, bắt mắt, gây nhiều chú ý chắc hẳnkhông còn xa lạ đối với người dân, nhất là người dân đô thị
Xuất phát từ thực tế mà nhớm sinh viên thực hiện chúng em muốn thiết kế mộtmạch led xoay để Nhằm đáp ứng ham muốn học hỏi của bản thân cũng như nâng caogiá trị của điện tử trong đời sống con người
Đề tài của em gồm 2 chương:
Chương 1 Tổng quan về vi điều khiển AT89S52
Chương 2 Nội dung đề tài
Trong quá trình thực hiện đề tài do lượng kiến thức còn hạn chế nên chúng emkhông tránh khỏi những thiếu sót Em rất mong thầy cô đóng góp ý kiến để chúng em
có thể ứng dụng để tài vào thực tế
Em xin chân thành cảm ơn thầy Trần Trung Tín đã hướng dẫn chúng em làm đồ
án này trong suốt thời gian qua!
Đà nẵng, ngày 17 tháng 12 năm 2012
Nhóm thực hiện đồ án
Hồ Thị Tường ViBùi Tấn Tài
Trang 2MỤC LỤC
Trang 3DANH MỤC HÌNH ẢNH
Trang 4DANH MỤC BẢNG BIỂU
Trang 5CHƯƠNG I.TỔNG QUAN VỀ VI ĐIỀU KHIỂN AT89S52
1.1 Giới thiệu về vi điều khiển AT89S52
AT 89S52 là họ IC vi điều khiển do hãng Intel sản xuất Các sản phẩm AT89S52thích hợp cho ứng dụng điều khiển Việc sử lý trên byte và các toán số học ở cấu trúc
dữ liệu nhỏ được thực hiện bằng nhiều cế độ truy xuất dữ liệu nhanh trên RAM nội.Tập lệnh cung cấp một bảng tiện dụng của những lện số học 8 bít gồm cả lệnh nhân vàlệnh chia Nó cung cấp những hố trợ mở rộng trên chip dung cho những biến một bítnhư là kiểu dữ liệu riêng biệt cho phép quản lý và kiểm tra bit trực tiếp trong hệ điềukhiển AT89S52 cung cấp những đặc tính chuẩn như: 8 Kbyte bộ nhớ chỉ đọc có thểxóa và lập trình nhanh (EPROM), 128 byte RAM, 32 đường I/O, 3 Timer/counter16bit, 5 vec tơ ngắt có cấu trúc 2 mức ngắt, một port nối tiếp bán song công, một mạchdao động tạo xung clock và bộ dao động ON-CHIP
Các đặc điểm của chip AT89S52 được tóm tắt như sau:
• 8 KByte bộ nhớ có thể lập trình nhanh, có khả năng tới 1000 chu kỳ ghi/xoá
• Tần số hoạt động từ: 0Hz đến 24 MHz
• 3 mức khóa bộ nhớ lập trình
• 3 bộ Timer/counter 16 Bit
• 128 Byte RAM nội
• 4 Port xuất /nhập I/O 8 bit
• Giao tiếp nối tiếp
Trang 6Trung tâm của 89S52 vẫn là vi xử lý trung tâm (CPU) Để kích thích cho toàn bộ
hệ thống hoạt động, 89S52 có bộ tạo dao động nội với thạch anh được ghép từ bênngoài với tần số khoảng từ vài Mhz đến 24 Mhz Liên kết các phần tử với nhau là hệthống BUS nội, gồm có BUS dữ liệu, BUS địa chỉ và BUS điều khiển 89S52 có 8kROM, 256 bytes RAM và một số thanh ghi bộ nhớ… Nó giao tiếp với bên ngoài qua 3cổng song song và một cổng nối tiếp có thể thu, phát dữ liệu nối tiếp với tốc độ lậptrình được Hai bộ định thời 16 bít của 89S52 còn có 2 ngắt ngoài cho phép nó đápứng và xử lý điều kiện bên ngoài theo cách ngắt quãng, rất hiệu quả trong các ứngdụng điều khiển Thông qua các chân điều khiển và các cổng song song 89S52 có thể
mở rộng bộ nhớ ngoài lên đến 64Kbs dữ liệu
Hình 1.2 Sơ đồ khối vi điều khiển họ 89S52
1.3 Sơ lược về các chân IC 89S52
IC 89S52 có 40 chân Có đến 32 chân làm nhiệm vụ xuất nhập, truyền dữ liệu.Các chân phục vụ ngắt, các chân Timer, trong đó 24 chân làm nhiệm vụ khác nhau.Mỗi chân có thể là đường xuất nhập, đường điều khiển hoặc là một phần của địa chỉ
Trang 7song như máy in, bộ biến đổi tương tự số… Hoặc mỗi đường cũng có thể hoạt độngđộc lập trong giao tiếp với các thiết bị đơn bít khác như: transistor, LED, switch…
Trang 8Hình 1.4 Cấu trúc Port 0.
1.4.2 Port 1 (từ chân 1-8)
Port 1 dành cho cổng xuất nhập và chỉ dành cho mục đích này mà thôi Nó dùng
để giao tiếp với các thiết bị ngoại vi theo từng bit hoặc bytes Port 1 chiếm các chân từ
Trang 101.4.5 Chân PSEN (Program Store Enable)
PSEN là chân điều khiển đọc chương trình bộ nhớ ngoài, nó được nối với chân
OE để cho phép đọc các byte mã lệnh bộ nhớ ngoài PSEN sẽ ở mức thấp trong thờigian đọc mã lệnh Mã lệnh được đọc từ bộ nhớ ngoài qua bus dữ liệu (Port 0) thanhghi lệnh để được giải mã
Khi thực hiện chương trình trong ROM nội thì PSEN ở mức cao
1.4.6 Chân ALE (Adderess Latch Enable)
ALE là tín hiệu điều khiển chốt địa chỉ có tần số bằng 1/6 tần số dao động của viđiều khiển Tín hiệu ALE được dùng để cho phép vi mạch chốt bên ngoài như 74373,
74573 chốt byte địa chỉ thấp ra khỏi bus đa hợp địa chỉ /dữ liệu (Port 0)
1.4.7 Chân /EA (External Access)
Tín hiệu /AE cho phép chọn bộ nhớ chương trình là bộ nhớ trong hay ngoài viđiều khiển Nếu /EA ở mức cao( nối với Vcc) thì vi điều khiển thi hành trong ROMnội Nếu /EA ở mức thấp ( nối với GND) thì vi điều khiển thực hiện chương trình từ
bộ nhớ ngoài
1.4.8 RST (Reset)
Ngõ vào RST trên chân 9 là ngõ reset của 8051 Khi tín hiệu này được đưa lênmức cao ( trong ít nhất 2 chu kì máy), các thanh ghi trong bộ vi điều khiển được tảinhững giá trị thích hợp để khởi động hệ thống
1.4.9 XTAL1, XTAL2
AT89S52 có một bộ dao động trên chip, nó thường được nối với bộ dao độngthạch anh có tần số lớn nhất là 33MHz, thông thường là 12MHz Còn trong mạch nàychúng em dùng thạch anh 24MHz
1.4.10 Vcc, GND
AT89S52 dùng nguồn một chiều có dải điện áp từ 4V đến 5.5 V được cấp quachân 40 và 20
Trang 11Bộ nhớ bên trong 89S52 bao gồm ROM và RAM RAM trong 89S52 bao gồmnhiều thành phần: phần lưu trữ đa dụng, phần lưu trữ địa chỉ hóa từng bít, các bankthanh ghi và các thanh ghi chức năng đặc biệt.
AT89S52 có bộ nhớ được tổ chức theo cấu trúc Havard: có những vùng bộ nhớriêng biệt cho chương trình và dữ liệu Chương trình và dữ liệu có thể chứa bên trong89S52 nhưng 89S52 vẫn có thể kết nối với 64K byte bộ nhớ chương trình và 64k byte
dữ liệu bên ngoài
Trang 121.5.2 RAM có thể định địa chỉ bit
Vùng địa chỉ từ 20h-2Fh gồm 16 byte có thể thực hiện như vùng RAM đa dụng(truy xuất mỗi lần 8 bit) hay thực hiện truy xuất mỗi lần 1 bit bằng các lệnh xử lý bít
1.5.3 Các bank thanh ghi
Vùng địa chỉ 00h-1Fh được chia thành 4 bank thanh ghi: bank 0 từ 00h-97h,bank 1 từ 08h-0F h, bank 2 từ 10h-17h và bank 3 từ 18h-1Fh Các bank thanh ghi nàyđược đại diện bằng các thanh gi từ R0 đến R7 Sau khi khởi động thì hệ thống bank 0được sử dụng
Do có 4 bank thanh ghi nên tại một thời điểm chỉ có một bank thanh ghi đượctruy xuất bởi các thanh ghi R0 đến R7 Việc thay đổi bank thanh ghi được thực hiệnthông qua thanh ghi từ trạng thái chương trình (PSW)
1.5.4 Các thanh ghi có chức năng đặc biệt
Các thanh ghi trong 89S52 đượ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à thanhghi 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,89S52 có 21 thanh ghi có chức năng đặc biệt (SFR: Special Function Register) ở vùngtrên của RAM nội từ địa chỉ 80h đến 0FFH
1.5.4.1 Thanh nghi trạng thái chương trình (PSW: Program Status Word)
Bảng 1.2: Thanh nghi trạng thái
00=Bank 0, address 00H-07H
Trang 1310=Bank 2 address 10H-17H11=Bank 3 address 18H-1FH
Chức năng từng bít trạng thái chương trình
Cờ carry CY (Carry Flag): cờ nhớ thường nó được dùng cho các lệnh toán học: CY=1 nếu phép toán cộng có sự tràn hoặc phép trừ có mượn và ngược lại CY=0 nếu phép toán cộng không tràn và phép trừ không có mượn
Cờ Carry phụ AC (Auxiiary Carry Flag): khi cộng những giá trị BCD( Binary Code Decimal), cờ nhớ phụ AC được set nếu kết quả 4 bít thấp nằm trong phạm vi điểu khiển 0AH-0FH Ngược lại AC=0
Cờ 0( Plag 0):
Cờ 0 (F0) là 1 bít cờ đa dụng dùng cho các ứng dụng của người dùng
Những bít 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 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 và Bank3
Trang 14Ví dụ A chứa 10101101B thì bit p set lên một để tổng số bít 1 trong A và P tạothành số chẵn.
Bit Parity thường được dùng trong sự kết hợp của Port nối tiếp để tạo ra bitParity trước khi phát đi hoặc kiểm tra bit Parity sau khi thu
1.5.4.2 Thanh ghi TIMER
Vi điều khiển 89S52 có 3 timer 16 bit, mỗi timer có bốn cách làm việc Người ta
sử dụng các timer để:
Định khoảng thời gian
Đếm sự kiện
Tạo tốc độ baud cho Port nối tiếp trong 89S52
Trong các ứng dụng định khoảng thời gian, người ta lập trình timer ở nhữngkhoảng đều đặn và đặt cờ tràn timer Cờ được dùng để đồng bộ hóa chương trình đểthực hiện một tác động như kiểm tra trạng thái của các ngõ vào hoặc gửi sự kiện ra cácngõ ra Các ứng dụng khác có thể sử dụng việc tạo xung nhịp đều đặn của timer để đothời gian trôi qua giữa hai sự kiện ( ví dụ đo độ rộng xung)
1.5.4.3 Thanh ghi ngắt (INTERRUPT)
Một ngắt là sự xảy ra một điều kiện, một sự kiện mà nó gây ra theo tạm thờichương trình chính trong khi điều kiện đó được phục vụ bởi chương trình khác
Các ngắt đóng vai trò quan trọng trong thiết kế và cài đặt các ứng dụng vi điềukhiển Chúng cho phép hệ thống đáp ứng bất đồng bộ với một sự kiện và giải quyết sựkiện đó trong khi chương trình khác đang thực thi
Tổ chức ngắt của 89S52:
Có 5 nguồn ngắt ở 89S52: 2 ngắt ngoài, 2 ngắt từ timer và 1 ngắt port nối tiếp.Tất cả các ngắt theo mặc nhiên đều bị cấm sau khi reset hệ thống và được cho phéptừng cái một bằng phần mềm Mức độ ưu tiên của các ngắt được lưu trong thanh ghi IP(Interrupt Priority) hay nói cách khác thanh ghi IP cho phép chọn mức độ ưu tiên chocác ngắt ( giá trị thanh gi IP khi reset là 00h)
Trang 16Bảng 1.3 : Bảng tóm tắt thanh ghi IP
IP.5 ET2 BDH Chọn mức ưu tiên cao(=1) hay thấp
(=0) tại timer 2IP.4 ES BCH Chọn mức ưu tiên cao (=1) hay thấp
(=0) tại cổng nối tiếp
IP.3 ET1 BBH Chọn mức ưu tiên cao (=1) hay
thấp(=0)IP.2 EX1 BAH Chọn mức ưu tiên cao (=1) hay
thấp(=0) tại ngắt ngoài 1IP.1 ET0 B9H Chọn mức ưu tiên cao (=1) hay thấp
(=0)IP.0 EX0 B8H Chọn mức ưu tiên cao (=1) hay thấp
o Nếu chương trình của một ngắt có mức ưu tiên tiên thấp đang chạy mà có một ngắt xảy
ra với mức ưu tiên cao hơn thì chương trình này tạm dừng để chạy một chương trìnhkhác có mức ưu tiên cao hơn
Cho phép và cấm ngắt:
Mỗi nguồn ngắt được cho chép hoặc cấm ngắt qua một thanh ghi chức năng đặtbiệt có định địa chỉ bit IE (Interrupt Enable: cho phép ngắt) ở địa chỉ A8H
Trang 17Bảng 1.4 : Bảng tóm tắt thanh ghi IE
là địa chỉ bắt đầu của IC cho nguồn tạo ngắt, các vecto ngắt được cho ở bảng sau:
Port nối
Trang 18Vector reset hệ thống (RST ở địa chỉ 0000H) được để trong bảng này vì theonghĩa này, nó giống ngắt: nó ngắt chương trình chính và nạp cho PC giá trị mới.
Trang 19CHƯƠNG 2 NỘI DUNG ĐỀ TÀI
2.1 Các linh kiện trong mạch
2.1.1Thạch anh
Cấu tạo: là một loại linh kiện làm bằng tinh thể đá thạch anh được mài phẳng vàchính xác
Đặc tính: Linh kiện thạch anh làm việc dựa trên hiệu ứng áp điện.Hiệu ứng này
có tính thuận nghịch.Khi áp một điện áp vào 2 mặt của thạch anh, nó sẽ bị biếndạng.Ngược lại ,khi tạo sức ép vào 2 bề mặt đó,nó sẽ phát ra điện áp.Một đặc tínhquan trọng của tinh thể thạch anh là nếu tác động bằng các dạng cơ học đến chúng (âmthanh, sóng nước ) vào tinh thể thạch anh thì chúng sẽ tạo ra một điện áp dao động cótần số tương đương với mức độ tác động vào chúng
Hình 2.1 Thạch anh điện tử
2.1.2 Điện trở
Điện trở là sự cản trở dòng điện của một vật dẫn điện, nếu một vật dẫn điện tốtthì điện trở nhỏ, vật dẫn điện kém thì điện trở lớn, vật cách điện thì điện trở là vô cùnglớn
Trong thiết bị điện tử điện trở là một linh kiện quan trọng, chúng được làm từhợp chất cacbon và kim loại tuỳ theo tỷ lệ pha trộn mà người ta tạo ra được các loạiđiện trở có trị số khác nhau
Hình 2.2 Hình dạng của điện trở trong thiết bị điện tử
Trang 20Hình 2.3 Ký hiệu của điện trở trên các sơ đồ nguyên lý.
• Đơn vị của điện trở
Đơn vị điện trở là Ω (Ohm) , KΩ , MΩ
Bảng 2.1: Bảng quy ước màu quốc tế
Trang 21- Đối với điện trở 4 vạch màu
Hình 2.4 Điện trở 4 vạch màu
Cách đọc điện trở 4 vòng màu
Vạch màu thứ nhất: Chỉ giá trị hàng chục trong giá trị điện trở
Vạch màu thứ hai: Chỉ giá trị hàng đơn vị trong giá trị điện trở
Vạch màu thứ ba: Chỉ hệ số nhân với giá trị số mũ của 10 dùng nhân với giá trịđiện trở
Vạch màu thứ 4: Chỉ giá trị sai số của điện trở
- Đối với điện trở 5 vạch màu
Trang 22Hình 2.5 Điện trở 5 vạch màu
Trang 23Cách đọc điện trở 5 vạch màu:
Vạch màu thứ nhất: Chỉ giá trị hàng trăm trong giá trị điện trở
Vạch màu thứ hai: Chỉ giá trị hàng chục trong giá trị điện trở
Vạch màu thứ ba: Chỉ giá trị hàng đơn vị trong giá trị điện trở
Vạch màu thứ 4: Chỉ hệ số nhân với giá trị số mũ của 10 dùng nhân với giá trị điện trở
Vạch màu thứ 5: Chỉ giá trị sai số của điện trở
2.1.3 Tụ điện
• Định nghĩa
Tụ điện là linh kiện điện tử thụ động được sử dụng rất rộng rãi trong các mạch điện tử, chúng được sử dụng trong các mạch lọc nguồn, lọc nhiễu, mạch truyền tín hiệu xoay chiều, mạch tạo dao động
Trang 24VD :103J,223K,…Trong đó ba số đầu tiên ký hiệu cho giá trị ,chữ J và K ở cuối
là kí hiệu cho sai số.Hai số đầu giữ nguyên, số thứ 3 tương ứng với số con số 0 thêm
vào sau và lấy đơn vị là “Pico”
Hình 2.6: Tụ gốm
VD : + 103J = 10000 Pico =10 Nano hoặc 471K = 470 Pico
+ 01J,.022K nếu kí hiệu như vậy thì lấy đơn vị là Micro :”.01J” = 0,01 micro=10 Nano,.022K =0,022 Micro=22 Nano
Trang 25này là có tính chất dẫn điện không đổi ,nghĩa là khi đặt điện áp một chiều lên tụ thì tụ
có một chiều điện trở rất cao và một chiều điện trở rất nhỏ do đó phải phân cực (+) và cực (–)
Tụ hoá có các giá trị thông dụng: 0,47micro;1micro ;2,2micro ; 3,3micro ; 4,7 micro ;5,6micro ;10micro; 22micro; 47micro;100micro;220micro ;470 micro,
1000micro;2200micro;4700micro
• Cách kiểm tra tụ điện trong mạch điện
Nếu nghi tụ bị hỏng ta phải hút rỗng một chân ra khỏi mạch hoặc tháo ra ngoài
để đo
Với tụ giấy hay tụ gốm thì dùng thang 1K ohm hay 10K ohm để kiểm tra, Tụ tốt
là sau khi phóng nạp kim đồng hồ phải trở về vị trí cũ , nếu kim không trở về hoặc lên
“= 0 ohm” là tụ bị dò hoặc chập
Với tụ hoá thì dùng thang 1 ohm hoặc 10 ohm kiểm tra độ phóng nạp và phải so sánh với một tụ cùng trị số điện dung và mới, nếu độ phóng nạp bằng nhau là tụ còn tốt, nếu độ phóng nạp kém tụ mới là tụ bị giảm điện
2.1.4 IC ổn áp 7805
Với những mạch điện không đòi hỏi độ ổn định của điện áp quá cao, sử dụng IC
ổn áp thường được người thiết kế sử dụng vì mạch điện khá đơn giản Các loại ổn áp thường được sử dụng là IC 7805, IC 7805 cần ổn áp 5V
Trang 26Hình 2.8 Hình ảnh thực của IC 7805
Trang 27Hình 2.9 Cấu tạo bên trong của IC 7805Cấu tạo bên trong của 7805 gồm có 1 điện trở kết hợp vói Diode Zener dùng để ghim mức điện áp, 1 transistor để khuếch đại dòng.
IC 7805 chỉ cho dòng tiêu thụ khoảng 1A trở xuống, khi ráp IC trong mạch thì Uin>Uout từ 3 đến 5V khi đó IC mới phát huy tác dụng
Thông số kỹ thuật của IC 7805
• Dòng cực đại có thể duy trì 1A
• Dòng đỉnh 2.2A
• Công suất tiêu tán nếu dùng tản nhiệt: 2W
• Công suất tiêu tán nếu dùng tản nhiệt đủ lớn: 15W
Nếu vượt quá ngưỡng trên 7805 sẽ bị cháy
Ta nên hạn chế áp lối vào 7805 để giảm công suất tiêu tán trên tản nhiệt
Thực tế áp lối ra có thể đạt giá trị nào đó trong khoảng 4.8-5.2V
Độ trôi nhiệt của 7805 xấp xỉ: 1mv/1 độ C Nó có hệ số trôi nhiệt âm, nên nhiệt
độ tăng điện áp sẽ giảm
2.1.5 Led
• Cấu tạo của Led
Trang 28LED ( viết tắt của Light Emitting Diode, có nghĩa là đi ốt phát quang) là các đi ốt
có khả năng phát ra ánh sáng hay tia hồng ngoại, tử ngoại Cũng giống như đi ốt, LED được cấu tạo từ một khối bán dẫn loại P ghép với một khối bán dẫn loại n
Thông số kỹ thuật của Led
Màu sắc Chủng loại Dòng Id(mA) Dòng Id
mã(mA)
Điện áp Ud (V)
• Hoạt động của LED
Hoạt động của LED giống với nhiều loại điốt bán dẫn
Khối bán dẫn loại p chứa nhiêu lỗ trống tự do mang điện tích dương nên khi ghépvới khối bán dẫn n ( chứa các điện tử tự do) thì các lỗ trống nayg có xu hướng chuyểnđộng khuếch tán sang khối n Cùng lúc khối p tích điện âm (thiếu hụt điện tử và dưthừa lỗ trống)
Ở biên giới hai bên mặt tiếp giáp, một số điện tử bị lỗ trống thu hút và khi chúng tiến lại gần nhau, chúng có xu hướng kết hợp với nhau tạo thành các nguyên tử trung hòa Quá trình này có thể giải phóng năng lượng dưới dạng ánh sáng (hay các bức xạ điện tử có bước sóng gần đó)
Tùy theo mức năng lượng giải phòng cao hay thấp mà bước sóng ánh sáng phát
ra khác nhau (tức màu sắc của LED sẽ khác nhau) Mức năng lượng ( và màu sắc của LED) hoàn toàn phụ thuộc vào cấu trúc năng lượng của các nguyên tử chất bán dẫn
Trang 29Các LED phát ra tia hồng ngoại được dùng trong các thiết bị điều khiển từ xa cho
đồ điện tử dân dụng