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

THIẾT KẾ MẠCH CẢM BIẾN NHIỆT ĐỘ SỬ DỤNG ATMEGA16 đại học bách khoa hà nội

42 11 0

Đ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 đề Thiết Kế Mạch Cảm Biến Nhiệt Độ Sử Dụng ATMEGA16
Tác giả Nguyễn Quang Hải
Người hướng dẫn Vũ Sinh Thượng
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Điện Tử
Thể loại Đề tài
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 42
Dung lượng 2,95 MB

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

Cấu trúc

  • CHƯƠNG 1. CƠ SỞ LÝ THUYẾT TỔNG QUAN (8)
    • 1.1 Tìm hiểu ATMega16 (8)
      • 1.1.1 Tổng quan về ATMega16 (8)
      • 1.1.2 Giới thiệu bộ ADC trên AVR (20)
      • 1.1.3 Giới thiệu về PWM (23)
    • 1.2 Linh kiện sử dụng (24)
      • 1.2.1 Cảm biến nhiệt độ LM35 (24)
      • 1.2.2 Màn hình LCD (26)
    • 1.3 Các phần mềm sử dụng (27)
      • 1.3.1 Phần mềm CodeVisionAVR (27)
      • 1.3.2 Phần mềm nạp chup ICProgrammer (27)
      • 1.3.3 Phần mềm Altium (28)
  • CHƯƠNG 2. THIẾT KẾ PHẦN CỨNG (KIT) (29)
    • 2.1 Sơ đồ khối tổng quát (29)
    • 2.2 Sơ đồ toàn mạch được thiết kế trên phần mềm Altimum Error! Bookmark not defined (0)
    • 2.3 Khối nguồn (0)
    • 2.4 Sơ đồ khối xử lý (0)
    • 2.5 Sơ đồ khối hiển thị (0)
    • 2.6 Sơ đồ nút nhấn (0)
    • 2.7 Sơ đồ mạch in (0)
  • CHƯƠNG 3. MẠCH CẢM BIẾN NHIỆT ĐỘ (34)
    • 3.1 Yêu cầu đặt ra (34)
    • 3.2 Nguyên lý hoạt động (34)
    • 3.3 Đánh giá kết quả (35)

Nội dung

Thế kỉ 21 mở ra một thời đại mới, thời đại khoa học công nghệ đòi hỏi con người luôn luôn không ngừng tìm tòi, học hỏi để phát triển và tiến bộ. Với sự nhảy vọt của khoa học, trong một khoảng thời gian ngắn ngành kĩ thuật điện điện tử đã đạt được những thành tựu to lớn, ảnh hưởng đến mọi lĩnh vực trong đời sống xã hội. Thiết bị công nghệ ngày càng phát triển hiện đại góp phần nâng cao chất lượng cuộc sống. Ngày nay, các thiết bị vi điều khiển có ứng dụng ngày càng rộng rãi với ưu điểm nhỏ gọn, linh hoạt và có thể điều khiển được dễ dàng. Với những ưu điểm: chuyên dụng hóa, tối ưu (thời gian, không gian, giá thành, …), mang tính bảo mật, chủ động, linh hoạt trong công nghệ, … Do vậy vi điều khiển ngày càng chiếm lĩnh, đóng vai trò quan trọng trong điều khiển và tự động hóa và nhiều lĩnh vực liên quan khác. Đề tài về vi điều khiển trong đời sống thực tế rất nhiều, phong phú và đa dạng. Nhưng với mong muốn được học tập, nghiên cứu và vận dụng kiến thức đã được học trên giảng đường, em đã lựa chọn đề tài: “Thiết kế mạch cảm biến nhiệt độ sử dụng ATMega16 ”. Trong quá trình thực hiện đề tài này, em xin gửi lời cảm ơn chân thành nhất tới Vũ Sinh Thượng đã hướng dẫn tận tình và chỉ dẫn các bước, cung cấp những tài liệu nghiên cứu quý báu để chúng em có thể hoàn thành đề tài này một cách tốt nhất. Dựa theo những kết quả đạt được bước đầu, dù đã rất cố gắng tuy nhiên không tránh khỏi những thiếu sót và hạn chế nhất định. Vì vậy, chúng em rất mong nhận được sự góp ý, bổ sung của thầy để đề tài được tối ưu và hoàn thiện hơn.

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN ĐIỆN TỬ - VIỄN THÔNG

Nguyễn Quang Hải 20195865 Điện tử 08 – K63

Giảng viên hướng dẫn: Vũ Sinh Thượng

Trang 2

Hà Nội, 03-2023

Trang 3

LỜI NÓI ĐẦU

Thế kỉ 21 mở ra một thời đại mới, thời đại khoa học công nghệ đòi hỏi con ngườiluôn luôn không ngừng tìm tòi, học hỏi để phát triển và tiến bộ Với sự nhảy vọt củakhoa học, trong một khoảng thời gian ngắn ngành kĩ thuật điện - điện tử đã đạt đượcnhững thành tựu to lớn, ảnh hưởng đến mọi lĩnh vực trong đời sống xã hội Thiết bịcông nghệ ngày càng phát triển hiện đại góp phần nâng cao chất lượng cuộc sống.Ngày nay, các thiết bị vi điều khiển có ứng dụng ngày càng rộng rãi với ưu điểmnhỏ gọn, linh hoạt và có thể điều khiển được dễ dàng Với những ưu điểm: chuyêndụng hóa, tối ưu (thời gian, không gian, giá thành, …), mang tính bảo mật, chủ động,linh hoạt trong công nghệ, … Do vậy vi điều khiển ngày càng chiếm lĩnh, đóng vai tròquan trọng trong điều khiển và tự động hóa và nhiều lĩnh vực liên quan khác

Đề tài về vi điều khiển trong đời sống thực tế rất nhiều, phong phú và đa dạng.Nhưng với mong muốn được học tập, nghiên cứu và vận dụng kiến thức đã được học

trên giảng đường, em đã lựa chọn đề tài: “Thiết kế mạch cảm biến nhiệt độ sử dụng ATMega16 ”.

Trong quá trình thực hiện đề tài này, em xin gửi lời cảm ơn chân thành nhất tới Vũ Sinh Thượng đã hướng dẫn tận tình và chỉ dẫn các bước, cung cấp những tài liệu

nghiên cứu quý báu để chúng em có thể hoàn thành đề tài này một cách tốt nhất

Dựa theo những kết quả đạt được bước đầu, dù đã rất cố gắng tuy nhiên khôngtránh khỏi những thiếu sót và hạn chế nhất định Vì vậy, chúng em rất mong nhận được

sự góp ý, bổ sung của thầy để đề tài được tối ưu và hoàn thiện hơn

Chúng em xin chân thành cảm ơn!

Trang 4

MỤC LỤC

DANH MỤC HÌNH VẼ i

DANH MỤC BẢNG BIỂU ii

CHƯƠNG 1 CƠ SỞ LÝ THUYẾT TỔNG QUAN 1

1.1 Tìm hiểu ATMega16 1

1.1.1 Tổng quan về ATMega16 1

1.1.2 Giới thiệu bộ ADC trên AVR 10

1.1.3 Giới thiệu về PWM 13

1.2 Linh kiện sử dụng 14

1.2.1 Cảm biến nhiệt độ LM35 14

1.2.2 Màn hình LCD 15

1.3 Các phần mềm sử dụng 16

1.3.1 Phần mềm CodeVisionAVR 16

1.3.2 Phần mềm nạp chup ICProgrammer 16

1.3.3 Phần mềm Altium 17

CHƯƠNG 2 THIẾT KẾ PHẦN CỨNG (KIT) 18

2.1 Sơ đồ khối tổng quát 18

2.2 Sơ đồ toàn mạch được thiết kế trên phần mềm Altimum Error! Bookmark not defined 2.3 Khối nguồn 18

2.4 Sơ đồ khối xử lý 19

2.5 Sơ đồ khối hiển thị 19

2.6 Sơ đồ nút nhấn 20

2.7 Sơ đồ mạch in 20

CHƯƠNG 3 MẠCH CẢM BIẾN NHIỆT ĐỘ 22

3.1 Yêu cầu đặt ra 22

3.2 Nguyên lý hoạt động 22

Trang 5

KẾT LUẬN 23 TÀI LIỆU THAM KHẢO 24 PHỤ LỤC 25

Trang 6

DANH MỤC HÌNH VẼ

Hình 1.1 Hình ảnh thực tế vi điều khhiển ATMega16 1

Hình 1.2 Sơ đồ khối của kiến trúc AVR MCU 2

Hình 1.3 Thanh ghi trạng thái 3

Hình 1.4 Các thanh ghi chức năng chung 3

Hình 1.5 Thanh ghi con trỏ ngăn xếp 4

Hình 1.6 Sơ đồ khối ATMega16 5

Hình 1.7 Sơ đồ chân của ATMega16 6

Hình 1.8 Sơ đồ đơn vị đếm 8

Hình 1.9 Sơ đồ đơn vị so sánh ngõ ra 8

Hình 1.10 Thanh ghi điều khiển bộ định thời/bộ đếm – TCCR0 9

Hình 1.11 Thanh ghi TCNT0 10

Hình 1.12 Thanh ghi so sánh ngõ ra – OCR0 10

Hình 1.13 Thanh ghi mặt nạ ngắt 10

Hình 1.14 Thanh ghi cờ ngắt bộ định thời 10

Hình 1.15 Thanh ghi ADMUX 11

Hình 1.16 Dạng sóng vuông thể hiện các mức chia duty cycle 13

Hình 1.17 Hình ảnh thực tế cảm biến nhiệt độ LM35 14

Hình 1.18 LCD1602 15

Hình 1.19 Giao diện của phần mềm CodeVisionAVR 16

Hình 1.20 Giao diện của phần mềm nạp chip 17

Hình 1.21 Giao diện phần mềm Altium 17

Hình 2.1 Sơ đồ thiết kế tổng quát 18

Hình 2.3 Sơ đồ khối nguồn 18

Hình 2.4 Sơ đồ khối xử lý 19

Hình 2.5 Sơ đồ khối hiển thị 19

Hình 2.6 Sơ đồ nút nhấn 20

Trang 7

Hình 2.7 Sơ đồ mạch in 20

Hình 2.8 Sơ đồ mạch mô phỏng 3D 21

Hình 3.1 Mô phỏng hoạt động của mạch 22

DANH MỤC BẢNG BIỂU

Bảng 1.1 Chế độ đầu ra so sánh, non-PWM 9

Bảng 1.2 Bảng lựa chọn nguồn xung cho bộ định thời 9

Bảng 1.3 Chọn điện áp tham chiếu 12

Bảng 1.4 Chọn xung nhịp cho bộ ADC 13

Bảng 1.5 Chức năng chi tiết các chân của cảm biến nhiệt độ LM35 14

Trang 8

CHƯƠNG 1 CƠ SỞ LÝ THUYẾT TỔNG QUAN

1.1 Tìm hiểu ATMega16

1.1.1 Tổng quan về ATMega16

ATMega16 là bộ vi điều khiển CMOS 8 bit tiêu thụ điện năng thấp dựa trên kiếntrúc RISC (Reduced Instruction Set Computer) Vào ra Analog – Digital và ngược lại.Với công nghệ này cho phép các lệnh thực thi chỉ trong một chu kỳ xung nhịp, vì thếtốc độ xử lý dữ liệu có thể đạt đến một triệu lệnh trên giây ở tần số 1 MHz Vi điềukhiển này cho phép người thiết kế có thể tối ưu hóa chế độ tiêu thụ năng lượng mà vẫnđảm bảo tốc độ xử lí

Hình 1.1 Hình ảnh thực tế vi điều khhiển ATMega16

ATMega16 có tập lệnh phong phú về số lượng với 32 thanh ghi làm việc đa năng.Toàn bộ 32 thanh ghi đều được nối trực tiếp với ALU (Arithmetric Logic Unit), chophép truy cập hai thanh ghi độc lập bằng một chu kì xung nhịp Kiến trúc đạt được cótốc độ xử lý nhanh gấp 10 lần vi điều khiển dạng CISC (Complex Instruction SetComputer) thông thường Ngoài ra, ATMega16 có các đặc điểm sau: 16Kb bộ nhớFlash với khả năng đọc trong khi ghi, 512 byte bộ nhớ EEPROM, 1Kb bộ nhớ SRAM,

32 thanh ghi chức năng chung, 32 đường vào ra chung, 3 bộ định thời/bộ đếm, ngắt

Trang 9

nội và ngắt ngoại, USART, giao tiếp nối tiếp 2 dây I2C, 8 kênh ADC 10 bit, tốc độxung nhịp chip (0-8MHz cho ATMega16L và 0-16MHz cho ATMega16) …ATMega16 hỗ trợ đầy đủ các chương trình và công cụ phát triển hệ thống như trìnhbiên dịch C, macro assemblers, chương trình mô phỏng/ sửa lỗi, …

1.1.1.1 Cấu trúc nhân

CPU của ATMega16 có chức năng đảm bảo sự hoạt động chính xác

Do đó nó có khả năng truy cập bộ nhớ, thực hiện các quá trình tính

thiết bị ngoại vi và quản lí ngắt

Cấu trúc tổng quát: AVR sử dụng cấu trúc Harvard, tách biệt bộ

Trang 10

Hình 1.2 Sơ đồ khối của kiến trúc AVR MCU

 ALU: ALU làm việc trực tiếp với các thanh ghi chức năng chung Các phép

toán được thực hiện trong một chu kì xung clock Hoạt động của ALU đượcchia thành 3 loại: đại số, logic, theo bit

 Thanh ghi trạng thái: Thanh ghi trạng thái là thanh ghi có 8 bit lưu giữ trạng

thái của ALU sau các phép tính số học và logic

Hình 1.3 Thanh ghi trạng thái

 Các thanh ghi chức năng chung

Trong đó:

- C: Carry Flag – cờ nhớ (nếu phép toán có nhớ, cờ sẽ được thiết

lập)

Trang 11

- Z: Zero Flag – cờ Zero (nếu kết quả phép toán bằng 0)

- N: Negative Flag (nếu kết quả phép toán là âm)

- V: Two’s complement overflow indicator (Cờ được thiết lập khi

tràn số bù 2)

- H: Half Carry Flag

- T: Transfer bit được sử dụng làm nơi trung gian trong các lệnh

BLD, BST)

- I: Global Interupt Enable/Disable Flag (Bit cho phép ngắt toàn

cục Nếu bit này ở trạng thái logic 0 thì không có một ngắt nàođược phục vụ)

Hình 1.4 Các thanh ghi chức năng chung

 Con trỏ ngăn xếp (SP): Là một thanh ghi 16 bit nhưng cũng có thể

được xem như hai thanh ghi chức năng đặc biệt 8 bit Có địa chỉtrong các thanh ghi chức năng đặc biệt là $3E (trong bộ nhớRAM là $5E) và có nhiệm vụ trỏ tới vùng nhớ trong RAM chứangăn xếp

Trang 12

Hình 1.5 Thanh ghi con trỏ ngăn xếp

Trong trường hợp mà có nhiều ngắt yêu cầu cùng một lúc thì CPU

sẽ lưu các cờ báo ngắt đó lại, và thực hiện lần lượt các ngắt theomức ưu tiên Trong khi đang thực hiện ngắt mà xuất hiện ngắt mớithì sẽ xảy ra hai trường hợp Trường hợp ngắt này có ưu tiên cao hơnthì nó sẽ được phục vụ, và ngược lại, nếu có mức ưu tiên thấp hơn thì

nó sẽ bị bỏ qua

Bộ nhớ ngăn xếp là vùng bất kì trong SRAM từ địa chỉ 0x60 trở lên

Để truy nhập vào SRAM thông thường thì ta dùng con trỏ X, Y, Z vàtruy cập vào SRAM theo kiểu ngăn xếp thì ta dùng con trỏ SP Con trỏnagy là một thanh ghi 16 bit và được truy cập như hai thanh ghi 8 bitchung có địa chỉ: SPL: 0x3D/0x5D (IO/SRAM) và SPH:0x3E/0x5D

Trang 13

Khi chương trình phục vụ ngắt hoặc chương trình con thì con trỏ

PC được lưu vào ngăn xếp trong khi con trỏ ngăn xếp bị giảm hai vịtrí Và con trỏ ngăn xếp sẽ giảm 1 khi thực hiện lệnh PUSH Ngược lạithực hiện lệnh POP thì con trỏ ngăn xếp sẽ tăng 1 và khi thực hiệnlệnh RET hoặc RETI thì con trỏ ngăn xếp sẽ tăng 2 Như vậy, con trỏngăn xếp cần được chương trình đặt trước giá trị khởi tạo ngăn xếptrước khi một chương trình con được gọi hoặc các ngắt được chophép phục vụ Và giá trị ngăn xếp ít nhất cũng phải lớn hơn 60H(0x60) vì 5FH trỏ lại là vùng các thanh ghi

Trang 14

1.1.1.2 Sơ đồ khối

Hình 1.6 Sơ đồ khối ATMega16

Trang 15

1.1.1.3 Sơ đồ chân và ý nghĩa các chân

Hình 1.7 Sơ đồ chân của ATMega16

- Chân VCC (chân số 10) là VCC cấp điện áp nguồn cho vi điều

cấp trong khoảng +5V± 0.5

- Chân GND (chân số 11 và 31) nối đất (hay nối Mass) Khi thiết

kế cần sử dụng một mạch ổn áp để bảo vệ cho vi điều khiển,các đơn giản nhất là dùng IC ổn áp 7805

- Port A (PA): Port A gồm 8 chân (từ chân 33 đến chân 40), có

chức năng đầu vào cho chuyển đổi ADC

- Port B (PB): Port B gồm 8 chân (từ chân 1 đến chân 8), ngoài có

chức năng làm các đường xuất/nhập thì còn nhiều chức năngphụ khác

- Port C (PC): Port C gồm 8 chân (từ chân 22 đến chân 29) nếu

giao tiếp JTAG được kích hoạt, điện trở trên các chân PC5 (TDI),PC3 (TMS), PC2 (TCK) sẽ được kích hoạt ngay cả khi khởi độnglại (reset)

Trang 16

- Port D (PD): Port D gồm 8 chân (từ chân 14 đến 21): chức năng

xuất nhập

- Chân RESET (RST): ngõ vào RST ở chân 9 là ngõ vào Reset

dùng để thiết lập trạng thái ban đầu cho vi điều khiển Hệthống sẽ được thiết lập lại các giá trị ban đầu nếu ngõ này ởmức 1 tối thiểu 2 chu kì clock

- Chân XTAL1 và XTAL2: Hai chân này có vị trí chân là 12 và 13

được sử dụng để nhận nguồn xung clock từ bên ngoài để hoạtđộng, thường được ghép nối với thạch anh và các tụ để tạonguồn xung clock ổn định

- Chân AVCC: Nguồn cấp cho cổng A và bộ chuyển đổi ADC, chân

này được nối với nguồn VCC bên ngoài, ngay cả khi bộ chuyểnđổi ADC không được sử dụng Nếu bộ chuyển đổi ADC khôngđược sử dụng, chân AVCC nên được nối với nguồn qua bộ lọc

- Chân AREF: AREF là chân chuẩn analog cho bộ chuyển đổi ADC.

TCN0 và OCR0 là các thanh ghi 8 bit Các tín hiệu yêu cầu ngắt

ghi TIFR Các ngắt có thể được che bởi các thanh ghi TIMSK

Bộ định thời có thể sử dụng xung clock nội thông qua bộ chia hoặc

Trang 17

trên chân T0 Khối chọn xung clock điều khiển việc bộ định thời/ bộ

nào để tăng giá trị của nó

Thanh ghi OCR0 luôn được so sánh với giá trị của bộ định thời/bộ

- Count: tăng hay giảm TCN0:1

- Direction: lựa chọn giữa đếm lên và đếm xuống

- Clear: xóa thanh ghi TCNT0 (đưa các bit về 0)

- TOP: báo hiệu bộ định thời đã tăng đến giá trị lớn nhất

- BOTTOM: báo hiệu bộ định thời đã giảm đến giá trị nhỏ nhất.

Bộ so sánh 8 bit liên tục so sánh giá trị TCNT0 với các giá trị thanh

ra (OCR0) Khi giá trị TCNT0 bằng với OCR0, bộ so sánh sẽ tạo ra một

hiệu này sẽ đặt giá trị cờ so sánh ngõ ra (OCF0) lên 1 vào chu kì

được kích hoạt (OCIE0 = 1), cờ OCF0 sẽ tạo ra một ngắt so sánh ngõ

được xóa khi ngắt được thực thi Cờ OCF0 cũng có thể xóa được bằng

Trang 18

Hình 1.9 Sơ đồ đơn vị so sánh ngõ ra

 Thanh ghi điều khiển bộ định thời/ bộ đếm - TCCR0 (Timer/CounterControl

Register)

Hình 1.10 Thanh ghi điều khiển bộ định thời/bộ đếm – TCCR0

- Bit 7 (FOC0): so sánh ngõ ra bắt buộc: bit này chỉ tích cực khi

bit WGM00 chỉ định chế độ làm việc không có PWM Khi đặt bitnày lên 1, một báo hiệu so sánh bắt buộc xuất hiện đơn vị dạngtạo sóng

- Bit 6 (WGM00) – Bit 3 (WGM01): chế độ tạo dạng sóng: các bit

này điều khiển hoạt động của chân OC0 Nếu một hoặc cả haibit COM01, COM00 được đặt lên 1, ngõ ra OC0 sẽ hoạt động

Trang 19

Bảng 1.1 Chế độ đầu ra so sánh, non-PWM

- Bit 2 (CS02), bit 1 (CS01), bit 0 (CS00) chọn xung đồng hồ: ba

bit này dùng để lựa chọn nguồn xung cho bộ định thời/bộ đếm

Bảng 1.2 Bảng lựa chọn nguồn xung cho bộ định thời

 Thanh ghi bộ định thời/bộ đếm TCNT0

Cho phép truy cập trực tiếp vào bộ đếm 8 bit:

Hình 1.11 Thanh ghi TCNT0

 Thanh ghi so sánh ngõ ra – OCR0

Thanh ghi chứa một giá trị 8 bit và liên tục được so sánh với giá trịcủa bộ đếm

Trang 20

Hình 1.12 Thanh ghi so sánh ngõ ra – OCR0

 Thanh ghi mặt nạ ngắt

- Bit 1 (OCIE0): cho phép ngắt báo hiệu so sánh

- Bit 0 (TOIE0): cho phép ngắt tràn bộ đếm

Hình 1.13 Thanh ghi mặt nạ ngắt

 Thanh ghi cờ ngắt bộ định thời

- Bit 1 (OCF0): cờ so sánh ngõ ra 0

- Bit 0 (TOV0): cờ tràn bộ đếm

Hình 1.14 Thanh ghi cờ ngắt bộ định thời

Bit TOV0 được đặt lên 1 khi bộ đếm bị tràn và được xóa bởi phần

ngắt tương ứng được thực hiện Bit này cũng có thể được xóa bằngphần mềm

1.1.2 Giới thiệu bộ ADC trên AVR

ADC (Analog to Digital Converter) chuyển đổi tín hiệu tương tự

ATMega16 tích hợp 8 kênh ADC với độ rộng mỗi kênh là 10 bit, tức là

chuyển thành 1024 mức level dạng bậc thang

ADC được ứng dụng rất nhiều như đo nhiệt độ, đọc giá trị điện áp,

đọc phím nhấn theo điện trở, …

Trang 21

1.1.2.1 Thiết kế nguồn cho bộ ADC

Chân AVCC là chân cấp nguồn cho bộ ADC của ATmega16 (chân

với VCC của chip)

Chân AREF là chân chọn điện áp tham chiếu ngoài của bộ ADC

Trong đó: 𝑽𝒓𝒆𝒇 là điện áp tham chiếu (đơn vị V)

ADC là giá trị sau chuyển đổi

1.1.2.3 Các thanh ghi tham gia điều khiển ADC

 Thanh ghi ADMUX ( ADC Multiplexer Selection Register)

Là thanh ghi chọn điện áp tham chiếu và chọn kênh ADC

Hình 1.15 Thanh ghi ADMUX

Trang 22

- Bit 7 và Bit 6 (REFS1 và REFS0) là 2 bit chọn điện áp tham

chiếu để so sánh, ta có bảng sau:

Bảng 1.3 Chọn điện áp tham chiếu

- Bit 5 (ADLAR) là bit sắp xếp hai thanh ghi ADCH và ADCL, do bộ

chuyển đổi ADC là 10 bit nên phải có 2 thanh ghi 8 bit để lưugiá trị chuyển đổi

- Bit 4:0 – MUX4:0 Bit chọn kênh ADC và có giá trị thập phân từ

0-7 ứng với kênh ADC0- ADC7 Ví dụ: Chọn kênh ADC 2 thì đặt

00010 trong MUX4:0

 Thanh ghi ADCSRA

- Bit 7 ADEN: cho phép bộ ADC hoạt động, nếu không set bit này

lên 1 thì bộ ADC không hoạt động

- Bit 6 ADSC: là bit cho phép bộ ADC chuyển đổi, khi quá trình

chuyển đổi hoàn tất bit này sẽ tự động được xóa về 0 và muốn

bộ ADC chuyển đổi tiếp thì phải set lại bit này

- Bit 5 ADATE: là bit cho phép chuyển đổi liên tục, set bit này thì

bộ ADC sẽ chuyển đổi liên tục

- Bit 4 ADIF là bit cờ ngắt, khi quá trình chuyển đổi hoàn tất thì

bit này tự động được set lên 1, ta sẽ kiểm tra bị này để đảmbảo quá trình đọc ADC không bị lỗi

- Bit 3 ADIE là bit cho phép ngắt bộ ADC Khi chuyển đổi hoàn

tất, sẽ có một ngắt xảy ra nếu cho phép ngắt ADC

- ADPS2:0 là 3 bit chọn xung nhịp cho bộ ADC, tốc độ chuyển đổi

phụ thuộc vào 3 bit này Chế độ chuyển đổi 10 bit sẽ chậm hơn

8 bit

Trang 23

Bảng 1.4 Chọn xung nhịp cho bộ ADC

Hình 1.16 Dạng sóng vuông thể hiện các mức chia duty cycle

Trong đó: T là chu kì của xung, T1 là thời gian xung ở mức cao

Hệ số điều chỉnh D (%) D = T1/T.

- Điện áp lớn nhất cấp cho tải: Udmax

Trang 24

- Điện áp trung bình cấp cho tải khi có PWM: Ud = Udmax.D.

Bộ Timer1 của Atmega8 cung cấp cho chúng ta 2 kênh tạoxung điều rộng PWM:

+ Kênh A: tín hiệu ra ở OC1A (PORTB.1)

+ Kênh B: tín hiệu ra ở OC1B (PORTB.2)

Trong đồ án này, sử dụng chế độ Fast PWM, mode 14 (kênh A)

- Thiết lập dạng tín hiệu PWM ra trên thanh ghi TCCR1A

- Khi hoạt động, ban đầu chân OC1A ở mức cao (tùy vào dạng tín

hiệu PWM ra bạn chọn ở trên), TCNT1 tăng giá trị từ 0 cho đếnkhi bằng giá trị trên thanh ghi OCR1A thì chân OC1A được xóa

về 0 TCNT1 vẫn tiếp tục tăng đến khi bằng giá trị trong thanhghi ICR1 thì TCNT1 reset về 0 và chân OC1A được kéo lên mứccao

Thiết lập:

+ Giá trị ICR1: là chu kỳ xung

+ Giá trị OCR1A: là thời gian xung ở mức cao

Ngày đăng: 14/05/2023, 23:05

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] "ATMega16 Datasheet," Atmel Corporation , 2002. [Online]. Available:https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-8154-8-bit-AVR-ATmega16A_Datasheet.pdf [Accessed 14 02 2023] Sách, tạp chí
Tiêu đề: ATMega16 Datasheet
Tác giả: Atmel Corporation
Năm: 2002
[2] "How to Program an AVR Microcontroller," AVR Geeks, [Online]. Available:https://avrgeeks.com/how-to-program-an-avr-microcontroller/. [Accessed 14 02 2023] Sách, tạp chí
Tiêu đề: How to Program an AVR Microcontroller
Nhà XB: AVR Geeks
[3] "[HƯỚNG DẪN] SỬ DỤNG PHẦN MỀM CODEVISION AVR," hocdientu, [Online]. Available: http://hocdientu.vn/threads/huong-dan-su-dung-phan-mem-codevision-avr-phan-1.2185/. [Accessed 14 02 2023] Sách, tạp chí
Tiêu đề: [HƯỚNG DẪN] SỬ DỤNG PHẦN MỀM CODEVISION AVR
Nhà XB: hocdientu
[4] "[Hướng dẫn] Cách nạp chương trình cho ATmega16 , 32 với mạch nạp USBISP.," dammedientu.vn, [Online]. Available: http://dammedientu.vn/huong- dan-cach-nap-chuong-trinh-cho-atmega8-16-32-voi-mach-nap-usbisp-bid13-html/. [Accessed 14 02 2023] Sách, tạp chí
Tiêu đề: [Hướng dẫn] Cách nạp chương trình cho ATmega16 , 32 với mạch nạpUSBISP
[5] "Tài liệu cảm nhiệt độ LM35," [Online]. Available: https://dientuviet.com/cam- bien-nhiet-do-lm35, [Accessed 14 02 2023] Sách, tạp chí
Tiêu đề: Tài liệu cảm nhiệt độ LM35

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