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

Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010

57 817 11
Tài liệu đã được kiểm tra trùng lặp

Đ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

Định dạng
Số trang 57
Dung lượng 1,34 MB

Nội dung

nghiên cứu việc ghép nối cảm biến với vi điều khiển AVR để từ đó ghép nối với nút mạng và xây dựng một mô hình đo nhiệt độ tự động và truyền nhận không dây sử dụng vi mạch tích hợp cao C

Trang 1

LỜI MỞ ĐẦU

Ngày nay với sự phát triển mạnh mẽ của công nghệ vi cơ điện tử và công nghệ vi hệ thống với những mạch tích hợp cao xử lí thông minh dẫn đến mô hình mạng cảm nhận không dây đã và đang ngày cành phát triển mạnh mẽ và ứng dụng trong mọi lĩnh vực của đời sống xã hội (nông nghiệp, y tế, công nghiệp ).

Mạng cảm nhận không dây (Wiress Sensor Network) với đặc điểm của loại mạng này vừa có chức năng mạng vừa có chức năng cảm nhận Nó hoạt động trên nguyên lí là tại một nút mạng sẽ cảm nhận thông số của môi trường cần đo,đo đạc thông số và sau đó tiến hành truyền dữ liệu qua môi trường không dây về trạm gốc (nút gốc), để trên cơ sở đó nút gốc có thể đưa ra các lệnh xừ lý cần thiết.

Khoá luận này nghiên cứu việc ghép nối cảm biến với vi điều khiển AVR để từ đó ghép nối với nút mạng và xây dựng một mô hình đo nhiệt độ tự động và truyền nhận không dây sử dụng vi mạch tích hợp cao CC1010.

Trang 2

MỞ ĐẦU

Trong những năm gần đây với sự phát triển mạnh mẽ của công nghệ linh kiện điện tử và công nghệ thông tin đã tạo ra những sự thay đổi to lớn trong cuộc sống Mô hình mạng cảm nhận không dây ra đời dựa trên cơ sở ứng dụng những thành tựu của công nghệ truyền thông không dây Nó ra đời nhằm thỏa mãn nhiều yêu cầu trong thực tế trong đó việc đo một thông số môi trường là rất cần thiết và đang được nghiên cứu và ứng dụng rộng rãi bởi vì nó đem lại nhiều ứng dụng cần thiết cho con người Đặc điểm của mạng cảm nhận không dây là vừa có chức năng mạng vửa có chức năng cảm nhận Nó hoạt động trên nguyên lí là tại một nút mạng sẽ cảm nhận thông số của môt trường cần đo , đo đặc thông số và sau đó tiến hành truyền dữ liệu qua môt trường không dây về trạm gốc (nút gốc), để trên cơ sở đó nút gốc có thể đưa ra các lệnh xử lý cần thiết hoặc truyền số liệu vào máy tính Bản thân nút gốc không nhất thiết phải là một máy vi tính mà cũng có thể được chế tạo với kích thước nhỏ,phù hợp với đặc thù của từng lĩnh vực ứng dụng cụ thể.

Mạng cảm nhận không dây do vây đã mở ra một hướng nghiên cứu mới,với một loạt các ứng dụng hấp dẫn đáp ứng được những đòi hỏi khắt khe trong nhiều lĩnh vực quân sự,công nghiệp,nông nghiệp,y tế

với đề tài “Nghiên cứu ghép nối cảm biến có tín hiệu ra dạng số cho nút mạng cảm nhận không dây” là một trong những phần của nút mạng cảm nhận không dây và cụ thể trong đề tài này đã tiến hành nghiên cứu ghép nối cảm biến đo nhiệt độ và độ ẩm đầu ra số SHT71 với vi điều khiển AVR và sau đo ghép nối với vi điều khiển CC1010 của hãng Chipcon

Vi điều khiển CC1010 là một Module tích hợp vi điều khiển họ 8051 thông thường với bộ truyền nhận RF không dây trên cùng một chip,vì thế khi ghép nối với đầu đo ,không những có khả năng tạo thành các điểm đo thông số môi trường mà còn có thể xây dựng thành một nút mạng trong cấu hình mạng cảm nhận không dây,cả nút mạng và nút gốc đều được thiết kế với chip xử lý

Trang 3

chính là vi điều khiển CC1010 Khóa luận này tiến hành nghiên cứu đê xây dựng các ghép nối tạo thành nút mạng “Đo tự động và truyền nhiệt độ và độ ẩm” về nút gốc “Nhận và hiển thị nhiệt độ và độ ẩm” qua LCD

từ việc nghiên cứu về môt hình mạng cảm nhận không dây thì các vấn đề cần phải giải quyết trong để tài này là:

- Thiết kế khối cảm nhận:thực hiện việc ghép nối giữa cảm nhận và vi điều khiển cụ thể là cảm biến nhiệt độ đầu ra số SHT71 và vi điều khiển AVR.- Thiết kế khối truyền thông tin và hiển thị nhiệt độ và độ ẩm: Màn hình

LCD1602A được ghép nối với vi điều khiển CC1010.Tín hiệu thu được từ Anten được phân tích để lọc ra thông tin nhiệt độ và độ ẩm.Thông tin nhiệt độ và độ ẩm được phân tích và đưa lên màn hình LCD

- Viết phần mền cho hệ thống,đảm bảo hệ thống ghi nhận thông số nhiệt độ,độ ẩm ,truyền ,nhận và hiển thị thông tin

Tiêu chí được đặt ra là hệ thống chế tạo phải có độ ổn định cao,nút mạng tiêu thụ năng lượng thấp,có khả năng hoạt động độc lập liên tục dài ngày.Phương pháp nghiên cứu được lựa chọn là kết hợp phương pháp truyền thống (nghiên cứu lý thuyết,tính toán xây dựng mô hình hệ thống ) với phương pháp hiện đại:Sử dụng phần mềm vẽ mạch Protel,mạch in nhiều lớp,bộ công cụ phát triển Keil uVision 2 ,các IC cảm biến và vi điều khiển có độ tích hợp cao )

Nội dung để tài chia làm 3 chương:

Chương I: Tổng quan về mạng cảm nhận không dây.

Chương II: Các phương pháp ghép nối dạng đầu đo và chương trình thực hiện chức năng thu thập dữ liệu

Chương III: Phần mềm nhúng.

Trang 4

Chương I GIỚI THIỆU MẠNG CẢM NHẬN KHÔNG DÂYI.Mạng cảm nhận không dây

Khái niệm mạng cảm nhận không dây dựa trên công thức đơn giản sau:Cảm nhận + CPU + Radio = WSN

Từ công thức đơn giản trên, rất nhiều ứng dụng xuất hiện Tuy nhiên, việc kết hợp các cảm biến, radios, và CPU vào một mạng cảm nhận không dây (wireless sensor network-WSN) đòi hỏi hiểu biết chi tiết về khả năng và giới hạn của các thành phần phần cứng, cũng như hiểu rõ các công nghệ mạng hiện đại, lý thuyết phân bố hệ thống Một thách thức là ánh xạ toàn bộ yêu cầu hệ thống vào một thiết bị riêng lẻ Để làm cho WSN trở nên thực tế, một kiến trúc cần được phát triển để tổng hợp các ứng dụng dựa trên khả năng của phần cứng

Để phát triển kiến trúc hệ thống cần đi từ yêu cầu ứng dụng mức cao xuống các yêu cầu phần cứng mức thấp Để giới hạn số các ứng dụng phải xem xét, cần tập trung vào một tập các dạng ứng dụng được sử dụng nhiều trong thực tế Sử dụng các dạng ứng dụng này để tìm ra các yêu cầu mức hệ thống cho toàn bộ kiến trúc Từ các yêu cầu mức hệ thống này, có thể có các yêu cầu cho các nút mạng riêng lẻ

1 Các ứng dụng của mạng cảm nhận không dây

Có ba dạng ứng dụng của mạng cảm nhận không dây: thu thập dữ liệu môi trường, giám sát an ninh, và theo dõi đối tượng Hầu hết các ứng dụng chủ yếu

của WSN đều thuộc ba dạng này.

1.1 Thu thập dữ liệu môi trường

Mạng cảm nhận không dây thu thập dữ liệu môi trường ra đời đáp ứng cho nhu cầu thu thập thông tin về môi trường tại một tập hợp các điểm xác định trong một khoảng thời gian nhất định nhằm phát hiện xu hướng hoặc quy luật vận động của môi trường

Trang 5

1.2 Giám sát an ninh

Một ứng dụng thứ hai của mạng cảm nhận là giám sát an ninh Các mạng giám sát an ninh được tạo bởi các nút đặt ở những vị trí cố định trong môi trường liên tục theo dõi một hay nhiều cảm biến để nhận biết sự bất thường Sự khác nhau chủ yếu giữa giám sát an ninh và giám sát môi trường là các mạng an ninh không thu thập bất kỳ dữ liệu nào Điều này có tác động lớn đến việc tối ưu kiến trúc mạng Mỗi nút thường xuyên kiểm tra trạng thái các cảm biến của chúng nhưng chỉ truyền dữ liệu khi có sự vi phạm an ninh Việc truyền tức thời và tin cậy của thông điệp cảnh báo là yêu cầu chính của hệ thống

1.3 Theo dõi đối tượng

Với các mạng cảm nhận không dây, các đối tượng có thể được theo dõi đơn giản gắn chúng với một nút cảm biến nhỏ Nút cảm biến này sẽ được theo dõi khi chúng đi qua một trường các nút cảm biến được triển khai tại những vị trí đã biết Thay vì cảm nhận dữ liệu môi trường, những nút này sẽ được triển khai để cảm nhận các thông điệp RF của các nút gắn với các đối tượng Những nút này có thể được sử dụng như những thẻ để thông báo sự có mặt của một thiết bị Một

Trang 6

cơ sở dữ liệu có thể được sử dụng để ghi lại vị trí tương đối của đối tượng với các nút mạng, do đó có thể biết vị trí hiện thời của đối tượng.

Giới thiệu một số VĐK có thể làm nút mạng cảm nhận

Vấn đề lựa chọn VĐK để xây dựng nút mạng là một vấn đề quan trọng Việc chọn VĐK hợp lý sẽ làm cho qúa trình xây dựng hệ thống được rút ngắn, hệ thống hoạt động ổn định, tin cậy và đạt các chỉ tiêu đề ra.

Từ các chỉ tiêu nút mạng đã nói ở Chương 1, các tiêu chí quan trọng để chọn VĐK như sau:

o Tiêu thụ năng lượng thấp.

o Tích hợp ADC để có thể ghép nối với cảm biến tương tự.

o Bộ nhớ chương trình cũng như bộ nhớ dữ liệu có kích thước hợp lý.o Kích thước vật lý nhỏ

o Có công cụ phát triển giúp người phát triển xây dựng hệ thống dễ dàng và thuận tiện như: sử dụng ngôn ngữ cấp cao, có các thư viện hỗ trợ cho việc cảm nhận cũng như truyền nhận không dây, hỗ trợ gỡ lỗi…

Trang 7

truyền nhận không dây, do đó việc chọn VĐK CC1010 làm nút mạng hợp lý hơn chọn các VĐK khác.

1.4 Giới thiệu Vi điều khiển CC1010A Các đặc điểm chính:

- Thu phát không dây 300-1000 MHz

- Dòng tiêu thụ rất thấp (9,1 mA trong chế độ nhận).- Độ nhạy cao (-107 dBm).

- Có thể lập trình cho công suất đầu ra tới +10 dBm.- Tốc độ truyền RF có thể đạt 76.8 kbit/s.

- Cần rất ít thành phần ngoài- Đo được cường độ RF (RSSI)- Tương thích họ VĐK 8051

- 32 kB Flash, 2048 + 128 Byte SRAM

- 3 kênh ADC 10 bit, 4 timers / 2PWMs, 2 UARTs, RTC, Watchdog, SPI, mã hoá DES, 26 cổng I/O

- Có khả năng gỡ lỗi sử dụng chương trình dịch Keil μVision2 IDE qua cổng nối tiếp

Trang 8

tự nhiên

Điều khiển mức ưu

Vector ngắt

Cờ cho phép

Ngắt truyền nối tiếp 0Ngắt nhận nối tiếp 0

SCON0.RI 0Ngắt truyền nối tiếp 1

Ngắt nhận nối tiếp 1

SCON1.RI 1Ngắt truyền/nhận RF 7 EIP.PRF 0x43 EIE.RFIE EXIF.RFIF

Trang 9

Ngắt ADC

Ngắt mã hoá/giải mã DES

và ADCON2.ADCIE

Ngắt thời gian thực 11 EIP.PRTC 0x63 EIE.RTCIE EICON.RTCIF

Mặt nạ ngắt

IE.EA là cờ cho phép ngắt toàn bộ các ngắt, ngoại trừ ngắt Flash/Debug Khi cờ IE.EA được thiết lập, mỗi ngắt bị che bởi cờ cho phép ngắt được liệt kê ở bảng 1 Khi cờ IE.EA bị xoá, tất cả các ngắt bị che, ngoại trừ ngắt Flash/Debug, có bit che ngắt riêng, EICON.FDIE.

Xử lý ngắt

Khi một ngắt được cho phép xảy ra, CPU nhảy tới địa chỉ phục vụ ngắt tương ứng với ngắt đó (ISR), như chỉ ra ở bảng 1 CC1010 thực hiện ISR để hoàn thành trừ khi một ngắt khác có mức ưu tiên cao hơn xảy ra Mỗi ISR kết thúc với lệnh RETI Sau khi thực hiện lệnh RETI, CC1010 quay trở lại lệnh tiếp theo sau lệnh đã được thực hiện trước khi xảy ra ngắt Nếu lệnh đang thực hiện

là RETI, hay đang ghi vào các thanh ghi IP, IE, EIP, EIE, CC1010 hoàn thành

thêm một lệnh trước khi phục vụ ngắt.

Thứ tự ưu tiên

Trang 10

Các ngắt có 2 giai đoạn ưu tiên: mức ngắt và mức tự nhiên Mức ngắt được ưu tiên trước mức tự nhiên.

Mức ngắt có 2 mức: thấp và cao Ngắt có mức ưu tiên là cao sẽ có thể ngắt ngang chương trình phục vụ ngắt có mức ưu tiên thấp hơn Nếu các ngắt có cùng mức ưu tiên mà cùng xảy ra đồng thời, ngắt nào có mức ưu tiên tự nhiên thấp nhất sẽ được phục vụ trước.

Biến đổi ADC

Bộ biến đổi ADC của CC1010 có độ phân dải 10 bit, được điều khiển bởi

các thanh ghi ADCON và ADCON2 Có ba kênh vào ADC, được chọn bởi ADCON.ADADR Thanh ghi này cũng được sử dụng để chọn chân AD1 như là

điện áp tham chiếu ngoài (khi sử dụng AD0) Khi chân AD1 được dùng như tham chiếu ngoài, chỉ có hai lối vào ADC được sử dụng Đầu ra ADC là đơn cực, nghĩa là giá trị 0 tương ứng với 0V và 1023 tương ứng với điện áp tham

chiếu (1.25 V hoặc VDD phụ thuộc vào bit ADCREF) Điện áp tham chiếu analog được điều khiển bởi ADCON.ADCREF ADCON.AD_PD cần đặt bằng

1 khi không sử dụng ADC để tiết kiệm năng lượng Biến đổi ADC được bắt đầu

sau 5µs sau khi xoá bit điều khiển ADCON.ADCRUN khi sử dụng VDD hay

nguồn tham chiếu ngoài, hoặc 100 µs khi sử dụng tham chiếu trong 1.25V.

Bộ định thời

CC1010 có 4 bộ định thời Timer 0, Timer 1, Timer 2, Timer 3 hoạt động như là bộ định thời hay bộ đếm (Timer/Counter) trong đó Timer2 và Timer3 còn có thể hoạt động như bộ điều chế độ rộng xung (PWM - Pulse Width Modulation).

Trang 11

Time 0/ Timer 1

Timer/Counter 0 và 1 có thể được lập trình và hoạt động độc lập theo 4 chế độ,

được điều khiển bởi các thanh ghi TMOD và TCON Các chế độ có thể như sau:

- 13 bit Timer/Counter (Mode 0)- 16 bit Timer/Counter (Mode 1)

- 8 bit Timer/Counter tự động nạp lại (Mode 2)- 2 Timer 8 bit (chỉ dùng cho Timer 0, Mode 0)

Chi tiết về các chế độ, cách điều khiển sử dụng 2 thanh ghi TCON và TMOD xin xem thêm phần Tài liệu tham khảo [6].

Timer 2/ Timer 3

Ngoài tính năng như là bộ định thời, Timer 2 và 3 có thể được sử dụng như

bộ điều chế độ rộng xung PWM Nếu xoá bit TCON2.M2/TCON2.M3 thì sẽ là bộ định thời Nếu thiết lập bit TCON2.M2/TCON2.M3 thì sẽ là PWM Khi đó

chân P3.4 và chân P3.5 là chân phát xung đầu ra tương ứng cho Timer2/Timer3 Chu kỳ TnPWM đối với Timer n như sau:

fsystemTnPRETnPWM =255.( +1)

Trong đó thời gian ở trạng thái cao Tnh là:

TnhPWM= .( Pr +1)

Điều này có nghĩa là trong chế độ PWM, nếu Tn = 0 thì có mức thấp ở đầu ra và nếu Tn = 255 thì có mức cao.

Trang 12

Trong đó giá trị các thanh ghi Tn và TnPRE được đặt từ trước.

1.5 Bộ thu phát không dây (RF Transceiver)Miêu tả chung

Bộ thu phát CC1010 UHF RF được thiết kế cho những ứng dụng tiêu thụ năng lượng thấp và điện áp thấp Mạch thu phát được dành cho ISM (công nghiệp, khoa học và y học) và SRD (Short Range Device) dải tần 315, 433, 868 và 915 MHz, nhưng có thể dễ dàng lập trình để hoạt động trong dải tần 300-1000 MHz Các thông số chính của CC1010 có thể được lập trình thông qua các thanh ghi chức năng đặc biệt (Special Function Registers - SFRs), làm cho CC1010 rất mềm dẻo và dễ sử dụng bộ thu phát vô tuyến Rất ít các thành phần tích cực đòi hỏi cho hoạt động của bộ thu phát RF

Một sơ đồ khối được đơn giản hoá của bộ thu phát RF được thể hiện ở hình 2.1 Chỉ các chân tín hiệu analog được thể hiện cùng với bus dữ liệu SFR bên trong để thiết lập giao tiếp RF và để truyền và nhận dữ liệu.

Trong chế độ nhận, tín hiệu vào RF được khuếch đại bởi bộ khuếch đại ồn thấp (low-noise amplifier LNA) và được chuyển thành trung tần (intermediate frequency - IF) bởi bộ trộn (MIXER) Trong giai đoạn trung tần (IF STAGE) tín hiệu được khuếch đại và lọc trước khi đưa tới bộ giải điều chế (DEMOD) Như

Hình 2.1 Sơ đồ khối của bộ thu phát RF

Trang 13

một lựa chọn, một tín hiệu RSSI hay IF sau khi trộn được đưa vào AD2 Sau khi

giải điều chế, tín hiệu số được đưa tới thanh ghi RFBUF Ngắt có thể được sinh ra theo mỗi bit hay mỗi byte nhận được (EXIF.RFIF).

Trong chế độ truyền, dao động được điều khiển bởi điện áp (VCO) được đưa trực tiếp tới khuếch đại công suất (PA) Đầu ra RF là khoá dịch chuyển tần

số (frequency shift keyed - FSK) bởi luồng bit được đưa tới thanh ghi RFBUF Ngắt có thể được sinh ra cho mỗi bit hay byte được truyền (EXIF.RFIF) Mạch

chuyển bên trong T/R làm cho giao tiếp với antenna dễ dàng và sử dụng rất ít thành phần ngoại vi.

Bộ tổ hợp tần số tạo ra dao động bên trong được đưa tới MIXER trong chế độ nhận và PA trong chế độ truyền Bộ tổ hợp tần số bao gồm một dao động thạch anh (XOSC), bộ nhận biết pha (phase detector - PD), bơm nạp (CHARGE PUMP), bộ lọc (internal loop filter - LPF), VCO, và các bộ chia tần (/R và /N) Một tinh thể ngoài có thể được nối vào XOSC VCO chỉ cần một cuộn cảm ngoài.

Mạch ứng dụng RF

Bộ thu phát RF đòi hỏi rất ít các ngoại vi Một mạch ứng dụng điển hình được thể hiện ở hình 2.2 Các giá trị của các thành phần này xin xem thêm phần Tài liệu tham khảo [6].

Tương ứng vào/ra

Trang 14

Cặp C31/L32 là đầu vào cho nơi nhận của bộ nhận, và nội trở của L32 có tác dụng định thiên (bias) một chiều C41, L41 và C42 được sử dụng để tương ứng với bộ truyền có trở kháng 50 Ohm Một bộ chuyển mạch trong T/R làm cho nó có khả năng cùng nối với đầu vào và đầu ra và thích hợp với bộ thu phát 50Ω trong cả hai chế độ RX và TX VCO được tích hợp hoàn toàn trừ cuộn cảm L101

Các thành phần bên ngoài (ví dụ RF LC hay lọc răng cưa) có thể được sử dụng để cải tiến hiệu năng cho các ứng dụng riêng biệt Nếu lọc răng cưa được sử dụng, nó chỉ có tác dụng cho RX (phải sử dụng chuyển mạch ngoài RX/TX).

Nguồn cung cấp

Các tụ tách và lọc nguồn cần được sử dụng (không chỉ ra trong mạch ứng dụng) Các tụ này càng gần chân nguồn càng tốt Vị trí và kích thước của tụ tách và lọc nguồn là rất quan trọng để đạt được độ nhạy tốt nhất.

Chú ý rằng các giá trị hợp thành cho 868 và 915 MHz có thể là như nhau Tuy nhiên, rất quan trọng là cách bố trí được tối ưu hoá để lựa chọn cuộn cảm VCO để làm cho tần số hoạt động được chính xác Cuộn cảm VCO phải được đặt rất sát và đối xứng với các chân tương ứng (L1 và L2) Chipcon cung cấp cách bố trí tham khảo để đạt được hiệu năng cao nhất.

1.6 Mạng cảm nhận không dây dựa trên vi điều khiển CC1010

CC1010 với các đặc điểm,cấu tạo và đặc tính tiêu thụ điện năng thấp và có chức năng xử lý như một máy vi tính có thêm các bộ thu phát RF,bộ mã hóa DES,bộ biến đổi ADC,…phù hợp để ghép các cảm biển dể trở thành một nút mạng trong mạng cảm nhận không dây Mạch ứng dụng tương đối đơn giản CC1010 ,thuận tiện để tạo ra các nút WSN hoạt động như một thiết bị độc lập.Việc lập trình cho CC1010 được sử dụng các thư viện của 8051 và các bộ dịch cho 8051 có thể sử dụng assemble hoặc c để lập trình cho CC101.Trong

Trang 15

CC1010 có tích hợp một bộ gỡ rối,hỗ trợ mô trường phát triển KilVision2 qua cổng giao tiếp.

1.7 Mô hình mạng:

WSN gồm nhiều nút mạng CC1010 giao tiếp với nhau qua song vô tuyến tần số 300-1000MHz.có ba loại nút mạng:Trạm gốc,nút cảm nhận,va nút chuyển tiếp.

Các nút cảm nhận có gắn đầu đo vừa trực tiếp đo số liệu và truyền về trạm gốc vừa chuyển tiếp dữ liệu nhận được từ các nút con trong topolopy dạng cây, gửi về cho nút cha

Trang 16

Vi điều khiển CC1010 với những ưu điểm đã được phân tích ở trên tỏ ra khá thích hợp với mô hình mạng cảm nhận không dây.Dùng vi điều khiển CC101 có thể xây dựng được nhiều ứng dụng hấp dẫn với sơ đồ thiết kế không quá phức tạp.Phần mềm nhúng có thể đi theo hướng hệ điều hành hoặc đơn giản hơn là các phương trình nhỏ có thể viết bằng các ngôn ngữ lập trình thông dụng như ASM,C … và nạp cho vi điều khiển

Kết luận: Trong chương này chúng ta đã trình bày sơ lược về mạng cảm nhận không dây và vi điều khiển CC101,cách dùng CC1010 vào mạng không dây

Trang 17

Chương II GHÉP NỐI VI ĐIỀU KHIỂN AVR VỚI CẢM BIẾNII Những nét cơ bản của vi điều khiển AVR-Micro Atmega64L

-Hãng Atmel đã từ lâu nổi tiếng với chíp vi điều khiển họ 89Cxx phù hợp với các ứng dụng đơn giản Chuyển sang họ AVR, Atmel đã thêm vào chip vi điều khiển này nhiều tính năng mà chíp họ 8051 không có như là ADC, PWM, BUS I2C,

2 Wire v.v , để giúp cho người sử dụng có thêm nhiều tính năng để sử dụng.

2.1 Đặc điểm cấu tạo của AVR

-AVR là vi điều khiển được thiết kế cho rất nhiều ứng dụng Từ các ứng dụng điều khiển, đo lường

-Vi điều khiển AVR có thể coi như là một máy vi tính được tích hợp trên một chíp đơn AVR là vi điều khiển 8 bit ( không thuộc họ vi điều khiển xử lý số DSP ) thiết kế hướng vào mục đích điều khiển Được tích hợp các bộ nhớ EEPROM và bộ nhớ Flash (có thể lập trình được trong hệ thống- In system programmable)

-AVR có các trình dịch hộ trợ để lập trình từ mức thấp assembly (AVR Studio), đến ngôn ngữ bậc cao như là C ( ICC, AVR CodeVision ) AVR có thể thực hiện được hàng triệu lệnh đơn trong một giây.

2.1.1 Tính năng của Atmega64L

-Hiệu suât cao Là dòng AVR 8 bit tiêu thụ điện năng thấp (Low power AVR).

-Sử dụng cấu trúc RISC

o 133 chỉ lệnh Một lệnh trong 1 chu kỳ máy.

o 32x8 thanh ghi chung + thanh ghi điều khiển ngoại vi.o Lên đến 16 triệu lệnh/s với tấn số 16 MHz.

Trang 18

-Bộ nhớ chương trình và bộ nhớ dữ liệu:

o 64K Byte bộ nhớ Flash lập trình lại trong hệ thống.

o Lựa chọn Boot code với các bit lock độc lập Lập trình trong hệ thông bằng chương trình Boot.

o 4KB EEPROM và 4KB SRAM ( có thể mở rộng 64K RAM ngoài).

o Lập trình trong hệ thống (ISP) qua giao diện SPI.-Giao diện JTAG (chuẩn IEEE std 1149.1)

o Hỗ trợ chức năng gỡ rối trên chíp.o Lập trình thông qua JTAG.

-Các tính năng ngoại vi:

o Hai timer 8 bit và hai timer 16 bit.

o Đồng hồ thời gian thực với bộ chia tần số.o Hai kênh PWM 8bit 6 kênh PWM 2-16bit.o Bộ so sánh tương tự.

o ADC 8 kênh 10 bit 7 kênh ADC vi phân, 2 kênh ADC có bộ khếch đại 1x, 10x, 200x.

o Giao diện nối tiếp Two-wire Hai UASRT.o Giao diện nối tiếp Chủ/Tớ SPI.

o Timer watch dog.-Các tính năng đặc biệt:

o Reset khi cấp nguồn Bộ phát hiện xụt nguồn (Brown-out detection) khả trình.

o Bộ giao động RC tích hợp sẵn bên trong.o Ngắt trong và ngắt ngoài.

o Sáu chế độ ngủ ( Sleep) để tiết kiệm năng lượng.

Trang 19

o Tần số làm việc có thể xác định bằng phần mềm.-Điện áp làm việc:

o 2,7 – 5,5V cho Atmega64L o 4,5 – 5,5V cho Atmega64-Tốc độ:

o 0 - 8 MHz cho Atmega64Lo 0 - 16 MHz cho Atmega64

- Sơ đồ cấu hình chân của Atmega64L

Hình 19: Sơ đồ phần cứng

Trang 20

- Sơ đồ khối:

Hình 20: Sơ đồ khối vi điều khiển AVR: Atmega64L

2.1.2 Khối của Atmega64L

-Do các khối chức năng của Atmega64L rất nhiều lên em chỉ đề cập đến các khối chức năng sử dụng trong luận văn này.

Lõi CPU của Atmega64L

-Trong mục này sẽ mô tả tổng quát về cấu trúc lõi CPU của AVR Chức năng chính của lõi CPU là đảm bảo cho chương trình hoạt động CPU phải

Trang 21

có khả năng truy cập vào bộ nhớ, thực hiện tính toán, điều khiển ngoại vi và quản lý ngắt.

- Sơ đồ khối của CPU:

Hình 21: Sơ đồ khối CPU.

-Các bộ xử lý AVR có kiến trúc Harvard, nghĩa là có bộ nhớ dữ liệu và bộ nhớ chương trình tách biệt nhau Hình trên minh họa sơ đồ khối CPU của AVR Bus dữliệu dùng cho bộ nhớ dữ liệu là 1 bus 8 bit, cho phép nối hầu hết các bộ phận ngoại vi với tệp thanh ghi ( register file) Bus dữ liệu dùng cho bộ nhớ chương trình có độ rộng 16 bit và chỉ nối với thanh ghi lệnh.

Khối số học logic ALU

Khối số học (ALU) thực hiện các thao tác như thao tác bit, phép tính số học và lôgic trên nội dung của các thanh ghi và ghi ngược kết quả vào tệp thanh

Trang 22

ghi trên thanh ghi đã được chỉ định Các thao tác này được thực hiện trong một chu kỳ đồng hồ đơn lẻ Mỗi một thao tác ALU đều làm ảnh hưởng đến các cờ trong thanh ghi trạng thái (STATUS), tùy thuộc vào lệnh.

Thanh ghi trạng thái SREG

Thanh ghi triạng thái có chứa 8bit cờ, đóng vai trò báo hiệu trạng thái hiện tại của bộ xử lý Tất cả các bit đó dược xóa bởi chương trình Các địa chỉ I/O của thanh ghi trang thái là $3F( địa chỉ bộ nhớ là $57).

Thanh ghi trạng thái không được lưu trữ bằng máy (machine) trong thời gian diễn ra một thao tác ngắt Lệnh trong một đoạn chương trình ngắt có thể xủa đổi bít cờ trạng thái, và vì thế chương trình của người dùng phải lưu trữ và khôi phục thanh ghi trạng thái trong thời gian có một ngắt.

Tập thanh ghi đa năng

Tất cả các bộ điều khiển AVRđều có 32 thanh ghi đa năng Một số trong các thanh ghi này còn có các chức năng riêng, bổ sung Các thanh ghi dược đặt tên từ R0 đến R31 Tệp thanh ghi được tách thành 2 phần, mỗi phần có 16 thanh ghi, đánh số từ R0 đến R15 và R16 đến R31 Tất cả truy nhập trong chu trình đơn đến tất cả các thanh ghi

Trang 23

Thanh ghi con trỏ ngăn xếp SP

Thanh ghi này có độ rộng bằng 1 byte đối với các bộ xử lý có đến 256 byte bộ nhớ SRAM và bằng 2byte (được gọi là SPH và SPL) đối với các bộ xử lý có bộ nhớ Thanh ghi này sử dụng để chỉ đến vùng trong bộ nhớ SRAM ở đỉnh của ngăn xếp Ngăn xếp được sử dụng để lưu trữ địa chỉ mà bộ xử lý trả trở lại trong thời gian một ngắt và gọi thủ tục Bởi vì SP được khởi tạo về $0000 khi rết, nên chương trình người dùng cần phải khởi tạo SP cho thích hợp, bởi vì địa chỉ bắt đầu của bộ nhắ SRAM không phải là $0000 mà là $60 Ngăn xếp sắp xếp theo thứ tự từ trên xuống dưới trong địa chỉ bộ nhớ, nghĩa là, việc đẩy một giá trị lên trên ngăn xếp sẽ làm cho SP giảm đi một giá trị Khi kéo một giá trị khỏi ngăn xếp sẽ làm tăng SP thêm một giá trị.

Việc thực thi lệnh

Bộ xử lý AVR được điều khiển bởi đồng hồ hệ thống, đồng hồ này có thể ở bên ngoài hoặc, nếu có tồn tại và được phép, một đồng hồ RC bên trong có thể được sử dụng Đồng hồ hệ thống này không qua bất kỳ bộ chia nào và được sử dụng trục tiếp cho tất cả các thao tác truy nhập bên trong bộ xử lý Bộ xử lý có một đường ống (pipeline) 2 tầng, và lệnh tìm nạp/ giải mã được thực hiện đồng thời vời việc thực thi lệnh

Trang 24

Hình 22: Tìm nạp/ giải mã lệnh và việc thực thi lệnh.

Cứ mỗi lần lệnh được tìm nạp, nếu đây là một lệnh liên quan đến ALU, nó có thể được thực thi bởi khối ALU như được minh họa tren hình 3-5 cho một chu trình đơn lẻ.

Hình 23: Việc thực thi của ALU bao gồm tim/nạp thực thi, và ghi ngược lại vào thanh ghi

Mặt khác, việc truy nhập bộ nhớ SRAM chiếm mất 2 chu kỳ, như dược minh họa ở hình dưới Nguyên nhân là việc truy nhập bộ nhớ SRAM sử dụng một thanh ghi con trỏ dùng cho địa chỉ bộ nhớ SRAM Thanh ghi con trỏ này chỉ là một trong các thanh ghi con trỏ (các cặp thanh ghi X, Y hoặc Z) có trên chip Chu trình đồng hồ thứ nhất được cần đến để truy nhập tệp thanh ghi và để thao tác trên thanh ghi con trỏ (các lệnh truy nhập bộ nhớ SRAM cho phếp tăng địa chỉ trước/ sau thao tác trên thanh ghi con trỏ) Ở thời điểm kết thúc của chu kỳ đồng hồ thứ nhất, khối ALU thực hiện phép tính này, và sau đó địa chỉ này được sử dụng để truy nhập ô nhớ SRAM và để ghi vào ô nhớ này (hoặc đọc ra rừ đó vòa thanh ghi đích), như được minh họa hình dưới.

Trang 25

Hình 24: Các chu trình truy nhập dữ liệu lên thanh ghi SRAM trên chip.

2.1.3 Các chu trình truy nhập dữ liệu lên thanh ghi SRAM trên chip 5 của Atmega64L

- Bộ nhớ của Atmega64L được chia làm 2 phần : bộ nhớ chương trình và bộ nhớ dữ liệu Trong trường hợp đặc biệt bộ nhớ EEPROM được mô tả như là bộ nhớ dữ liệu.

- Atmega có 64k Byte bộ nhớ Flash lập trình lại được trong hệ thống (ISP- In system progammable) cho bộ nhớ chương trình Bây giờ họ vi điều khiển AVR đề là chip 16 hoặc 32 bit thì Flash được tổ chức là 32k x 6 Để vi điều khiển hoạt động chương trình phải được nạp vào bộ nhớ Flash Trong luận văn này Atmega64L được lập trình qua mode ISP: Serial downloading sử dụng giao diện SPI Bộ nạp là AVR-doper:

Trang 28

Hình 25: bảng véc tơ ngắt của Atmega64LBộ đếm/định thời của Atmega64L:

-Atmega64L có 4 timer/counter gồm 2 timer 8bit (timer0 và timer2) và 2 timer 16bít (timer1 và timer2).

-Sơ đồ khối của timer1:

Hình 26: Sơ đồ khối của timer/counter.

Timer/counter1, 16 bit cho phép lập trình các thời gian điều khiển chính xác ( đếm các sự kiện), tạo xung, đo độ rộng thời gian của tín hiệu Các tính năng:

• Là timer 16 bit cho phép tạo PWM 16bit.

Ngày đăng: 20/11/2012, 13:36

HÌNH ẢNH LIÊN QUAN

Bảng 1. Ngắt và các tham số - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Bảng 1. Ngắt và các tham số (Trang 8)
Một sơ đồ khối được đơn giản hoá của bộ thu phát RF được thể hiện ở hình 2.1. Chỉ các chân tín hiệu analog được thể hiện cùng với bus dữ liệu SFR bên  trong để thiết lập giao tiếp RF và để truyền và nhận dữ liệu. - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
t sơ đồ khối được đơn giản hoá của bộ thu phát RF được thể hiện ở hình 2.1. Chỉ các chân tín hiệu analog được thể hiện cùng với bus dữ liệu SFR bên trong để thiết lập giao tiếp RF và để truyền và nhận dữ liệu (Trang 12)
Bộ thu phát RF đòi hỏi rất ít các ngoại vi. Một mạch ứng dụng điển hình được thể hiện ở hình 2.2 - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
thu phát RF đòi hỏi rất ít các ngoại vi. Một mạch ứng dụng điển hình được thể hiện ở hình 2.2 (Trang 13)
1.7 Mô hình mạng: - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
1.7 Mô hình mạng: (Trang 15)
-Sơ đồ cấu hình chân của Atmega64L - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Sơ đồ c ấu hình chân của Atmega64L (Trang 19)
Hình 20: Sơ đồ khối vi điều khiển AVR: Atmega64L - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 20 Sơ đồ khối vi điều khiển AVR: Atmega64L (Trang 20)
Hình 21: Sơ đồ khối CPU. - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 21 Sơ đồ khối CPU (Trang 21)
Hình 22: Tìm nạp/ giải mã lệnh và việc thực thi lệnh. - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 22 Tìm nạp/ giải mã lệnh và việc thực thi lệnh (Trang 24)
Hình 23: Việc thực thi của ALU bao gồm tim/nạp. thực thi, và ghi ngược lại vào thanh ghi - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 23 Việc thực thi của ALU bao gồm tim/nạp. thực thi, và ghi ngược lại vào thanh ghi (Trang 24)
Hình 24: Các chu trình truy nhập dữliệu lên thanh ghi SRAM trên chip. - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 24 Các chu trình truy nhập dữliệu lên thanh ghi SRAM trên chip (Trang 25)
Hình 25: Bộ nạp AVR-doper - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 25 Bộ nạp AVR-doper (Trang 26)
Hình 26: Sơ đồ khối của timer/counter. - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 26 Sơ đồ khối của timer/counter (Trang 28)
Hình 25: bảng véc tơ ngắt của Atmega64L Bộ đếm/định thời của Atmega64L: - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 25 bảng véc tơ ngắt của Atmega64L Bộ đếm/định thời của Atmega64L: (Trang 28)
Hình27: Sơ đồ khối bộ biến đổi ADC. - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 27 Sơ đồ khối bộ biến đổi ADC (Trang 30)
Hình 28: Sơ đồ khối USART. - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
Hình 28 Sơ đồ khối USART (Trang 31)
Mô hình của một phần mềm nhúng viết cho CC1010 như sau: - Mạng cảm nhận không dây sử dụng vi mạch tích hợp cao CC1010
h ình của một phần mềm nhúng viết cho CC1010 như sau: (Trang 50)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w