Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
689,6 KB
Nội dung
-1-1- Đặc điểm, cấu trúc phần cứng họ vi điều khiển AVR 4.1 Đặc điểm họ vi điều khiển AVR AVR tên loạt vi điều khiển cơng ty Atmel sản xuất, có kiến trúc RISC (Reduced Instruction Set Computer) kiến trúc phổ biến xử lý đại với đặc tính sau: Kiến trúc RISC với hầu hết lệnh có chiều dài cố định, truy nhập nhớ nạp, lưu trữ 32 ghi đa Kiến trúc nhớ kiểu đường ống cho phép làm tăng tốc độ xử lý lệnh Có chứa phận ngoại chip bao gồm cổng I/O số, biến đổi ADC, nhớ EEFROM, định thời UART, định thời RTC, điều chế độ rộng xung PWM,.v.v Đặc điểm xem bật so với nhiều vi điều khiển khác vi xử lý khác phải tự tạo truyền nhận UART giao diện SPI phần mềm vi điều khiển AVR tích hợp sẵn: Có 48 đường dẫn I/O lập trình truyền nhận UART lập trình Một giao diện SPI đồng timer/Counter bit Một timer/Counter 16 bit với chức so sánh bắt mẫu Gồm bốn lối điều biến độ rộng xung PWM Một đồng hồ thời gian thực (RTC-Timer) Một biến đổi ADC 10 bit có đến kênh lối vào Một phát trạng thái sụt điện áp nguồn nuôi Một so sánh Analog Một định thời Watchdog Hầu hết lệnh trừ lệnh nhảy nạp/lưu trữ thực chu kì xung nhịp -2-25 Hoạt động với tốc độ đồng hồ đến 20 MHz So với họ vi điều khiển khác vi điều khiển họ ATMEL có tần số xung nhịp cho phép tương đối cao, cụ thể từ đến 20MHz tùy theo loại cụ thể Xung nhịp dao động tạo xung nhịp hệ thống, qua chia tần trường hợp vi điều khiển đời trước đó, nên kéo theo tốc độ xử lý lệnh cao Khả thực lệnh chu kì xung nhịp, AVR có khả đạt đến tốc độ xử lý 20 MPIS (triệu lệnh giây) Hình 4.1 So sánh thời gian thực thi lệnh vi xử lý Các vi điều khiển SX có tần số xung nhịp cao vi điều khiển AVR lại có dịng tiêu thụ tương đối lớn, ngồi lại khơng có phận ngoại vi chíp tiện dụng cho người dùng vi điều khiển AVR Chính phận ngoại vi tích hợp góp phần làm tăng tốc độ xử lý lệnh tính chung cho hệ thống Bộ nhớ chương trình liệu tích hợp chíp AVR có tới cơng nghệ nhớ khác nhau: Bộ nhớ EPROM xóa kiểu Flash (ln ln lập trình được) dùng cho mã chương trình mà người dùng lập trình -3-3Bộ nhớ EPROM hay PROM xóa điện, nội dung nhớ giữ nguyên sau tắt điện áp nguồn Chương trình người dùng lập trình thời gian thựckhi hệ thống hoạt động Bộ nhớ RAM tĩnh (SRAM) dùng cho biến, nội dung nhớ tắt điện áp nguồn Ngoài ra, vi điều khiển AVR có tới 32 ghi làm việc đa năng, tất nối trực tiếp với khối ALU (đơn vị logic số học) trao đổi trực tiếp vùng địa nhớ, cụ thể 32 ô nhớ (0x00 đến 0xFF) tương ứng với ghi làm việc đa R0-R31 Khả lập trình hệ thống cách thiết kế công nghệ nhớ sử dụng mà vi điều khiển lập trình cịn cấp nguồn mạch Khơng cần phải nhấc vi điều khiển mạch nhiều họ vi điều khiển khác Các cổng giao tiếp RS-232 SPI cho phép thao tác dễ dàng thực hệ thống Có tốc độ xử lý lớn 12 lần so với vi điều khiển CISC thông thường 10 Hỗ trợ cho việc lập trình ngơn ngữ bậc cao, chẳng hạn ngơn ngữ C 11 Tất vi điều khiển lưu hành thị trường chế tạo công nghệ CMOS 0.6 μm 12 Điện áp làm việc cho phép từ 2.7V đến 6V 13 Một kiến trúc đơn giản hợp lý giúp người dùng tìm hiểu dễ dàng thời gian ngắn 14 Tập lệnh AVR có tới 113 lệnh cho phép lập trình cách dễ dàng đơn giản hợp ngữ, cấu trúc xử lý Atmel cho phép lập trình ngơn ngữ C 4.2 Cấu trúc phần cứng họ vi điều khiển AVR 4.2.1 Tổng quan kiến trúc Các ghi đa truy cập nhanh gồm 32 ghi bit truy cập chu kì xung nhịp Điều có nghĩa chu kì xung nhịp ALU -4-4thực phép toán: hai toán hạng xuất từ ghi đa năng, phép toán thực kết lưu trở lại vào tập ghi số 32 ghi dùng làm trỏ địa gián tiếp 16 bit để định địa không gian liệu cho phép tính địa hiệu dụng Một trỏ địa dùng làm trỏ địa cho chức tìm kiếm bảng số Các ghi có chức bổ xung ghi 16 bit X,Y,Z ALU: Hỗ trợ chức số học chức logic ghi Các phép toán ghi thực ALU Hình 4.2 Kiến trúc xử lý AVR Ngoài chế độ định địa gián tiếp ghi, chế độ định địa nhớ thơng thường dùng tập ghi đa Nguyên nhân ghi đa gán 32 địa thấp không gian liệu từ -5-5$00 đếm $1F nên chúng truy cập vị trí thơng thường Khơng gian nhớ vào chứa 64 bit địa cho chức ngoại vi CPU ghi điều khiển, Timer/Counter, ADC chức I/O khác Bộ nhớ I/O truy cập trực tiếp vị trí khơng gian liệu sau vị trí tập ghi đa từ địa $20 đến $5F AVR sử dụng kiến trúc Harvard với nhớ bus riêng biệt cho chương trình liệu Bộ nhớ chương trình thực thi với đường ống hai tầng Trong lệnh thực thi lệnh nhập vào nhớ chương trình Giải pháp cho phép vác lệnh thực thi chu kì xung nhịp Bộ nhớ chương trình nhớ Flash lập trình Trong trình gọi ngắt chương trình con, địa trở đếm lệnh hay đếm chương trình PC đưa vào ngăn xếp Ngăn xếp cấp phát lưu liệu SRAM nên kích thước bị giới hạn dung lượng không gian sử dụng nhớ SRAM Tất chương trình người dùng phải khởi tạo trỏ ngăn xếp SP (Stack Pointer) bắt đầu chương trình (trước chương trình ngắt thực thi) Con trỏ ngăn xếp 16 bit SP truy cập để đọc/ghi khơng gian vào/ra Bộ nhớ SRAM truy cập dễ dàng thông qua chế độ định địa cung cấp kiến trúc AVR Khối ngắt mềm dẻo có ghi điều khiển không gian vào bit cho phép ngắt toàn cục ghi trạng thái Mỗi ngắt có vector ngắt riêng Các ngắt có thứ tự ưu tiên tương ứng với thứ tự vector ngắt chúng, địa vector ngắt thấp thứ tự ưu tiên cao 4.2.2 Các ghi đa dụng Tất vi điều khiển AVR có 32 ghi đa Một số ghi cịn có chức bổ xung Tất ghi đặt tên từ R0 đến R31, tệp ghi tách thành hai phần, phần có 16 ghi đánh số từ R0 đến R15 R16 đến R31 Tất lệnh thao tác ghi có -6-6thể truy cập trực tiếp truy cập chu trình đơn đến tất ghi, có ngoại lệ lệnh SBCI, SUBI, CPI, ANDI ORI WI, lệnh tác động đến ghi từ R16 đến R31 Các ghi R0 R26 đến R31 có chức bổ sung Thanh ghi R0 sử dụng lệnh nạp nhớ chương trình LPM (Load Program Memory), ghi R26 đến R31 sử dụng làm ghi trỏ hình minh họa bên Các ghi trỏ sử dụng nhiều lệnh gián tiếp ghi Hình 4.3 Tập ghi vi điều khiển AVR 4.2.3 Cổng vào Tất vi điều khiển AVR có lượng lớn cổng vào nằm khoảng bit vi điều khiển loại 90S2313 đến 48 bit Mega103 Tất cổng vào/ra vi điều khiển AVR chịu dòng điện đến 20mA nên thích hợp với việc điều khiển trực tiếp led khơng cần đến mạch đệm bổ sung Tất cổng vào/ra có địa vào/ra kèm với chúng, ba địa vào cần đặt cấu hình cho bít riêng biệt thành lối vào thành lối ra, -7-7địa khác cần đến để xuất liệu địa thứ dùng để đọc liệu (lối vào) Các cổng đánh số DDRx, PORTx, PINx cho cổng x cho trước Để đọc liệu phần lối vào cổng, ta sử dụng ghi PINx Thanh ghi PINx nối tiếp với chân cổng Chân cổng cấp tín hiệu để trì trạng thái theo mức điện áp cao (pull up) bên cách ghi giá trị “1” vào bit cổng vị trí PORTx Các điện trở pull up có giá trị 30kΩ đến 150kΩ Giá trị tương úng dòng điện 160 μA đến 33μA Hình 4.4 Các port đọc ghi Ngược lại giá trị “0” ghi vào bit cổng địa PORTx trạng thái pull up chân lối vào chuyển theo trạng thái trở kháng cao 4.2.4 Bộ nhớ SRAM Bộ nhớ SRAM có hầu hết vi xử lý vi điều khiển AVR Dung lượng nhớ SRAM thay đổi từ 128 byte tới 4kbyte Bộ nhớ SRAM truy nhập cách sử dụng nhiều lệnh truy nhập liệu trực tiếp gián tiếp -8-8Bộ nhớ SRAM sử dụng cho ngăn xếp, thời gian truy nhập vào nhớ SRAM chu kì đồng hồ Giao tiếp với nhớ SRAM Trên vi điều khiển AVR cỡ lớn có khả kết nối với nhớ SRAM bên Để cho phép truy nhập nhớ SRAM PortA PortC điều khiển tín hiệu ALE dùng cho việc phân kênh địa chỉ/dữ liệu, bit SRE (bit 7) ghi MCUCR đặt lên “1” Thời gian truy nhập mặc định q trình nhập lên SRAM ngồi chu kì đồng hồ Thời gian làm tăng lên chu kì đồng hồ cách thiết lập bit SRW (bit6) ghi MCUCR Hình sau minh họa chu trình truy nhập mở rộng với trạng thái chờ bổ sung thêm Hình 4.5 Kết nối SRAM với vi điều khiển 4.2.5 Cấu trúc ngắt Ngắt cấu điều khiển dòng lệnh, cấu thiết kế hầu hết vi điều khiển Trong trình giao tiếp hệ thống vi xử lý với giới bên ngồi, nhiều việc xảy theo cách khơng đồng bộ, điều gây khó khăn cho xử lý mà phải kiểm tra tất thiết bị để giám sát di chuyển liệu Ngược lại, trở nên tốt thiết bị loan báo đến -9-9nơi liệu Đây mà cấu ngắt phải thực Thiết bị ngoại vi ngắt việc thực thi chương trình xử lý tạm ngừng việc thực thi chương trình bình thường để kiểm tra nguồn ngắt thực thao tác đáp ứng cần thiết Sau hoàn thành thao tác cần thiết, việc thực thi chương trình bị ngắt tiếp tục Chương trình ngắt đơn giản giống hệt chương trình ngoại trừ đặc điểm việc thực thi đoạn chương trình ngắt khơng bị xử lý chặn trước xuất vào thời điểm cụ thể Bộ vi điều khiện AVR có nhiều cấu trúc ngắt Khả ngắt chu cấp cho hầu hết thiết bị ngoại vi cho chương trình khơng cần phải thường xun kiểm tra thiết bị Thiết bị ngoại vi ngắt xử lý Việc thực thi lệnh hoàn thành Địa lệnh lưu trữ ngăn xếp (thuộc phần cứng phần mềm) Địa ISR (đoạn chương trình ngắt) nạp vào đếm chương trình Bộ xử lý ISR Việc hoàn thành thao tác thực thi ISR báo lệnh RETI Bộ xử lý nạp đếm chương trình với giá trị lưu trữ ngăn xếp việc thực thi chương trình bình thường lại tiếp tục 4.2.6 Bộ so sánh analog Bộ so sánh analog so sánh giá trị điện áp lối vào, cụ thể lối vào AINO (AC+) AIN1 (AC-) với Nếu điện áp lối vào AIN0 lớn AIN1 lối so sánh analog ACO (Analog Computer Output) đặt lên mức Lối cho Timer/Counter để trigger xóa ngắt so sánh analog - 10 - 10 - Hình 4.6 Sơ đồ khối so sánh Analog Bộ so sánh analog điều khiển thông qua ghi điều khiển trạng thái so sánh analog, thường viết tắt ACSR, địa $08 vùng địa I/O địa nhớ $28 vùng địa nhớ liệu Bảng 4.1 Sắp xếp chân so sánh Analog 4.2.7 Bộ biến đổi A/D bên Các vi điều khiển AVR loại AT90S4434/8535 Atmega 103/603 có biến đổi ADC với độ phân giải 10 bit Ngồi ADC cịn có dồn kênh lối vào, lối dẫn riêng lẻ tới hiển thị ADC - 11 - 11 - Hình 4.7 Sơ đồ khối biến đổi ADC Bảng 4.2 Các ghi điều khiển biến đổi ADC Thanh ghi điều khiển dồn kênh ADC $07 ($27) ADMUX - 12 - 12 Thanh ghi trạng thái điều khiển ADC ADCSR $06 ($26) Thanh ghi liệu ADC (HIGH) ADCH $05 ($25) Thanh ghi liệu ADC (LOW) ADCL $04 ($24) Bộ biến đổi ADC biến đổi qua ghi ADMUX, ADCSR,ADCH ADCR vùng địa vào Bằng ghi 3DMUX, kênh lựa chọn để biến đổi tín hiệu số Bộ biến đổi hoạt động hai chế độ: - Quá trình biến đổi người dùng khởi động - Quá trình biến đổi diễn liên tục Bảng 4.3 Sự xếp chân lối vào biếm đổi ADC Tín hiệu AT90S8535/4434 ADC0 ADC1 ADC2 ADC3 ADC4 ADC5 ADC6 ADC7 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 Việc kết thúc trình biến đổi nghĩa thời điểm mà tín hiệu analog số hóa sẵn sàng chờ xử lý tiếp tục, báo hiệu qua cờ ghi trạng thái ADC (ADCSR) Trong ghi ADCSR người dùng lựa chọn hai chế độ Kết trình biến đổi A/D đặt ghi ADCH (bit 9) ADCL (bit đến 7) - 13 - 13 4.2.8 Bộ định thời watchdog bên Bộ định thời Watchdog định thời điều khiển sử dụng làm thiết bị đánh thức trường hợp phần mềm bị rơi vào vịng lặp vơ tận trường hợp việc thực thi chương trình bị mắc lỗi Bộ định thời watchdog có lối ra, có khả đặt lại điều khiển Hình bên Mạch định thời watchdog timer giữ nhịp từ dao động RC riêng biệt chip Bằng cách điều khiển mạch chia tần số timer, khoảng thời gian reset mạch Watchdog điều chỉnh hình minh họa bảng sau khoảng reset,mạch Watchdog phụ thuộc vào điện áp nguồn ni Hình 4.8 Sơ đồ khối định thời Watchdog Chế độ hoạt động tiết kiệm lượng: Bộ vi xử lý AVR có nhiều khả làm giảm lượng tiêu thụ để chuyển sang trạng thái ngủ (sleep mode), bit SE MCUCR (mở ghi điều khiển xử lý) phải đặt lên “1”, lệnh sleep cần phải thực thi Nếu ngắt cho phép xuất MCU trạng thái ngủ, MCU thức dậy thực thi đoạn chương trình (routine) ngắt, lại tiếp tục thực thi từ lệnh theo lệnh sleep Nội dung tập ghi, SRAM, nhớ I/O giữ nguyên Nếu tín hiệu reset xuất trạng thái ngủ MCU thức dậy thực thi từ vector reset - 14 - 14 Khi SM bị xóa khơng lệnh sleep bắt buộc MCU chuyển sang chế độ nghỉ, làm ngưng hoạt động CPU cho phép Timer/Counter Watchdog ngắt hệ thống tiếp tục hoạt động Đặc tính cho phép MCU đánh thức ngắt trigger từ bên ngắt bên giống ngắt tràn định thời đặt lại Watchdog Nếu đánh thức từ ngắt so sánh analog khơng u cầu, so sánh analog bị ngắt nguồn ni cách đặt bit ACD vào ghi điều khiển trạng thái analog ACSR Biện pháp làm giảm dòng tiêu thụ chế độ nghỉ Khi MCU bị đánh thức khỏi chế độ nghỉ, đơn vị CPU khởi động chương trình chấp hành Khi bit SM đặt lên “1”, lệnh sleep bắt buộc MCU chuyển sang chế độ tiết kiệm lượng hay giảm dòng tiêu thụ Trong chế độ dao động bị ngưng hoạt động, ngắt Watchdog (nếu trạng thái cho phép) hoạt động Chỉ thao tác đặt lại (reset) bên Thao tác đặt lại Watchdog (nếu trạng thái cho phép hoạt động) ngắt theo mức lên INT0 INT1 đánh thức MCU Chú ý ngắt trigger theo nức sử dụng cho việc đánh thức khỏi trạng thái tiết kiệm lượng mức thấp cần lượng giữ khoảng thời gian dài thời gian làm trễ dài (Time out) thao tác reset TOUT Nếu khơng thiết bị không thức dậy 4.3 Giới thiệu họ vi điều khiển Atmega 16 4.3.1 Đặc điểm Atmega16 vi điều khiển RISC bit tiêu thụ lượng dựa kiến trúc RISC AVR Bằng việc thực lệnh mạnh chu kì xung nhịp, Atmega16 đạt đên tốc độ xử lý lệnh lên đến triệu lệnh/giây tần số 1MHz Vi điều khiển cho phép người thiết kế hệ thống tối ưu hóa mức độ tiêu thụ lượng mà đảm bảo tốc độ xử lý - 15 - 15 Phần cốt lỏi AVR kết hợp tập lệnh phong phú số lượng với 32 ghi làm việc đa Toàn 32 ghi nối với ALU cho truy cập hai ghi độc lập lệnh đơn chu kì xung nhịp Kiến trúc đạt tốc độ xủ lý nhanh gấp 10 lần so với vi điều khiển CISC (Complex Instruction Set Computer ) thông thường Atmega16 với kiến trúc RISC có tiêu chất lượng cao tiêu thụ lượng ít: 131 lệnh hầu hết thực chu kỳ xung nhịp 32x8 ghi làm việc đa Tốc độ xử lý lệnh lên đến 16 triệu lệnh/giây tần số 16MHz Bộ nhớ liệu nhớ chương trình khơng tự liệu: 16K byte nhớ Flash lập trình hệ thống, ghi xoá 10000 lần 512 byte nhớ EEFROM lập trình hệ thống, ghi xóa 100000 lần 1K byte nhớ SRAM Khóa bảo mật phần mềm lập trình Giao diện nối tiếp SPI để lập trình hệ thống Các tính ngoại vi: Hai đếm/ định thời bit với chế độ so sánh chia tần số tách biệt Một định thời 16 bit với chế độ so sánh, chia tần số tách biệt chế độ bắt mẫu (Capture Mode) Bộ đếm thời gian thực (RTC) với dao động tách biệt Bốn kênh PWM điều chế độ rộng xung Bộ biến đổi ADC bên kênh 10 bit Bộ USART nối tiếp lập trình Bộ định thời Watchdog lập trình với dao động chip Bộ so sánh Analog chip Các tính vi điều khiển đặc biệt: Có mạch power - on reset reset phần mềm - 16 - 16 Các nguồn ngắt ngồi Có chế độ ngủ: nghỉ (Idle) Tiết kiệm lượng (power save) power down, ADC Noise Reduction, Standby and Extended Standby Tần số làm việc thay đổi phần mềm Vào cách đóng vỏ 32 đường vào lập trình 44 chân dán kiểu vỏ vuông (TQFP) Điện làm việc: VCC = 2,7V đến 5,5V Atmega16L VCC = 4,5V đến 5,5V Atmega16 Vùng tốc độ làm việc: đến MHz Atmega16L đến 16 MHz Atmega16 4.3.2 Sơ đồ chân Atmega16 Hình 4.9 Sơ đồ chân Atmega16 - 17 - 17 - 4.3.3 Sơ đồ khối Atmega16 - 18 - 18 Hình 4.10 Sơ đồ khối vi điều khiển AVR Atmega16 4.3.4 Mô tả chức chân Atmega16 Vcc : điện áp nguồn nuôi GND : nối đất PORT A (PA0 … PA7) : có nhiều chức năng: - Là ngõ vào tín hiệu để chuyển đổi A/D - Là cổng vào bit biến đổi A/D không sử dụng, chân Port A có điện trở nối lên nguồn dương Port A cung cấp nguồn điện 20mA điều khiển trực tiếp led hiển thị - Khi chân Port A lối vào đặt xuống mức thấp bên ngồi chúng nguồn dịng điện trở nối lên nguồn dương kích hoạt Các chân trạng thái tổng trở cao tín hiệu reset mức tích cực khơng có tín hiệu giữ nhịp PORT B (PB0 … PB7) - Là cổng vào bit, có điện trở kéo lên bên trong, cung cấp dòng điện 20mA Khi port B port nhập vào (in put) ngõ mức thấp (low) port B đóng vai trị nguồn dịng điện trở kéo lên kích hoạt Port B trạng thái tổng trở cao vi điều khiển bị reset khơng có dao động PORT C (PC0 … PC7) - Là cổng vào theo hai hướng bit Các chân Port C có điện trở nối lên nguồn dương Ngõ port C cho dịng 20mA qua điều khiển trực tiếp led hiển thị - Khi chân port C lối vào đặt xuống mức thấp từ bên ngoài, chúng nguồn dòng điện trở nối lên nguồn dương kích hoạt chân trạng thái tổng trở cao tín hiệu reset mức tích cực khơng có tín hiệu giữ nhịp PORT D (PD0 … PD7) - 19 - 19 - Là cổng vào theo hai hướng bit Các chân Port D có điện trở nối lên nguồn dương Ngõ port D cho dòng 20mA qua điều khiển trực tiếp led hiển thị Khi chân port D lối vào đặt xuống mức thấp từ bên ngồi, chúng nguồn dịng điện trở nối lên nguồn dương kích hoạt chân trạng thái tổng trở cao tín hiệu reset mức tích cực khơng có tín hiệu giữ nhịp - Cung cấp tính tương ứng với chức đặc biệt Reset: lối vào đặt lại Bộ vi điều khiển đặt lại chân mức thấp 50ns có tín hiệu giữ nhịp Các xung ngắn khơng tạo tín hiệu đặt lại XTAL1: Lối vào mạch khuếch đại đảo lối vào mạch tạo xung nhịp bên XTAL2: Lối vào khuếch đại ảo ICP: Chân vào có chức bắt tín hiệu cho Timer/Cuonter ALE: Là chân tín hiệu cho phép chốt địa (adress latch enable) dùng truy nhập nhớ Xung ALE dùng để chốt bit địa chu kì truy cập nhó thứ Sau chân AD0 … AD7 dùng làm đường liệu chu kì truy nhập nhớ thứ hai (AT90S8515) Bộ tạo dao động thạch anh: XTAL1 XTAL2 lối vào lối khuếch đại đảo, khuếch đại bố trí để làm tạo dao động chip hình 4.3 Một cộng hưởng tinh thể thạch anh cộng hưởng gốm sử dụng Để điều khiển vi điều khiển nguồn xung nhịp bên ngồi chân XTAL2 để khơng nối XTAL với tín hiệu dao động bên 4.4 Giới thiệu vi điều khiển Atmega8 4.4.1 Đặc điểm Vi điều khiển Atmega8 hãng ATMEL loại vi điều khiển AVR với kiến trúc phức tạp - 20 - 20 Atmega vi điều khiển RISC bit tiêu thụ lượng đạt hiệu suất cao, dựa kiến trúc RISC AVR Bằng việc thực lệnh chu kỳ xung nhịp, Atmega8 đạt tốc độ xử lý liệu lên đến triệu lệnh/giây tần số 1MHz Atmega8 cho phép người thiết kế hệ thống tối ưu hoá mức độ tiêu thụ lượng mà đảm bảo tốc độ xử lý Atmega tích hợp đầy đủ tính chuyển đổi ADC 10bit, so sánh, truyền nhận nối tiếp, định thời, đếm thời gian thực, điều chế độ rộng xung…Do ta phải nghiên cứu khai thác triệt để tính để ứng dụng hiệu vào mạch thực tế Atmega8 sử dụng kiến trúc RISC (Reduced Instruction Set Computer) AVR Atmega8 với kiến trúc RISC có tiêu chất lượng cao tiêu thụ lượng ít: - 130 lệnh hầu hết thực chu kỳ xung nhịp - 32 ghi làm việc đa - Tốc độ xử lý lệnh lên đến 16 triệu lệnh/giây tần số 16MHz Bộ nhớ liệu nhớ chương trình khơng tự liệu: - 8K byte nhớ Flash lập trình hệ thống, nạp xố 10000 lần - 512 byte nhớ EEFROM lập trình hệ thống, ghi xóa 100000 lần - 1K byte nhớ SRAM - Có thể giao tiếp với 8K byte nhớ ngồi - Khóa bảo mật phần mềm lập trình - Giao diện nối tiếp SPI để lập trình hệ thống Các tính ngoại vi: - Hai đếm/ định thời bit với chế độ so sánh chia tần số tách biệt - Một định thời 16 bit với chế độ so sánh, chia tần số tách biệt chế độ bắt mẫu (Capture Mode) - Bộ đếm thời gian thực (RTC) với dao động tách biệt - Bộ điều chế độ rộng xung PWM bit - 21 - 21 - Bộ biến đổi ADC bên kênh 10 bit - USART nối tiếp lập trình Bộ định thời Watchdog lập trình với dao động chip - Một so sánh Analog Các tính vi điều khiển đặc biệt: - Có mạch power - on reset reset phần mềm - Các nguồn ngắt ngồi - Có 5chế độ ngủ: nghỉ (Idle) Tiết kiệm lượng (power save) power down, ADC Noise Reduction, Standby - Tần số làm việc thay đổi phần mềm Vào cách đóng vỏ - 23 đường vào lập trình - 32 chân dán kiểu vỏ vuông (TQFP) Điện làm việc: - VCC = 2,7V đến 5,5V Atmega8L - VCC = 4,5V đến 5,5V Atmega8 Vùng tốc độ làm việc: - đến MHz Atmega8L - đến 16 MHz Atmega8 - 22 - 22 4.4.2 Sơ đồ chân Atmega8 - 23 - 23 Hình 4.11 Sơ đồ chân Atmega8 4.4.3 Sơ đồ khối Atmega8 - 24 - 24 Hình 4.12 Sơ đồ khối vi điều khiển AVR Atmega8 4.4.4 Mô tả chức chân Atmega8 VCC: Điện áp nguồn nuôi GND: Đất Port B (PB0…PB7) - Port B port I/O bit với điện trở kéo lên bên trong, cung cấp dịng điện 40mA điều khiển trực tiếp led đơn - Khi chân Port B lối vào đặt xuống mức thấp từ bên ngồi, chúng nguồn dịng điện trở nối lên nguồn dương kích hoạt Các chân trạng thái tổng trở cao tín hiệu Reset mức tích cực khơng có dao động Port C (PC0…PC6) - Port C port I/O bit với điện trở kéo lên bên trong, cung cấp dịng điện 40mA điều khiển trực tiếp led đơn - Khi chân Port C lối vào đặt xuống mức thấp từ bên ngoài, chúng nguồn dòng điện trở nối lên nguồn dương kích hoạt Các chân trạng thái tổng trở cao tín hiệu Reset mức tích cực khơng có dao động - Port C đóng vai trị đường địa cao từ A8 đến A15 kết nối nhớ SRAM bên Port D (PD0…PD7) - Port D port I/O bit với điện trở kéo lên bên trong, cung cấp dòng điện 40mA điều khiển trực tiếp LED đơn - Khi chân Port D lối vào đặt xuống mức thấp từ bên ngoài, chúng nguồn dòng điện trở nối lên nguồn dương kích hoạt Các chân - 25 - 25 trạng thái tổng trở cao tín hiệu Reset mức tích cực khơng có dao động Reset: Ngõ vào đặt lại ATmega8 đặt lại chân mức thấp 50ns khơng có tín hiệu xung clock Các xung ngắn khơng tạo tín hiệu đặt lại AVCC: Cung cấp nguồn cho Port C chuyển đổi ADC hoạt động Ngay không sử dụng chuyển đổi ADC chân AVCC phải đươc kết nối tới nguồn VCC AREF: Đây chân điều chỉnh điện áp tham chiếu cho chuyển đổi A/D XTAL1: Ngõ vào khuếch đại đảo ngõ vào mạch tạo xung nhịp bên XTAL2: Ngõ khuếch đại đảo Bộ tạo dao động thạch anh : - XTAL1 XTAL2 lối vào lối khuếch đại đảo, khuếch đại bố trí để làm tạo dao động chip - Để điều khiển Vi Điều Khiển từ nguồn xung nhịp bên ngoài, chân XTAL2 để khơng, chân XTAL1 nối với tín hiệu dao động bên