Thiết kế, chế tạo hệ thống cảnh báo trộm, cháy

  • Số trang: 80 |
  • Loại file: PDF |
  • Lượt xem: 185 |
  • Lượt tải: 0
nhattuvisu

Đã đăng 26946 tài liệu

Mô tả:

- 1- LỜI NÓI ðẦU Trong thời gian qua tình hình trộm tài sản cá nhân, gia ñình hay doanh nghiệp diễn biến hết sức phức tạp. Việc phát hiện kẻ trộm ñột nhập vào nhà, kho hàng, các ngân hàng, những nơi cất tài sản quý hiếm, những tài liệu mật là rất quan trọng. Thủ ñoạn của bọn kẻ trộm là thường lợi dụng sơ hở của bảo vệ hay chủ nhà ñể trộm tài sản. Thủ ñoạn của chúng ngày càng tinh vi, xảo quyệt. Nếu ta chỉ sử dụng các hệ thống báo ñộng tại chỗ thì kẻ trộm có thể dễ dàng khống chế tắt tất cả hệ thống ñó làm cho việc phát hiện trộm khó khăn, hoặc khi chúng ta ñang ñi xa thì hệ thống báo ñộng tại chỗ cũng không có tác dụng, gây thiệt hại. Ngày nay, với sự phát triển như vũ bão của ðiện tử viễn thông và Công nghệ thông tin. ðiện thoại di ñộng ngày nay ñã không còn là thứ xa xỉ nữa mà ngược lại còn rất phổ biến, luôn luôn bên cạnh con người ở bất cứ ñâu. Nếu ta sử dụng ñiện thoại di ñộng ñể dùng vào việc báo trộm thì rất là hiệu quả, nó có thể khắc phục ñược các nhược ñiểm của hệ thống báo ñộng tại chỗ. Và nếu kết hợp luôn cả hai hệ thống này thì hiệu quả sẽ càng cao hơn, giúp phát hiện sớm mọi sự ñột nhập, giảm thiểu thiệt hại. Trong ñời sống chúng ta luôn tồn tại những khu vực dễ cháy, một khi có cháy xảy ra thì hậu quả thật khôn lường, gây thiệt hại rất lớn về người và của. Ngày nay việc phòng cháy chữa cháy trở thành mối quan tâm hàng ñầu của nước ta và nhiều nước trên thế giới, nó trở thành nghĩa vụ của mọi người dân. Trên các phương tiện thông tin ñại chúng luôn tuyên truyền sâu rộng cho mọi người tầm quan trọng của việc phòng cháy chữa cháy, nhằm hạn chế mức thấp nhất hậu quả do các vụ cháy gây ra. Các vụ cháy thường hay xảy ra vào ban ñêm, tại những nơi có nhiều vật liệu dễ cháy, nổ, những khu dân cư ñông ñúc, khu chung cư cao tầng lúc ta lơ là, mất cảnh giác, bất cẩn, nên không khống chế kịp ñể ñám cháy lan rộng gây thiệt hại. Vì vậy, việc lắp ñặt hệ thống báo cháy tại các khu vực này là ñiều rất quan trọng và cần thiết. Xuất phát từ những yêu cầu thực tế trên em quyết ñịnh chọn ñề tài: “Thiết kế, chế tạo hệ thống cảnh báo trộm, cháy”. ðề tài gồm có 4 chương: - Chương 1: Tổng hợp những nghiên cứu Hệ thống chống trộm, cháy - Chương 2: Phương pháp và nội dung nghiên cứu - Chương 3: Thực nghiệm, phân tích kết quả - Chương 4: Kết luận – ðề xuất - 2Với mục ñích sau khi thực hiện xong ñề tài có thể ñem ra ứng dụng trong thực tế, nhằm phục vụ việc cảnh báo trộm, cháy hiệu quả, kịp thời cho các hộ gia ñình, cơ quan, xí nghiệp, nhà xưởng, giảm thiểu hậu quả ñáng tiếc xảy ra. Do thời gian thực hiện ñề tài và kiến thức hiểu biết có hạn nên ñề tài của em không thể tránh khỏi những sai sót, rất mong sự góp ý chân thành của các quý thầy cô ñể ñề tài của em ñược hoàn thiện hơn. Em xin chân thành cảm ơn! - 3- Chương 1: TỔNG HỢP NHỮNG NGHIÊN CỨU HỆ THỐNG CHỐNG TRỘM, CHÁY - 41.1. Cơ sở lý luận Ngày nay, với sự phát triển như vũ báo của khoa học kỹ thuật, ñặc biệt là sự phát triển của Công nghệ vi ñiều khiển, vi xử lý, những ứng dụng của nó ngày càng ñược con người khai thác và vận dụng hiệu quả, tạo ra những sản phẩm thông minh, hiện ñại, góp phần giảm thiểu sức lao ñộng chân tay của con người, tiết kiệm ñược thời gian. Kỹ thuật ứng dụng vi ñiều khiển ngày nay ñã thâm nhập và có mặt trên khắp tất cả các lĩnh vực khoa học kỹ thuật của con người, từ những hệ thống lớn mang tính công nghiệp ñến những hệ thống nhỏ dân dụng. Trong các ứng dụng dân dụng không thể không kể ñến lĩnh vực an ninh, tiêu biểu là hệ thống cảnh báo trộm, cháy là ñang ñược toàn thể xã hội quan tâm. Thông thường, một hệ thống chống trộm, cháy sẽ bao gồm một thiết bị trung tâm có thể kết nối với những loại thiết bị báo, bao gồm: khói, xì gas, cảm biến phát hiện kính vỡ, cảm biến hồng ngoại phát hiện chuyển ñộng, cảm biến từ, cảm biến laser, loa-còi-nút khẩn thông báo, v.v. . Ứng với mỗi cảm biến là một thiết bị ñược kết nối với trung tâm xử lý, tùy theo nhu cầu sử dụng mà thiết bị trung tâm có khả năng kết nối ña dạng như kết nối với máy tính, ñiện thoại bàn, ñiện thoại di ñộng hoặc trung tâm cảnh báo ñể thông báo cho người sử dụng biết tình trạng, nguy cơ xảy ra sự cố. Trung tâm xử lý càng cao cấp thì khả năng hoạt ñộng của hệ thống càng thông minh. ðể có thể thiết kế ñược một hệ thống cảnh báo trộm, cháy hiệu quả và tối ưu nhất thì ñòi hỏi ta phải có ñược những kiến thức cơ bản về vi xử lý, vi ñiều khiển, kỹ thuật cảm biến, kỹ thuật lập trình cho vi xử lý, kỹ thuật ñiện tử và một phần kiến thức bên lĩnh vực ðiện tử Viễn thông. 1.2. Tình hình nghiên cứu trong và ngoài nước Hệ thống cảnh báo trộm, cháy ngày nay ñã ngày càng trở nên phổ biến và không thể thiếu ñược ñối với các hộ gia ñình, cơ quan xí nghiệp…Ở các nước tiên tiến thì hệ thống này ñã có từ lâu và trở nên rất thông dụng. Như tại các công ty, nhà xưởng, nhà riêng, nhà kho, nhà chứa các vật liệu dễ cháy nổ, nơi chứa các tài liệu mật của Chính phủ hay các Viện bảo tàng. Tại Nga, có những nhà máy ñiện, những kho lưu trữ tài liệu quý ñã ứng dụng hệ thống cảnh báo cháy, trộm kết hợp với ñiều khiển thiết bị từ xa và tự ñộng báo ñộng qua ñường dây ñiện thoại ñể tự ñộng ñóng ngắt những nơi cao áp, tự ñộng quay số báo ñộng khi có sự cố, tự ñộng xả bình chữa cháy, mang lại hiệu - 5quả rất cao, và cũng tại Nga ñã có hệ thống báo ñộng và ñiều khiển thiết bị thông qua mạng Internet. Ở Mỹ, tại những Cơ quan ñã cho lắp ñặt hệ thống cảnh báo trộm, cháy theo mô hình nhà thông minh tại các văn phòng chứa các tài liệu mật, quan trọng hệ thống ñược lắp ñặt bảo mật và ñược ñiều khiển thông qua một tổng ñài nội bộ. Các hãng sản xuất hệ thống cảnh báo trộm cháy Nhật Bản như Nittan, Nohmi ñã cho ra mắt Hệ thống báo ñộng, báo trộm ña năng với các ñặc tính hiện ñại như: - Màn hình LCD hiển thị ngày, giờ, trạng thái hệ thống, vùng báo ñộng - Có thể ñiều khiển bằng Remote. - Khả năng kết hợp cả ñầu báo không dây và có dây. - Khi có báo ñộng hệ thống sẽ hú còi, gọi ñiện thoại, gửi tin nhắn, chỉ rõ vùng báo ñộng cho gia chủ. - Khi có kẻ gian cắt ñường dây hoặc cúp ñiện hệ thống sẽ tự ñộng gửi tin nhắn báo cho gia chủ biết. - … Hình 1.1. Hệ thống cảnh báo trộm không dây của hãng SOAN (ðài Loan) - 6Trên ñây là những thành tựu ñạt ñược ở các nước tiên tiến. Ở Việt Nam: - Cũng có một số ñề tài nghiên cứu sử dụng mạng ñiện thoại ñể ñiều khiển làm hệ thống cảnh báo cháy nhưng chưa thực sự hoàn chỉnh và tối ưu. Các ñề tài này chỉ mới là ứng dụng cho hệ thống ñiện thoại cố ñịnh mà chưa làm ñược ñối với thuê bao di ñộng, trong khi ñiện thoại di ñộng bây giờ lại quá thông dụng. Phương án phản hồi không chính xác do chỉ phản hồi bằng tiếng nhạc nên hiệu quả báo ñộng không cao, dễ báo ñộng nhầm. - Có một số ñề tài nghiên cứu sử dụng mạng ñiện thoại di ñộng ñể cảnh báo cháy nhưng chỉ là trên lý thuyết, chưa áp dụng vào thực tế. - Phòng cảnh sát hình sự Công an Hà Nội vừa nghiên cứu thành công thiết bị an ninh chống cướp tiệm vàng có thể áp dụng hữu hiệu cho các cơ sở kinh doanh vàng nhưng chỉ áp dụng với những doanh nghiệp kinh doanh nhỏ. Hình 1.2. Thiết bị an ninh chống cướp tiệm vàng của Công an Hà Nội. Trên thị trường Việt Nam Hệ thống cảnh báo trộm cháy bây giờ cũng rất ña dạng và phong phú, phù hợp với tình hình, ñiều kiện hoàn cảnh, nhu cầu và mục ñích riêng của từng ñối tượng sử dụng. Nhưng chủ yếu là hàng nhập khẩu từ nước ngoài. Một số thương hiệu có thể kể ñến như Nohmi, Nittan (Nhật), Hochiki, Horing, Hongchang, Woosung, Horing Lih (ðài Loan), Caddx (Mỹ). . . có xuất xứ từ nhiều nước: Trung Quốc, ðài Loan, Hàn Quốc, Nhật, Mỹ… - 7- Hình 1.3. Hệ thống chống trộm không dây ñiều khiển cho nhiều khu vực. Hình 1.4 Hệ thống chống trộm không dây của hãng Guardsman Giá cả của những loại thiết bị này dao ñộng khá lớn và tùy thuộc vào công dụng, chức năng và tầm hoạt ñộng (số vùng và thiết bị quản lý, diện tích quản lý…). Vì vậy việc lắp ñặt hệ thống cảnh báo hiện ñại cho hộ gia ñình, các công ty nhỏ là vấn ñề còn xa xỉ, chưa ñược phổ biến, chúng chỉ ñược áp dụng cho những công trình tầm cỡ, các hệ thống này chưa trở thành là sản phẩm dân phổ biến do giá thành sản phẩm còn cao. - 8- Chương 2: PHƯƠNG PHÁP VÀ NỘI DUNG NGHIÊN CỨU - 92.1. Mục ñích yêu cầu ñề tài Nhằm phục vụ việc cảnh báo trộm, cháy tự ñộng cho các hộ gia ñình, khu chung cư cao tầng, các nhà máy xí nghiệp và những nơi cần thiết khác. Từ mục ñích trên thì Hệ thống cảnh báo trộm, cháy cần ñảm bảo ñuợc các yêu cầu sau: - Sử dụng tiện lợi và phạm vi áp dụng rộng mà không cần thay ñổi phần cứng. - Báo ñộng kịp thời nhằm giảm nhẹ thiệt hại do các vụ ñột nhập và các vụ hỏa hoạn gây ra. - Có thể báo ñộng ñến nhiều số ñiện thoại khác nhau kịp thời và chính xác. - Hiển thị các thông số cần thiết cho người dùng. - Hoạt ñộng ổn ñịnh và ít sai số, hạn chế báo ñộng giả. - Giá thành sản phẩm hạ. 2.2. Sơ ñồ khối tổng thể Một hệ thống cảnh báo trộm, cháy thông thường có ba bộ phận chính hoạt ñộng ñộc lập ñó là: một bộ ñiều khiển trung tâm (kiểm soát trung tâm); các thiết bị ñầu dò ngoại vi khác (các sensor) như ñầu báo nhiệt, ñầu báo trộm, ñầu báo khói. . ; các ñầu báo hiệu như loa, ñèn nháy, còi hú. . . Xuất phát từ mục ñích và yêu cầu trên, em thiết kế hệ thống tự ñộng với các thành phần thể hiện rõ trên sơ ñồ khối hình 2.1: - 10- HỘP ðIỀU KHIỂN TRUNG TÂM THIẾT BỊ ðẦU VÀO KHỐI CẢNH BÁO CHÁY HẸN GIỜ HỆ THỐNG KHỐI CẢNH BÁO TRỘM THIẾT BỊ BÁO ðỘNG CÒI HỤ ðIỆN THOẠI Hình 2.1. Sơ ñồ khối tổng thể 2.3. Chức năng nhiệm vụ các khối 2.3.1. Bộ ñiều khiển trung tâm hay hộp ñiều khiển trung tâm Là cơ quan ñầu não quan trọng, có nhiệm vụ thu nhận tín hiệu từ các thiết bị ngoại vi, xử lý và phát tín hiệu báo ñộng. Có thể báo ñộng tại chỗ qua hệ thống còi hụ, hệ thống ñèn hoặc báo ñộng (speaker) qua ñiện thoại di ñộng (mobile). Trên hộp ñiều khiển trung tâm có chứa vi ñiều khiển (ATmega32) là cơ quan ñầu não, chứa tất cả trình ñiều khiển, ñiều khiển mọi hoạt ñộng của hệ thống. Màn hình LCD ñể hiển thị các thông số và hệ thống phím nhấn ñể thiết lập các thông số cần thiết. Sau ñây em xin trình bày cụ thể các khối trong hộp ñiều khiển trung tâm: - 112.3.1.1. Giới thiệu họ Vi ñiều khiển AVR và sơ lược các chân của ATmega32 Vi ñiều khiển AVR do hãng Atmel (Hoa Kỳ) sản xuất ñược giới thiệu lần ñầu năm 1996. AVR có rất nhiều dòng khác nhau, bao gồm Tiny AVR (như AT tiny13, AT tiny 22. .) có kích thước bộ nhớ nhỏ, ít bộ phận ngoại vi. Tiếp ñến dòng AVR (chẳng hạn AT90S8535) có kích thước bộ nhớ vào loại trung bình. Mạnh hơn là dòng Mega (nhưATmega32, Atmega128. .) với bộ nhớ có kích thước vài Kbyte ñến vài trăm Kbyte cùng với các bộ ngoại vi ña dạng, ñược tích hợp trên Chip. Tốc ñộ của dòng Mega cũng cao hơn các dòng khác. IC ATmega32 là IC tiêu biểu trong họ AVR. Sự khác nhau cơ bản giữa các dòng chính là cấu trúc ngoại vi, còn nhân thì vẫn như nhau. Những tính năng chính của AVR: - ROM: 32 Kbytes - SRAM: 2 Kbytes - EEPROM: 1024 bytes - 32 thanh ghi I/O - 4 PORT I/O 8 bits - 8 Bits Timer/Counter 0 - 16 bits Timer/Counter 1 - 8 bits Timer/Counter 2 - Bộ ñinh thời Watchdog - ADC 8 kênh với ñộ phân giải 10 bits - 4 kênh PWM - Khối truyền thông USART - Chế ñộ tiết kiệm năng lượng - Tần số tối ña 16 MHz - ðiện áp hoạt ñộng: 2.7V-5.5V - ðóng gói 40 chân. Cấu trúc cơ bản của AVR ñược thể hiện trên hình 2.2 - 12- Hình 2.2 Cấu trúc cơ bản của AVR ATmega 32 có ñầy ñủ tính năng của họ AVR. ðược ñóng vỏ 40 chân trong ñó 32 chân vào ra dữ liệu ñược chia làm bốn. Sơ ñồ chân ñược thể hiện trên hình 2.3 - 13- Hình 2.3. Sơ ñồ chân của ATmega32 a. Các cổng (PORT) vào ra I/O Cổng vào ra là một trong số các phương tiện ñể vi ñiều khiển giao tiếp với các thiết bị ngoại vi. ATmega32 có cả thảy 4 cổng (PORT) vào ra 8 bits: PORTA, PORTB, PORTC, PORTD tương ứng với 32 ñường vào ra. Các cổng vào ra của AVR là các cổng vào ra hai chiều có thể ñịnh hướng, tức có thể ñịnh hướng cho cổng là vào hay ra. Tất cả các cổng vào ra của AVR ñều có chức năng ñọc, chỉnh sửa, ghi khi sử dụng chúng như là các cổng vào ra số thông thường. ðiều này có nghĩa là, khi thay ñổi hướng của một chân nào ñó thì nó cũng không ảnh hưởng ñến hướng của các chân khác. Khi khảo sát các cổng như là cổng vào ra số thông thường thì tính chất của các PORT (PORTA, PORTB, PORTC, PORTD) là tương tự nhau. Do ñó, ta chỉ cần khảo sát một trong 4 PORT của vi ñiều khiển là ñủ. Mỗi một cổng vào ra của vi ñiều khiển ñều ñược liên kết với 3 thanh ghi: PORTx, DDRx, PINx (ở ñây x là thay thế cho các chữ A, B, C, D). Ba thanh ghi này sẽ ñược phối hợp với nhau ñể ñiều khiển hoạt ñộng của cổng. a.1. Thanh ghi DDRx ðây là thanh ghi 8 bits (có thể ñọc ghi) có chức năng ñiều khiển hướng của các cổng (lối ra hay là lối vào). Khi một bits của thanh ghi này ñược set lên 1 thì chân tương ứng với nó ñược cấu hình thành ngõ ra. Ngược lại nếu bits của thanh ghi DDRx là 0 thì chân tương ứng với nó ñược thiết lập thành ngõ vào. - 14Ví dụ: Khi ta set tất cả các bits của thanh ghi DDRA ñều là 1 thì 8 chân tương ứng của PORTA là PA1, PA2. . PA7 (ñược thiết lập thành ngõ ra) Hình 2.4. Thanh ghi DDRA a.2. Thanh ghi PORTx: PORTx là thanh ghi 8 bits có thể ñọc ghi. ðây là thanh ghi dữ liệu của DDRx. Nếu thanh ghi DDRx thiết lập là cổng lối ra, khi ñó giá trị của thanh ghi PORTx cũng là giá trị của các chân tương ứng của DDRx, nói cách khác khi ta cho một giá trị logic lên 1 bits của thanh ghi này thì chân tương ứng với bits ñó cũng có cùng mức logic. Khi thanh ghi DDRx thiết lập cổng thành lối vào thì thanh ghi PORTx ñóng vai trò như một thanh ghi ñiều khiển cổng. Hình 2.5 Thanh ghi PORTA a.3. Thanh ghi PINx PINx không phải là một thanh ghi thực sự, ñây là ñịa chỉ trong bộ nhớ I/O kết nối trực tiếp tới các chân của cổng. Khi ta ñọc PORTx, tức là ñọc dữ liệu ñược chốt trong PORTx, còn khi ñọc PINx thì giá trị logic hiện thời của chân của cổng tương ứng ñược ñọc. Vì thế ñối với thanh ghi PINx ta chỉ có thể ñọc mà không thể ghi. Hình 2.6 Thanh ghi PINA Ngoài chức năng là cổng vào ra bình thường trên thì các cổng còn ñược tích hợp với các chức năng khác như: - 15- PORTA: chứa bộ ADC là bộ chuyển ñổi tín hiệu tương tự sang tín hiệu số. ATmega32 có tích hợp bộ ADC 8 kênh với ñộ phân giải 10 bits, tích hợp trên PORTA tương ứng từ PA0 ñến PA7. - PORTB: Kết nối LCD. - PORTC: Chỉ là các chân vào ra bình thường. - PORTD: + PD0 và PD1 là 2 chân dùng ñể truyền thông USART. + PD2 và PD3 là hai chân ngắt ngoài. + PD4 và PD5 là hai kênh PWM. b. Các bộ ñịnh thời b.1. Tổng quan về các bộ Timer/Counter trên Chip ATmega32 Timer/Counter là các module ñộc lập với CPU. Chức năng chính của các bộ Timer/Counter như tên gọi của chúng là các bộ ñịnh thời (tạo ra một khoảng thời gian, ñếm thời gian..) và ñếm sự kiện. Trên các chip của AVR các bộ Timer/Counter còn có thêm chức năng là các bộ ñiều chế ñộ rộng xung PWM(Pulse Width Modulation). Ở một số dòng AVR, Timer/Counter còn ñược dùng như các bộ canh chỉnh thời gian trong các ứng dụng thời gian thực. Các bộ Timer/Counter ñược chia theo ñộ rộng thanh ghi chứa giá trị ñịnh thời hay giá trị ñếm của chúng. Cụ thể trên Chip ATmega32, có hai bộ Timer/Counter 8 bits (Timer/Counter 0 và Timer/Counter 2) và một bộ 16 bits (Timer/Counter 1). Chế ñộ hoạt ñộng và phương pháp ñiều khiển từng loại Timer/Counter không hoàn toàn giống nhau, ở ATmega32 thì: - Timer/Counter 0: là một bộ ñịnh thì 8 bits. Chế ñộ hoạt ñộng của Timer/Counter 0 thực chất có thể xem như hai chế ñộ nhỏ, ñó là tạo ra một khoảng thời gian và ñếm sự kiện. - Timer/Counter 1: là bộ ñịnh thời ñếm ña năng 16 bits. Bộ Timer/Counter này có 5 chức năng hoạt ñộng chính. Ngoài các chức năng bình thường, Timer/Counter1 còn ñược dùng ñể tạo PMW cho các mục ñích ñiều khiển. Có thể tạo hai PWM ñộc lập trên các chân OC1A (chân 19) và OC1B (chân18) bằng Timer/Counter 1. - Timer/Counter 2: Tuy là module 8 bits nhưng nó có ñến 4 chế ñộ hoạt ñộng như Timer/Counter 1, ngoài ra nó còn ñược sử dụng như một module canh chỉnh thời gian cho các ứng dụng thời gian thực. - 16Trong ñề tài này em chủ yếu chỉ sử dụng Bộ Timer/Counter0 nên em xin trình bày cụ thể về bộ Timer/Counter 0. b.2. Bộ ñịnh thời 0 (Timer / Counter 0) * Sơ ñồ khối bộ ñịnh thời 0: Hình 2.7 Sơ ñồ khối Timer / Counter 0 Timer / Counter 0 là bộ ñịnh thời 8 bits, nó liên quan ñến 7 thanh ghi với nhiều chế ñộ thực thi khác nhau. * Các ñịnh nghĩa Các ñịnh nghĩa sau ñây sẽ ñược sử dụng cho bộ ñịnh thời 0 và 2: BOTTOM: Bộ ñếm ñạt ñến giá trị BOTTOM khi bộ ñếm ñạt ñến giá trị 00h MAX: Bộ ñếm ñạt ñến giá trị MAX khi nó ñạt ñến giá trị FFh TOP: Bộ ñếm ñạt ñến giá trị TOP khi nó bằng với giá trị cao nhất trong chuỗi ñếm, giá trị cao nhất trong chuỗi ñếm không nhất thiết bằng FFh mà có thể là bất kỳ giá trị nào ñược quy ñịnh trong thanh ghi OCRn (n=0.2), tùy theo chế ñộ thực thi. Chức năng của các thanh ghi liên quan ñến bộ ñịnh thời 0: - 17* Thanh ghi Timer/Counter Control Register - TCCR0 Hình 2.8. Thanh ghi TCCR0 - Bits 7 - FOC0 (Force Output Compare), bits này chỉ hoạt ñộng khi các bits WGM chỉ ñịnh chế ñộ Non - PWM (chẳng hạn chế ñộ CTC) khi ở chế ñộ PWM bits này bằng 0. Ở chế ñộ Non-PWM, khi bits FOC0 ñược ghi thành 1 thì lập tức một sự kiện (“so sánh khớp cưỡng bức”) (Force Compare Match) xảy ra ở bộ tạo sóng tức là sự kiện so sánh khớp bắt buộc xảy ra mặc dù giá trị của bộ ñịnh thời không bằng với giá trị sẵn trong thanh ghi OCR0. Lúc này ngõ ra sẽ thay ñổi tùy theo thiết lập của những bits COM01, COM02 tương ứng với nó. Bits FOC0 sẽ tự ñộng bị xóa khỏi phần cứng sau một chu kỳ clock. Bits này không thể ñọc. - Bits 6 - WGM00, bits 3 - WGM01 (Wareform Generation Mode), những bits này ñiều khiển các chế ñộ thực thi của bộ ñếm, theo ñó dạng sóng tương ứng ñược tạo ra từ bộ tạo sóng. Các chế ñộ thực thi hỗ trợ là: Nomal, CTC, PWM. - Bits 5 - COM01, bits 4 - COM00: Compare Match Output Mode, hai bits này ñiều khiển trạng thái của các chân OC0. Nếu một trong 2 bits này ñược set thành 1 thì ngõ ra OC0 ñược ưu tiên hơn chức năng I/O thông thường. Chú ý là các bits tương ứng của OC0 trong thanh ghi DDR phải ñược set ñể cho phép ngõ ra. - Bits 2 - CS02, bits 1- CS01: Clock Select ðây là 3 bits dùng ñể lựa chọn xung clock cho bộ ñịnh thời. Bảng 2.1 lựa chọn tốc ñộ xung clock cho bộ ñịnh thời: - 18Bảng 2. 1: Bảng lựa chọn tốc ñộ xung Clock cho bộ ñịnh thời * Thanh ghi Timer/Counter Registor TCNT0 Hình 2.9. Thanh ghi TCNT0 ðây là thanh ghi ñếm 8 bits của bộ ñịnh thời 0. Giá trị thanh ghi này tăng hoặc giảm 1 ñơn vị sau mỗi chu kỳ Clock. Không nên ghi vào thanh ghi này khi nó ñang ñếm. * Thanh ghi Output Compare Register – OCR0 Hình 2.10 Thanh ghi OCR0 OCR0 là thanh ghi 8 bits, giá trị của nó ñược liên tục so sánh với giá trị của thanh ghi TCNT0. Khi giá trị của hai thanh ghi này bằng nhau thì xảy ra sự kiện so sánh khớp (compare match). Sự kiện so sánh khớp sẽ tạo ra một ngắt, nếu ngắt ñược cho phép. * Thanh ghi Timer/Counter interrupt Mask Register TIMSK - 19- Hình 2.11 Thanh ghi TIMSK - Bits 1 - OCIE0 Timer/Counter 0 (Output Compare Match Interrupt Enable). Khi bits OCIE0 ghi giá trị là 1 và bits 1 của thanh ghi trạng thái SREG ñược set thành 1 thì ngắt so sánh ñược cho phép. - Bits 0 - TOIE0 (Timer/Counter0 Overflow Interrupt Enable). Khi bits này ñược ghi là 1 và ngắt toàn cục ñược cho phép thì ngắt tràn bộ ñịnh thời (Timer/Counter0 Overflow Interrupt) ñược cho phép. Khi ñó, một ngắt tương ứng sẽ ñược thực thi khi bộ ñịnh thời tràn. * Thanh ghi Timer/Counter Interrupt Flag Register - TIFR Hình 2.12 Thanh ghi TIFR - Bits 1 - OCF0 (Output Compare Flag 0): Bits này ñược set lên 1 khi xảy ra “so sánh khớp” (Compare match) giữa bộ ñịnh thời (tức thanh ghi TCCN0) với thanh ghi OCR0. Cờ OCF0 sẽ tự ñộng xóa khi ngắt tương ứng ñược thực thi. Ngoài ra, cũng có thể xóa cờ OCFO bằng cách ghi một giá trị logic lên nó. - Bits 0 - TOV0 (Timer/Counter0 Overlow Flag): Bits TOV0 ñược set thành 1 khi bộ ñịnh thời tràn và nó ñược xóa khi ngắt tương ứng ñược thực thi. Ngoài ra cũng có thể xóa bằng cách ghi một giá trị logic vào nó. * Thanh ghi Special Funcion IO Register-SFIOR Hình 2.13 Thanh ghi SFIOR - 20- Bits 7 - TSM (Timer/Counter Synchronization Mode): Ghi bits này thành 1 sẽ kích hoạt chế ñộ ñồng bộ bộ ñịnh thời. Trong chế ñộ này, một giá trị ñược ghi vào các bits PSR0 và PSR321 sẽ ñược giữ lại, vì thế nó giữ cho tín hiệu reset của bộ chia trước (prescaler) tương ứng ñược xác nhận (do ñó bộ chia trước vẫn ở trạng thái reset). Khi bits này ñược ghi thành 0 thì các bộ ñịnh thời sẽ bắt ñầu ñếm ñồng thời. - Bits 1- PSR0 (Prescaler Reset Timer/Counter0): Khi bits này là 1 thì bộ chia trước của bộ ñịnh thời 0 sẽ ñược ñặt lại. Bits này thường ñược xóa tức thời bằng phần cứng. * Thanh ghi Asynchronous Status Register - ASSR Hình 2.14 Thanh ghi ASSR - Bits 3 - AS0 (Asynchronous Timer/Counter 0): Khi bits AS0 là 0 thì bộ ñịnh thời ñược ñếm từ nguồn xung clock I/O. Khi AS0 ñược ghi thành 1, bộ ñịnh thời ñược ñếm từ xung thạch anh ở chân TOSC1. Khi giá trị của AS0 bị thay ñổi thì nội dung của các thanh ghi TCNT0, OCR0, TCCR0 có thể bị hỏng. - Bits 2 - TCN0UB (Timer/Counter 0 Update Busy): Khi bộ ñịnh thời 0 thực thi quá trình không ñồng bộ và thanh ghi TCNT0 ñang ñược ghi thì bits TCN0UB sẽ set lên 1. Khi thanh ghi TCNT0 vừa ñược cập nhật từ thanh ghi lưu trữ tạm thì bits này bị xóa bởi phần cứng. Mức logic 0 trong trường hợp này là ñể chỉ ra rằng thanh ghi TCNT0 ñã sẵn sàng ñể cập nhật một giá trị mới. - Bits 1 - OCR0UB (Output Compare Register 0 Update Busy): Khi bộ ñịnh thời 0 thực thi quá trình không ñồng bộ và thanh ghi OCR0 ñang ñược ghi thì bits OCR0UB sẽ set lên 1. Khi thanh ghi OCR0 vừa ñược cập nhật từ thanh ghi lưu trữ tạm thì bits này bị xóa bởi phần cứng. Mức logic 0 trong trường hợp này là ñể chỉ ra rằng thanh ghi OCR0 ñã sẵn sàng ñể cập nhật một giá trị mới. - Bits 0 - TCR0UB (Timer/Counter Control Register 0 Update Busy): Khi bộ ñịnh thời 0 thực thi quá trình không ñồng bộ và thanh ghi TCCR0 ñang ñược ghi thì bits TCR0UB sẽ set lên 1. Khi thanh ghi TCCR0 vừa ñược cập nhật từ thanh ghi lưu trữ tạm thì bits này bị xóa bởi phần cứng. Mức logic 0 trong trường
- Xem thêm -