Bus I2C và các thiếtbị ngoại vi

Một phần của tài liệu Thiết kế và chế tạo thiết bị đo điện tim ECG (Trang 61)

Chế độ I2C trong module MSSP thực hiện đầy đủ chức năng của một thiết bị chủ hay thiết bị tớ. Nó hỗ trợ các ngắt, các bit start và bit stop và cấu trúc phần cứng để xác định hướng dữ liệu trên Bus truyền.

4.3.2 Các chế độ truyền/nhận dữ liệu:

Một giao tiếp I2C gồm có 2 dây:

 Serial Data (SDA).

 Serial Clock (SCL).

SDA là đường truyền dữ liệu 2 hướng, còn SCL là đường truyền xung đồng hồ và chỉ theo một hướng. Như hình 3.5, khi một thiết bị ngoại vi kết nối vào đường I2C thì chân SDA của nó sẽ nối với dây SDA của Bus, chân SCL sẽ nối với dây SCL.

Mỗi dây SDA hay SCL đều được nối với điện áp dương của nguồn cấp thông qua một điện trở kéo lên (Pullup Resistor). Sự cần thiết của các điện trở kéo này là vì chân giao tiếp I2C của các thiết bị ngoại vi thường là dạng cực máng hở (Opendrain hay Opencollector). Giá trị của các điện trở này khác nhau tùy vào từng thiết bị và chuẩn giao tiếp, thường dao động trong khoảng 1 KΩ đến 10 KΩ.

CHƢƠNG IV: CÁC CHUẨN GIAO TIẾP 51

Hình 4.5 Sơ đồ truyền / nhận dữ liệu Master –Slave.

Về dữ liệu truyền trên bus I2Cchuẩn truyền 8 bit dữ liệu có hướng dẫn trên đường truyền với tốc độ 100Kbit/s - Chế độ chuẩn(Standard Mode). Tốc độ truyền có thể lên tới 400Kbits/s - Chế độ nhanh (Fast Mode) và cao nhất là 3.4 Mbits/s - Chế độ cao tốc ( High-speed Mode ).

Một bus I2C có thể hoạt động ở nhiều chế độ khác nhau:

 Một chủ-một tớ (one master – one slave).

 Một chủ-nhiều tớ (one master – multi slave).

 Nhiều chủ-nhiều tớ (Multi master – multi slave).

4.4BỘ TRUYỀN NHẬN DỮ LIỆU ĐỒNG BỒ (EUSART-Enhanced Universal Synchronous Asynchronous Receiver Transmitter)

4.4.1 Giới thiệu:

Module thu phát đồng bộ và không đồng bộ (EUSART) là một trong hai module vào ra nối tiếp.(Nói chung EUSART cũng được biết đến như giao diện truyền thông nối tiếp hoặc SCL).EUSART có thể cấu hình như hệ thống khơng đồng bộ song cơng mà nó có thể giao tiếp với thiết bị ngoại vi, như là các thiết bị đầu cuối và các máy tính cá nhân. Nó cũng có thể được cấu hình như là chế độ bán

Transmitter Receiver Transmitter Receiver Master Master Slave Slave SDA SCL SDA SCL

CHƢƠNG IV: CÁC CHUẨN GIAO TIẾP 52 song cơng, hệ thống đồng bộ có thể giao tiếp với thiết bị ngoại vi, như là bộ A/D hoặc D/A, và các EEPROMs.

Module thu phát đồng bộ và không đồng bộ mở rộng USART được tích hợp , bao gồm sự dị tốc độ baud tự động và hiệu chỉnh, tự động nhận biết quá trình nhận dữ liệu và 12 bit kí tự ngắt truyền. Phù hợp với việc sử dụng hệ thống Bus kết nối cục bộ.

4.4.2 Các chế độ truyền:

Module thu phát đồng bộ và khơng đồng bộ EUSART có thể được cấu hình theo những phương thức sau:

 Chế độ song công với: o Tự động nhận kí tự.

o Tự động hiệu chỉnh Baud. o Truyền gián đoạn 12 bit.

 Chế độ đồng song cơng tồn phầnvới xung nhịp chọn.

 Chế độ bán song công với xung nhịp chọn.Các chân của EUSART được đặt ở PortC để cấu hình cho RC6/TX/CK và RC7/RX/DT như là một EUSART.

Bit SPEN (RCSTA<7>) được đặt bằng (= 1). Bit TRISC<7> được đặt (= 1).

Bit TRISC<6> được đặt (= 1).

Thanh ghi điều khiển và trạng thái truyền (TXSTA). Thanh ghi điều khiển và trạng thái nhận (RCSTA). Điều khiển tốc độ truyền (BAUDCON).

4.4.3Chế độ EUSART không đồng bộ:

Chế độ khơng đồng bộ được chọn bằng cách xóa bit SYNC (TXSTA<4>). Trong chế độ này, EUSART sử dụng khung dữ liệu chuẩn Non-Return-to-Zero (NRZ) (một bit Start, tám hoặc chín bit dữ liệu và một bit Stop). Thông thường

CHƢƠNG IV: CÁC CHUẨN GIAO TIẾP 53 khung dữ liệu được dùng phổ biến nhất là 8 bits. Trên một chip, một bộ phát tốc độ 8-bit/16-bit Baud được sử dụng để tạo tốc độ chuẩn từ bộ dao động.

Trong EUSART thì bit truyền hoặc nhận đầu tiên là bit có trọng số thấp nhất. Sự truyền và nhận trong EUSART là chức năng độc lập nhưng sử dụng khung dữ liệu và tốc độ baud là giống nhau. Bộ phát tốc độ baud sinh ra tốc độ xung nhịp gấp x16 hoặc x64 tốc độ thay đổi bit phụ thuộc vào bit BRGHvà bit BRG16 (TXSTA<2> and BAUDCON<3>). Bit chẵn lẻ không được cung cấp bởi phần cứng nhưng có thể cài đặt trong phần mềm và được lưu như bit dữ liệu thứ 9.

Khi chế độ không đồng bộ hoạt động, module EUSART bao gồm những thành phần quan trọng sau:  Bộ phát tốc độ baud.  Mạch tạo mẫu.  Truyền không đồng bộ.  Nhận không đồng bộ.  Tự động kích hoạt kí tự ngắt đồng bộ.  Truyền 12 bit kí tự ngắt.  Tự động dò tốc độ baud.

Chế độ truyền không đồng bộ EUSART:

Sơ đồ khối truyền EUSART trong hình 3.7. Trung tâm của khối truyền là thanh ghi dịch truyền (nối tiếp) (TSR). Thanh ghi dịch chứa dữ liệu từ thanh ghi đệm truyền đọc /ghi TXREG. Thanh ghi TXREG nạp dữ liệu từ phần mềm. Thanh ghi dịch TSR sẽ không nạp dữ liệu cho đến khi bit Stop của lần vừa nạp được truyền xong. Ngay khi bit Stop được truyền xong, thanh ghi dịch TSR được nạp giá trị mới từ thanh ghi đệm TXREG (nếu được cho phép). Khi thanh ghi đêm truyền TXREG truyền dữ liệu cho thanh ghi dịch TSR (xảy ra trong TCY), thì thanh khi TXREG sẽ trống và cờ ngắt truyền TXIF (PIR1<4>) được set. Đây là ngắt có thể cho phép hoặc không cho phép bằng cách set hoặc xóa bit cho phép ngắt TXIE (PIE1<4>).bit TXIF sẽ được set dù cho trạng thái của bit TXIE như thế nào; nó

CHƢƠNG IV: CÁC CHUẨN GIAO TIẾP 54 khơng thể xóa trong phần mềm. Bit TXIF cũng khơng thể xóa ngay lập tức khi dữ liệu đang nạp trên thanh ghi TXREG, nhưng nó trở nên hợp lệ trong chu kì lệnh thứ hai sau lệnh vừa nạp. Kiểm tra bit TXIF ngay sau khi nạp lại giá trị cho thanh ghi TXREG. Trong khi TXIF xác định trạng thái thanh ghi TXREG, một bit khác là bit TRMT (TXSTA<1>), chỉ ra trạng thái của thanh ghi dịch TSR. Bit TRMT là bit chỉ được đọc và nó được set khi thanh ghi TSR trống rỗng. Khơng có ngắt logic từ bit này vì vậy người sử dụng phải kiểm tra bit này để xác định trạng thái của thanh ghi TSR nếu nó trống. Để đặt chế độ truyền khơng đồng bộ có các bước sau:

1. Khởi tạo cho thanh khi SPBRGH:SPBRG để có tốc độ baud tương ứng. Đặt hoặc xóa bit BRGH và bit BRG16, cần thiết, để đạt được tốc độ baud mong muốn.

2. Cho phép cổng không đồng bộ nối tiếp bằng cách xóa bit SYNC, và đặt bit SPEN.

3. Nếu muốn có ngắt,set bit cho phép TXIE.

4. Nếu truyền khung dữ liệu 9 bit, set bit truyền TX9. Có thể được sử dụng như bit địa chỉ hoặc dữ liệu.

5. Cho phép truyền bằng cách set bit TXEN, và bit TXIF cũng sẽ được set. 6. Nếu chọn truyền 9 bit trong khung dữ liệu,thì bit thứ 9 sẽ được nạp vào bit TX9D.

7. Nạp dữ liệu từ thanh ghi TXREG (bắt đầu quá trình truyền).

8. Nếu sử dụng ngắt, thì phải đảm bảo rằng hai bit GIE và PEIE trong thanh ghi INTCON (INTCON<7:6>) đã được set.

CHƢƠNG IV: CÁC CHUẨN GIAO TIẾP 55

Hình 4.6Sơ đồ khối truyền EUSART.

Chế độ nhận không đồng bộ EUSART:

Dữ liệu được nhận trên chân RX và được đưa tới khối khôi phục dữ liệu. Khối khơi phục dữ liệu thực tế có tốc độ dịch cao gấp 16 lần tốc độ baud, vì vậy khối nhận hoạt động ở tốc độ bit hoặc tần số dao động. Chế độ này thường được sử dụng trong hệ thống RS 232.

Các bước thiết lập chế độ nhận không đồng bộ:

1. Khởi tạo cho thanh ghi SPBRGH:SPBRG để có tốc độ baud thích hợp. set hoặc xóa bit BRGH và BRG16 để có được tốc độ baud mong muốn.

2. Cho phép cổng không đồng bộ nối tiếp bằng cách xóa bit SYNC, và set bit SPEN.

3. Nếu muốn có ngắt , thì set bit cho phép ngắt RCIE. 4. Nếu muốn nhân khung dữ liệu 9 bit thì set bit RX9. 5. Cho phép quá trình nhận bằng cách set bit CREN.

6. Cờ báo nhân RCIFsẽ được set khi q trình nhận hồn thành và sẽ xuất hiện một ngắt nếu như bit cho phép ngắt nhận RCIE đã được set. 7. Đọc thanh ghi RCSTA để lấy bit thứ 9 (nếu nhận là 9 bit) và xác định lỗi đã xảy ra trong lúc nhân.

CHƢƠNG IV: CÁC CHUẨN GIAO TIẾP 56 8. Lấy 8 bit dữ liệu còn lại bằng cách đọc thanh ghi RCREG register. 9. Nếu có lỗi trong q trình nhận thì xóa lỗi bằng cách xóa bit cho phép nhận CREN.

10. Nếu sử dụng ngắt thì phải đảm bảo rằng các bit GIEvà PEIE trong thanh ghiINTCON (INTCON<7:6>) phải được set.

CHƢƠNG V: THIẾT KẾ VÀ THI CÔNG 57

CHƢƠNG V:THIẾT KẾ VÀ THI CÔNG

5.1 Xác định các thông số hệ thống:

Tín hiệu điện tim là một tín hiệu có điện áp rất nhỏ với tần số thấptừ 0.05Hz – 150Hz . Do đó máy điện tim phải đáp ứng được các yêu cầu sau:

 Có trở kháng đầu vào lớn đảm bảo việc phối hợp giữa đầu vào mạch khếch đại với nguồn tín hiệu để lấy điện áp ra đủ lớn để mạch phân tích xử lý.

 Có độ ổn định cao và lọc nhiễu tốt.

 Đảm bảo an toàn cho bệnh nhân.

5.2 Sơ đồ khối và chức năng từng khối:

Với những yêu cầu được đặt ra , hệ thống phải đáp ứng được những yêu cầu trên. Do đó trong đề tài sử dụng gồm các khối sau:

5.2.1 Sơ đồ khối:

Hình 5.1 Sơ đồ khối.

5.2.2 Chức năng từng khối:

 Khới thu tín hiệu nhi ̣p tim: cảm biến nhịp đập của tim và khuếch đại tín hiệu.

Khới ng̀n Khối xử lý trung tâm Khối khuếch đại-

lọc nhiễu

Khối hiển thi ̣

Khới thu tín hiệu nhịp tim

CHƢƠNG V: THIẾT KẾ VÀ THI CÔNG 58

 Khối khuếch đại-lọc nhiễu: Lọc tín hiệu nhiễu và khuếch đại tín hiệu để đưa vào vi điều khiển xử lý.

 Khối xử lý trung tâm : dùng để xử lý các tín hiệu vào và xuất tín

hiệu ra, điều khiển mọi hoạt động của hệ thống và chuyển đổi ADC.

 Khối hiển thị: hiển thị kết quả.

 Khối nguồn : cung cấp nguồn cho các khối khác.

5.3. Thiết kế sơ đồ nguyên lí:

5.3.1 Khối thu tín hiệu điện tim:

Do tín hiệu điện tim rất nhỏ (hàng mV) nên nó rất dễ bị ảnh hưởng bởi các yếu tố nhiễu từ bên ngoài như điện từ trường, nhiệt độ do đó việc sử dụng dây nào để nối điện cực đo với mạch đo là một yếu tố quan trọng. Trong đề tài này cáp đồng mềm một lõi vỏ PVC có bọc kim được sử dụng để loại trừ các ảnh hưởng của điện từ trường ngồi tới tín hiệu điện tim khi nó truyền trên dây dẫn.

Điện cực điện tim được lựa chọn là điện cực dán chủng loại MEDI-TRACE 210 của hãng KENDALL. Đây là loại điện cực sử dụng một lần với cấu tạo Ag/AgCl (đầu kim loại làm từ bạc và lớp tiếp giáp với da được làm từ một loại keo hỗn hợp dẫn điện với thành phần chứa AgCl).

5.3.2 Khối khuếch đại-lọc nhiễu:

CHƢƠNG V: THIẾT KẾ VÀ THI CƠNG 59

Hình 5.2 Sơ đồ khối khuếch đại-lọc nhiễu.

5.4 Thiết kế chi tiết các khối trong bộ khuếch đại-lọc nhiễu:

Mạch khuếch đại 1:

Hình 5.3Mạch khếch đại 1.

Mạch khuếch đại 1 dùng IC AD620, ngõ vào cộng (chân 3) và ngõ vào trừ (chân 2) được kết nối với tay trái và tay phải của bệnh nhân, còn chân phải của bệnh nhân sẽ được nối đất. Hệ số khuếch đại của IC phụ thuộc vào điện trở (R1) nối giữa chân 1 và chân 8 theo công thức (5.1):

G = 1+ 49.4KΩR1 = 1+ 49.4K2.2K = 23.4 lần. (5.1)

Tín Hiệu

Vào khuếch đại 1 Mạch

Mạch lọc thông thấp Mạch triệt tần 50Hz Mạch lọc thông cao Mạch khuếch đại 2

CHƢƠNG V: THIẾT KẾ VÀ THI CƠNG 60

Chúng ta có thể thay đổi độ khuếch đại bằng cách thay đổi giá trị của R1. Chân số 6 là chân tín hiệu ra, điện áp chênh lệch giữa 2 chân vào sẽ được khuếch đại lên 23,4 lần.

Mạch khuếch đại – lọc nhiễu sau khi thi cơng có hình dạng nhƣ sau :

Hình 5.4 Hình dạng mạch thi cơng.

Với sơ đồ mạch như hình 5.3,khi cấp sóng sin biên độ 3.67mV vào chân số 3 của IC khuếch đại , chân 2 nối GND ta được dạng tín hiệu ngõ ra ở chân số 6 như sau :

CHƢƠNG V: THIẾT KẾ VÀ THI CƠNG 61

Hình 5.5 Kết quả đo mạch khếch đại 1.

Theo lý thuyết thì độ khuếch đại: G= 1+49.4K2.2K = 23.4 lần.

Thực tế đo được: G= VoutVin= 84.1mV3.67mV= 22.9 lần.

Mạch lọc thơng thấp:là mạch cho tín hiệu có tần số thấp hơn tần số

cắt đi qua, cịn tín hiệu có tần số lớn hơn hoặc bằng tần số cắt sẽ bị suy giảm biên độ.Đối với tín hiệu điện tim nằm trong khoảng 0.05Hz- 150Hz thì ta thiết kế mạch lọc thông thấp có tần số cắt khoảng 150Hz. Trong mạch này nhóm em sử dụng mạch lọc thụ động như hình sau :

CHƢƠNG V: THIẾT KẾ VÀ THI CƠNG 62

Hình 5.6Mạch lọc thơng thấp.

Tần số cắt của mạch là : fc = 2πRC1 = 2π101310-6 =159Hz.

Saukhi thi công mạch thực tế,ta đo xác định tần số cắt của mạch lọc thực tế ta đã thi cơng bằng cách tìm tần số mà tại đó biên độ giảm đi 2 lần so với biên độ lớn nhất của tín hiệu vào. Như khi ta cho tín hiệu vào là sóng sin có biên độ 82.5mV thì tần số cắt là tần số mà tại đó biên độ bằng82.5mV

2 ) = 58.3 mV. Đo thực tế trên

CHƢƠNG V: THIẾT KẾ VÀ THI CƠNG 63

Hình 5.7 Phóng to dạng tín hiệu ra của lọc thơng thấp.

Hình 5.8 :Ngõ ra mạch lọc thơng thấp.

Theo tính tốn lý thuyết thì tần số cắt fc =159Hz.

Theo thực tết đo được fc = 151Hz tại tần số có biên độ bằng:

Tần số cắt mạch thi cơng bằng 151Hz

Tín hiệu ra

Tín hiệu vào

CHƢƠNG V: THIẾT KẾ VÀ THI CÔNG 64

biên độ lớn nhất 2 )=

82.5

2)=58.03mV.

Lọc thơng cao:là mạch cho tín hiệu có tần số cao hơn tần số cắt

đi qua, cịn tín hiệu có tần số nhỏ hơn hoặc bằng tần số cắt sẽ bị suy giảm biên độ .Đối với tín hiệu điện tim nằm trong khoảng 0.05Hz-150Hz thì ta thiết kế mạch lọc thơng cao có tần số cắt khoảng 0.05Hz. Trong mạch này nhóm em sử dụng mạch lọc như hình sau :

Hình 5.9:Mạch lọc thơng cao.

Với giá trị R2 và C5 như trên ta tính được tần số cắt là :

fc = 2πRC1 = 2π3.3x1031x1000x10-6= 48mHz.

 Khi cho tín hiệu sin viên độ 4.3V vào mạch lọc thơng cao thì kết quả đo trên mach lọc thông cao đã thi cơng thì thu được dạng tín hiệu ra như hình sau:

CHƢƠNG V: THIẾT KẾ VÀ THI CƠNG 65 Màu vàng là tín hiệu trước bộ lọc thơng cao, màu tím là tín hiệu sau bộ lọc cao:

Hình 5.10a Ngõ ra mạch lọc thông cao.

Tương tự như mạch thông thấp, để xác định tần số cắt của mạch lọc thông cao đã thi cơng, ta tìm tần số mà tại đó biên độ giảm đi 2 so với biên độ lớn nhất .

Theo đó ta đo được tần số cắt fc = 46mHz tại tần số mà biên độ bằng:

biên độ lớn nhất 2 )= 4.3 2)= 3.08V. Tín hiệu ra Tín hiệu vào Xác định Vpp của tín hiệu ra là 3.08V

CHƢƠNG V: THIẾT KẾ VÀ THI CÔNG 66

Hình 5.10b Ngõ ra mạch lọc thơng cao.

Hình 5.10 Ngõ ra mạch lọc thơng cao.

Mạch triệt tần:hay mạch chắn dải là mạch gồm mạch lọc thông cao mắc

song song với mạch lọc thông thấp với tần số cắt của mạch lọc thông cao lớn hơn tần số của mạch lọc thông thấp.Đây là mạch lọc khá quan trọng trong việc triệt nhiễu cho tín hiệu ECG, bởi vì nhiễu điện lưới 50Hz vớiđiện

Tần số cắt mạch lọc thông cao = 46 mHz

CHƢƠNG V: THIẾT KẾ VÀ THI CÔNG 67

ápnhiễu lớn hơn rất nhiều lần so với điện áp điện tim và tồn tạikhông những trong các thí bị đo lường điện mà cả mơi trường xungquanh ta. Trong phần này, nhóm sử dụng mạch lọc như hình sau :

Hình 5.11Mạch triệt tần 50Hz. Chọn:C6 = C7 = C = 100nF; C8//C9 = 2C = 200nF => C8=C9=100nF. fc = = 2πRC1 => R = 1 2π50Hz.100.10-9F = 32 KΩ. Chọn R = 33KΩ => R6+R7 = R 2= 16.5 KΩ. Chọn R6 = 4.7 KΩ, R7 = 10 KΩ.

CHƢƠNG V: THIẾT KẾ VÀ THI CÔNG 68 Ở tần số 50Hz , biên độ gần bằng 0:

Hình 5.12 Ngõ ra lọc triệt tần ở 50Hz.

Tăng tần sốlên 60Hz, 70Hz, 80Hz biên độ tăng dần :

Một phần của tài liệu Thiết kế và chế tạo thiết bị đo điện tim ECG (Trang 61)

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

(106 trang)