1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

đồ án tốt nghiệp đo lường điện áp 3 pha sử dụng ATmega32

74 1,1K 3

Đ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 74
Dung lượng 1,15 MB

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

Nội dung

Hiện nay điều khiển và tự động hóa là một trong những ngành đang được đào tạo nhằm đáp ứng nhu cầu nhân lực về những ngành nghề công nghệ cao trong hầu hết các trường đại học cao đẳng trên toàn quốc. Qua đó ngoài việc chúng em được các thầy, cô trong bộ môn tự động hóa của trường đại học bách khoa hà nội truyền đạt các kiến thức, kinh nhiệm vô cùng quý báu và bổ ích nhằm tiền đề cho công việc sau này. Vì vậy cuốn đồ án tốt nghiệp này vô cùng quan trọng để chúng em có thể vận dụng những kiến thức đã được học tập và nghiên cứu tại trường. Chúng em đã hiểu biết rất nhiều điều trong quá trình làm đò án này cũng nhờ sự giúp đỡ tận tình của các thầy Võ Duy Thành và một số thầy trong bộ môn. Đó cũng là bước chuẩn bị, làm quen với công việc và bổ sung thêm những phần kiến thức còn hạn hẹp để chúng em không bị lúng túng khi tiếp xúc với những công việc sau này Trong đồ án này chúng em nhận thấy vấn đề chất lượng điện áp cần phải đươc quan tâm hơn vì những thiết bị công nghệ cao ngày càng đòi hỏi hệ thống chất lượng điện ngày càng cao. Nhận thấy vậy nhóm em dã chọn đề tài thiết kế bộ kiểm tra chất lượng điện áp qua theo dõi sự ổn định của áp lưới 3 pha đồ án gồm tất cả 4 phần: Phần 1: Giới thiệu chung. Phần 2: Lựa chọn phương án. Phần 3: Thiết kế mạch điều khiển, Phần 4: Lập trình và thử nhiệm.

Trang 1

M C L C Ụ Ụ

L I NÓI Đ U Ờ Ầ 2

CH ƯƠ NG 1: GI I THI U CHUNG Ớ Ệ 3

1.1 Gi i thi u đ tài đánh giá ch t l ớ ệ ề ấ ượ ng đi n áp ệ 3

1.2 Yêu c u ầ 7

1.3 L a ch n ph ự ọ ươ ng án 8

1.5 S đ kh i c a h th ng ơ ồ ố ủ ệ ố 9

CH ƯƠ NG 2 : C S LÝ THUY T Ơ Ở Ế 10

2.1 Thiết bị đo 10

2.2 Cấu trúc vi điều khiển ATmega32 12

2.3 Thiết bị lưu trữ dữ liệu 37

2.4 Thi t b hi n th LCD1602 ế ị ể ị 40

CH ƯƠ NG 3: THI T K M CH ĐI U KHI N Ế Ế Ạ Ề Ể 42

3.1 S đ nguyên lý h th ng ơ ồ ệ ố 42

3.2 Thu t toán cho h th ng ậ ệ ố 46

3.3 Mã ngu n ch ồ ươ ng trình 51

CH ƯƠ NG 4: TH C NGHI M VÀ K T QU Ự Ệ Ế Ả 53

K T LU N Ế Ậ 54

PH L C Ụ Ụ 52

TÀI LI U THAM KH O Ệ Ả 69

1

Trang 2

2

Trang 3

L I NÓI Đ U Ờ Ầ

Hi n nay đi u khi n và t đ ng hóa là m t trong nh ng ngành đang đệ ề ể ự ộ ộ ữ ược đào t o ạ

nh m đáp ng nhu c u nhân l c v nh ng ngành ngh công ngh cao trong h u h t các ằ ứ ầ ự ề ữ ề ệ ầ ế

trường đ i h c cao đ ng trên toàn qu c Qua đó ngoài vi c chúng em đạ ọ ẳ ố ệ ược các th y, cô ầtrong b môn t đ ng hóa c a trộ ự ộ ủ ường đ i h c bách khoa hà n i truy n đ t các ki n th c, ạ ọ ộ ề ạ ế ứkinh nhi m vô cùng quý báu và b ích nh m ti n đ cho công vi c sau này Vì v y cu n ệ ổ ằ ề ề ệ ậ ố

đ án t t nghi p này vô cùng quan tr ng đ chúng em có th v n d ng nh ng ki n th c ồ ố ệ ọ ể ể ậ ụ ữ ế ứ

đã được h c t p và nghiên c u t i trọ ậ ứ ạ ường Chúng em đã hi u bi t r t nhi u đi u trong ể ế ấ ề ềquá trình làm đò án này cũng nh s giúp đ t n tình c a các th y Võ Duy Thành và m t ờ ự ỡ ậ ủ ầ ộ

s th y trong b môn Đó cũng là bố ầ ộ ước chu n b , làm quen v i công vi c và b sung thêmẩ ị ớ ệ ổ

nh ng ph n ki n th c còn h n h p đ chúng em không b lúng túng khi ti p xúc v i ữ ầ ế ứ ạ ẹ ể ị ế ớ

nh ng công vi c sau này ữ ệ

Trong đ án này chúng em nh n th y v n đ ch t lồ ậ ấ ấ ề ấ ượng đi n áp c n ph i đệ ầ ả ươc quan tâm

h n vì nh ng thi t b công ngh cao ngày càng đòi h i h th ng ch t lơ ữ ế ị ệ ỏ ệ ố ấ ượng đi n ngày ệcàng cao

Nh n th y v y nhóm em dã ch n đ tài thi t k b ki m tra ch t lậ ấ ậ ọ ề ế ế ộ ể ấ ượng đi n áp qua theo ệdõi s n đ nh c a áp lự ổ ị ủ ưới 3 pha đ án g m t t c 4 ph n:ồ ồ ấ ả ầ

Trang 4

4

Trang 5

CH ƯƠ NG 1: GI I THI U CHUNG Ớ Ệ

Đi n áp 3 pha t i Vi t nam có t n s tiêu ch n là 50 Hz h u nh không thay đ i ệ ạ ệ ầ ố ẩ ầ ư ổ

Nh ng đi n áp 3 pha trong quá trình s n xu t do các lý do khách quan và ch quan ư ệ ả ấ ủ

thường thay đ i trong quá trình làm vi c Vì th nhu c u c p thi t 1 h th ng đo ổ ệ ế ầ ấ ế ệ ố

lường đ ki m tra và đánh giá ch t lẻ ể ấ ượng c a đi n áp 3 pha trong s n xu t là r t c n ủ ệ ả ấ ấ ầthi t.ế

Trong th i đ i công nghi p hóa hi n đ i hóa ngày nay, cùng v i s phát tri n ờ ạ ệ ệ ạ ớ ự ễ nh ư

vũ bão c a k thu t đi n t trong nh ng năm g n đây mà đ c thù là công ngh bán ủ ỹ ậ ệ ử ữ ầ ặ ệ d n ẫ

và vi đi n t , đã cho ra đ i nhi u s n ph m vi x lý ngày m t hoàn thi n h n T ệ ử ờ ề ả ẩ ử ộ ệ ơ ừ h viọ

đi u khi n 8051 kinh đi n đã xu t hi n các dòng khác v i nh ng tính năng u ề ể ể ấ ệ ớ ữ ư vi t và ệhoàn thi n h n nh PIC, AVR, LPCệ ơ ư  Nh vào s phát tri n m nh m c a Vi ờ ự ể ạ ẽ ủ x lý thì đo ử

lườngn t đ ng đã tr thành m t nhu c u r t c n thi t trong đ i s ng sinh ự ộ ở ộ ầ ấ ầ ế ờ ố ho t cũng ạ

nh s n xu t Dư ả ấ ướ ựi s xu t hi n c a các h c thuy t và các ng d ng c th trong đ i ấ ệ ủ ọ ế ứ ụ ụ ể ờ

s ng hàng ngày, có th nói s m nh m c a các vi đi u khi n đã mang l i 1 bố ể ự ạ ẽ ủ ề ể ạ ước ti n ếnhanh trong vi c đo lệ ường chính xác các đ i lạ ượng v t lý.ậ

C nh đó s phát tri n c a các thi t b l u tr d liêu l n đã mang l i kh năng làm ạ ự ể ủ ế ị ư ữ ữ ớ ạ ả

vi c trong th i gian dài đ l u tr d li u trong các đi u ki n ph c t p.ệ ờ ể ư ữ ữ ệ ề ệ ứ ạ

M c dù nhóm đã dành h t tâm huy t đ nghiên c u th c hi n đ tài đặ ế ế ể ứ ự ệ ề ược đúng th i ờ

h n Tuy nhiên, đây là đ tài th c t v đi u khi n nhi t đ đ u tiên mà nhóm tham ạ ề ự ế ề ề ể ệ ộ ầgia th c hi n nên có th không tránh kh i sai sót trong quá trình thi t k và thi ự ệ ể ỏ ế ế công

R t mong nh n đấ ậ ượ ực s đóng góp ý ki n đ đ tài có th hoàn thi n h n ế ể ề ể ệ ơ

1.2 Yêu cầu đặt ra:

- Thiết kế một module có khả năng theo dõi sự tăng giảm điện áp trên đường đây tải điện ba pha

- Xây dựng cơ sở dữ liệu trên module tạo ra biểu đồ saphir đánh giá chất lượng

Trang 6

- Dựa vào biểu đồ nhận xem xét chất lượng dưa ra phương án nhằm giải quyết vấn đề.

Hệ số SARFI

1.3.1 Chỉ tiêu được sử dụng rộng rãi để đánh giá chất lượng điện áp là

tần số biến thiên điện áp hiệu dụng trung bình hệ thống SARFIx ( System Average Rms Voltage Variation Frequeney Index)

Để đánh giá tần suất xuất hiện của sag điện áp xuống dưới X% giá trị điện áp định mức (SẢRFIx), sử dụng công thức sau:

SARFI =

i

M i M

Trong đó :

Mxi: Số sag điện áp giảm xuống dưới x% của giá trị định mức mà phụ tải thứ i chịu đựng

M: số phụ tải trong hệ thống đang khảo sát

x%: giá trị điện áp ngưỡng theo đơn vị tương đối, x nằm trong khoảng (10đến 90%)Udđ

Theo thời gian tồn tại của sag có thể đánh giá theo các chỉ tiêu sau:

1.3.2 hệ số tần suất biến thiên điện áp hiệu dụng trung bình của sag tức

thời SIARFIx(System Instantaneous Average Rms Voltage Variation

Frequeney Index) Khoảng thời gian tồn tại của sag từ 0,5 đến 30 chu kì SIARFI =

i

M xi M

Trong đó

Trang 7

Mixi:số sag điện áp có đặc tính thời gian tồn tại từ 0,5 đến 5 chu kì và độ lớn giảm xuống dưới x% của giá trị điện áp định mức mà phụ tải thứ i chịu đựng.

M: số phụ tải trong hệ thống đang khảo sát

X%: giá trị điện áp ngưỡng theo đơn vị tương đối, x nằm trong khoảng (10đến 90%)Udđ

1.3.3 Hệ số SMARFIx(System Momentary Average Rms Voltage Variation

Frequeney Index) để đánh giá sag điện áp thoáng qua, thời gian tồn tại sag điện áp thoáng qua từ 30 chu kì đến 3s công thức tính SMARFIx: SMARFI =

i

Mm xi M

Trong đó:

Mixi:số sag điện áp có đặc tính thời gian tồn tại từ 30 chu kì đến 3 giây và

độ lớn giảm xuống dưới x% của giá trị điện áp định mức mà phụ tải thứ i chịu đựng

M: số phụ tải trong hệ thống đang khảo sát

X%: giá trị điện áp ngưỡng theo đơn vị tương đối, x nằm trong khoảng (10đến 90%)Udđ

1.3.4 sag điện áp tạm thời sử dụng công thức STARFIx(System Temporaty

Average Rms Voltage Variation Frequeney Index)

STARFI =

i

Mt xi M

Trong đó:

Trang 8

Mixi:số sag điện áp có đặc tính thời gian tồn tại từ 3 giây đến 1 phút và

độ lớn giảm xuống dưới x% của giá trị điện áp định mức mà phụ tải thứ i chịu đựng

M: số phụ tải trong hệ thống đang khảo sát

X%: giá trị điện áp ngưỡng theo đơn vị tương đối, x nằm trong khoảng (10đến 90%)Udđ

Hình 1.1 Biểu đồ đường SAFI

Biểu đồ đường SAFI là một trục gồm hai đường %Ut(s) , mỗi một giá trị %U trong một khoảng thời gian t(s) nó lại đánh được một điểm trên đồ thị Điểm đó càng gần đường SAFI thì chất lượng điện càng cao

Trang 9

1.2 Yêu c u ầ

Đo s thay đ i đi n áp 3 pha và th i gian hay s thay đ i đó x y ra Ghi s thay đ i và ự ổ ệ ờ ự ổ ả ự ổ

th i gian vào th nh (SD card , micro SD….).ờ ẻ ớ

Trang 11

1.5 S đ kh i c a h th ng ơ ồ ố ủ ệ ố

Khối hiển thị LCD 1602

Khối xử lý tín hiệu

Trang 12

CH ƯƠ NG 2 : C S LÝ THUY T Ơ Ở Ế

2.1 Thiết bị đo

ADC1

FaATrung

Tính toán đi n tr :ệ ở

Trang 13

V i ớ U max=450 V thì U R 7=4.45V phù h p v i đ u vào ADC c a ATmega32.ợ ớ ầ ủ

Trang 14

M ch đi n n y có tác d ng bi n đ i sóng hình sin thành xung vuông đ d dàng x lý ạ ệ ạ ụ ế ổ ể ễ ửtrong đo đ c k thu t s ạ ỹ ậ ố

2.2 Cấu trúc vi điều khiển ATmega32

1 C u trúc t ng quát ATMEGA32 – Structure Overview ấ ổ

Trang 15

ATMEGA32 là lo i vi đi u khi n CMOS, ngu n th p, 8 bit, xây d ng trên n n t ng c u ạ ề ể ồ ấ ự ề ả ấtrúc t p l nh thu g n tiên ti n cho AVR (Enhanced AVR RISC architecture).ậ ệ ọ ế

• RISC – Reduced Instruction Set Computer

• CISC – Complex Instruction Set Computer

Kh năng th c thi 1MIPS (Mega Instruction Per Second) trên 1MHz.ả ự

Trang 16

Bao g m 32 thanh ghi làm vi c (General Purpose Working Register) liên k t tr c ti p v i ồ ệ ế ự ế ớ

b xộ ử lý s h c ALU (Arithmetic Logic Unit).ố ọ

• Tính năng ISP thông qua c ng SPI ho c Boot Loader.ổ ặ

2 AVR CPU Core

Trang 17

2.1 T ng quan ổ

Lõi AVR s d ng ki n trúc Harvard – v i các bus riêng bi t cho chử ụ ế ớ ệ ương trình và d li u ữ ệ

L nh t b nh chệ ừ ộ ớ ương trình th c thi thông qua m t ng đ n c p Khi m t lênh đang ự ộ ố ơ ấ ộ

th c thi, l nh ti p theo s đự ệ ế ẽ ược nh t (pre-fetch) t b nh chố ừ ộ ớ ương trình, cho phép các

l nh đệ ược th c thi trong m i chu kì clock.ự ỗ

Các 32 thanh ghi (8-bit) làm vi c cho phép truy xu t nhanh trong 1 chu kỳ clock Trong ệ ấ

ho t đ ng thông thạ ộ ường c a ALU, 2 toán h ng xu t ra t thanh ghi làm vi c, l nh th c ủ ạ ấ ừ ệ ệ ựthi, và k t qu l u ngế ả ư ượ ạc l i thanh ghi làm vi c ch trong 1 chu kì clock.ệ ỉ

6 trong s 32 thanh ghi đố ược dùng nh con tr đ a ch gián ti p 16-bit s d ng cho đ a chư ỏ ị ỉ ế ử ụ ị ỉkhông gian d li u 1 trong 3 thanh ghi đ a ch này có th dùng nh con tr đ a ch look-upữ ệ ị ỉ ể ư ỏ ị ỉtable trong b nh Flash.ộ ớ

B ALU h tr các ho t đ ng tính toán s h c và logic gi a thanh ghi v i nhau, hay gi a ộ ỗ ợ ạ ộ ố ọ ữ ớ ữthanh ghi v i h ng s Các ho t đ ng t ng thanh ghi đ n cũng đớ ằ ố ạ ộ ừ ơ ược th c hi n trong ALU.ự ệ

Trang 18

Sau khi tính toán, thanh ghi tr ng thái (Status Register) c p nh t thông tin liên quan đ n ạ ậ ậ ế

k t qu tính toán.ế ả

Dòng chương trình (Program Flow) được cung c p b i các l nh nh y có đi u ki n ho c ấ ở ệ ả ề ệ ặkhông đi u ki n, và có th đ nh đ a chì tr c ti p đ n toàn b không gian đ a ch H u h t ề ệ ể ị ị ự ế ế ộ ị ỉ ầ ếcác l nh trong AVR đ u d ng 16-bit M i đ a ch b nh chệ ề ở ạ ỗ ị ỉ ộ ớ ương trình ch a m t l nh ứ ộ ệ

16 ho c 32-bit.ặ

B nh chộ ớ ương trình chia ra làm 2 ph n: Boot Loader và vùng ng d ng C 2 đ u s ầ ứ ụ ả ề ử

d ng các lockbit đ b o v đ c/ghi L nh SPM th c thi vi c ghi d li u vào vùng flash ụ ể ả ệ ọ ệ ự ệ ữ ệ

ng d ng ph i đ c đ t trong vùng Boot Loader

Trong quá trình ng t hay hàm/chắ ương trình con được g i, đ a ch tr v c a b đ m ọ ị ỉ ả ề ủ ộ ế

chương trình l u trong ngăn x p (stack) Stack đư ế ược phân b hi u qu trong 1 ph n b ồ ệ ả ầ ộ

nh SRAM, vì v y, đ l n c a stack ch ph thu c vào SRAM và vi c s d ng SRAM ớ ậ ộ ớ ủ ỉ ụ ộ ệ ử ụ

Chương trình người dùng c n ph i kh i t o giá tr này cho SP – Con tr ngăn x p (Stack ầ ả ở ạ ị ỏ ếPointer) trong chương trình sau khi reset và trước khi th c hi n b t kì vi c g i hàm hay ự ệ ấ ệ ọ

chương trình ng t đắ ược th c thi.ự

Module ng t linh ho t có thanh ghi đi u khi n riêng trong không gian IO và có bit cho ắ ạ ề ểphép ng t toàn c c trong thanh ghi tr ng thái (Status Register) T t c các ng t đ u có ắ ụ ạ ấ ả ắ ềvector ng t riêng trong b ng vector ng t Các ng t có u tiên ng t theo đúng v trí ng t ắ ả ắ ắ ư ắ ị ắ

c a nó Đ a ch ng t càng th p thì đ u tiên ng t càng cao.ủ ị ỉ ắ ấ ộ ư ắ

2.2 ALU – Arithmetic Logic Unit

B ALU hi u su t cao c a AVR ho t đ ng trong liên k t tr c ti p v i 32 thanh ghi làm ộ ệ ấ ủ ạ ộ ế ự ế ớ

vi c Trong 1 chu kì clock, ho t đ ng tính toán s h c gi a các thanh ghi ho c gi a thanh ệ ạ ộ ố ọ ữ ặ ữghi v i d li u tr c ti p s đớ ữ ệ ự ế ẽ ược th c thi Ho t đ ng c a ALU đự ạ ộ ủ ược chia ra làm 3 ph n ầchính: x lý s h c, phép toán logic và các phép toán v i bit M t s b sung trong ki n ử ố ọ ớ ộ ố ổ ếtrúc cũng cho phép s d ng các nhân t hi u qu , cho c không d u/có d u và đ nh d ng ử ụ ử ệ ả ả ấ ấ ị ạphân s ố

7 Ng t – Interrupts ắ

ATmega32 có ngi u ngu n ng t ph c v t t cho các yêu c u c a ng d ngề ồ ắ ụ ụ ố ầ ủ ứ ụ

7.1 Các vector ng t trong ATMEGA32 ắ

Trang 20

7.2 Mô t thanh ghi ả

Thanh ghi đi u khi n ng t thông th ề ể ắ ườ ng – General Interrupt Control Register

• Bit 1 – IVSEL: Interrupt Vector Select – L a ch n vector ng t.ự ọ ắ

Khi bit này được xóa, các vector ng t s n m v trí b t đ u c a b nh Flash Khi bit ắ ẽ ằ ở ị ắ ầ ủ ộ ớnày được set, các vector ng t s n m v trí b t đ u c a Boot Loader trong Flash V trí ắ ẽ ằ ở ị ắ ầ ủ ị

b t đ u th c s c a Boot Flash do các bit c u chì BOOTSZ quy t đ nh.ắ ầ ự ự ủ ầ ế ị

Đ tránh vi c vô tình thay đ i b ng vector ng t, c n ph i theo trình t sau:ể ệ ổ ả ắ ầ ả ự

- Ghi 1 vào bit Interrupt Vector Change Enable

- Trong vòng 4 chu kì, ghi giá tr mong mu n vào IVSEL trong khi ghi 0 vào IVCE.ị ố

Ng t s t đ ng b c m khi th c hi n trình t trên Ng t s b c m trong chu kì IVCE ắ ẽ ự ộ ị ấ ự ệ ự ắ ẽ ị ấ

được set, và nó v n ti p t c b c m sau l nh ghi vào IVSEL N u IVSEL không đẫ ế ụ ị ấ ệ ế ược ghi thì nó v n ti p t c b c m trong 4 chu kì ti p theo n a Bit I trong SREG không b tác ẫ ế ụ ị ấ ế ữ ị

đ ng b i vi c c m ng t t đ ng này.ộ ở ệ ấ ắ ự ộ

• Bit 0 – IVCE: Interrupt Vector Change Enable – Cho phép thay đ i vector ng t.ổ ắ

Bit này ph i đả ược set lên trước khi ghi giá tr vào bit IVSEL Bit này đị ược xóa b i ph n ở ầ

c ng trong 4 chu kì sau khi set ho c xóa khi ghi vào bit IVSEL.ứ ặ

8 I/O Port

Trang 21

đi n áp c p T t c các IO đ u có diode b o v đ n ngu n và đ t.ệ ấ ấ ả ề ả ệ ế ồ ấ

8.2 Port v i ch c năng IO s thông th ớ ứ ố ườ ng

Thi t l p thu c tính cho pin ế ậ ộ

Có t t c 4 port A, B, C, D M i port g m 8 ngõ I/O (8-bit).ấ ả ỗ ồ

M i port bao g m 3 thanh ghi có th truy xu t bit: DDRx, PORTx và PINx (v i x có th làỗ ồ ể ấ ớ ể

A, B, C hay D)

• DDRx dùng đ thi t l p hể ế ậ ướng cho pin N u set DDRx.n lên 1, pin đó là Output, n u là ế ế

m c 0, pin đó là Input (v i n có th t 0 ứ ớ ể ừ � 7)

Trang 22

• N u set PORTx.n lên 1 khi pin đó đang là input, có nghĩa là ch c năng pull-up resistor ế ứ

được kích ho t Đ t t ch c năng này, PORTx.n ph i xóa v 0 ho c pin đó đạ ể ắ ứ ả ề ặ ược thi t l pế ậ

là ngõ Output Port pin tr ng thái th n i (tri-state) khi reset đở ạ ả ổ ược kích ho t và không có ạclock đang ch y.ạ

• N u PORTx.n đế ược set lên 1 trong khi đang là ngõ Output, nghĩa là port pin đó đang đượclái lên m c cao (1) N u PORTx.n đứ ế ược xóa v 0 trong khi đang là ngõ Output, nghĩa là ềport pin đó đang được lái xu ng m c th p (0).ố ứ ấ

• Bit PUD (Pull up Disable) trong thanh ghi SFIOR có th để ược set đ c m ch c năng ể ấ ứ

đi n tr kéo lên trong t t c các port.ệ ở ấ ả

Đ c giá tr trên pin ọ ị

8.3 Các ch c năng ph c a t ng port ứ ụ ủ ừ

8.4 Mô t thanh ghi trong I/O Port ả

Special Function I/O Register – SFIOR

• Bit 2 – PUD: Pull-up disable

N u bit này đế ược set lên 1 thì ch c năng đi n tr kéo trên t t c các port s b c m, ngay ứ ệ ở ấ ả ẽ ị ấ

c khi giá tr DDRx.n và PORTx.n đả ị ược thi t l p đ cho phép đi n tr kéo lên ({DDx.n, ế ậ ể ệ ởPORTx.n} = 0b01)

Trang 23

Port A Data Register – PORTA

( * L y hình minh h a bên dấ ọ ưới làm m u, các thanh ghi khác có cùng ch năng nh ng ẫ ứ ư

thu c v port khác cũng có n i dung tộ ề ộ ương t )

Port A Data Direction Register – DDRA

( * L y hình minh h a bên dấ ọ ưới làm m u, các thanh ghi khác có cùng ch năng nh ng ẫ ứ ư

thu c v port khác cũng có n i dung tộ ề ộ ương t )

Port A Input Pins Address – PINA

( * L y hình minh h a bên dấ ọ ưới làm m u, các thanh ghi khác có cùng ch năng nh ng ẫ ứ ư

thu c v port khác cũng có n i dung tộ ề ộ ương t )

Port B Data Register – PORTB

Port B Data Direction Register – DDRB

Port A Input Pins Address – PINB

Port B Data Register – PORTC

Port B Data Direction Register – DDRC

Port A Input Pins Address – PINC

Port B Data Register – PORTD

Trang 24

Port B Data Direction Register – DDRD

Port A Input Pins Address – PIND

Ng t ngoài - External Interrupts ắ

Bao g m INT0, INT1 và INT2.ồ

Thi t l p ki u ng t – Interrupt Sense Control ế ậ ể ắ

• V i INT1 và INT0: thi t l p ki u tác đ ng ng t (Interrupt Sense Control) thông qua ớ ế ậ ể ộ ắthanh ghi MCU Control Register - MCUCR

• V i INT2: thi t l p ki u tác đ ng ng t (Interrupt Sense Control) thông qua thanh ghi ớ ế ậ ể ộ ắMCU Control and Status Register - MCUSCR: ISC2 = 0: Falling, ISC2 = 1: Rising

Trang 25

Cho phép ng t – Interrupt Request Enable ắ

C 3 ng t đ u đả ắ ề ược cho phép ng t tác đ ng đ n ng t toàn c c thông qua thanh ghi ắ ộ ế ắ ụGeneral Interrupt Control Register – GICR

Bit[7 5] – INT1, INT0, INT2: External Interrupt Request 1/0/2 Enable

C ng t – Interrupt Flag ờ ắ

Thông qua thanh ghi General Interrupt Flag Register – GIFR

Bit[7 5] – INTF1/0/2 – External Interrupt Flag 1/0/2

Timer/Counter 0/1/2

bit Timer/Counter 0

Overview

Trang 26

Đ nh nghĩaị

BOTTOM: là khi b đ m ti n v 0x00ộ ế ế ề

MAX: là khi b đ m ti n đ n 0xFFộ ế ế ế

TOP: là khi b đ m ti n đ n giá tr l n nh t trong chu trình đ m c a nó Có th là giá tr ộ ế ế ế ị ớ ấ ế ủ ể ị

c đ nh 0xFF ho c giá tr ch a trong thanh ghi OCR (Output Compare Register).ố ị ặ ị ứ

10.1.2 Clock Source

Trang 27

10.1.3 Output Compare

Trang 28

Ng t s d ng trong trắ ử ụ ường h p này là ng t tràn timer (TOV0 Interrupt).ợ ắ

Mô t thanh ghi ả

Timer/Counter Control Register – TCCR0

• Bit 7 – FOC0: Force Output Compare - Kích s ki n Output Compare b ng tay.ự ệ ằ

• Bit 6, 3 – WGM01:0: Waveform Generation Mode – Ch đ phát sóng.ế ộ

Các bit này đi u khi n ho t đ ng đ m c a counter, xác đ nh giá tr TOP cho counter và ề ể ạ ộ ế ủ ị ị

d ng sóng ngõ ra trên chân OC0 – Output Compare.ạ

• Bit 5:4 – COM01:0: Compare Match Output Mode

Các bit này đi u khi n ho t đ ng c a chân ngõ ra Output Compare.ề ể ạ ộ ủ

Trang 29

Ch c năng c a các bit này khác nhau và tùy thu c vào t ng ch đ phát sóng.ứ ủ ộ ừ ế ộ

• Bit 2:0 – CS02:0: Clock Select – L a ch n ngu n clock cho counter trong timerự ọ ồCác bit này l a ch n ngu n clock cho ho t đ ng counter trong timer.ự ọ ồ ạ ộ

Trang 30

Timer/Counter Register – TCNT0 - Thanh ghi Counter trong timer

Output Compare Register – OCR0 - Thanh ghi so sánh Output Compare

Timer/Counter Interrupt Mask Register – TIMSK

• Bit 1 – OCIE0: Timer/Counter 0 Output Compare Match Interrupt Enable – Cho phép ng tắkhi so sánh trùng kh p.ớ

• Bit 0 – TOIE0: Timer/Counter 0 Overflow Interrupt Enable – Cho phép ng t khi counter ắ

đ m tràn.ế

Trang 31

Timer/Counter Interrupt Flag Register – TIFR

• Bit 1 – OCF0: Output Compare Flag 0 – C Output Compare.ờ

• Bit 0 – TOV0: Timer/Counter0 Overflow Flag – C tràn counter.ờ

Timer/Counter 0/1 Prescale

Special Function IO Register – SFIOR

• Bit 0 – PSR10: Prescaler Reset Timer/Counter1 and Timer/Counter0 – Reset PrescalerBit này cho phép reset b prescale chung c a Timer/Counter 0/1.ộ ủ

Chuy n đ i ADC trong Atmega32ể ổ

Trang 32

Chip AVR ATmega32 c a Atmel có tích h p s n các b chuy n đ i ADC v i đ phân ủ ợ ẵ ộ ể ổ ớ ộ

gi i 10 bit Có t t c 8 kênh đ n (các chân ADC0 đ n ADC7), 16 t h p chuy n đ i d ngả ấ ả ơ ế ổ ợ ể ổ ạ

so sánh, trong đó có 2 kênh so sánh có th khuy ch đ i B chuy n đ i ADC trên AVR ể ế ạ ộ ể ổkhông ho t đ ng theo nguyên lý flash ADC mà tôi đ c p ph n trên, ADC trong AVR là ạ ộ ề ậ ở ầ

lo i chuy n đ i x p x l n lạ ể ổ ấ ỉ ầ ượt (successive approximation ADC)

ADC trên AVR c n đầ ược “nuôi” b ng ngu n đi n áp riêng chân AVCC, giá tr đi n ằ ồ ệ ở ị ệ

áp c p cho AVCC không đấ ược khác ngu n nuôi chip (VCC) quá +/-0.3V Nhi u (noise) là ồ ễ

v n đ r t quan tr ng khi s d ng các b ADC, đ gi m thi u sai s chuy n đ i do ấ ề ấ ọ ử ụ ộ ể ả ể ố ể ổnhi u, ngu n c p cho ADC c n ph i đễ ồ ấ ầ ả ược “l c” (filter) k càng M t cách đ n gi n đ ọ ỹ ộ ơ ả ể

t o ngu n AVCC là dùng m t m ch LC k t n i t ngu n VCC c a chip nh minh h a ạ ồ ộ ạ ế ố ừ ồ ủ ư ọtrong hình 3, đây là cách được g i ý b i nhà s n xu t AVR.ợ ở ả ấ

Trang 33

Hình 3 T o ngu n AVCC t VCC.ạ ồ ừ

Đi n áp tham chi u cho ADC trên AVR có th đệ ế ể ượ ạc t o b i 3 ngu n: dùng đi n áp ở ồ ệtham chi u n i 2.56V (c đ nh), dùng đi n áp AVCC ho c đi n áp ngoài đ t trên chân ế ộ ố ị ệ ặ ệ ặVREF M t l n n a, b n c n chú ý đ n noise khi đ t đi n áp tham chi u, n u dùng đi n ộ ầ ữ ạ ầ ế ặ ệ ế ế ệ

áp ngoài đ t trên chân VREF thì đi n áp này ph i đặ ệ ả ượ ọc l c th t t t, n u dùng đi n áp ậ ố ế ệtham chi u n iế ộ 2.56V ho c AVCC thì chân VREF c n đặ ầ ược n i v i m t t đi n Vi c ố ớ ộ ụ ệ ệ

ch n đi n áp tham chi u s đọ ệ ế ẽ ược đ c p chi ti t trong ph n s d ng ADC.ề ậ ế ầ ử ụ

Các chân trên PORTA c a chip ATmega32 đủ ược dùng cho b ADC, chân PA0 tộ ương

ng kênh ADC0 và chân PA7 t ng ng v i kênh ADC7

Trang 34

1 Thanh ghi.

Có 4 thanh trong b ADC trên AVR trong đó có 2 thanh ghi data ch a d li u sau khi ộ ứ ữ ệchuy n đ i, 2 thanh ghi đi u khi n và ch a tr ng thái c a ADC.ể ổ ề ể ứ ạ ủ

- ADMUX (ADC Multiplexer Selection Register): là 1 thanh ghi 8 bit đi u khi n vi cề ể ệ

ch n đi n áp tham chi u, kênh và ch đ ho t đ ng c a ADC Ch c năng c a t ng bit ọ ệ ế ế ộ ạ ộ ủ ứ ủ ừtrên thanh ghi này s đẽ ược trình bày c th nh sau:ụ ể ư

 Bit 7:6- REFS1:0 (Reference Selection Bits): là các bit ch n đi n áp tham chi u cho ọ ệ ếADC, 1 trong 3 ngu n đi n áp tham chi u có th đồ ệ ế ể ược ch n là: đi n áp ngoài t chân ọ ệ ừVREF, đi n áp tham chi u n i 2.56V ho c đi n áp AVCC B ng 2 tóm t t giá tr các bit vàệ ế ộ ặ ệ ả ắ ị

đi n áp tham chi u tệ ế ương ng.ứ

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

 Bit 5-ADLAR (ADC Left Adjust Result): là bit cho phép hi u ch nh trái k t quệ ỉ ế ảchuy n đ i S dĩ có bit này là vì ADC trên AVR có đ phân gi i 10 bit, nghĩa là k t quể ổ ở ộ ả ế ảthu được sau chuy n đ i là 1 s có đ dài 10 bit (t i đa 1023), AVR b trí 2 thanh ghi dataể ổ ố ộ ố ố

8 bit đ ch a giá tr sau chuy n đ i Nh th giá tr chuy n đ i s không l p đ y 2 thanhể ứ ị ể ổ ư ế ị ể ổ ẽ ắ ầghi data, trong m t s trộ ố ường h p ngợ ười dùng mu n 10 bit k t qu n m l ch v phía tráiố ế ả ằ ệ ềtrong khi cũng có trường h p ngợ ười dùng mu n k t qu n m v phía ph i Bit ADLARố ế ả ằ ề ả

s quy t đ nh v trí c a 10 bit k t qu trong 16 bit c a 2 thanh ghi data N u ADLAR=0ẽ ế ị ị ủ ế ả ủ ế

k t qu s đế ả ẽ ược hi u ch nh v phía ph i (thanh ghi ADCL ch a tr n 8 bit th p và thanhệ ỉ ề ả ứ ọ ấghi ADCH ch a 2 bit cao trong 10 bit k t qu ), và n u ADLAR=1 thì k t qu đứ ế ả ế ế ả ược hi uệ

ch nh trái (thanh ghi ADCH ch a tr n 8 bit cao nh t, các bit t 9 đ n 2, và thanh ADCLỉ ứ ọ ấ ừ ế

ch a 2 bit th p nh t trong 10 bit k t qu (b n xem hình cách b trí 2 thanh ghi ADCL vàứ ấ ấ ế ả ạ ốADCH bên dướ ể ểi đ hi u rõ h n).ơ

Trang 35

 Bits 4:0-MUX4:0 (Analog Channel and Gain Selection Bits): là 5 bit cho phép ch nọkênh, ch đ và c h s khuy ch đ i cho ADC Do b ADC trên AVR có nhi u kênh vàế ộ ả ệ ố ế ạ ộ ềcho phép th c hi n chuy n đ i ADC ki u so sánh (so sánh đi n áp gi a 2 chân analog)ự ệ ể ổ ể ệ ữnên trước khi th c hi n chuy n đ i, chúng ta c n set các bit MUX đ ch n kênh và chự ệ ể ổ ầ ể ọ ế

đ c n s d ng B ng 3 tóm t t các ch đ ho t đ ng c a ADC thông qua các giá tr c aộ ầ ử ụ ả ắ ế ộ ạ ộ ủ ị ủcác bit MUX Trong b ng này, ng v i các giá tr t 00000 đ n 00111 (nh phân), các kênhả ứ ớ ị ừ ế ịADC được ch n ch đ đ n kênh (tín hi u input l y tr c ti p t các chân analog và soọ ở ế ộ ơ ệ ấ ự ế ừsánh v i 0V), giá tr t 01000 đ n 11101 tớ ị ừ ế ương ng v i ch đ chuy n đ i so sánh.ứ ớ ế ộ ể ổ

B ng 3: Ch n ch đ chuy n đ i.ả ọ ế ộ ể ổ

Trang 36

- ADCSRA (ADC Control and Status RegisterA): là thanh ghi chính đi u khi n ho t ề ể ạ

đ ng và ch a tr ng thái c a module ADC.ộ ứ ạ ủ

Trang 37

T ng bit c a thanh ghi ADCSRA đừ ủ ược mô t nh bên dả ư ưới:

 Bit 7 - ADEN(ADC Enable): vi t giá tr 1 vào bit này t c b n đã cho phép moduleế ị ứ ạADC đượ ử ục s d ng Tuy nhiên khi ADEN=1 không có nghĩa là ADC đã ho t đ ng ngay,ạ ộ

b n c n set m t bit khác lên 1 đ b t đ u quá trình chuy n đ i, đó là bit ADSC.ạ ầ ộ ể ắ ầ ể ổ

 Bit 6 - ADSC(ADC Start Conversion): set bit này lên 1 là b t đ u kh i đ ng quáắ ầ ở ộtrình chuy n đ i Trong su t quá trình chuy n đ i, bit ADSC s để ổ ố ể ổ ẽ ược gi nguyên giá tr 1,ữ ịkhi quá trình chuy n đ i k t thúc (t đ ng), bit này s để ổ ế ự ộ ẽ ược tr v 0 Vì v y b n khôngả ề ậ ạ

c n và cũng không nên vi t giá tr 0 vào bit này b t kỳ tình hu ng nào Đ th c hi nầ ế ị ở ấ ố ể ự ệ

m t chuy n đ i, thông thộ ể ổ ường chúng ta s set bit ADEN=1 trẽ ước và sau đó set ADSC=1

 Bit 4 – ADIF(ADC Interrupt Flag): c báo ng t Khi m t chuy n đ i k t thúc, bitờ ắ ộ ể ổ ếnày t đ ng đự ộ ược set lên 1, vì th ngế ười dùng c n ki m tra giá tr bit này trầ ể ị ước khi th cự

hi n đ c giá tr chuy n đ i đ đ m b o quá trình chuy n đ i đã th c s hoàn t t.ệ ọ ị ể ổ ể ả ả ể ổ ự ự ấ

 Bit 3 – ADIE(ADC Interrupt Enable): bit cho phép ng t, n u bit này đắ ế ược set b ng 1ằ

và bit cho phép ng t toàn c c (bit I trong thanh ghi tr ng thái c a chip) đắ ụ ạ ủ ược set, m t ng tộ ắ

s x y ra khi m t quá trình chuy n đ i ADC k t thúc và các giá tr chuy n đ i đã đẽ ả ộ ể ổ ế ị ể ổ ược

c p nh t (các giá tr chuy n đ i ch a trong 2 thanh ghi ADCL và ADCH).ậ ậ ị ể ổ ứ

 Bit 2:0 – ADPS2:0(ADC Prescaler Select Bits): các bit ch n h s chia xung nh pọ ệ ố ịcho ADC ADC, cũng nh t t c các module khác trên AVR, c n đư ấ ả ầ ược gi nh p b ng m tữ ị ằ ộngu n xung clock Xung nh p này đồ ị ượ ấ ừc l y t ngu n xung chính c a chip thông qua m tồ ủ ộ

h s chia Các bit ADPS cho phép ngệ ố ười dùng ch n h s chia t ngu n clock chính đ nọ ệ ố ừ ồ ếADC Tham kh o b ng 4 đ bi t cách ch n h s chia.ả ả ể ế ọ ệ ố

B ng 4: H s chia xung nh p cho ADC.ả ệ ố ị

Ngày đăng: 09/04/2015, 19:29

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Biểu đồ đường SAFI. - đồ án tốt nghiệp đo lường điện áp 3 pha sử dụng ATmega32
Hình 1.1. Biểu đồ đường SAFI (Trang 8)
Hình 3. T o ngu n AVCC t  VCC. ạ ồ ừ - đồ án tốt nghiệp đo lường điện áp 3 pha sử dụng ATmega32
Hình 3. T o ngu n AVCC t VCC. ạ ồ ừ (Trang 33)
Hình d ng th  SD và microSD ạ ẻ - đồ án tốt nghiệp đo lường điện áp 3 pha sử dụng ATmega32
Hình d ng th SD và microSD ạ ẻ (Trang 39)

TỪ KHÓA LIÊN QUAN

w