sok_angle

New Member

Download miễn phí Thiết bị ghi âm điện thoại ứng dụng vi điều khiển pic


MỤC LỤC

Trang
Lời nói đầu 5
TÓM TẮT ĐỀ TÀI 6
PHẦN 1 : CƠ SỞ LÝ THUYẾT
CHƯƠNG I : GIỚI THIỆU TỔNG QUAN HỌ VI ĐIỀU KHIỂN PIC 8
I.1. Lịch sử phát triển 8
I.2. Các đặc điểm 8
I.3. Phân loại 9
CHƯƠNG II : KIẾN TRÚC PHẦN CỨNG PIC 16F84A 10
II.1. Giới thiệu PIC16F84A 10
II.2. Sơ đồ bố trí chân 11
II.3. Sơ đồ khối 13
II.4. Cấu tạo bộ dao động 16
II.5. Hoạt động RESET 19
II.6. Tổ chức bộ nhớ 21
v Bộ đếm chương trình ( PC ) 36
v Ngăn xếp ( STACK) 36
v Chế độ địa chỉ 37
II.7.Cấu trúc cổng I/O 40
II.8. Bộ định thời (TMR0) 51
II.9. Watchdog Timer 53
II.10. Ngắt 54
CHƯƠNG III : TẬP LỆNH CỦA PIC16F84A 56
III.1/ Bảng tóm tắt tập lệnh 56
III.2/ Định dạng tổng quát của từ lệnh 57
III.3/ Mô tả chi tiết từng lệnh 58
CHƯƠNG IV : LẬP TRÌNH HỢP NGỮ PIC16F84A VỚI CHƯƠNG TRÌNH BIÊN DỊCH MPASM 77
IV.1/ Giới thiệu chương trình biên dịch MPASM 77
IV.2/ Cách viết một chương trình 77
IV.3/ Một số ví dụ 81

CHƯƠNG V : ỨNG DỤNG PIC 16F84A THIẾT KẾ VÀ THI CÔNG
MẠCH GHI ÂM ĐIỆN THOẠI 93
V.1. Sơ đồ khối và nguyên lý hoạt động của hệ thống 93
V.2. Giới thiệu các IC sử dụng trong mạch 96
PHẦN 2 : TÍNH TOÁN VÀ THI CÔNG
CHƯƠNG VI : THIẾT KẾ CHI TIẾT 106
VI.1. Mạch nguồn. 106
VI.2. Mạch cảm biến chuông. 106
VI.3. Mạch điều khiển Relay 108
VI.4. Mạch tạo tải giả 109
VI.5. Mạch Hybrid và Mạch lọc 112
VI.6. Mạch phát hiện Busy Tone 116
VI.7. Mạch thu & phát tiếng nói 119
VI.8. Mạch khuếch đại công suất âm tần 120
VI.9. Mạch điều khiển trung tâm 121
CHƯƠNG VII : LƯU ĐỒ GIẢI THUẬT 122
KẾT LUẬN 139
HƯỚNG PHÁT TRIỂN ĐỀ TÀI 140
TÀI LIỆU THAM KHẢO 141














Lời nói đầ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 hoá trong công nghiệp. Với sự tích hợp ngày càng cao( có thể lưu trữ hàng trăm ngàn transistor trong một vi mạch ) công suất tiêu tán bé hơn, thông minh hơn. Những điều kiện đó đã tạo ra sản phẩm vi điều khiển.
Ngày nay kỹ thuật vi điều khiển đã trở nên quen thuộc trong các ngành kỹ thuật và dân dụng. Từ các dây chuyền sản xuất lớn đến các thiết bị điện gia dụng, đều thấy sự hiện diện của vi điều khiển. Các bộ vi điều khiển có khả năng xử lý nhiều hoạt động phức tạp với tốc độ nhanh mà chỉ cần một chip vi mạch nhỏ, nó đã thay thế các tủ điều khiển lớn và phức tạp bằng những mạch điện gọn nhẹ, thao tác sử dụng dễ dàng
Trong chương trình học thì em đã được các thầy cô dạy về họ vi điều khiển 8051. Trong cuốn luận văn này em xin giới thiệu một họ vi điều khiển khác đó là PIC (Programmable Intelligent Computer ) của hãng Microchip và ứng dụng PIC 16F84A để thiết kế mạch tự động ghi âm và trả lời điện. Mạch này sử dụng công nghệ số để lưu trữ tiếng nói với một vi mạch điều khiển trung tâm nên khả năng giao tiếp rộng, tốc độ xử lý nhanh, mạch nhỏ gọn.
Do thời gian có hạn và khả năng còn hạn chế nên trong quá trình thực hiện cuốn luận văn này không tránh khỏi những thiếu xót kính mong các chầy cô cùng các bạn thông cảm và chỉ bảo thêm.

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.
Đề 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 thieu tổng quan họ vi điều khiển PIC
Chương 2: Kiến trúc phần cứng của PIC16F84A
Chương 3: Tập lệnh của PIC16F84A
Chương 4: Lập trình hợp ngữ PIC16F84A với chương trình biên dịch MPASM
Chương 5: Ứng dụng PIC16F84A thiết kế và thi công mạch ghi âm điện thoại
Chương 6 : Thiết kế chi tiết
Chương 7 : Lưu đồ giải thuật


Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

h taùc ñoäng ñeán thanh ghi PORTA seõ khoâng aûnh höôûng ñeán traïng thaùi caùc chaân cuûa port A.
Ví duï 2 : chöông trình ñieàu khieån led ñôn baèng phím nhaán
Noái SW1 vôùi RA0 , SW2 vôùi RA1 , noái LED1, LED2 laàn löôït vaøo RB0, RB1.
Chöông trình
;************** KHÔÛI TAÏO PIC***********************
TITLE “ TEÂN CHÖÔNG TRÌNH “
LIST P=PIC16F84A
INCLUDE P16F84A.INC
__CONFIG _XT_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF
;**************KHAI BAÙO NHAÕN*********************
CNT EQU 0C
CNT1 EQU 0D
;**************BAÉT ÑAÀU CHÖÔNG TRÌNH************
ORG 0H
GOTO MAIN
ORG 05H
MAIN BSF STATUS, RP0 ; choïn bank1
MOVLW H’FF’
MOVWF TRISA
CLRF TRISB
BCF STATUS,RP0 ; choïn bank0
MOVLW H’00’
MOVWF PORTB ;taét caùc LED
SCAN
BTFSS PORTA, 0
CALL ON
BTFSS PORTA, 1
CALL OFF
BSF PORTB, 1
CALL DELAY
BCF PORTB, 1
CALL DELAY
GOTO SCAN
ON CALL DELAY
BSF PORTB, 0
RETURN
OFF CALL DELAY
BSF PORTB, 0
RETURN
;**********CHÖÔNG TRÌNH DELAY***************
DELAY
MOVLW D’100’
MOVWF CNT
LOOP
MOVLW D’200’
MOVWF CNT1
LOOP1
NOP
NOP
DECFSZ CNT1, F
GOTO LOOP1
DECFSZ CNT, F
GOTO LOOP
RETURN
END
Chöông trình hoaït ñoäng nhö sau : khi caáp nguoàn LED2 seõ chôùp taét, khi nhaán SW1, LED1 seõ saùng vaø nhaán SW2, LED1 seõ taét
Khi giao tieáp vôùi phím nhaán, ngoõ vaøo chaân I/O seõ ôû möùc ‘1’, neáu nhaán phím ngoõ vaøo chaân I/O seõ xuoáng möùc ‘0’. Nhö vaäy leänh BTFSS PORTA, 0 duøng ñeå kieåm tra ngoõ vaøo chaân RA0, khi ngoõ vaøo ôû möùc cao ‘1’ thì leänh keá tieáp seõ ñöôïc boû qua, khi nhaán phím luùc naøy ngoõ vaøo chaân RA0 ôû möùc thaáp ‘0’ thì leänh keá tieáp seõ ñöôïc thöïc hieän. ÔÛ moät soá chöông trình ñeå tieát kieän port I/O thì thöôøng duøng chung moät phím nhaán ñeå thöïc hieän nhieàu chöùc naêng töùc laø khi moät phím ñöôïc nhaán thì chöông trình thöïc hieän leänh moät vaø khi nhaán tieáp phím ñoù thì chöông trình seõ thöïc hieän leänh hai, vì thôøi gian thöïc hieän leänh nhanh hôn khoaûng thôøi gian nhaán phím do ñoù ñeå phaân bieät moãi laàn nhaán phím thì phaûi taïo moät thôøi gian treã, ôû chöông trình treân thôøi gian treã ñöôïc taïo baèng chöông trình con DELAY
Leänh CALL laø leänh goïi chöông trình con, moät chöông trình con phaûi ñöôïc keát thuùc baèng leänh RETURN
Caùch tính thôøi gian treã trong chöông trình DELAY
Trong chöông trình con DELAY coù hai bieán CNT vaø CNT1, hai bieán naøy laø hai thanh ghi muïc ñích chung coù ñòa chæ laø 0C vaø 0D, caùc thanh ghi muïc ñích chung ñeàu coù ñoä daøi laø 1 byte nhö vaäy giaù trò thaäp phaân lôùn nhaát cuûa caùc thanh ghi naøy laø 255 töông öùng vôùi heä thaäp luïc phaân laø FFh vaø heä nhò phaân laø B’1111 1111’
Vì moät chu kyø maùy chieám 4 nhòp dao ñoäng cuûa thaïch anh do ñoù thôøi gian cuûa moät chu kyø maùy ñöôïc tính baèng 4 chia cho taàn soá dao ñoäng cuûa thaïch anh, nhö vaäy neáu duøng thaïch anh 4MHz thì moät chu kyø maùy seõ chieám thôøi gian laø 1us
Xeùt ñoaïn chöông trình sau :
loop
nop
nop
nop
decfsz cnt, f ;giaû söû cnt ñaõ ñöôïc khai baùo vaø ñöôïc ghi giaù trò laø goto loop ;d’100’
leänh keá
Leänh NOP chieám 1 chu kyø maùy. Leänh DECFSZ chieám 1 chu kyø maùy, sau leänh naøy thì cnt = cnt – 1 . neáu keát quaû cnt = 0 thì leänh tieáp theo seõ boû qua vaø ñöôïc xem nhö laø leänh NOP , neáu keát quaû cnt 0 thì leänh keá tieáp ñöôïc thöïc hieän. Leänh keá laø GOTO leänh naøy chieám hai chu kyø maùy.
Nhö vaäy khi cnt = 1 thì caùc leänh trong voøng laäp naøy ñaõ thöïc hieän 100 – 1 = 99 laàn vì cnt =1 do ñoù chöông trình seõ thöïc hieän tieáp 3 leänh NOP vaø khi thöïc hieän leänh DECFSZ xong thì cnt = 0 vaø leänh GOTO bò boû qua vaø xem nhö laø leänh NOP
Keát luaän sau khi voøng laäp thöïc hieän xong thì caùc leänh NOP vaø DECFSZ thöïc hieän 100 laàn, coøn leänh GOTO thöïc hieän 99 laàn coäng theâm 1 leänh NOP
Vaäy coâng thöùc toång quaùt tính soá chu kyø maùy cuûa voøng laäp treân nhö sau:
loop
nop ;(1)*cnt
nop ;(1)*cnt
nop ;(1)*cnt
decfsz cnt, f ;(1)*cnt
goto loop ;(2)*(cnt -1) + 1
leänh keá
Toång soá chu kyø maùy cuûa voøng laäp treân laø:
(1)*cnt + (1)*cnt + (1)*cnt + (1)*cnt + (2)*(cnt -1) +1
Döïa vaøo caùch tính treân thì thôøi gian cuûa chöông trình DELAY ñöôïc tính nhö sau :
DELAY
MOVLW D’100’ ;(1)
MOVWF CNT ;(1)
LOOP
MOVLW D’200’ ;(1)*100
MOVWF CNT1 ;(1)*100
LOOP1
NOP ;(1)*200*100
NOP ;(1)*200*100
DECFSZ CNT1, F ;(1)*200*100
GOTO LOOP1 ; [(2)*199 +1]*100
DECFSZ CNT, F ;(1)*100
GOTO LOOP ;(2)*99 + 1
RETURN ;(2)
Thôøi gian treã ñöôïc tính töø leänh CALL DELAY
Leänh CALL chieám 2 chu kyø maùy (2)
Nhö vaäy thôøi gian cuûa cöông trình DELAY laø :
[(2) + (1) + (1) + (1)*100 + (1)*100 + (1)*200*100 + (1)*200*100 + (1)*200*100 +[(2)*199 +1]*100 + (1)*100 + (2)*99 + 1 +(2)]*1us = 100405us
Ví duï 3 : Thieát keá chöông trình duøng Ngaét
Caùc vaán ñeà caàn löu yù khi söû duïng ngaét
Moät ngaét coù hai bit quan troïng laø bit cho pheùt ngaét vaø bit côø ngaét. Khi coù moät ngaét xaûy ra bit côø ngaét cuûa ngaét ñoù seõ ñöôïc set leân ‘1’ ñeå ngaét naøy coù theå tieáp tuïc xaûy ra thì bit côø ngaét phaûi ñöôïc xoùa baèng phaàn meàm. Ñoàng thôøi khi ngaét xaûy ra thì bit GIE ( bit 7 cuûa thanh ghi INTCON ) seõ töï ñoäng xoùa luùc naøy caùc nguoàn ngaét ñeàu bò ñoùng. Neáu muoán thieát keá ngaét trong ngaét thì phaûi set bit naøy baèng phaàn meàm vôùi leänh BSF (BSF INTCON, 7)
Leänh RETFIE ñöôïc ñaët cuoái chöông trình phuïc vuï ngaét ñeå keát thuùc chöông trình ngaét. Sau khi thöïc hieän leänh naøy bit GIE cuûa thanh ghi INTCON seõ ñöôïc set = ‘1’
Maãu cuûa moät chöông trình duøng ngaét coù theå vieát nhö sau :
ORG 000h
GOTO Main
ORG 004h
.
. ;caùc leänh
.
RETFIE
Main .
. ;caùc leänh
.
END
Hoaëc coù theå vieát :
ORG 000h
GOTO Main
ORG 004h
GOTO ISR
ORG 005h
Main .
.
. ;caùc leänh
nhan .
.
GOTO nhan
ISR .
.
.
RETFIE
. ;caùc chöông trình con
.
.
END
Neáu söû duïng cuøng moät thanh ghi trong chöông trình chính vaø chöông trình phuïc vuï ngaét thì thanh ghi naøy coù theå thay ñoåi khi ngaét xaûy ra
Ví duï : trong chöông trình coù leänh
MOVLW H’05’
MOVWF PORTA
Leänh ñaàu laø naïp giaù trò 05h vaøo thanh ghi W, leänh sau laø naïp noäi dung cuûa thanh ghi W vaøo thanh ghi PORTA. Neáu sau khi thöïc hieän leänh ñaàu xong maø coù ngaét xaûy ra thì ñòa chæ trong PC (boä ñeám chöông trình ) ñöôïc löu vaøo ñænh ngaên xeáp vaø PC ñöôïc naïp vaøo ñòa chæ 004h luùc naøy chöông trình ngaét ñöôïc thöïc hieän, neáu trong chöông trình ngaét coù duøng thanh ghi W ñeå chuyeån döõ lieäu töø nôi naøy ñeán nôi khaùc, nhö vaäy thanh ghi W bò thay ñoåi trong chöông trình ngaét. Khi keát thuùc chöông trình ngaét vaø quay veà chöông trình chính taïi nôi maø xaûy ra ngaét vaø khi thöïc hieän leänh tieáp theo laø MOVWF PORTA luùc naøy noäi dung thay ghi W ñaõ khaùc neân vieäc ghi vaøo thanh ghi PORTA seõ bò sai. Ñeå traùnh vieäc naøy khi thöïc hieän chöông trình ngaét, ôû ñaàu chöông trình neân löu noäi dung cuûa thanh ghi W vaøo moät nôi naøo ñoù ( ví duï MOVWF 0ch leänh naøy naïp noäi dung thanh ghi W vaøo thanh ghi coù ñòa chæ 0ch) vaø ôû cuoái chöông trình traû noäi dung naøy veà laïi thanh ghi W ( MOVF 0ch, 0 leänh naøy naïp noäi dung thanh ghi ôû ñòa chæ 0ch vaøo thanh ghi W). 0ch laø ñòa chæ cuûa thanh ghi muïc ñích chung
Trong moät chöông trình neáu thieát keá coù nhieàu hôn moät nguoàn ngaét. Khi caùc ngaét xaûy ra ñoàng thôøi ñoái vôùi doøng PIC16 thì khoâng coù möùc öu tieân giöõa caùc ngaét. Khi coù ngaét xaûy ra thì PC ñöôïc naïp vaøo ñòa chæ 004h. Nhö vaäy ñeå choïn möùc öu tieân hoaëc muoán thöïc hieän töøng vieäc rieâng ñoái vôùi töøng ngaét thì phaûi duøng phaàn meàm, töùc laø khi coù...
 

Các chủ đề có liên quan khác

Top