Giao diện PICKit2

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Giao tiếp với đường truyền điện thoại bằng vi điều khiển (Trang 48)

Giao diện PICKit2 bao gồm các khối sau:

- Thanh bảng chọn cho phép lựa chọn các chức năng khác nhau.

- Cấu hình Chíp là cửa sổ trình bày Chíp, ID người dùng, cấu hình và kiểm tra. - Cửa sổ trạng thái trình bày dạng văn bản tình trạng của những thao tác đang hoạt động. Nếu một thao tác thành công thì hiển thị màu xanh lục. Nếu một thao tác không thành công thì hiển thị màu đỏ.

- Thanh tiến trình là thanh trình bày tiến độ của một thao tác.

- Nguồn Chíp có thể được đặt hoặc đặt tự động do PICKit2 băng thao tác kích vào ON hoặc OFF.

- Nguồn bộ nhớ thể hiện dữ liệu nguồn của Chíp hiện tại được tải vào. Nếu được đọc từ một file HEX, nó sẽ trình bày tên file HEX. Nếu được đọc từ Chíp, nó sẽ thể hiện tên Chíp. - Bộ nhớ chương trình. - Bộ nhớ dữ liệu. Cấu hình Chíp Nguồn Chíp Thanh bảng chọn Cửa số trạng thái Thanh tiến triển

Nguồn bộ nhớ

Bộ nhớ dữ liệu Bộ nhớ chương trình

Chương 3 Thiết kế chi tiết mạch 3.1 Sơ đồ nguyên lý mạch

3.1.1 Sơ đồ nguyên lý của khối Vi điều khiển

Vi điều khiển được sử dụng là PIC16F877A. IC này có ưu điểm là có bộ nhớ Flash có thể ghi xoá nhiều lần. PIC16F877A bao gồm 40 chân, có 5 cổng là cổng A có 6 chân, cổng B có 8 chân, cổng C có 8 chân, cổng D có 8 chân và cổng E có 3 chân. Như vậy có thể sử dụng 33 chân vào ra để điều khiển. Mạch tạo dao động sử dụng thạch anh loại 11.0592MHz. Với 33 chân vào ra, IC có thể ghép nối song song hoặc nối tiếp. Khi ghép nối song song sử dụng cổng D và cổng E, trong trường hợp ghép nối nối tiếp có thể dùng các chuẩn RS232, dùng chuẩn SPI và chuẩn I2C và chuẩn ICSP. Từ việc phân tích ở trên tôi lựa chọn cổng B để giao tiếp với IC MT8880 để mã hóa và giải mã tín hiệu DTMF, chân RB1 đến RB4 được nối với 4 đường dữ liệu của MT8880 là D0 đến D3, các chân còn lại được nối với các đường điều khiển như chân RB5 được nối với chân R/W, chân RB6 được nối với chân RS0, chân RB7 được nối với  còn thiếu một chân tôi dùng RD7 để nối với chân chọn chíp CS. Chân RC6 và RC7 được nối với chần TX và RX của cổng COM của máy tính để ghép nối với máy tính thông qua RS232, sử dụng 6 chân từ RD0 đến RD6 của cổng D để giao tiếp với khối hiển thị LCD, sử dụng 3 chân RA2 đến RA4 để giao tiếp với 3 chân điều khiển của IC ISD1110, dùng chân RB6 và RB7 cho ghép nối ICSP. Tôi sử dụng chân RA1 dành cho khối điều khiển, chân RC2 được kết nối khối cảm nhận tín hiệu chuông và chân RC3 được nối với khối cảm nhận tín hiệu âm tần. Ngoài ra để phát hiện tín hiệu âm tần còn có thể , chân RA0 được kết nối với khối giải mã FSK. Ngoài ra một số chân chưa dùng để kết nối với giao diện mở rộng I2C .

3.1.2 Sơ đồ mã hóa và giải mã DTMF[10]

Để mã hoá và giải mã tín hiệu DTMF, tôi sử dụng MT8880, IC này có ưu điểm là có thể mã hoá hoặc giải mã DTMF ngoài ra còn thêm chức năng là phát hiện tín hiệu âm tần nhờ chân ngắt IRQ. Khi tần số âm tần vào trong khoảng cho phép là từ 350Hz đến 450Hz thì tín hiệu ra có dạng hình vuông. Nhờ tín hiệu hình vuông này mà ta có thể phát hiện tín hiệu âm tần. Bốn chân dữ liệu là D0, D1, D2 và D3 được nối đến cổng B của Vi điều khiển cụ thể D0 được kết nối với RB1, D1 được kết nối với RB2, D2 được kết nối với RB3 và D3 được. Ngoài ra để điều khiển nó làm việc là mã hoá hay giải mã dùng hai chân R/W và chân RS0 kết hợp với chân CS và chân CLK. Cụ thể chân R/W được kết nối với chân RB5, chân RS0 được kết nối với chân RB6, chân CS được kết nối với RD7 và chân CLK được kết nối với chân RB7 của MCU

CLK CLK

Hình 3.2: Chu kỳ đọc của MT8880

CLK K

Ký hiệu Thuộc tính Min Max Đơn vị tAH,tRWH Thời gian giữ địa chỉ và ghi 26 ns tAS,tRWS Thời gian đặt địa chỉ và ghi 23 ns

tDDR Thời gian trễ dữ liệu 100 ns

tDHR Thời gian giữ số liệu (Đọc) 22 ns

tDSW Thời gian đặt dữ liệu 45 ns

tDHW Thời gian giữ số liệu (Ghi) 10 ns

- Dao động của IC MT8880 dùng dao động thạch anh 3.579545MHz. Ngoài ra còn chân ngắt IRQ được kết nối với chân RB0 của Vi điều khiển. Đầu vào của tín hiệu thoại sử đụng đầu vào đơn

3.1.3 Khối giải mã FSK[7]

Tín hiệu CID được mã hóa theo mã FSK. Để giải mã tín hiệu này hiện nay trên thị trường đang có hai loại là IC HT9032 và XR2211. Trong luận văn này tôi nghiên cứu tìm hiểu giải mã tín hiệu CID dùng ICXR2211. Tín hiệu FSK được mã hóa dùng hai tần số khác nhau để thể hiện bít 0 và bít 1 cụ thể bít 1 được mã hóa tương ứng với tần số 1200Hz và bít 0 được mã hóa tương ứng với tần số 2200Hz. Tốc độ giải mã của IC XR2211 là 1200 bps

Hình 3.4: Sơ đồ nguyên lý của khối mã hoá và giải mã DTMF

Các bước thiết kế bộ giải mã FSK với bít 1 được mã hóa tương ứng 1200Hz và bít 0 được mã hóa tương ứng 2200Hz.

- Bước 1: Tìm f0 f0= f f1. 2  1200.22001624Hz - Bước 2: Tính R0 Chọn R0=10K , suy ra RT= 0 0 10 10 15 2 2 R R K       - Bước 3: Tính C0 C0= 0 1 1 39 . 15000.1624 T nF R f    - Bước 4: Tính R1 R1= 0 0 1 2 . .2 10000.1624.2 32480 2200 1200 R f f f      - Bước 5: Tính C1 C1= 9 0 2 2 1 1250. 1250.39.10 6 . 32480.(0,5) C nF R     - Bước 6 chọn RF=5.R1=5.32480=162.4K - Bước 7: chọn R =5.R =5.162400=812K Hình 3.5: Mạch giải mã FSK

- Bước 8: chọn RSUM= 1 1 ( ). 240 F B F B R R R K R R R      - Bước 9: chọn CF= 0.25 1 .1200 SUM nF R

Cân đối các số liệu tôi chọn các tham số như hình 3.7

3.1.4: Khối thu phát âm thanh

Khối thu phát âm thanh có nhiều lựa chọn để thiết kế, có thể dùng các bộ nhớ EPROM hoặc dùng IC chuyên dụng họ ISD. Nếu dùng bộ nhớ ngoài thì ta phải sử dụng bộ chuyển đổi ADC và DAC vì tín hiệu âm thanh là tín hiệu tương tự và bộ nhớ ngoài lưu trữ dưới dạng số. Nếu dùng IC chuyên dụng thì mọi thứ trở nên đơn giản hơn nhiều vì IC này lưu trữ tín hiệu dạng “ không bay hơi”, tín hiệu được lấy mẫu nằm bên trong IC ngoài ra trong IC này còn tích hợp cả bộ khuếch đại tín hiệu và chất lượng tín hiệu tốt. Trong họ IC chuyên dụng thu phát âm thanh có hai loại chuẩn giao diện là giao diện ghép nối song song và giao diện ghép nối nối tiếp qua chuẩn SPI. Tuỳ theo từng loại mà thời gian lấy mẫu thì thời gian thu phát là khác nhau. Trong luận văn này tôi lựa chọn khối thu phát là IC chuyên dụng ISD1110. Đo đặc thù của một bản tin không qua dài, do vậy tôi lựa chọn loại ISD có thời gian ghi ngắn nhất được 10 giây, giao tiếp song song và chỉ lưu được 1 bản tin. Muốn lưu trữ bản tin khác thì lại phải thu lại. Trên mạch có giao diện với LCD nên có thể dễ dàng thay đổi bản tin. Ngoài ra IC còn có ưu điểm là giá thành rẻ, dễ kiếm trên thị trường và giao diện thiết kế đơn giản. Nguyên lý hoạt động dựa vào các mức điện áp điều khiển bao gồm

PLAYL với mức tích cực theo mức, PLAYE với mức tích cực theo sườn, RECLED và REC. Bốn chân điều khiển được kết nối đến MCU. Trong luận văn này tôi sử dụng chân điều khiển theo mức PLAYL và chân điều khiển PLAYL được nối với chân RA2, REC được nối với chân RA3 và chân RECLED được kết nối đến RA4 của MCU. Tín hiệu âm thanh được ghi vào qua đường MIC vào chân 17, 18 và được phát ra qua chân 14 và 15.

Khi muốn ghi dữ liệu thì phải điều khiển cho hai chân điều khiển REC và RECLED đều ở mức thấp, sau đó ghi âm thanh từ mic theo giản đồ hình 3.9[10].

Hình 3.8: Giản đồ thời gian ghi của ISD1110

Khi muốn phát dữ liệu thì phải điều khiển chân REC về mức cao trong suốt quá trình phát và RECLED về mức cao, khi RECLED về mức thấp thì coi như dừng quá trình truyền. Khi đó phát dữ liệu ra loa theo giản đồ hình 3.10[10].

3.1.5 Khối nguồn cung cấp

Trong bất cứ một mạch điện tử nào thì khối nguồn luôn được quan tâm hơn bởi vì nó chính là nguồn cung cấp năng lượng cho mạch. Muốn mạch chạy ổn định và chính xác thì nguồn cung cấp năng lượng đủ lớn đáp ứng được yên cầu của mạch. Trong mạch chỉ sử dụng hai điện áp là 5V cung cấp cho các vi mạch và nguồn 2,5V dùng để cung cấp cho tầng khuếch đại tín hiệu DTMF và tín hiệu thoại phát ra từ ISD

3.1.6 Khối giao tiếp đường điện thoại

Đường điện thoại bao gồm hai dây TIP và RING. Thay cho việc phải nhấc ống nghe để yêu cầu hay ngắt kết nối tôi dùng rơle loại 5V. Để tránh cho việc phải tiếp xúc trực tiếp mạch với các đường dây bên ngoài, tôi sử dụng biến áp âm tần. Việc điều khiển kết nối hay ngắt thực chất là điều khiển đóng hay ngắt tranzitor và được nối trực tiếp đến Vi điều khiển chân RC2.

Hình 3.10: Sơ đồ nguyên lý khối nguồn cung cấp

3.1.7 Khối cảm nhận tín hệu chuông đến

Để phát hiện có tín hiệu chông gọi đến tôi sử dụng mạch cầu để chuyển tín hiệu xoay chiều về tín hiệu 1 chiều. Và để cách lý giữa Vi điều khiển với đường dây điện thoại tôi sử dụng IC PC817. Khi có tín hiệu chuông đến thì tín hiệu RING DETECT ở mức thấp và khi không có tín hiệu chuông đến thì RING DETECT ở mức cao và khi đó Vi điều khiển phát hiện được khi nào thì có tín hiệu chuông gửi đến

Hình 3.11: Sơ đồ nguyên lý kết nối với đường dây điện thoại

3.1.8 Khối khuếch đại

Các tín hiệu âm thanh và mã DTMF trước khi truyền phải được khuếch đại. Để khếch đại cả hai tín hiệu này tôi sử dụng bộ khuếch đại thuật toán LM324 . Thực chất đây là bộ khuếch đại đảo dùng để chuẩn hóa tín hiệu với hệ số khuếch đại KU=4,7.

3.1.9 Khối giao tiếp tín hiệu cảnh báo

Khối giao tiếp với các tín hiệu cảnh báo được lấy từ các thiết bị cảnh báo như điốt thu phát, cảm biến… Tùy theo từng loại cảnh báo mà các thiết bị cảnh báo khác nhau. Trong luận văn này tôi chỉ sử dụng một đường để giao tiếp với tín hiệu cảnh báo. Ngoài ra còn có 3 phím bấm để điều khiển việc ghi, xóa, phát âm thanh hoặc dùng để thay đổi số điện thoại cần gọi tới để cảnh báo. Khi lấy tín hiệu cảnh báo từ ngoài vào, tín hiệu này được qua một bộ cách ly

3.1.10 Khối hiển thị LCD

Để dễ dàng thay đổi nội dung bản tin và biết được đã cảnh báo đến số thuê bao nào cũng như hiển thị được số thuê bao gọi đến, tôi sử dụng LCD loại 16x2. Loại này có ưu điểm là có sãn trên thị trường và giá thành hợp lý cũng như hiển thị đủ được nội dung cần giao tiếp. Để giao tiếp được với LCD tôi sử dụng cổng D của MCU. Cụ thể RD0 được kết nối với chân RS, RD1 được kết nối với chân EN, RD3 được kết nối với chân D4, RD4 được kết nối với chân D5, RD5 được kết nối với chân D6 và RD6 được kết nối với chân D7. Ngoài ra dùng RD2 nối chân điều khiển nối đất chân K.

Hình 3.13: Sơ đồ nguyên lý khối khuếch đại

3.1.11: Khối giao tiếp máy tính

Ngoài việc hiển thị trên LCD, có thể hiển thị và quản lý trên máy tính thông qua cổng RS232. Sử dụng hai chân TX để truyền dữ liệu và RX để nhận dữ liệu. Để giao tiếp được với máy tính tôi dùng IC MAX232. IC này có nhiệm vụ chuyển mức điện áp 0V và 5V thành tương ứng -12V và +12V.

Hình 3.15 Sơ đồ nguyên lý ghép nối với LCD

3.2 Nguyên lý hoạt động của mạch

Mạch được thiết kế nhằm mục đích là giao tiếp được với đường truyền dây điện thoại bằng Vi điều khiển. Có hai loại mã được sử dụng để báo hiệu trên đường điện thoại là mã FSK và mã DTMF. Mã FSK được sử dụng để gửi thông tin người gọi đến số máy gọi. Muốn sử dụng dịch vụ này thì máy điện thoại phải đăng kí với tổng đài. Trong luận văn này tôi mới chỉ nghiên cứu cơ chế làm việc của mã FSK cũng như phương pháp để giải mã FSK. Mã DTMF dùng để mã hóa các số điện thoại trên bàn phím điện thoại. Như vậy muốn giao tiếp được với đường dây điện thoại thì mạch phải mã hóa và giải mã được mã DTMF để có thể gọi tới số cần báo hiệu cũng như nhận các tín hiệu điều khiển từ bàn phím điện thoại cần điều khiển. Để mô tả việc mã hóa và giải mã DTMF, trong luận văn tôi thiết kế mạch giải quyết bài toán tự động gọi và cảnh báo đến các số điện thoại đã được lưu sẵn trong bộ nhớ của Vi điều khiển, các số này có thể thay đổi cũng như nội dung bản tin cũng có thể thay đổi cho phù hợp với yêu cầu cảnh báo. Vì vậy mạch có các chế độ hoạt động như sau

- Kiểm tra các tín hiệu cảnh báo từ cảm biến, nếu có tín hiệu cảnh báo thì lập tức thông báo bản tin cảnh báo đã được lưu sẵn tới các thuê bao đã được người sử dụng lưu trong bộ nhớ.

- Thêm số điện thoại mới vào bộ nhớ. Mạch được thiết kế lưu tối đa 6 số điện thoại. Nếu quá 6 số sẽ báo đầy bộ nhớ.

- Kiểm tra các số điện thoại đã lưu, có thể thay đổi hoặc xóa số điện thoại. - Thay đổi nội dung bản tin nhằm mục đích phù hợp với từng loại cảnh báo.

Hình 3.17: Lưu đồ chọn chế độ hoạt động

Khởi tạo

Tín hiệu cảnh báo

Kết thúc

Quá trình cảnh báo

Thêm số điện thoại

Kiểm tra, thay đổi và xóa

Ghi âm Thêm số điện thoại

Thay đổi Ghi âm + + + + - - - - -

3.2.1 Quá trình cảnh báo

Hình 3.18:Lưu đồ thuật toán quá trình cảnh báo

Kiểm tra tín hiệu

Tín hiệu cảnh báo

Kết nối với tổng đài

Khởi tạo các giá trị đếm n: số lượng số điện thoại i: thứ tự số điện thoại Quay số thứ i Tín hiệu chờ quay số Có tín hiệu Tín hiệu busy Kiểm tra tín hiệu

Tín hiệu hồi âm chuông Số thứ i chưa

nhấc Số lần quay <2

Quá thời gian chờ

Ngắt kết nối với tổng đài

i > n

Tăng số lần quay

Tăng i lên 1 đơn vị

Kết thúc quá trình cảnh báo Phát bản tin cảnh báo + + + + + +

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Giao tiếp với đường truyền điện thoại bằng vi điều khiển (Trang 48)

Tải bản đầy đủ (PDF)

(100 trang)