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

ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC

67 294 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đ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 67
Dung lượng 14,67 MB

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

Nội dung

Khi các lệnh này chỉ định sự chuyển tiếp dữ liệu từ bộ nhớ này đến bộ nhớ khác, từ bộ nhớ lên các port hoặc một vài sự tính toán khác, CPU phải được kết nối với tất cả các bộ phận của vi

Trang 1

TRƯỜNG DH DL KY THUẬT CÔNG NGHỆ TP.HCM

KHOA ĐIỆN - ĐIỆN TỬ NGÀNH ĐIỆN TỬ VIỄN THONG

LUẬN VĂN TỐT NGHIỆP

ĐỀ TÀI:

MẠCH TỰ ĐỘNG TRẢ LỜI ĐIỆN THOẠI

ỨNG DỤNG VI ĐIỀU KHIỂN PIC

GVHD : ThS PHAM HUNG KIM KHANH SVTH : LÊ NGUYÊN HOÀNG TRINH MSSV : 10101232

Trang 2

1I.5 Hoạt động RESET 17

III.1 Sơ lược về sự phát triển của tổng đài 51

III.3.1 Khối chuyển mạch 55 II.3.2 Khối báo hiệu 55

Trang 3

I4 Báo hiệu trong tổng đài `

'HƯƠNG IV : KHÁI QUÁT CHUNG VỀ MÁY ĐIỆN THOẠI

IV.1 Nguyên tắc cấu tạo máy điện thoại

IV.2 Chức năng tổng quát của máy điện thoại

IV.3 Phân loại các kiểu điện thoại

IV.4 Yêu cầu về mạch điện máy điện thoại

HUONG V : UNG DUNG PIC 16F84A THIET KE VA THI CONG

MẠCH GHI ÂM ĐIỆN THOẠI

V.1 Sơ đồ khối và nguyên lý hoạt động của hệ thống

V.2 Giới thiệu các IC sử dụng trong mạch

PHAN 2: TINH TOAN VA THI CONG

CHƯƠNG VI : THIẾT KẾ CHI TIẾT

VI.1 Mạch nguồn

VL2 Mạch cảm biến chuông

VI.3 Mạch điều khiển Relay

VI.4 Mach tạo tải giả

VỊ.5 Mach Hybrid va Mach loc

VI.6 Mach phat hién Busy Tone

VI.7 Mach thu & phat tiếng nói

VI.8 Mạch khuếch đại công suất âm tần

VỊI.9 Mạch điểu khiển trung tâm

HUONG VII : LƯU ĐỒ GIẢI THUẬT

LẾT LUẬN

[UGNG PHAT TRIEN DE TAI

À1 LIỆU THAM KHẢO

Trang 4

Lời mở đầu

Từ giữa những năm 80 đến nay công nghệ chế tạo linh kiện bán dẫn có những phát triễn đậm nét để hỗ trợ cho sự phát triễn của công nghệ thông tin, và sự tự

động hóa trong công nghiệp, Với độ tích hợp ngày càng cao, công suất tiêu tán bé

hơn, thông minh hơn nó đã làm thay đổi hắn cấu trúc của nền công nghiệp hiện tại Bước vào đầu thế kỷ 21 kỹ thuật điện tử vi điện tử sẽ là “Chiếc chìa khóa kỹ

thuật“ cho các nước trên thế giới bước vào kỷ nguyên mới_ kỷ nguyên của công

nghệ thông tin

Tuy chỉ mới thâm nhập vào nước ta nhưng công nghệ thông tin đã phát triễn rất nhanh và ngày càng giữ vai trò quan trọng trong nền công nghiệp nước nhà Hệ

thống viễn thông, dịch vụ khách hàng, thông tin di động, nhắn tin càng phát triễn

với tính hiện đại và tự động hóa ngày càng cao

Trong quyển luận văn này em muốn trình bày loại “Mạch Tự Động Trả Lời Điện Thoại“, đây là loại mạch có rất nhiều ứng dụng trong thực tế và đã được các

hãng điện tử lớn sản xuất và tung ra thị trường

Do kiến thức còn non kém, kinh nghiệm ít ổi và thời gian có hạn, chắc chắn

rằng tập luận văn này ít nhiều không thể tránh khỏi thiếu sót, kính mong quí thầy

cô và bạn bè vui lòng bỏ qua và đóng góp ý kiến để tập luận văn ngày càng hoàn

Trang 5

TÓM TẮT ĐỀ TÀI

Đề tài khảo sát Chip vi điều khiển mới họ PIC Cụ thể là chip PIC16F84A,

và ứng dụng vào thiết kế, thi công mạch ghi âm điện thoại

Dé tài này được chia thành 7 chương với nội dung chính như sau :

Chương 1: Giới thiệu tổng quan họ vi diéu khién PIC

Chương 2: Kiến trúc phần cứng của PIC16F84A

Chương 3: Tổng đài điện thoai Chương 4: Khái quát chung về máy điện thoại

Chương 5: Ứng dụng PIC16F84A thiết kế và thi công mạch ghỉ âm

điện thoại

Chương 6 : Thiết kế chỉ tiết

Chương 7 : Lưu đồ giải thuật

SVTH: Lê Nguyễn Hoàng Trinh

Trang 7

CHƯƠNG I : GIỚI THIỆU TỔNG QUAN

HO VI DIEU KHIEN PIC 1.1 Lịch sử phát triển

Họ vi điều khiển PIC là tên viết tắt của Programmable Intelligent Computer

— “Máy tính thông minh khả trình “ do hãng General Instrument sẳn xuất và con vi

điều khiển đầu tiên là PIC1650 Con vi điều khiển này là mẹ đẻ của tất cả các vi

điều khiển họ PIC sau này

Về sau họ vi điều khiển này được hãng Microchip tiếp tục phát triển và hiện nay các sản phẩm vi điểu khiển PIC đã có gần 100 loại sản phẩm từ họ 10Fxxx đến

các ho 12Cxxx, 12Fxxx, 16Cxx, 17Cxx, 16Fxx, 16Fxxx, 16FxxxA, 16LFxxxA, 18Fxxx, 18LFxxx, 18Fxxxx, 18LFxxxx

12 Các đặc điểm

PIC là họ vi điều khiển có rất nhiều chủng loại, từ các dòng sản phẩm cơ bắn

thích hợp với những ứng dụng nhỏ đến các dòng sản phẩm phổ thông và cao cấp,

các sản phẩm này có nhiều chân xuất/nhập hơn các dong co ban và nó tích hợp

nhiều thiết bị ngoại vi như : bộ chuyển đổi tín hiệu tương tự sang số ( ADC : Analog-To-Digital Converter ), truyền nối tiếp với hai chuẩn là MSSP ( Master

Synchronous Serial Port ) và USART ( Universal Synchronous Asynchronous Receiver Transmitter ), truyền song song với PSP ( Parallel Slave Port ) Mặc dù

có nhiều loại nhưng chúng đều có những đặc tính chung sau :

¢ C6 thé giao tiếp với thiết bị ngoại vi thông qua các chân xuất/nhập

© C6 thé diéu khiển các chân xuất nhập mà không làm ảnh hưởng tới

Trang 8

e Dong PIC co ban ( Base - Line )

gồm các PIC 12Cxxx Cac PIC thuộc loại này có độ dài lệnh là 12 bit

© - Dòng PIC phổ thông ( Mid - Range )

gồm các dòng PIC 10F, 12F và 16, loại này có độ dài lệnh là 14 bit

e Dong PIC High — End

gồm các dòng PIC 18, loại này có độ đài lệnh là 16 bit

SVTH: Lê Nguyễn Hoang Trinh +7

Trang 9

CHƯƠNG II : KIẾN TRÚC PHẦN CỨNG PIC16F84A

1.1 Giới thiệu PIC16F84A

PIC16F84A là một vi điều khiển 8 bit sử dụng cấu trúc RISC ( Reduced

Instruction Set Computer = May tính có tập lệnh rút ngọn ) Các bus dữ liệu và lệnh riêng biệt theo cấu trúc Harvard cho phép từ lệnh có độ đài 14 bit trong khi một từ

dữ liệu có độ dài 8 bit Vùng ngăn xếp có độ sâu 8 mức và độc lập với bộ nhớ RAM Các đặc điểm

+ Có 35 lệnh đơn

+ Mỗi lệnh được thực hiện trong một chu kỳ máy ( ngoại trừ các lệnh rẽ nhánh được thực hiện trong hai chu kỳ máy )

+ Bộ nhớ chương trình : 1024 từ, mỗi từ có độ dài 14 bit

+ Bộ nhớ dữ liệu RAM : 68 byte, mỗi byte có độ dài 8 bit

+ Bộ nhớ dữ liệu EEPROM : 64 byte, mỗi byte có độ đài § bit

+ 16 thanh ghi có chức năng đặc biệt

+ 13 chân xuất/nhập được chia thành 2 port Port A có 5 chân, port B có 8 chân

+ Có 4 nguồn ngắt

©_ Ngắt ngoài trên chân RB0/INT

e Hoan thanh việc ghi dữ liệu vào EEPROM

e Ngắt tràn của bộ định thời TMRO

¢ Port B thay đổi trạng thái trên các chân RB< 7:4 >

Các tính năng

+ PIC16F84A có thể giao tiếp va diéu khiển thiết bị ngoại vi thông qua các chân xuất/nhập

+ Có thể đáp ứng các mạch đồi hỏi thời gian thực

+ Sử dụng công nghệ CMOS nên dòng sử dụng thấp 20mA

Trang 10

-8-Chức năng Reset PIC trong khi nguồn cung cấp chưa ổn định Khi bật nguồn thì bộ đao động thạch anh lúc đầu chưa ổn định do đó ở thời gian đầu cần

phải Reset PIC cho đến khi bộ dao động thạch anh ổn định Có hai bộ định thời làm trễ lúc bật điện, một là bộ định thời khởi động bộ dao động, hai là

Power-up Timer (PWRT) cung cấp khoảng trễ cố định là 72 ms chỉ khi bật

+ Chế độ SLEEP

Khi chế độ này được thực hiện nó làm cho PIC ngưng xử lý chương trình ứng

dụng Chế độ này đưa PIC vào trạng thái nghỉ tạm thời với một dong tiêu thu

rất thấp Có thể cho PIC hoạt động tré lai bằng 3 cách : reset tại chân MCLR

, cho bộ Watchdog timer hoạt động, dùng ngắt ngoài

+ Sự bảo vệ mã

+ Chế độ lập trình nối tiếp ICSP ( In-Cicuit Serial Programming )

1.2 Sơ đô bố trí chân

PICI6F84A có tất cả 18 chân thường được tìm thấy là loại DIP 18 nhưng cũng có thể tìm thấy loại SMD, loại này có kích thước nhỏ hơn DỊP DIP là từ viết

tắt của Dual In Package, SMD là từ viết tắt của Surface Mount Devices

SVTH: Lê Nguyễn Hoàng Trinh

Trang 11

Vạs ——> BỊ a II=— Yoo

RBO/INT s+ [5] % mm R"l m = 7 ja» BB RB2 +—» [BI IẪ~—> R85 RB3 «+—>z [| IM+—+ R84

TOP VIEW Hinh 1 : So dé bé trí chân PIC16F84A

Chân thứ hai của port A, là chân nhập/xuất

Chân thứ ba của port A, là chân nhập/xuất

Chân thứ tư của port A, là chân nhập/xuất T0OCKI chọn ngõ vào Clock tới bộ định thời TMRO

Ngo vao Reset vi diéu khiển, tích cực mức thấp và còn

dùng để lập trình cho vi điểu khiển với điện áp lập trình

là 13V

Chân nối mass

Chân thứ 0 của port B, là chân xuất/nhập, ngoài ra còn

có chức năng là chân ngắt ngoài

Chân thứ nhất của port B, là chân nhập/xuất

Chân thứ hai của port B, là chân nhập/xuất

Chân thứ ba của port B, là chân nhập/xuất

Chân thứ tư của port B, là chân nhập/xuất

Chân thứ năm của port B, là chân nhập/xuất

Chân thứ sáu của port B, là chân nhập/xuất Khi lập trình nó là đường “clock'

Chân thứ bảy của port B, là chân nhập/xuất Khi lập

trình nó là đường dữ liệu

Chân cung cấp nguồn +5V

Chân 15:OSC2/CLKOUT Chân nối tới bộ dao động

Chân 16:OSC1/CLKOUT Chân nối tới bộ dao động

Trang 12

Hình 2 : Sơ đồ khối PIC16F84A

¢ Don vi xt ly trung tam ( Central Processing Unit) CPU

Đơn vị xử lý trung tâm ( CPU ) 1a bé nao cia vi diéu khién, n6 c6 nhiém vu

phát hiện và tìm nạp thứ tự lệnh cần để thực hiện, mã hoá lệnh đó và cuối

cùng nó cho lệnh này thực hiện

SVTH: Lê Nguyễn Hoàng Trinh -11¬

Trang 13

RAM Aderess Bus

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

CPU kết nối với tất cả các bộ phận của vi điều khiển tạo thành một khối

thống nhất Chức năng quan trọng nhất của CPU là đọc và giải mã các lệnh

chương trình Khi ta viết một chương trình, chương trình này bao gồm các

dòng lệnh ví dụ MOVLW 0x20 Tuy nhiên, vi điểu khiển sẽ không hiểu các

ký tự này mà nó chỉ làm việc với các trạng thái ‘0’ va ‘1’, vì vậy ta cần một chương trình biên dịch các đồng lệnh này thành dãy “0° và “1' như là chương

trình biên dịch hợp ngữ Như vậy khi nạp vào bộ nhớ chương trình nó sẽ được

CPU giải mã thành các lệnh Khi các lệnh này chỉ định sự chuyển tiếp dữ liệu từ bộ nhớ này đến bộ nhớ khác, từ bộ nhớ lên các port hoặc một vài sự tính toán khác, CPU phải được kết nối với tất cả các bộ phận của vi điều khiến, sự kết nối này được thực hiện qua bus đữ liệu và bus địa chỉ

e _ Đơn yị số học — logic ( Arithmetic Logic Unit) ALU

ALU thực hiện các thao tác như cộng, trừ, di chuyển ( trái hay phải trong một thanh ghi ) và các phép logic cơ bản PIC16F84A bao gồm một ALU 8 bit và thanh ghi W 8 bit

SVTH: Lê Nguyễn Hoàng Trinh

Trang 14

Hình 2.2 : Sơ đồ khối ALU

Ởcác lệnh có hai toán hạn, thông thường 1 toán hạn là thanh ghi W và toán hạn kia có thể là một hằng số hoặc là một trong c4c thanh ghi GPR hay SFR GPR- General Purposes Registers 14 cdc thanh ghi muc dich chung va SFR- Special Function Registers là các thanh ghi có chức năng đặc biệt

Ở các lệnh có một toán hạn, toán hạn này có thể là thanh ghi W hoặc một thanh ghi khác Khi một phép cộng trong hoạt động số học và logic, ALU điều khiển các bit trạng thái ( các bit này trong thanh ghi trạng thái

“STATUS)) Sự thực hiện của một vài lệnh sẽ ảnh hưởng đến các bit trạng thái Sự ảnh hưởng này phụ thuộc vào kết quả của lệnh đó, ALU có thể ảnh hưởng đến giá trị của các bit C (Carry), DC (Digit Carry), Z (Zero) trong thanh ghi trạng thái (STATUS)

Thanh ghi chỉ lệnh ( Instruction Register)

Thanh ghi này chứa mã lệnh đọc từ bộ nhớ chương trình Khi thực hiện việc

ghi mã lệnh từ bộ nhớ chương trình tới thanh ghi chỉ lệnh thì địa chỉ của mã

lệnh này được đọc từ bộ đếm chương trình

Giải mã và điều khiển lệnh (Instruction Decode & Control)

Khối này có nhiệm vụ giải mã nội dung của thanh ghi chỉ lệnh thành lệnh và

nó thi hành theo nội dung của lệnh đó

e Thanh ghi W ( W reg)

SVTH: Lé Nguyén Hoang Trinh

Trang 15

Đây là thanh ghi làm việc, nó dùng để lưu trữ tạm thời nội dung của ALU

Thanh ghi W cần thiết cho các hoạt động tính toán Nội dung của thanh ghi

này có thể được chuyển đến các thanh ghi khác và ngược lại, nó cũng được

sử dụng để điểu khiển cổng YO

1L4 Cấu tạo bộ dao động

Mạch dao động dùng để cung cấp cho vi điểu khiển một dao động xung clock Nó cần thiết cho vi điều khiển có thể thực hiện một chương trình hay một lệnh của

chương trình

Các loại đao động

PICI6F84A có thể làm việc với 4 cấu hình dao động khác nhau Người lập

trình có thể chọn cấu hình dao động khi lập trình PIC hoặc chọn bằng 2 bit cấu hình

Trong kiểu XT, LP hoặc HS một tinh thể thạch anh gồm có hai chân thường

được giữ trong vỏ bọc bằng kim loại được nối tới các chân OSC1/CLKIN và

OSC2/CLKOUT theo kiểu song song Hai tụ loại ceramic có trị số bằng nhau một

chân được nối mass chân còn lại nối với tỉnh thể được trình bày như hình sau

Hình 3 : Sơ đồ kết nối bộ dao động tinh thể

Bộ dao động tỉnh thể và tụ điện có thể gộp chung trong một vỏ bọc bằng

gốm với 3 chân, được gọi là hộp cộng hưởng Chân ở giữa được nối mass, hai chân

còn lại được nối đến chân OSC1 và OSC2 của vi điều khiển Khi thiết kế một thiết

bị, theo nguyên tắc là phải đặt bộ tạo dao động gần con vi điểu khiển để tránh

nhiễu trên đường mạch khi con vi mạch đang nhận clock

SVTH: Lê Nguyễn Hoàng Trinh

Trang 16

Chock from O8¢1

at systom PiC16FXX

Open ~©—-] OSC2

Hình § : Kết nối với nguồn xung clock bên ngoài

Bảng lựa chọn tụ cho bộ đao động tinh thể

Khi điện dung cao hơn sẽ làm tăng thêm sự vững vàng của bộ dao động

nhưng thời gian khởi động cũng tăng

SVTH: Lê Nguyễn Hoàng Trinh

Trang 17

-15-Bộ tạo dao động RC

Bộ dao động RC thường được dùng trong những ứng dụng không cần thời

gian chính xác Tần số cộng hưởng của bộ dao động RC được quyết định bởi mức

điện áp nguồn, điện trở R, tụ điện C và nhiệt độ hoạt động

Note: This pin can be configured as inputoulput pin

Hình 6 : Cấu tạo bộ dao động RC

Hình 6 biểu diễn cách nối bộ dao động RC với PIC16F84A Với giá trị của

điện trở R dưới 2,2K bộ dao động có thể bắt đầu không ổn định, hoặc nó có thể ngưng dao động Với giá trị rất cao của điện trở R ( ví dụ 1M) bộ dao động rất dễ bị

hồng bởi tạp nhiễu và độ ẩm Điện trở R nên chọn giá trị nằm trong khoảng 3K đến

100K Mặc dù bộ dao động làm việc không có một tụ điện bên ngoài, nhưng để

tránh tạp nhiễu và cho mạch ổn định nên mắc một tụ 20pF hoặc lớn hơn Một clock

của bộ dao động được phân biệt bởi 4 chu kỳ Bộ dao động clock phân biệt bởi 4

chu kỳ cũng có thể thu được ở chân OSC2/CLKOUT, và cũng có thể dùng để thử hay đồng bộ các mạch logic

Các chu kỳ máy

Một chu kỳ máy của PICI6F84A gém có 4 trạng thái được đánh số từ Q1

đến Q4 mỗi trạng thái chiếm 1 chu kỳ của bộ dao động Như vậy một chu kỳ máy chiếm 4 chu kỳ của bộ dao động hay 1 ws néu tin số của bộ dao động là 4MHz

Hình 7 : Mối quan hệ giữa nguồn clock và chu kỳ lệnh

Sau khi cấp nguồn, bộ dao động bắt đầu dao động Ở chu kỳ đầu tiên sự dao động không ổn định nhưng sau đó vài chu kỳ nó bắt đầu hoạt động bình thường

SVTH: Lê Nguyễn Hoàng Trinh - l6-

Trang 18

+5V

-J4 0V

Crystal start up time Time

Hình 8 : Tín hiệu của bộ dao động sau khi cấp nguồn

Để ngăn chặn bộ dao động hoạt động không chính xác khi cấp nguồn có thể ảnh hưởng đến sự thực hiện chương trình của vi điểu khiển, nên reset vi điều khiển trong suốt thời gian làm ổn định bộ dao động

1.5 Hoạt động RESET

PICI6F84A có các nguồn RESET sau :

¢ Reset trong thoi gian mé nguén Power — On Reset ( POR)

e Reset trong thdi gian thao tác bình thường bằng cách tác động mức “0' tới

chân MCLR của vi điều khiển

e© Resetởchân Ä⁄4CLR trong thời gian thực hiện chế độ SLEEP

¢ Reset khi Watchdog Timer (WDT) tran 6 ché d6 binh thudng

© Reset khi WDT tran 6 ché &6 SLEEP

Chân MCLR thường được nối qua một điện trở tới Vpp, điện trổ này có giá trị trong

khoảng 5 đến 10k khi mang một mức “0° tới chân này thì PIC sẽ được Reset

Điều kiện Reset cho bộ đếm chương trình ( PC ) và thanh ghi STATUS

Điều kiện PC | Thanh ghi

STATUS

MCLR Reset 6 thdi gian thao tác bình thường 000h_ | 000u uuuu

MCLR Reset khi dang ở chế độ SLEEP 000h_ | 0001 0uuu

Reset bing WDT (6 thời gian hoạt động bình thường ) | 000h_ | 0000 luuu

WDT Wake-up PC + l | uuu0 Ouuu

Ngắt ngoài ở thời gian thực hiện chế độ SLEEP PC +1 | uuul 0uuu

Trang 19

Khi dùng ngắt ngoài ở thời gian thực hiện chế độ SLEEP nếu bit GIE được

set thì PC được nạp với địa chỉ 004h

Điều kiện Reset các thanh ghi

Thanh ghi Địa Power-on | MCLR Reset trong : | Wake-up từ

chỉ Reset - Hoạt động bình SLEEP :

- Chế độ SLEEP ngắt ngoài

WDT Reset trong - Thông qua thời gian thao tác tràn WDT bình thường

TMRO Olh | xxxx xxxx WUuUu uuuu uuuu uuuu

STATUS 03h | 0001 1xxx 000g quuu uuug quuu FSR 04h | xxxx xxxx Wuuu uuuu uuuu uuuu PORTA 05h -~-X XXXX -u uuuu -U uuuu PORTB 06h | xxxx xxxx uuuu uuuu uuuu uuuu

EEDATA 08h | xxxxxxxx uuuu uuuu uuuu uuu

EEADR 09h | xxxx xxxx uuuu uuuu Wuuu uuuu PCLATH 0Ah -0 0000 -0 0000 -u_uuuU

OPTION_REG| 81h | 11111111 1111 1111 uuuu uuuu

PCL 82h | 0000 0000 0000 0000 PC +19

STATUS 83h | 0001 1xxx 000g quuu uuug quuu

FSR 84h | xxxx Xxxx uuuu wuuu uuuu uuuu

EECONI 88h -0 x000 -0 q000 -0 uuuu

PCLATH 8Ah -0 0000 -0 0000 ~ u Iuuu

INTCON 8Bh | 0000 000u 0000 000u uuuu uuuu®) Ghi chú : u= không thay đổi

x = không biết

- = bit không dùng đọc như “0°

q = giá trị được quyết định trên điều kiện

SVTH: Lê Nguyễn Hoàng Trinh -18-

Trang 20

Chú ý : (1) một hay nhiều bit trong thanh ghi INTCON sẽ bị ảnh hưởng ( do thực

hiện Wake-up)

(2) khi WAKE-up được thực hiện bằng ngắt ngoài và bit GIE được set thì PC được nạp với vecto ngắt 004h

1I6 Tổ chức bộ nhớ

PICI6F84A có hai khối nhớ riêng biệt, đó là bộ nhớ dữ liệu và bộ nhớ

chương trình , bộ nhớ EEPROM với các thanh ghi GPR và SFR trong bộ nhớ RAM

nằm trong khối nhớ dữ liệu, bộ nhớ FLASH nằm trong khối nhớ chương trình

+ Addres = EEPROM for

Fara dines o000h O0h HOF THỊ 80h

Oth THRO ‘OPTION 81h 02h PCL PCL 82h 03h STATUS ‘STATUS 83h

Werruph wedar addrans ñDũ4h 04h FER FSR Bah

05h [— FBRTA— | TRIEA | B5h Accessing

06h PORTE TRIS 86h these

th focations

Program memory O8h EEDATA EEEONT has the 1024N14 — 0fh EERO EEZON? © ft

0Ah FELATH PELATH regardieas

, tên NTEON NTEON ofthe bank : from which

: we are

i 68 bytes RAM making an

: yes CPR memory x4 access

STATUS register

2 L4 sạn :

Hình 9 : Tổ chức bộ nhớ của vi điều khiển PIC16F84A

SVTH: Lê Nguyễn Hoàng Trinh

Trang 21

-19-IIL6.1 Khối nhớ chương trình

000h

0004h

O3FFh

IFFFh 2o00h

2007h

Hình 10 : Tổ chức bộ nhớ chương trình

Bộ nhớ chương trình dùng công nghệ FLASH, đặc điểm của bộ nhớ FLASH

là dữ liệu trong bộ nhớ sẽ không bị mất đi khi tắt nguồn và nó cho phép ghi lại

nhiều lần nhưng số lần ghi lại được giới hạn là 1000 lần

Bộ nhớ FLASH được dùng để lưu chương trình, không gian sử dụng bộ nhớ là

1024 từ, 1 từ có chiểu dài là 14 bit (1024 Word x14 bit) Dia chỉ của bộ nhớ FLASH

từ 0000h đến 03FFh

Địa chỉ 0000h : vectơ Reset ( Reset Vector ) Khi có một điều kiện Reset xây

ra do mở nguồn, bằng WDT (Watchdog timer) hay một vài nguồn Reset khác,

chương trình sẽ bắt đầu từ địa chỉ này

Dia chi 0004h : vecto ngt (Interrupt Vector) Khi có một điều kiện ngắt xảy

ra do thanh ghi TMRO tràn khi cho phép ngắt tràn của bộ định thời hoặc do một

nguồn ngắt ngoài, chương trình sẽ thực hiện lệnh tại địa chỉ này

Như vậy không gian sử dụng chương trình sẽ bắt đầu từ địa chỉ 0005h đến

O3FFh

Dia chi 0400h đến 1FFFh : không gian bộ nhớ này không được sử dụng Địa chỉ 2007h : địa chỉ này chứa những bit cấu hình

INhững bit cấu hình

Những bit cấu hình có thể được lập trình (đọc như “0°) hoặc không được lập trình (đọc như “1') để chọn lựa các cấu hình thiết bị như các bit cho phép Power-up [Timer và WDT cũng như các bit chọn bộ dao động Những bit này được ánh xạ đến

SVTH: Lê Nguyễn Hoàng Trinh - 20 -

Trang 22

ô nhớ 2007h Địa chỉ 2007h ở bên ngoài phạm vi sử dụng bộ nhớ chương trình và nó thuộc về trường hợp đặc biệt / cấu hình của không gian bộ nhớ (2000h - 3FFEh) Không gian này chỉ có thể truy cập trong thời gian lập trình

Bit 13-4: CP: Code Protection

1 = không được mã bảo vệ

0 = tất cả bộ nhớ chương trình được mã bảo vệ

Bit 3 : PWRTE Power-up Timer Enable bit

1 = không cho phép Power-up Timer

0 = cho phép Power-up Timer Bit2 : WDTE : Watchdog Timer Enable bit

1 = cho phép chức năng Watchdog Timer

0 = không cho phép chức năng Watchdog Timer Bit1-0 : FOSC1-—FOSCO Oscillator Selection bits

11 = dao động RC

10 = dao động HS

01 = dao động XT

00 = dao động LP 116.2 Khối nhớ đữ liệu

Khối nhớ dữ liệu bao gồm bộ nhớ dữ liệu và bộ nhớ EEPROM

Trang 23

TI.6.2.a Bộ nhớ dữ liệu

File Address File Address

00h | indirect addr.) | Indirect adar | 80h

01h TMRO OPTION REG | 81h 02h PCL PCL 82h 03h STATUS STATUS ân 04h FSR FSR 84h

06h 86h 07h 87h 98h 88h 09h 89h OAh 8Ah OBh 88h och 8th

68

Genera Mapped Purpose (accesses)

R in Bank 0

(SRAM)

4Fh CFh 50h Sad D0h

lank 0

LÏ Unimplemented data memory locatlon; read as '0'

Note 1: Nota physical register Hình 11 : Tổ chức bộ nhớ dữliệu — ˆ

Bộ nhớ đữ liệu gồm các thanh ghi file RAM (Random Access Memory-bộ

nhớ truy xuất ngẫu nhiên), dữ liệu trong các thanh ghi này sẽ bị mất khi tắt nguồn

SVTH: Lê Nguyễn Hoàng Trinh

Trang 24

-22-Bộ nhớ dữ liệu có tất cả là 256 byte (00h đến FFh) được chia thành 2 bank, mỗi bank có 128 byte Bank 0 ở địa chỉ 00h đến 7Fh trong đó các byte có địa chỉ từ ã0h đến 7Fh và byte ở địa chỉ 07h không được sử dụng và nó đọc như “0° Bank 1 ở

địa chỉ 80h đến FFh trong đó các byte có địa chỉ từ D0h đến FFh và byte ở địa chỉ 87h không được sử dụng và nó đọc như “0° Khi muốn truy xuất đến một thanh ghỉ

trong bộ nhớ dữ liệu thì trước tiên phải chọn bank chứa thanh ghi đó, việc chọn bank nay được qui định trong thanh ghi STATUS ở địa chỉ 03h và 83h Các thanh

ghi trong bộ nhớ đữ liệu có thể được truy xuất trực tiếp bằng địa chỉ tuyệt đối của

mỗi thanh ghi hoặc gián tiếp qua thanh ghi FSR (File Select Register) Địa chỉ gián

tiếp sử dụng giá trị hiện thời của bit RP0 trong thanh ghi STATUS để truy xuất vào

trong vùng bank của bộ nhớ dữ liệu

Bộ nhớ dữ liệu được phân thành 2 phần :

e _ Phân 1 gồm 12 byte đầu tiên của mỗi bank được gọi là SFR ( Special

Funstion Registers — các thanh ghi chức năng đặc biệt ) và được dùng

để ghi lại trạng thái hoạt động của PIC như là điều khiển chọn chế độ

cổng ngõ vào hay ngõ ra Có 16 thanh ghi khác nhau trong SFR (11 thanh ghi trong bank 0 và 5 thanh ghi trong bank 1 ) Nội dung của mỗi thanh ghi được quản lý bởi PIC Mặc dù có tổng cộng là 24 thanh

ghi nhưng một vài thanh ghi nằm trong cả 2 bank Khi viết chương trình cần quan tâm đến việc chọn bank nhớ khi truy xuất đến các

thanh ghỉ này

e _ Phần 2 gồm 68 byte từ địa chỉ 0Ch đến 4Fh được gọi là GPR ( General

Purpose Registers - Các thanh ghi mục đích chung ) dùng để lưu trữ kết quả và điểu kiện trong khi chương trình đang chạy Nội dung của

GPR trong 2 bank là như nhau, vì thế khi truy xuất đến các thanh ghi

này không cần thực hiện việc chọn bank nhớ, tổng dung lượng của

RAM là 68 byte Nội dung của GPR bị mất khi tắt nguồn và không có giới hạn số lần ghi dữ liệu

SVTH: Lê Nguyễn Hoàng Trinh

Trang 25

Olh | TMRO 8-bit Real-Time Clock/Counter

02h | PCL Đặt 8 bit thấp của bộ đếm chương trình (PC)

03h | STATUS | IRP | RPI | RP0 | 7O | Pp Z DC c 0001 1xxx

04h FSR Dia chi bộ nhớ dữ liệu gián tiếp pointer Ô XXXX XXXX

05h | PORTA | | — | — |RA4 | RA3 | RA2 | RAI RAO | -x xxxx

TOCKI 06h | PORTB | RB7 | RB6 | RBS | RB4 | RB3 | RB2 | RBI | RBOINT | xxxxxxxx

07h - Đọc nhự ‘0’

08h | EEDATA Thanh ghi dữ liệu EEPROM XXXX XXXX

09h | EEADR Thanh ghi địa chỉ EEPROM XXXX XXXX

0Ah| PCLATH| | | —- Bộ đệm ghi cho 5 bit trên PC -0 0000 0Bh | INTCON | GIE | EEIE | T0IE | INTE | RBIE | ToIF | INTF | RBIF | 00000000

Bank 1 80h | INDFE Sử dụng nội dung của FSR làm địa chỉ bộnhớdữlệu | -

81h | OPTION | RB | INT | T0CS | T0SE | PSA | Ps2 | Psi PSO 11111111 -REG | PU |EDG

82h | PCL Đặt 8 bit thấp của bộ đếm chương trình (PC), 0000 0000

83h | STATUS | IRP | RPI | RP0 | 7Ó | PD | Z | DC | C€ |9011x+x

84h FSR Địa chỉ bộ nhớ đữ liệu gián tiếp pointer 0 XXXX XXXX

85h | TRISA | - | — | — ] Thanh ghi gián tiếp dữ liệu PORTB mm 86h | TRISB Thanh ghi gián tiếp dữ liệu PORTB 11111111

87h = Doc nhu ‘0’ —

88h | EECON1| - | - | - |EEIE |WRERR|WREN| WR | RD -0 x000

89h | EECON2 Thanh ghi 2 điều khiển EEPROM

0Ah | PCLATH| | - | —- Bộ đệm ghi cho 5 bit rên PC -0 0000 OBh | INTCON | GIE | BEIE | TOIE | INTE | RBIE | TOIE | INTF | RBIF | 0000000x

-n : giá trị khi Reset nguồn (-x : chưa biết )

Cấu trúc thanh ghi trạng thái ở địa chỉ 03h và 83h

Trang 26

-24-BitO C (Carry )

1 = lay ra bit quan trọng nhất từ kết quả

0 = không lấy ra bit quan trọng nhất của kết quả

Bit 1 DC ( Digit Carry )

1 = lấy bit thấp thứ tư của kết quả

0 = không lấy bit thấp thứ tư của kết quả

Bit2 Z (Zero bit )

1 = kết quả của phép tính số học hoặc logic là zero

0 = kết quả của phép tính số học hoặc logic khác zero

Bit3 PD :bit tắt nguồn

1 = sau khi bật nguồn hoặc dùng lệnh CLRWDT

0 = khi dùng lệnh SLEEP

Bit4 TO : Time-out bit

1 = sau khi mở nguồn, khi thực hiện lệnh CLRWDT hoặc lénh SLEEP 0= khi WDT tràn

Bít 6:5 RP1:RP0 ( Register Bank Select bit ) bit chọn bank thanh ghi

01 = Bank 1 (80h - FFh)

00 = Bank 0 (00h — 7Fh)

Bit7 IRP

Đối với con PIC16F84A thì bit này không dùng và nó được duy trì ở mức “0”

Đối với các dòng vi điểu khiển PIC cao hơn ( loại có 4 bank thanh ghi ) thì nó

dùng để chọn bank thanh ghỉ

1 =bank 2 và 3

0 =bank 0 và 1

Thanh ghi trạng thái chứa các trạng thái số học của ALU ( C, DC, Z), trạng thái

Reset ( 70, PD ) và những bit chọn bank nhớ (TRP, RP1, RP0) '

* ghi thy chon (OPTION_REG)

R/W-1 R/W-1 R/W-IL R/W-1 R/W-I R/W-I R/W-I R/W-I

Trang 27

-25-Thanh ghi tuỳ chọn là thanh ghi có thể đọc và ghi được nó bao gồm những bit

điều khiển khác nhau như là định cấu hình Prescaler tới TMR0/WDT, ngắt ngoài

INT, TMRO, chế độ * Pull-up' trên PORTB

Bit 0:2 PSO, PS1, PS2 : bit chon téc độ Prescaler

3 bit này dùng để định tốc độ Prescaler (xem bảng dưới) Việc định tốc độ

Prescaler có thể ảnh hưởng đến sự làm việc của vi điểu khiển, điểu này sẽ được để cập rõ hơn ở phần TMRO

Bit 3 PSA ( Prescaler Assignment bit )

Bịt chỉ định Prescaler tới TMRO hay Watchdog

1 = Prescaler được chỉ định tới Watchdog

0 = Prescaler được chỉ định tới môđun TMRO Bit 4 TOSE ( TMRO Source Edge Select bit) : bit chon canh nguồn TMRO

Nếu chọn môđun TMRO ở chế độ đếm bằng nguồn xung ở chân

RA4/TOCKI thi bit này xác định cạnh lên hay cạnh xuống của tín hiệu

1 = kích cạnh xuống

0 = kích cạnh lên

Bit 5 TOCS ( TMRO Clock Source Select bit )

Bit lựa chọn nguồn xung TMRO Bit này cho phép bộ đếm TMRO tăng bằng nguồn dao động bên trong

ở mỗi 1⁄4 dao động xung clock hay nguồn xung bên ngoài ở chân

RA4/TOCKI

1 = từ nguồn xung bên ngoài

0= 1⁄4 dao động xung clock bên trong Bit6 INTEDG ( Interrupt Edge Select bit ) : bit chọn cạnh ngắt

SVTH: Lê Nguyễn Hoàng Trinh 26

Trang 28

Bit 7 RBPU ( PORTB Pull-up Enable bit)

Bit nay dùng để mở hoặc tắt các chân của PORTB có điện trở bên

trong kéo lên nguồn Vpp

1 =tất

0=mở + Thanh ghi INTCON

Ghi chi : R : bit có thể đọc

W: bit có thể ghi -n: giá trị khi Reset nguồn (-x : chưa biết )

Cấu trúc thanh ghi INTCON ở địa chỉ 0Bh và 8Bh

Bit 0 RBIF ( RB Port Change Interrupt Flag bit )

Bit cờ ngắt thay đổi port RB

1 =ít nhất 1 trong các chân RB4 : RB7 thay đổi trạng thái

0 = không có chân nào trong các chân RB4 : RB7 thay đổi trạng thái Bit 1 INTF ( INT Enternal Interrupt Flag bit )

Bit cờ ngắt ngoài ở chân RBO/INT

1 =xẩy ra ngắt ngoài

0 = không xảy ra ngắt ngoài

Bit 2 TOIF ( TMRO Overflow Interrupt Flag bit ) bit cờ ngắt tàn TMRO

1 =b6 đếm thay đổi trạng thái từ FFh tới 00h

0 = tràn không xảy ra

Bit 3 RBIE (RB Port Change Interrupt Enable bit )

Cho phép ngắt xảy ra khi thay đổi trạng thái trên các chân 4,5,6 và 7

của Port B

1 = cho phép ngắt khi thay đổi trạng thái

0 = không cho phép ngắt khi thay đổi trạng thái

Bít 4 INTE ( INT External Interrupt Enable bit )

SVTH: Lé Nguyén Hoang Trinh -27-

Trang 29

Bit cho phép ngắt ngoài tại chân RBO/INT

1 = cho phép ngắt ngoài

0 = không cho phép ngắt ngoài

Bit 5 TOIE ( TMRO Overflow Interrupt Enable bit )

Bit cho phép ngắt khi bộ đếm TMRO tràn

1 = cho phép ngắt

0 = không cho phép ngắt

Nếu bit T0IE và T0IE được set đồng thời thì ngắt xảy ra

Bit6 EEIE ( EEPROM Write Complete Interrupt Enable bit) :

Bit này cho phép ngắt xảy ra khi kết thúc việc ghi thông thường tới

EEPROM

1 = cho phép ngắt

0 = không cho phép ngắt Nếu bit EEIE và EEIF ( bit EEIF nằm trong thanh ghi EECONI) được

Bộ nhớ dữ liệu EEPROM có thể đọc và ghi trong điều kiện hoạt động bình

thường (Vọpp phải đủ) Bộ nhớ này không có bản đồ trực tiếp trong không gian file

thanh ghi Thay vào đó nó được định vị gián tiếp qua các thanh ghi có chức năng đặc biệt Có 4 thanh ghi trong SFR được sử dụng để đọc và ghi bộ nhớ EEPROM Những thanh ghi này là:

- EECONI1

- EECON2 (khéng phai là một thanh ghi về mặt vật lý được thực hiện)

EEDATA EEADR

EEDATA chứa 8 bit dữ liệu cho đọc/ghi, và EEADR chứa địa chỉ của vị trí EEPROM duy trì địa chỉ của vị trí EEPROM được truy cập Vi mạch PIC16F84A có

64 byte của đữ liệu EEPROM với phạm vi địa chỉ từ 00h đến 3Fh

Bộ nhớ dữ liệu EEPROM cho phép đọc và ghi từng byte Khi ghi một byte thì

đữ liệu trước đó tại vị trí ghi sẽ được xoá tự động trước khi dữ liệu mới được ghi

vào Bộ nhớ đữ liệu EEPROM có số lần ghi xóa lớn Thời gian ghi được điều khiển

bởi timer trên vi mạch Thời gian ghi sẽ thay đổi theo điện áp và nhiệt độ cũng như

Trang 30

Khi vi mạch được bảo vệ, thì CPU có thể tiếp tục đọc/ghi dữ liệu bộ nhớ

EEPROM Tuy nhiên bộ lập trình cho vi mạch không thể truy xuất vào bộ nhớ này

bit4 : EEIF: EEPROM ghi hoạt động của bit cờ ngắt

1= ghi sự hoạt động được hoàn thành (phải được clear trong

bit2 : 'WREN: bit mà EEPROM cho phép ghi

1= cho phép ghi chu trình

0= không phép ghi t6i EEPROM

bitl : WR: bit diéu khién doc

1= chu trình ghi bị cấm, khi hoàn thành một lần đọc thì bit đó

được clear bởi phân cứng Bit WR có thể chỉ được set (không

clear) trong phần mềm

0= hoàn thành chu trình ghi tới EEPROM

bit0 : RD: bit điều khiển đọc

1= cấm EEPROM đọc RD được clear trong phan cting Bit RD

có thể chỉ được set (không clear) trong phân mềm

0=không cấm EEPROM đọc

s Đọc bộ nhớ đữ liệu EEPROM

Để đọc 1 vị trí của bộ nhớ dữ liệu người lập trình phải ghi địa chỉ lên thanh

ghi EEADR và sau đó tạo bit điểu khiển RD (EECONI1 <0>) Dữ liệu đuợc

chuyển vào thanh ghi EEDATA trong các chu kỳ kế tiếp Do đó dữ liệu có thể được đọc trong những chu kỳ tiếp theo EEDATA sẽ giữ giá trị dữ liệu cho đến lần đọc khác hoặc lần ghi dữ liệu

Trang 31

Ví dụ : Đọc dữ liệu EEPROM

BCF STATUS, RP0 ; Bank 0 MOVLW CONFIG ADDR ;

MOVWF EEADR ; Address to read BSF STATUS, RPO ; Bank 1

BSF EECONI, RD ; EE Read BCF STATUS, RPO ; Bank 0

e Ghi téi b6 nhé dif ligu EEPROM

Để ghi một vị trí đữ liệu EEPROM người lập trình trước hết phải ghi địa chỉ

đến thanh ghi EEADR và dữ liệu đến thanh ghi EEDATA Sau đó người sử dụng phải theo một sự nối tiếp đặc biệt để bắt đầu viết cho mỗi byte

Ví dụ : ghi đữ liệu vào EEPROM

BSF STATUS, _ RPO ;Bank 1

BCF INTCON, GIE ;Disable INTs BSF EECONI, WREN ;Enable Write

BSF EECONI1, WR ;Set WR bit begin write

BSF INTCON, GIE sEnable INTs

Ghi sẽ không khởi đầu nếu quá trình trên chưa được đi theo chính xác (ghi

55h đến EECON2, ghi AAh đến EECON2, lúc đó set bit WR) cho mỗi byte

Ngắt sẽ không thể tác động trong khi thực hiện đoạn mã trên

Đồng thời bit WREN trong EECONI phải được tạo ra để cho phép ghi Cơ

chế này nhằm ngăn ngừa sự ghi dữ liệu EEPROM thình lình bởi sự thực hiện

không đúng mã (i.e., mất chương trình) Ngườilập trình cần phải giữ bit WREN trống ở tất cả thời gian, trừ khi nào điểu chỉnh EEPROM Bit WREN không được xóa bởi phần cứng

SVTH: Lê Nguyễn Hoàng Trinh -30-

Trang 32

Sau khi quá trình ghi bắt đầu, xóa bit WREN sẽ không ảnh hưởng đến chu

trình ghi này Bit WR sẽ không được thiết lập trừ khi bit WREN được thiết

lập

Lúc hoàn thành chu trình viết bit WR được xoá bằng phần cứng và bịt EEIE

được thiết lập Người lập trình có thể cho phép mỗi ngắt này hoặc kiểm tra bit này EEIF phải được xoá bởi phần mềm

e Kiém tra quá trình ghi:

Phụ thuộc vào ứng dụng, thực hành lập trình tốt có thể đọc chính tả giá trị đó được viết cho đữ liệu EEPROM cần phải được xác minh tới giá trị mong

muốn sẽ được viết Cái này phải được sử dụng trong những ứng dụng ở nơi

mà 1 bit EEPROM sẽ được nhấn mạnh gần giới hạn thiết minh

Nói chung viết EEPROM thất bại sẽ là một bit mà được viết như là '0,

nhưng đọc lùi như “1”

Ví dụ :

BCF STATUS, RP0 |; chọn Bank 0 : ; Any code : ; can go here

MOVF EEDATA, W ; Must be in bank 0 BSF STATUS, RPO |; Bank I

; (in W reg) and

; read (in EEDATA)

; the same?

SUBWF EEDATA, W 3 BTFSS STATUS, Z ¡1S difference 0?

GOTO WRITE_ERR ; NO, Write error

SVTH: Lé Nguyén Hoang Trinh

Trang 33

08h | EEDATA | Thanh ghi dữ liệu EEPROM XXXX XXXX | uuuu uuuu

09h | EEADR Thanh ghi dia chi EEPROM XXXX XXXX | uuuu uuuu 88h |EECONI | | |—- | EE | WRE | WRE | WR RD | -0 x000 | -0 q000

IF |RR N

89h |EECON2 | Thanh ghi2điểukhiểổnEEPROM ween |-———

Ghi chú: x = không biết

u = không thay đổi

- = không dùng, đọc như ‘0’

q = uuỳ thuộc vào giá trị trên trạng thái

L— ] không được sử dụng bởi dữ liệu EEPROM

+* Bộ đếm chương trình (Program Counter)

Bộ đếm chương trình (PC) chứa địa chỉ của lệnh tiếp theo mà chương trình sẽ thực hiện PC dài 13 bit 8 bit thấp được gọi là thanh ghi PCL, thanh ghi này có thể

đọc và ghi được 5 bit cao được gọi là thanh ghi PCLATH, thanh ghi này không thể

đọc hoặc ghi trực tiếp PC sẽ tăng một giá trị mỗi lần một lệnh được thực hiện và vị

trí của lệnh tiếp theo được thể hiện trong PC Nhưng khi thực hiện một lệnh yêu câu

nhảy thì bộ đếm này được ghi lại địa chỉ nơi mà chương trình nhảy đến

% Ngăn xếp (Stack)

Ngăn xếp dùng để lưu trữ địa chỉ để trở về chương trình khi chương trình thực

hiện lệnh nhảy đến chương trình khác như khi thực hiện lệnh CALL hoặc khi có một

điều kiện ngắt xảy ra Địa chỉ lưu trên ngăn xếp sẽ được lấy ra khi gặp lệnh

RETURN, RETLW hay RETFIE

Ví dụ : nếu một chương trình xử lý một việc được thực hiện nhiều lần thì thường

sử dụng một chương trình con để thực hiện riêng tác vụ đó Lệnh CALL được dùng

để nhảy đến chương trình con và để kết thúc chương trình con thì cần thực hiện lệnh

RETURN Khi chương trình gặp lệnh CALL, địa chỉ của lệnh sau lệnh CALL được lưu ở đỉnh ngăn xếp, hoạt động này gọi là PUSH Lệnh RETURN được thực hiện để báo kết thúc một chương trình con và địa chỉ ở đỉnh ngăn xếp được đặt vào PC và chương trình tiếp tục thực hiện tại địa chỉ này, hoạt động này gọi là POP

SVTH: Lê Nguyễn Hoàng Trinh

Ngày đăng: 17/11/2014, 09:04

HÌNH ẢNH LIÊN QUAN

Hình  2  :  Sơ  đồ  khối  PIC16F84A. - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 2 : Sơ đồ khối PIC16F84A (Trang 12)
Hình  2.1  :  Sơ  đồ  khối  CPU - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 2.1 : Sơ đồ khối CPU (Trang 13)
Hình  2.2  :  Sơ  đồ  khối  ALU - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 2.2 : Sơ đồ khối ALU (Trang 14)
Hình  4 :  Kết  nối  bộ  cộng  hưởng  tới  vi  điểu  khiển - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 4 : Kết nối bộ cộng hưởng tới vi điểu khiển (Trang 16)
Hình  8  :  Tín  hiệu  của  bộ  dao  động  sau  khi  cấp  nguồn - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 8 : Tín hiệu của bộ dao động sau khi cấp nguồn (Trang 18)
Hình  9  :  Tổ  chức  bộ  nhớ  của  vi  điều  khiển  PIC16F84A - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 9 : Tổ chức bộ nhớ của vi điều khiển PIC16F84A (Trang 20)
Hình  12  :  Cách  lưu  địa  chỉ  lệnh  vào  ngăn  xếp - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 12 : Cách lưu địa chỉ lệnh vào ngăn xếp (Trang 34)
Hình  13  :  Dinh  dia  chỉ  trực  tiếp - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 13 : Dinh dia chỉ trực tiếp (Trang 35)
Hình  14  :  Định  địa  chỉ  gián  tiếp - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 14 : Định địa chỉ gián tiếp (Trang 36)
Hình  15  :  Sơ  48  mach  chan  RAO  —  RA3 - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 15 : Sơ 48 mach chan RAO — RA3 (Trang 38)
Hình  21  :  Sơ  đồ  mạch  chân  RA4 - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 21 : Sơ đồ mạch chân RA4 (Trang 42)
Hình  23  :  Sơ  đồ  mạch  chân  RB4  -  RB7 - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 23 : Sơ đồ mạch chân RB4 - RB7 (Trang 44)
Bảng  Sự  Thật  Của  Cổng  XOR - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
ng Sự Thật Của Cổng XOR (Trang 45)
Hình  27  :  Sơ  đồ  khối  kết  nối  giữa  Prescaler  với  bộ  dinh  thoi  va  watchdog  timer - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 27 : Sơ đồ khối kết nối giữa Prescaler với bộ dinh thoi va watchdog timer (Trang 47)
Hình  29  :  Sơ  đổ  khối  tổng  quát  của  hệ  thống - ĐỀ TÀI: Mạch tự động trả lời điện thoại ứng dụng vi điều khiển PIC
nh 29 : Sơ đổ khối tổng quát của hệ thống (Trang 67)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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