Các bộ điều khiển sử dụng vi điều khiển tuy đơn giản nhưng để vận hành và sử dụng được lại là một điều rất phức tạp. Các bộ vi điều khiển theo thời gian cùng với sự phát triển của công nghệ bán dẫn đã tiến triển rất nhanh, từ các bộ vi điều khiển 4 bit đơn giản đến các bộ vi điều khiển 32 bit, rồi sau này là 64 bit. Điện tử đang trở thành một ngành khoa học đa nhiệm vụ. Điện tử đã đáp ứng được những đòi hỏi không ngừng từ các lĩnh vực công nông lâm ngư nghiệp cho đến các nhu cầu cần thiết trong hoạt động đời sống hằng ngày.Một trong những ứng dụng rất cần thiết trong cuộc sống, đặc biệt cho học sinh sinh viên. Với môn học Vi xử lý này, nhóm chúng em đã được giao làm đồ án với đề tài “Ứng dụng họ vi điều khiển 8051 ghép nối 4 LED 7 thanh, một bàn phím 16 phím để tạo thành 1 máy tính thực hiện các phép tính đơn giản.
Trang 1MỤC LỤC
LỜI NÓI ĐẦU……… 2
CHƯƠNG 1: Phân tích yêu cầu công nghệ……… 3
1.1 Phân tích và giới hạn về thiết bị và đặc điểm của tham số………….3
1.1.1 Phân tích đặc điểm thiết bị và tham số……… 3
1.1.2 Giới hạn……… 17
1.2 Các ngoại vi ghép nối với vi điều khiển……….17
1.2.1 Ma trận phím……… 17
1.2.2 Vi điều khiển 89S52………19
1.2.3 Chuẩn RS-232……….20
1.2.4 Led 7 thanh……… 23
CHƯƠNG 2: Thiết kế hệ thống……….26
2.1 Phân tích giới hạn và tính toán lựa chọn thiết bị………26
2.1.1 Phân tích giới hạn………26
2.1.2 Tính chọn thiết bị……….26
2.2 Phương pháp quét bàn phím và ghép nối VĐK với bàn phím……….26
2.2.1 Phương pháp quét bàn phím……….26
2.2.2 Ghép nối VĐK với bàn phím………29
2.3 Xây dựng mạch nguyên lý và thuyết minh……… 31
2.4 Xây dựng thuật toán……… 31
2.4.1 Thuật toán cho khối nhập dữ liệu……… 31
2.4.2 Thuật toán cho khối hiển thị……… 33
2.5 Viết chương trình……… 34
1
Trang 22.6 Nạp code và mô phỏng mạch trên Proteus 8.0……….49
CHƯƠNG 3: Kết Luận……… 50
3.1 Các kết quả đạt được……….50
3.1 Các hạn chế và phương pháp khắc phục……… 50
Trang 3LỜI NÓI ĐẦU
Ngày nay, với những ứng dụng của khoa học kỹ thuật tiên tiến, thế giới của chúng ta
đã và đang ngày một thay đổi, văn minh và hiện đại hơn Sự phát triển của kỹ thuậtđiện tử đã tạo ra hàng loạt những thiết bị với các đặc điểm nổi bật như sự chính xáccao, tốc độ nhanh, gọn nhẹ là những yếu tố rất càn thiết góp phần cho hoạt động củacon người đạt hiệu quả cao
Các bộ điều khiển sử dụng vi điều khiển tuy đơn giản nhưng để vận hành và sửdụng được lại là một điều rất phức tạp Các bộ vi điều khiển theo thời gian cùng với sựphát triển của công nghệ bán dẫn đã tiến triển rất nhanh, từ các bộ vi điều khiển 4 bitđơn giản đến các bộ vi điều khiển 32 bit, rồi sau này là 64 bit Điện tử đang trở thànhmột ngành khoa học đa nhiệm vụ Điện tử đã đáp ứng được những đòi hỏi khôngngừng từ các lĩnh vực công - nông - lâm - ngư nghiệp cho đến các nhu cầu cần thiếttrong hoạt động đời sống hằng ngày
Một trong những ứng dụng rất cần thiết trong cuộc sống, đặc biệt cho học sinh- sinhviên Với môn học Vi xử lý này, nhóm chúng em đã được giao làm đồ án với đề tài
“Ứng dụng họ vi điều khiển 8051 ghép nối 4 LED 7 thanh, một bàn phím 16 phím
để tạo thành 1 máy tính thực hiện các phép tính đơn giản"
Qua đây chúng em xin gửi lời cảm ơn sâu sắc đến cô giáo Tống Thị Lý người đã
hướng dẫn tận tình cho nhóm em đến khi hoàn thành được đồ án này
Nhóm chúng em xin chân thành cảm ơn!
3
Trang 4CHƯƠNG 1: PHÂN TÍCH YÊU CẦU CÔNG NGHỆ.
1.1 Phân tích và giới hạn về đặc điểm thiết bị và tham số.
1.1.1 Phân tích đặc điểm thiết bị và tham số.
Máy tính bỏ túi là một công cụ học tập quen thuộc của học sinh, sinh viên, đặt biệt
là sinh viên kỹ thuật Trong đời sống hàng ngày, nó là một vật cần thiết cho việc tínhtiền trong các vụ mua bán Trong sản xuất, nó được dùng để tính toán số sản phẩm làm
ra Và còn rất nhiều ứng dụng khác của máy tính bỏ túi, cho thấy sự phổ biến, cần thiếtcủa nó Dựa trên yếu tố đó, nhóm chúng em đã lựa chọn được phương án làm việc:
Lựa chọn phương án làm việc :
Hiện nay trên thị trường có rất nhiều chủng loại máy tính điện tử với các chức năng vàứng dụng khác nhau theo đó mà cách thực hiện, lựa chọn phương án và chọn linh kiệnđiện tử cũng khác nhau.Với mục tiêu ở trên nhóm thực hiện đề tài quyết định chọnphương án dùng họ vi điều khiển 8051 để nghiên cứu và thực hiện đề tài “Thiết kếmáy tính điện tử ”
Lý do nhóm thực hiện đề tài chọn họ vi điều khiển 8051 vì :
+ Vi điều khiển 8051 là một dòng vi điều khiển tương đối mạnh với nhiều tính năng
và còn thông dụng trên thị trường hiện nay Do đó có thể dễ dàng mở rộng thiết kế cácứng dụng khác
+ Hoạt động hiệu quả và rất ổn định mà giá thành lại tương đối rẻ so với các vi điềukhiển khác Phù hợp cho đối tượng học sinh, sinh viên
+ Cách lập trình đa dạng với nhiều ngôn ngữ khác nhau như C, Assambly giúp chongười dùng có thể linh động lựa chọn ngôn ngữ lập trình cho phù hợp với khả năng và
sở thích của mình
A, Giới thiệu về vi điều khiển 8051.
Trang 5làm việc với 8 bit dữ liệu tại một thời điểm Dữ liệu lớn hơn 8 bít được chia ra thành các dữ liệu 8 bit để cho xử lý 805 1 có tất cả 4 cổng vào - ra I/O mỗi cổng rộng 8 bit Mặc dù 805 1 có thể có một ROM trên chíp cực đại là 64 K byte, nhưng các nhà sản xuất lúc đó đã cho xuất xưởng chỉ với 4K byte ROM trên chíp.
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ọ thích với điều kiện họ phải để mã lại
tương thích với 8051 Điều này 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 chíp khác nhau được bán bởi hơn nửa các nhàsản xuất Điều này quan trọng là mặc dù có nhiều biến thể khác nhau của 8051 về tốc
độ và dung lương nhớ ROM trên chíp, nhưng tất cả chúng đều tương thích với 8051ban đầu về các lệnh
AT89C51 cung cấp những đặc tính chuẩn như : 4 Kbyte bộ nhớ chỉ đọc có thế xóa vàlập trình nhanh (EPROM), 128 Byte RAM, 32 đường I/O, 2 TIME/COUNTER 16 Bit,
5 vecto ngắt có cấu trúc 2 mức ngắt, một Port nối tiếp bán song công, 1 mạch dao độngtạo xung Clock và bộ dao động ON-CHIP
Các đặc điểm của chip AT89C51 được tóm tắt như sau :
4Kbyte bộ nhớ có thể lập trình nhanh, có khả năng tới 1000 chu kỳ ghi/xóa
Tần số hoạt động từ: 0Hz đến 24MHz
3 mức khóa bộ nhớ lập trình
2 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
64KB vùng nhớ mã ngoài
64KB vùng nhớ dữ liệu ngoại
4µs cho hoạt động nhân hoặc chia
5
Trang 6Hình 1.1: Sơ đồ khối cấu trúc bên trong của 8051.
Ngoài 8051 ra, còn có 2 bộ vi điều khiển khác thuộc họ 80xx là: 8052 & 8031 Nhưng giới hạn đề tài và lựa chọn 8051, nên nhóm chúng em trình bày cụ thể về 8051
BUS CONTROL
SERIAL PORT
EXTERNAL
INTERRUPTS
CPU
ON - CHIP RAM
ETC TIMER 0 TIMER 1
ADDRESS/DATA
P0
P1
P2P3
Trang 7B, Sơ đồ khối vi điều khiển 89C51.
Hình 1.2: Sơ đồ khối chi tiết của vi điều khiển 8051.
7
Trang 8C, Sơ đồ và chức năng của các chân.
- Sơ đồ chân:
Hình 1.3: Sơ đồ chân của vi điều khiển 89C51.
- Chức năng:
Chân 40 : nối với nguồn nuôi +5V
Chân 20 : nối đất (Mass, GND)
Chân 29 (PSEN – Program Store Enable) : là tín hiệu điều
khiển xuất ra của 8051, nó cho phép chọn bộ nhớ ngoài và được nối chung với chân của OE (Output Enable) của EPROM ngoài
để cho phép đọc các byte của chương trình Các xung tín hiệu PSEN hạ thấp trong suốt thời gian thi hành lệnh Những mã nhị phân của chương trình được đọc từ EPROM qua bus dữ liệu và được chốt vào thanh ghi lệnh của 8051 bởi mã lệnh (Chú ý việc
Trang 9 Chân 30 (ALE – Address Latch Enable) là tín hiệu điều khiển
xuất ra của 8051, nó cho phép kênh Bus địa chỉ và Bus dữ liệu của Port 0
Chân 31 (EA – Eternal Access) được đưa xuống thấp cho phép
chọn bộ nhớ mã ngoài đối với 8051
Đối với 8051 thì :EA = 5V : chọn ROM nội, EA = 0V : chọn
ROM ngoại
32 chân còn lại chia làm 4 cỗng vào ra : Vào ra , ở đây là có thể dùng chân đó để đọc mức logic (0;1 tương ứng với 0V;5V) vào hay xuất mức logic ra (0,1)
P0 từ chân 39 -> 32 tương ứng là các chân P0_0 -> P0_7
P1 từ chân 1 -> 8 tương ứng là các chân P1_0 -> P1_7
P2 từ chân 21 -> 28 tương ứng là các chân P2_0 -> P2_7
P3 từ chân 10 ->17 tương ứng là các chân P3_0 -> P3_7
Riêng cổng 3 có 2 chức năng ở mỗi chân như trên hình vẽ :
P3.0 – RxD : chân nhận dữ liệu nối tiếp khi giao tiếp RS232
(COM)
P3.1 – TxD : phân truyền dữ liệu nối tiếp khi giao tiếp RS232.
P3.2 – INT0 : interupt 0, ngắt ngoài 0.
P3.3 – INT1 : interupt 1, ngắt ngoài 1.
P3.4 – T0 : Timer0, đầu vào timer0.
P3.5 – T1 : Timer1, đầu vào Timer1.
P3.6 – WR : Write, điều khiển ghi dữ liệu.
P3.7 – RD : Read, điều khiển đọc dữ liệu.
Chân 18, 19 nối với thạch anh tạo thành mạch tạo dao động cho
vi điều khiển
9
Trang 10 Tần số thạch anh thường dùng trong các ứng dụng là :
11.0592Mhz (Giao tiếp với cổng COM của máy tính) và 12Mhz Tần số tối đa là 24Mhz Tần số càng lớn thì vi điều khiển xử lí càng nhanh
Bảng 1.1 : Các cổng (Port) và mức xuất logic tương ứng.
D, Cấu trúc bộ nhớ.
Các vi điều khiển thuộc họ 8051 đều tổ chức thành 2 không gian chương trình và dữ liệu Kiến trúc vi xử lý 8 bit của 8051 này cho phép truy nhập và tính toán nhanh hơn đối với không gian dữ liệu nhờ việc phân chia 2 không gian bộ nhớ chương trình và dữliệu như trên Tuy nhiên bộ nhớ ngoài được truy nhập bởi hệ thống 16 bit địa chỉ vẫn
có thể thực hiện nhờ thanh ghi con trỏ
Bộ nhớ chương trình (ROM, EPROM) là bộ nhớ chỉ đọc, có thể mở rộng tối đa
64Kbyte Vói họ vi điều khiển 89xx, bộ nhớ chương trình được tích hợp sẵn trong chip
có kích thước nhỏ nhất là 4kByte Với các vi điều khiển không tích hợp sẵn bộ nhớ chương trình trên chip, buộc phải thiết kế bộ nhớ chương trình bên ngoài Ví dụ sử
Trang 11bộ nhớ dữ liệu ngoài lên tới 64kByte Với những vi điều khiển không tích hợp ROM trên chip thì vẫn có RAM trên chip là 128byte Khi sử dụng RAM ngoài, CPU đọc và ghi dữ liệu nhờ tín hiệu trên các chân RD và WR Khi sử dụng cả bộ nhớ chương trình
và bộ nhớ dữ liệu bên ngoài thì buộc phải kết hợp chân RD và PSEN bởi cổng logic AND để phân biệt tín hiệu truy xuất dữ liệu trên ROM hay RAM ngoài
- Bộ nhớ chương trình:
Hình 1.4: Cấu trúc bộ nhớ và địa chỉ các ngắt trên bộ nhớ chương trình.
Hình 1.4 mô tả cấu trúc bộ nhớ chương trình Sau khi khởi động, CPU bắt đầu thực hiện chương trình ở vị trí 0000H Hình bên phải mô tả địa chỉ ngắt mặc định trên bộ nhớ chương trình Mối khi xảy ra ngắt, con trỏ của CPU sẽ nhảy đến đúng địa chỉ ngắt tương ứng và thực thi chương trình tại đó Ví dụ ngắt ngoài 0 sẽ có địa chỉ là 0003H, khi xảy ra ngắt ngoài 0 thì con trỏ chương trình sẽ nhảy đến đúng địa chỉ 0003H để thực thi chương trình tại đó Nếu trong chương trình ứng dụng không xử dụng đến ngắt ngoài 0 thì địa chỉ 0003H vẫn có thể dùng cho mục đích khác (sử dụng cho bộ nhớ chương trình) Bởi vậy khi lập trình bằng ngôn ngữ Assembly, phần đầu chương trình bao giờ cũng phải cho chương trình nhảy đến địa chỉ cao hơn địa chỉ chứa các ngắt và mã lệnh viết cho các ngắt thì phải viết đúng địa chỉ của các ngắt tương ứng
- Bộ nhớ dữ liệu:
11
Trang 12Hình 1.5: Cấu trúc bộ nhớ dữ liệu trong và bộ nhớ dữ liệu ngoài.
Hình 1.5 mô tả cấu trúc bộ nhớ dữ liệu trong và bộ nhớ dữ liệu ngoài của họ vi điều khiển 8051 CPU sẽ dùng đến các chân RD và WR khi truy cập đến bộ nhớ dữ liệu ngoài
Hình 1.6: Cấu trúc bộ nhớ trong.
Hình 1.6 mô tả cấu trúc bộ nhớ dữ liệu trong chip, được chia thành 3 khối là 128 byte
biệt
Trang 13Hình 1.7: Cấu trúc 128 byte thấp của bộ nhớ dữ liệu.
Hình 1.7 mô tả cấu trúc 128 byte thấp của bộ nhớ dữ liệu của họ vi điều khiển 8051
32 byte đầu tiên (00H-1FH) được sử dụng cho 4 bộ 8 thanh ghi R0-R7 Hai bit của thanh ghi đặc biệt PSW sẽ lựa chọn 1 trong 4 bộ thanh ghi mà vi điều khiển sẽ dùng trong khi thực thi chương trình
8051 chứa 210 vị trí bit được định địa chỉ trong đó 128 bit chứa trong các byte ở địa chỉ từ 20H đến 2FH (16 byte x 8 bit = 128 bit) và phần còn lại chứa trong các thanh ghi đặc biệt Ngoài ra 8051 còn có các port xuất/nhập có thể định địa chỉ từng bit, điều này làm đơn giản việc giao tiếp bằng phần mềm với các thiết bị xuất/nhập đơn bit Vùng RAM đa mục đích có 80 byte đặt ở địa chỉ từ 30H đến 7FH, bên dưới vùng này
từ địa chỉ 00H đến 2FH là vùng nhớ có thể được sử dụng tương tự Bất kỳ vị trí nhớ nào trong vùng RAM đa mục đích đều có thể được truy xuất tự do bằng cách sử dụng các kiểu định địa chỉ trực tiếp hoặc gián tiếp
Cũng như các thanh ghi từ R0 đến R7, ta có 21 thanh ghi chức năng đặc biệt SFR chiếm phần trên của Ram nội từ địa chỉ 80H đến FFH Cần lưu ý là không phải tất cả
128 địa chỉ từ 80H đến FFH đều được định nghĩa mà chỉ có 21 địa chỉ được định nghĩa
13
Trang 1489 Không định địa chỉ từng bit
87 Không định địa chỉ từng bit
83 Không định địa chỉ từng bit
82 Không định địa chỉ từng bit
81 Không định địa chỉ từng bit
Bảng 1.2: Bảng liệt kê các thanh ghi có chức năng đặc biệt.
Trang 15GATE Bit điều khiển cổng Khi được set lên 1,
bộ định thời chỉ hoạt động trong khi INT1
8 bit
thời chia xẻ
3 GATE Bit điều khiển cổng cho bộ định thời 0
2 C/T Bit chọn chức năng đếm/định thời cho bộ
định thời 0
1 M1 Bit chọn chế độ thứ nhất cho bộ định thời
0
0 M0 Bit chọn chế độ thứ hai cho bộ định thời 0
TCON Điều khiển bộ định thời
Cờ tràn của bộ định thời 1 Cờ này được set bởi phần cứng khi có tràn, được xóa bởi phần mềm, hoặc bởi phần cứng khi bộ VXL trỏ tới trình phục vụ ngắt
Bit điều khiển hoạt động của bộ định thời
1 Bit này được set hoặc xóa bởi phần mềm để điều khiển bộ định thời hoạt động hay nhưng
TCON.5 TF0 Cờ tràn của bộ định thời 0 TCON.4 TR0 Bit điều khiển hoạt động của bộ định thời
Bộ định thời 2 TF2 hoặc EXF2 002BH
Trang 16Bảng 1.4: Các nguồn ngắt, cờ, và địa chỉ vecto tương ứng.
Hình 1.8: Qúa trình vận hành của Timer và các ngắt.
1.1.2 Giới hạn.
Do trình độ có hạn nên nhóm thực hiện đề tài mới chỉ dừng lại ở việc lập trình tínhtoán các phép tính đơn giản và thông dụng Nếu còn thời gian và điều kiện cho phép,nhóm thực hiện đề tài sẽ tìm hiểu và mở rộng những phép tính phức tạp cũng nhưnghiên cứu các ứng dụng khác của họ vi điểu khiển 8051
Việc thi công mạch còn nhiều hạn chế, chỉ dừng lại ở mức nghiên cứu nên chưa tối ưuđựơc hết các tính năng của vi điều khiển 8051 để có thể cạnh tranh với các sản phẩmcùng loại khác
1.2 Các ngoại vi ghép nối với vi điều khiển.
1.2.1 Ma trận phím.
Ma trận phím là một "thiết bị nhập" chứa các nút nhấn cho phép người dùng nhập cácchữ số, chữ cái hoặc ký hiệu vào bộ điều khiển Keypad không chứa tất cả bảng mãASCII như keyboard và vì thế keypad thường được tìm thấy trong các thiết bị chuyêndụng Các nút nhấn trên các máy tính điện tử cầm tay là một ví dụ về keypad Sốlượng
Trang 17nút nhấn của một keypad thay đổi phụ thuộc vào yêu cầu ứng dụng
Hình 1.9: Mô hình ma trận phím 4x4 trong proteus.
Cách bố trí ma trận hàng và cột là cách chung mà các ma trận phím sử dụng Cũng giống như các ma trận LED, các nút nhấn cùng hàng và cùng cột được nối với nhau, vìthế với ma trận phím 6x6 sẽ có tổng cộng 12 ngõ ra (6 hàng và 6 cột)
17
Trang 18Hình 1.10: Mạch điện ma trận phím 4x4 1.2.2 Vi điều khiển 89S52.
- Sơ đồ chân:
Hình 1.11: Sơ đồ chân vi điều khiển 89S52.
Trang 19Hình 1.12: RS 232 trong proteus.
A, Giới thiệu.
Được xây dựng phục vụ chủ yếu trong việc ghép nối điểm – điểm giữa hai thiết bịđầu cuối (DTE, Data Terminal Equipment), mặc dù tính năng hạn chế nhưng chuẩnRS232 có từ lâu đời nhất vì thế nên nó được sử dụng rộng rãi Ngày nay mỗi máy tính
cá nhân có vài cổng RS232( cổng com) có thể sử dụng nối các thiết bị ngoại vi hoặcvới các máy tính khác
B, Ưu điểm của giao diện nối tiếp RS 232.
+ Khảnăng chống nhiễu của các cổng nối tiếp cao+ Thiết bị ngoại vi có thể tháo lắp ngay cả khi máy tính đang được cấp điện+ Các mạch điện đơn giản có thể nhận được điện áp nguồn nuôi qua công nối tiếp
C, Những đặc điểm cần lưu ý trong chuẩn RS 232.
19
Trang 20+ Trong chuẩn RS232 có mức giới hạn trên và dưới (logic 0 và 1) là +-12V Hiện nay đang được cố định trở kháng tải trong phạm vi từ7000Ω÷ 3000Ω
+ Mức logic 1 có điện áp nằm trong khoảng -3V đến -12V, mức logic 0
từ 3V đến 12V
+ Tốc độ truyền nhận dữ liệu cực đại là 100kbps ( ngày nay có thể lớn hơn)
+ Các lối vào phải có điện dung nhỏ hơn 2500pF
+ Trở kháng tải phải lớn hơn 3000 ôm nhưng phải nhỏ hơn 7000 ôm
+ Độ dài của cáp nối giữa máy tính và thiết bị ngoại vi ghép nối qua cổng nối tiếp RS232 không vượt qua 15m nếu chúng ta không sử model
+ Các giá trị tốc độ truyền dữ liệu chuẩn :
50,75,110,750,300,600,1200,2400,4800,9600,19200,28800,38400 56600,115200 bps
D, Qúa trình truyền dữ liệu.
- Qúa trình truyền dữ liệu:
Truyền dữ liệu qua cổng nối tiếp RS232 được thực hiện không đồng bộ Do vậynên tại một thời điểm chỉ có một bit được truyền (1 kí tự) Bộ truyền gửi một bit bắtđầu (bit start) để thông báo cho bộ nhận biết một kí tự sẽ được gửi đến trong lầntruyền bit tiếp the Bit này luôn bắt đầu bằng mức 0 Tiếp theo đó là các bit dữ liệu(bits data) được gửi dưới dạng mã ASCII( có thể là 5,6,7 hay 8 bit dữ liệu) Sau đó làmột Parity bit ( Kiểm tra bit chẵn, lẻ hay không) và cuối cùng là bit dừng - bit stop cóthể là 1, 1,5 hay 2 bit dừng
Trang 21Ngoài tốc độ bit còn một tham số để mô tả tốc độ truyền là tốc độ Baud Tốc độBaud liên quan đến tốc độ mà phần tử mã hóa dữ liệu được sử dụng để diễn tả bitđược truyền còn tôc độ bit thì phản ánh tốc độ thực tế mà các bit được truyền.Vì mộtphần tử báo hiệu sự mã hóa một bit nên khi đó hai tốc độ bit và tốc độ baud là phảiđồng nhất
Một số tốc độ Baud thường dùng: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600,
19200, 28800, 38400, 56000, 115200 … Trong thiết bị họ thường dùng tốc độ là
19200, Khi sử dụng chuẩn nối tiếp RS232 thì yêu cầu khi sử dụng chuẩn là thời gian chuyển mức logic không vượt quá 4% thời gian truyền 1 bit Do vậy, nếu tốc độ bit càng cao thì thời gian truyền 1 bit càng nhỏ thì thời gian chuyển mức logic càng phải nhỏ Điều này làm giới hạn tốc Baud và khoảng cách truyền
- Bit chẵn lẻ:
Đây là bit kiểm tra lỗi trên đường truyền Thực chất của quá trình kiểm tra lỗi khi truyền dữ liệu là bổ xungthêm dữ liệu được truyền để tìm ra hoặc sửa một số lỗi trong quá trình truyền Do đó trong chuẩn RS232 sử dụng một kỹ thuật kiểm tra chẵn lẻ
Một bit chẵn lẻ được bổ sung vào dữ liệu được truyền để ch thấy số lượng các bit "1"được gửi trongmột khung truyền là chẵn hay lẻ
Một Parity bit chỉ có thể tìm ra một số lẻ các lỗi chả hạn như 1,3,,5,7,9 Nếu như một bit chẵn được mắc lỗi thì Parity bit sẽ trùng giá trị với trường hợp không mắc lỗi vì thếkhông phát hiện ra lỗi Do đó trong kỹ thuật mã hóa lỗi này không được sử dụng trong trường hợp có khả năng một vài bit bị mắc lỗi
E, IC MAX 232.
Max232 là IC chuyên dùng cho giao tiếp giữa RS232 và thiết bị ngoại vi Max232 là
IC của hãng Maxim Đây là IC chay ổn định và được sử dụng phổ biến trong các mạchgiao tiếp chuẩn RS232 Giá thành của Max232 phù hợp (12K hay 10K) và tích hợp trong đó hai kênh truyền cho chuẩn RS232 Dòng tín hiệu được thiếtkế cho chuẩn RS232 Mỗi đầu truyền ra và cổng nhận tín hiệu đều được bảo vệ chống lại sự phóng
21
Trang 22tĩnh điện ( hình như là 15KV) Ngoài ra Max232 còn được thiết kế với nguồn +5V cung cấp nguồn công suất nhỏ.
1.2.4 LED 7 thanh.
-Giới thiệu chung về led 7 thanh.
LED 7 thanh được dùng nhiều trong các mạch hiện thị thông báo, hiện thị số, kí
tự đơn giản LED 7 được cấu tạo từ các LED đơn sắp xếp theo các thanh nét để cóthể biểu diễn các chữ số hoặc các kí tự đơn giản như từ số 0 đến 9 và A đến F chả hạn.LED 7 thanh dùng để hiện số thì rất đẹp và dễ nhìn Tùy vào kích thước của số và kí tự
mà mỗi thanh được cấu tạo bởi một hay nhiều LED đơn Các LED đơn đó được ghép
và được đặt tên bằng các chữ cái a g và có một dấu chấm dot ( dấu chấm này có thểsáng và tắt tùy theo yêu cầu) được cấu tạo bởi 1 LED đơn Qua đó người ta chỉ cần 8bit tương ứng với 8 LED đơn để điều khiển được và hiện thị số từ 0 đến 9 và các kí tự
từ A đến F
Hình 1.13: Hình ảnh led 7 thanh trong proteus.
Hiện nay LED 7 được sản xuất theo 2 kiểu là Anot chung và Katot chung và được điềukhiển làm việc tương tự như bơm dòng hay nuốt dòng của các LED đơn có trong LED7 (Thường hay thiết kế theo kiểu bơm dòng cho LED) Thông thường trong các
Trang 23Hình 1.14: Sơ đồ chân led 7 thanh.
Mỗi LED 7 thanh hiển thị được 1 digit của mã nhị thập phân thực hiện việc chuyển đổimột digit mã nhị- thập phân thành số hệ thập phân tương ứng hiển thị trên LED 7 thanh cần có 1 bộ giải mã Để đơn giản, xét bộ giải mã BCD cho hiển thị LED 7 thanh Mỗi số hệ thập phân được thể hiện bằng các thanh tương ứng của LED phát sáng Cụ thể là:
Trang 24Thanh đi-ốt sẽ sáng khi có kích thích bằng điện áp với mức hợp lí Vậy nếu sử dụngLED 7 thanh có a-nốt chung thì kích thích sẽ là điện áp có mức thấp, nghĩa là cửa ra của bộ giải mã có mức tích cực là mức thấp.
- Ghép nối LED 7 thanh:
Có 2 cách ghép nối thường dùng:
+ Dùng trực tiếp các chân điều khiển (vi xử lý):
Đối với cách này thì nhìn thì rất tốn chân của vi xử lý Và dòng của LED sẽ dồn tất cả
về vi xử lý Nếu một hệ thống lớn thì cách này không ổn vì ảnh hưởng đến vi xử lý và nhiều dòng dồn về vi xử lý sẽ làm vi xử lý nóng và dẫn tới chết ( chúng ta tưởng tượngxem nếu mà hệ thống nhiều phần điều khiển từ các chân vi xử lý mà tất cả các tải điều khiển dồn trực tiếp dòng về vi xử lý thì lúc đó dòng trong 1 thời điểm khá lớn vượt quángưỡng cho phép của vi xử lý
Dòng mà vi xử lý chịu đựng được cũng khá nhỏ(dưới 100mA) Các này chỉ dùng được hệ thống điều khiển ít, mạch dùng vi xử lý khá đơn giản như hiện thị LED, đếm
số từ 0 đến 9 chả hạn
+ Dùng IC giải mã BCD sang LED 7 thanh.
Sử dụng IC giải mã 7447 để giả mã từ mã BCD sang mã LED7 Đối với cách này thì trông rất ổn Vừa tiếp kiệm được chân vi xử lý và tránh được dòng dồn về vi xử lý (dòng ở đây được dồn về 7447) Đây là cách mà người thiết kế thường dùng trong các
hệ thống cần đến hiện thị
Thông thường các thiết kế, LED 7 thanh được dùng để hiện thị các giá trị các giá trị
số từ 0 đến 9 và đôi khi cần phải hiện thị các kí tự đơn giản như A đến F trong hệ thống để báo trạng thái của hệ thống Các giá trị hiện thị bao gồm nhiều chữ số tức là chúng ta phải dùng đến nhiều LED7 ghép lại thì mới hiện thị được nhiều số