Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
866,5 KB
Nội dung
CÁC PHƯƠNG PHÁP BIẾN ĐỔI AD CARD AD PCL-818 CỦA ADVANTECH SƠ LƯC VỀ CÁC PHƯƠNG PHÁP BIẾN ĐỔI AD Tín hiệu giới thực thường dạng tương tự (analog), nên mạch điều khiển thu thập liệu từ đối tượng điều khiển (thông qua cảm biến) dạng tương tự Trong đó, điều khiển ngày thường µP, µC xử lý liệu dạng số (digital) Vì vậy, cần phải chuyển đổi tín hiệu dạng tương tự thành tín hiệu dạng số thông qua biến đổi AD Có nhiều phương pháp biến đổi AD khác nhau, giới thiệu số phương pháp điển hình 1.1 Biến đổi AD dùng biến đổi DA Trong phương pháp này, biến đổi DA dùng thành phần mạch đầu vào analog vA + OPAMP - vAX Bộ biến đổi DA So sánh Thanh ghi Đơn vò điều khiển Start Clock EOC (kết thúc chuyển đổi) Kết digital Khoảng thời gian biến đổi chia nguồn xung clock bên Đơn vò điều khiển mạch logic cho phép đáp ứng với tín hiệu Start để bắt đầu biến đổi Khi đó, OPAMP so sánh hai tín hiệu vào angalog để tạo tín hiệu digital biến đổi trạng thái đơn vò điều khiển phụ thuộc vào tín hiệu analog có giá trò lớn Bộ biến đổi hoạt động theo bước : • Tín hiệu Start để bắt đầu biến đổi • Cứ xung clock, đơn vò điều khiển sửa đổi số nhò phân đầu đưa vào lưu trữ ghi • Số nhò phân ghi chuyển đổi thành áp analog v AX qua biến đổi DA • OPAMP so sánh vAX với áp đầu vào vA Nếu vAX < vA đầu mức cao, ngược lại, vAX vượt qua vA lượng vT (áp ngưỡng) đầu mức thấp kết thúc trình biến đổi thời điểm này, v AX xấp xỉ vA số nhò phân chứa ghi giá trò digital xấp xỉ vA (theo độ phân giải xác đònh hệ thống) • Đơn vò điều khiển kích hoạt tín hiệu EOC, báo kết thúc trình biến đổi Dựa theo phương pháp này, có nhiều biến đổi sau : 1.1.1 Bộ biến đổi AD theo hàm dốc Clock đầu vào analog vA + OPAMP - EOC Start So sánh vAX vA Counter Kết digital EOC Clock Start vAX Bộâ biến đổi DA Reset tC Khi chuyển đổi hoàn tất, counter ngừng đếm Đây biến đổi đơn giản theo mô hình biến đổi tổng quát Nó dùng counter làm ghi xung clock gia tăng giá trò nhò phân vAX ≥ vA Bộ biến đổi gọi biến đổi theo hàm dốc dạng sóng vAX có dạng hàm dốc, hay nối dạng bậc thang Đôi gọi biến đổi AD loại counter Hình cho thấy sơ đồ mạch biến đổi AD theo hàm dốc, bao gồm counter, biến đổi DA, OPAMP so sánh, cổng AND cho điều khiển Đầu OPAMP dùng tín hiệu tích cực mức thấp tín hiệu EOC Giả sử vA dương, trình biến đổi xảy theo bước : • Xung Start đưa vào để reset counter Mức cao xung Start ngăn không cho xung clock đến counter • Đầu vào biến đổi DA bit nên áp vAX = 0v • Khi vA > vAX đầu OPAMP (EOC) mức cao • Khi Start xuống mức thấp, cổng AND kích hoạt xung clock đưa vào counter • Counter đếm theo xung clock đầu biến đổi DA, v AX, gia tăng nấc xung clock • Quá trình đếm counter tiếp tục v AX vượt qua vA lượng vT (khoảng từ 10 đến 100µv) Khi đó, EOC xuống thấp ngăn không cho xung clock đến counter Từ kết thúc trình biến đổi • Counter giữ giá trò vừa biến đổi xong có xung Start cho trình biến đổi Từ ta thấy biến đổi loại có tốc độ chậm (độ phân giải cao chậm) có thời gian biến đổi phụ thuộc vào độ lớn điện áp cần biến đổi 1.1.2 Bộ biến đổi AD xấp xỉ liên tiếp Đây biến dùng rộng rãi biến đổi AD Nó có cấu tạo phức tạp biến đổi AD theo hàm dốc tốc độ biến đổi nhanh nhiều Hơn nữa, thời gian biến đổi số cố đònh không phụ thuộc giá trò điện áp đầu vào Sơ đồ mạch giải thuật sau : đầu vào analog vA START + OPAMP - So sánh Xóa tất bit Clock Bắt đầu MSB Start Đơn vò điều khiển EOC Set bit = VAX > VA ? Thanh ghi MSB LSB Đúng Clear bit = Sai Đến bit thấp kế Sai Xong hết bit ? Đúng Bộâ biến đổi DA Quá trình biến đổi kết thúc giá trò biến đổi nằm ghi vAX END Sơ đồ mạch tương tự biến đổi AD theo hàm dốc không dùng counter cung cấp giá trò cho biến đổi DA mà dùng ghi Đơn vò điều khiển sửa đổi +10V bit ghi cho 3K C7 I7 7V đến có giá trò analog xấp xỉ áp vào theo độ phân 1K C6 I6 6V giải cho trước + + 1K - 3V 1K - 1K I4 C3 I3 C2 I2 C1 I1 + 1V - 1K C4 + 2V I5 + 1K - 4V C5 + Có thể làm phép so sánh: flash AD 6-bit cần 63 OPAMP, 8-bit cần 255 OPAMP, 10-bit cần 1023 5V MSB + Bộ biến đổi loại có tốc độ nhanh cần nhiều linh kiện cấu thành 1K - 1.2 Bộ biến đổi Flash AD p analog đầu vào Priority encoder C B A OPAMP Vì lẽ mà biến đổi AD loại bò giới hạn số bit, thường đến 8-bit Ví dụ flash AD 3-bit : Mạch có độ phân giải 1V, cầu chia điện áp thiết lập nên điện áp so sánh (7 mức tương ứng 1V, 2V, …) với điện áp cần biến đổi Đầu OPAMP nối đến priority encoder đầu giá trò digital xấp xỉ điện áp đầu vào Các biến đổi có nhiều bit dễ dàng suy theo mạch 1.3 Bộ biến đổi AD theo hàm dốc dạng lên xuống (tracking ADC) Bộ biến đổi loại cải tiến từ biến đổi AD theo hàm dốc Ta thấy tốc độ biến đổi AD theo hàm dốc chậm counter reset bắt đầu trình biến đổi Giá trò V AX lúc bắt đầu tăng dần vượt qua VA Rõ ràng thời gian hoàn toàn lãng phí điện áp analog thay đổi cách liên tục, giá trò sau nằm lân cận giá trò trước Bộ biến đổi AD theo hàm dốc dạng lên xuống dùng counter đếm lên/xuống thay cho counter đếm lên biến đổi AD theo hàm dốc không reset bắt đầu Thay vậy, giữ nguyên giá trò lần biến đổi trước tăng giảm tùy thuộc vào giá trò điện áp so với giá trò điện áp cũ 1.4 Bộ biến đổi AD dùng chuyển đổi áp sang tần số Bộ biến đổi loại đơn giản biến đổi AD dùng biến đổi DA Thay dùng dao động tuyến tính điều khiển điện áp để tạo tần số tương ứng với áp vào Tần số dẫn đến counter đếm thời khoảng cố đònh kết thúc khoảng thời gian cố đònh này, giá trò đếm tỷ lệ với điện áp vào Phương pháp đơn giản khó đạt độ xác cao khó thiết kế biến đổi áp sang tần số có độ xác 0,1% Một ứng dụng loại dùng môi trường công nghiệp có nhiễu cao Điện áp chuyển từ transducer máy tính điều khiển thường nhỏ, truyền trực tiếp bò nhiễu tác động đáng kể giá trò thu không Do đó, người ta dùng biến đổi áp sang tần số transducer truyền xung cho máy tính điều khiển đếm nên bò ảnh hưởng nhiễu 1.5 Bộ biến đổi AD theo tích phân hai độ dốc Bộ biến đổi loại có thời gian biến đổi chậm (thường từ 10 đến 100ms) có lợi điểm giá tương đối rẻ không dùng thành phần xác biến đổi AD biến đổi áp sang tần số Nguyên tắc dựa vào trình nạp xả tuyến tính tụ với dòng Đầu tiên, tụ nạp khoảng thời gian xác đònh từ dòng rút từ điện áp vào vA Vì vậy, cuối thời điểm nạp, tụ có điện áp tỷ lệ với điện áp vào Cũng vào lúc này, tụ xả tuyến tính với dòng rút từ điện áp tham chiếu xác v ref Khi điện áp tụ giảm trình xả kết thúc Trong suốt khoảng thời gian xả này, tần số tham chiếu dẫn đến counter bắt đầu đếm Do khoảng thời gian xả tỷ lệ với điện áp tụ lúc trước xả nên cuối thời điểm xả, counter chứa giá trò tỷ lệ với điện áp tụ trước xả, tức tỷ lệ với điện áp vào vA Ngoài giá thành rẻ biến đổi loại có ưu điểm chống nhiễu trôi nhiệt Tuy nhiên thời gian biến đổi chậm nên dùng ứng dụng thu thập liệu đòi hỏi thời gian đáp ứng nhanh Nhưng trình biến đổi chậm (có quán tính lớn) lò nhiệt đáng để xem xét đến CARD AD – PCL 818 CỦA HÃNG ADVANTECH Một vài hình ảnh Card AD PCL-818 phần cứng hổ trợ(PCLD-8115) thò trường PCL_818L card gắn vào rảnh ISA máy tính PCL_818L có nhiều chức dùng để đo lường điều khiển , tính ưu việt card , việc tìm hiểu hoạt động cần thiết để tiếp cận thu thập số liệu máy tính Sau chức : • • • • • Chuyển đổi A/D 16 kênh 12 bit tốc độ lấy mẫu 40khz Chuyển đổi D/A kênh 12 bit 16 ngõ vào digital TTL 16 ngõ digital TTL Timer / Counter 16 bit cho người dùng Sơ đồ khối chức PCL – 818L 2.1 Các ghi card : PCL818 có16 ghi , đòa gốc chọn công tắc SW1 gồm tiếp điểm chọn đường đòa A4 _ A9 , thường đặt đòa gốc 300H ĐỊA CHỈ BASE+0 BASE+1 BASE+2 Đọc Byte thấp A/D & số kênh Byte cao A/D Quét kênh MUX BASE+3 BASE+4 BASE+5 BASE+6 BASE+7 Byte thấp Digital Input N/A N/A N/A N/A Viết Kích mềm A/D Điều khiển tầm A/D Quét kênh MUX & tầm điều khiển Byte thấp Digital Output Byta thấp Analog Output Byte cao Analog Output N/A N/A BASE+8 BASE+9 BASE+10 BASE+11 BASE+12 BASE+13 BASE+14 BASE+15 Trạng thái Điều khiển N/A Byte cao Digital Input Counter Counter Counter N/A Xoá yêu cầu interrup Điều khiển Cho phép counter Byte cao Digital Output Counter Counter Counter Điều khiển counter 2.1.1 Các ghi Base+0 Base+1 : A Khi đọc ghi : Chú thích : A/D S Vào Analog ( đơn ) A/D H Vào Analog cao ( vi sai) A/D L Vào Analog thấp (vi sai) A.GND Mass Analog D/A Ra Analog D/O Ra Digital D/I Vào Digital D.GND Mass Digital nguồn CLK Clock cho 8254 GATE Vào điều khiển Gate 8254 OUT Tín hiệu 8254 VREP Nguồn chuẩn VREFIN Nguồn chuẩn Hai ghi BASE+0 BASE+1 chứa liệu A/D 12 bit BASE+0 ( Đọc ) – Chứa Byte thấp A/D số kênh Bit D7 D6 D5 D4 D3 D2 Value AD11 AD10 AD9 AD8 AD7 AD6 D1 AD5 D0 AD4 BASE+1 ( Đọc ) – Byte cao A/D Bit D7 D6 D5 D4 Value AD11 AD10 AD9 AD8 D3 AD7 D2 AD6 D1 AD5 D0 AD4 Trong : AD11 ÷ AD0 liệu Analog sang Digital AD0 LSB AD11 MSB C3 ÷ C0 số ngõ vào Analog tương ứng C3là MSB C0 LSB B Khi viết vào ghi : Kích mềm A/D : ( BASE+0 ) • Có thể kích A/D phần mềm , xung clock board ( pacer ) , xung Các bit BASE+9 chọn nguồn kích Nếu chọn kích mềm ta việc viết vào BASE+0 giá trò cho lần kích Điều khiển tầm A/D : (BASE+1) • Mỗi kênh A/D có tầm điện áp ngõ vào riêng cho nó, điều khiển mã lưu trữ RAM PCL_818L đặt cầu nối JP7 Nếu muốn thay đổi mã cho kênh , chọn kênh kênh Start ghi BASE+2 , viết mã vào bit bit ghi BASE+1 BASE+1 ( Viết ) – Điều khiển tầm A/D Bit D7 D6 D5 D4 D3 Value N/A N/A N/A N/A N/A D2 N/A Mã tầm JP7 : Tầm ngõ vào JP7=5 JP7=10 Mã tầm D1 G1 D0 D0 ±5V ±2.5V ±1.25V ±0.265V ±10V ±5V ±2.5V ±1.25V 0 1 1 2.1.2 Thanh ghi BASE+2 : (quét kênh A/D ) Đọc viết vào BASE+2 để điều khiển , đọc số kênh A/D quét Nửa byte cao kênh Stop , nửa byte thấp kênh Start Việc quét phân kênh (MUX) khởi động tự động đến kênh start viết vào ghi Mỗi Trigger A/D chuyể đến kênh đo Khi kích chuyể đổi liên tục , MUX quét từ kênh Start đến kênh Stop lặp lại từ đầu Ví dụ kênh Start Stop quét 4, 5, 6, 7, 4, 5, 6, Nếu cài đặt chế độ đầu vào vi sai c1c bit CH3 CL3 phải Nếu chon kênh để biến đổi A/D nên cài đặt kênh kết thúc bắt đầu với trò số ( trò số kênh cần thực biến đổi A/D ) BASE+2 (Viết) – Các kênh quét đầu cuối Bit D7 D6 D5 D4 D3 Value CH3 CH2 CH1 CH0 CL3 CH3 ÷ CH0 kênh Stop D2 CL2 D1 CL1 D0 CL0 CL3 ÷ CL0 kênh Start Nửa bit thấp ghi quét phân kênh CL3 đến CL0 có tác dụng pointer lập trình tầm điện áp A/D input Khi đặt kênh Star N, mã tầm viết vào ghi BASE+1 cho kênh N 2.1.3 Các ghi xuất / nhập Digital : (BASE+3/11) PCL_818L có 16 ngõ vào Digital 16 ngõ vào Digital riêng biệt Các kênh I/O dùng chung port có đòa BASE+3 BASE+11 Đọc Digital : BASE+3 ( Đọc PORT ) – Byte thấp Digital Input Bit D7 D6 D5 D4 D3 D2 D1 D0 Value D17 D16 D15 D14 D13 D12 D11 D10 BASE=11 (Đọc port ) – Byte cao Digital input Bit D7 D6 D5 D4 D3 D2 Value D115 D114 D113 D112 D111 D110 D1 D19 D0 D18 Xuất Digital : BASE+3 ( Viết port ) – Byte thấp Digital Output Bit D7 D6 D5 D4 D3 D2 Value DO7 DO6 DO5 DO4 DO3 DO2 D1 DO1 D0 DO0 BASE+11 ( Viết port ) –Byte cao Digital Output Bit D7 D6 D5 D4 D3 D2 Value DO15 DO14 DO13 O12 O11 DO10 D1 DO9 D0 DO8 2.1.4 Thanh ghi xuất Analog D/A : ( BASE+4/5 ) Đây ghi viết để xuất liệu cho ngõ D/A BASE+4 -Byte thấp ngõ D/A Bit D7 D6 D5 D4 D3 Value DA3 DA2 DA1 DA0 x D2 x D1 x D0 x BASE+5 - Byte cao ngõ D/A Bit D7 D6 D5 D4 D3 D2 Value DA11 DA10 DA9 DA8 DA7 DA6 D1 DA5 D0 DA4 DA11 ÷ DA0 liệu Digital sang Analog DA0 LSB , DA11 MSB liệu D/A Tầm điện áp chọn nhờ cầu nối JP4 JP5 Nếu JP4 đặt IN JP5 chọn nguồn chuẩn -5V hay –10V , áp DA đến +5V hay đến +10V Nếu JP4 đặt vò trí EXT điện áp DA kết nhân số Digital với điện áp đặt vào chân 31 đầu nối CN3 chia cho 4095 , điện áp ngòai khoảng + -10V 2.1.5 Thanh ghi trạng thái BASE+8 : • Đọc BASE +8 để nhận thông tin cấu hình hoạt động A/D • Viết vào BASE+8 giá trò xoá bit INT BASE+8 , bit liệu khác không đổi BASE+8 -Trạng thái A/D Bit D7 D6 D5 D4 D3 D2 D1 Value EOC N/A MUX INT CN3 CN2 CN1 D0 CN0 EOC :End Of Conversion • EOC = : Bộ A/D sẵn sàng biến đổi , kết đổi kỳ trước chứa BASE+0 BASE+1 • EOC = : Bộ A/D biến đổi MUX Chọn kênh vi sai 16 kênh đơn phản ảnh vò trí cầu nối JP6 • MUX = :8 kênh vi sai • MUX = : 16 kênh đơn INT tín hiệu ngắt • INT = : Dữ liệu giá trò ( biến đổi kể từ bit INT bò xóa ) • INT = : A/D biến đổi xong , liệu có giá trò Nếu bit INTE = ( BASE+9 ) đổi xong kênh tín hiệu intterrupt gởi đến PC qua ngõ IRQn ( IRQn chọn bit I2ΙI0 BASE+9 ) Dù ghi trạng thái A/D đọc , viết vào giá trò xoá bit INT , bit khác không đổi CN3÷CN0 : Khi EOC = bit chứa số kênh biến đổi Lưu ý : -Nếu kích A/D xung clock board (‘pacer’) xung phần mềm bạn phải kiểm tra bit INTtrước đọc liệu ( bit EOC ) EOC trường hợp : + Biến đổi hoàn tất + Không có biến đổi bắt đầu Do phần mềm bạn phải đợi tín hiệu INT= trước đọc data chuyển đổi Rồi cần phải xóa bit INTbằng cách viết giá trò vào ghi trạng thái BASE+8 2.1.6 Thanh ghi điều khiển BASE+9 : - Đọc viết vào ghi BASE+9 để nhận / cung cấp thông tin chế độ hoạt động PCL_818L BASE+9 - Điều khiển chế độ hoạt động Bit D7 D6 D5 D4 D3 D2 D1 D0 Value INTE 12 11 10 x DMAE ST1 ST0 INTE Cấm / cho phép ngắt INTE = : Cấm ngắt ; INTE = : Cho phép ngắt • Nếu DMAE = : PCL_818L phát tín hiệu ngắt hòan tất 1chuyển đổi A/D Vậy cấu hình INTE = DMAE = dùng để báo cho CPU biết , cách ngắt đổi AD xong • Nếu DMAE = : PCL_818L phát tín hiệu ngắt nhận tín hiệu đếm tràn T/C ( Terminal count ) từ điều khiển DMA (direct memory access) máy tín để chuyể đổi truyền DMA hoàn tất Truyền DMA bò dừng nga71t gây tín hiệu T/C Xm DMAE bên I2 ÷ I0 : Chọn số ngắt cho data interrup truyền data DMA ( không trùng với số ngắt thiết bò khác ) Số ngắt N/A N/A IRQ2 IRQ3 IRQ4 IRQ5 IRQ6 IRQ7 I2 0 0 1 1 I1 0 1 0 1 I0 1 1 DMAE Cấm/ cho phép PCL818L truyền DMA • DMAE = :Cấm truyến DMA • DMAE = : Cho phép truyền DMA Mỗi biến đổi A/D khởi động hai tín hiệu yêu cầu ngắt liên tiếp Các tín hiệu cho phép điều khiển DMA 8237 truyền byte liệu chuyển đổi AD từ PCL_818L đến nhớ Chọn kênh truyền DMA hay nhờ cầu nối JP1 Lưu ý : Phải lập trình điều khiển DMA ghi trang DMA 8237 máy tính trước đặt DMAE = ST÷ ST0 Chọn nguồn kích Nguồn kích Kích mềm Kích Kích Pacer ST1 1 ST0 x 2.1.7 Thanh ghi cho phép Counter / Time : ( BASE+10 ) Card PCL818 có vi mạch 8254 gồm đếm , , sử dụng hai đếm 1, 2, đếm ch người dùng Xung nhòp cho đếm đưa vào ngõ nhòp đếm , ngõ đếm đưa vào k1ch AD ( kích pacer) , tần số kích phụ thuộc tần số xung nhòp số viết vào đếm ,2 Tần số pacer Fclk/(Div1*Div2) với Fclk=1Mhz hay 10Mhz , Div Div số đặt đếm đếm Xung nhòp cho đếm chân 17 CN3 , chân điều khiển 36 CN3 , ngõ chân 18 Thông qua đếm đo tần số , độ rộng xung hay đếm xung Viết vào BASE+10 để chophép hoặ cấm Counter / Time PCL818L tạo xung BASE+10 Cho phép Pacer Bit D7 D6 D5 Value X x x D4 x D3 x D2 x D1 D0 TC1 TC0 TC0 :Cấm / Cho phép pacer TCO = : Cho phép pacer TCO = : Pacer điều khiển TRIG0 ( chân 35 CN3 ) Tín hiệu chận xung trigger gời từ ‘pacer’ đến A/D TC1 : Chọn chế độ nguồn xung nhòp ngõ vào Counter TC1 = : Counter nhận xung Clock ( chân 17 CN3 ) TC1 = : Counter nhận xung Clock 100Khz bên 2.1.8 Các ghi điều khiển đọc / ghi đếm : Bộ đònh 8254 sử dụng bốn ghi đòa BASE+12 , BASE+13 , BASE+14 , BASE+15 Các chức ghi liệt kê bảng sau : Thanh ghi BASE+12 BASE+13 BASE+14 BASE+15 Chức Counter0 đọc / viết Counter1 đọc / viết Counter2 đọc / viết Điều khiển đếm Do đếm 8254 có cấu trúc 16 bit , nên liệu đọc / ghi chia làm byte : byte thấp (LSB) , byte cao (MSB) Để tránh phạm lỗi đọc / ghi sai , cần ý thao tác đọc ghi đôi ( tức lần đọc ghi byte) theo thứ tự byte Dưới phần liệt kê dạng liệu ghi điều khiển Bit Value D7 SC1 BASE+15_8254 control , standard mode D6 D5 D4 D3 D2 D1 SC0 RW1 RW0 M2 M1 M0 SC1 & SC0 : Chọn đếm Bộ đếm Ralệnh đọc ngược ghi SC1 0 1 SC0 1 RW1 & RW0 : Chọn thao tác đọc ghi Thao tác Chốt đếm Đọc /ghi byte LSB Đọc /ghi byte MSB Đọc /ghi byte LSB trước , MSB sau RW1 0 1 RW0 1 D0 BCD M2 , M1 & M0 :Chọn chế độ hoạt động M2 0 X X 1 M1 0 1 0 M0 1 Chế độ – Tạo ngắt đếm tràn – Đahài đợi lập trình – Bộ chia tầ số – Bộ tạo xung vuông – Tạo xung cho phép mềm – Tạo xung cho phép cứng BCD :Chọn cách nạp số đếm : BCD Dạng liệu nạp cho đếm Số đếm nhò phân 16 bit Số đếm BCD Nếu cài đặt số đếm nhi phân nạp vào đếm giá trò từ đến 65535 Còn cài đặt số đếm BCD nạp váo đếm trò từ đến 9999 Nếu bit SC1 SC0 đeu đặt lên ghi điều khiển đếm trạng thái lệnh đọc ngược ghi Dạng liệu ghi điều khiể lúc sau : Bit Value D7 D6 BASE+15 _ 8254 readback – mode D5 D4 D3 D2 D1 CNT STA C2 C1 C0 CNT = :Chốt số đếm đếm chọn STA = : Chốt trạng thái đếm chọn C2 , C1 & C0 :Chọn đếm cho chế độ đọc ngược C2=1 Chọn đếm C1=1 Chọn đếm C0=1 Chọn đếm D0 X Nếu bit SC1 SC0 đặt lê STA = ghi chọn C2 ,C1 & C0 chứa byte cho biết trạng thái đếm chọn Dạng liệu ghi đọc/ ghi lúc liệt kê bên Bit Value D7 OUT BASE+12/13/14 _ status readback mode D6 D5 D4 D3 D2 D1 NC RW1 RW0 M2 M1 M0 D0 BCD OUT : trạng thái ngõ NC : số đếm sau ghi lên ghi đếm 2.2 Chuyển đổi A/D , D/A , DI & DO 2.2.1 Lập trình trực tiếp A Chuyển đổi A/D Việc chuyển đổi A/D hình thành cách viết trực tiếp tất lệnh cho port I/O Có thể kích đổi A/D phần mềm , xung hay pacer on board Bit ghi BASE+9 chọn nguồn trigger tương ứng Khi chọn kích pacer tần số kích từ 2.5 MHz đến 71 phút xung Khi chọn kích nguồn kích đònh cầu nối JP3 chọn tính hiệu kích TRIGO ( chân 35 CN3 ) hay DI0 (chân CN2 ) Việc truyền liệu A/D thực chương thình điều khiển , ngắt hay DMA Các bước hình thành để chuyển đổi A/D với trigger phần mềm truyền liệu A/D chương trình điều khiển ; • Đặt tầm vào cho kênh A/D • Đặt kênh vào cách rõ cho tầm quét kênh • Kích đổi A/D cách viết vào BASE+0 số • Kiểm tra chuyển đổi kết thúc chưa cách đọc bit EOC ghi trạng thái • Đọc kết chuyển đổi ghi BASE+0 BASE+1 • Chuyển liệu từ số nhò phân thành số nguyên B Chuyển đổi D/A Viết vào ghi BASE+4 BASE+5 Khi viết liệu cho kênh D/A phải viếtbytethấp trước Byte thấp giữ tạm thời ghi không xuất Sau viết byte cao xong, đó, byte thấp byte cao cộng lại để chuyển thành D/A C Digital Input Output Ta đọc Digital từ ghi BASE+3(byte thấp) ghi BASE+11 (byte cao) Sau đọc dừ liệu không chốt, đường vào trạng thái thứ ba Ta xuất DO thông qua ghi BASE+3 BASE+11 Thanh ghi chốt giá trò đãviết (có thể đọc lại) Để an toàn nên ghép kết nối ngõ vào thông qua OPTOCOUPLER 2.2.2 Lập trình theo Sofeware Driver củanhàsản xuất Mỗi PC_LABCARD có Sofeware Drivercho phép dùng hàm thủ tục viết sẳn để viết chương trình ứng dụng cấp cao như: BASIC, C, TURBO PASCAL, DELPHI, VISUAL BASIC… Điều cho phép viết chương trình cách đơn giản viết trực tiếp vào ghi tất hàm kéo tất tham số từ bảng tham số Chúng ta không cầnđònh lại bạng tham số ta gọi nó, bảng tham số có giá trò thay đổi Chương trình cài đặt chứa CDROM Trong chương trình ứng dụng, cần phải khai báo sử dụng Driver Driver hãng ADVANTECH viết chung cho nhiều loại CARD hãng việc đọc, tìm hiểu hàm viết sẳn nhiều thời gian Chúng ta sử dụng phần UNIT có sẳn ngôn ngữ Delphi thầy Nguyễn Đức Thành [...]... cao A/D Bit D7 D6 D5 D4 Value AD1 1 AD1 0 AD9 AD8 D3 AD7 D2 AD6 D1 AD5 D0 AD4 Trong đó : AD1 1 ÷ AD0 là dữ liệu Analog sang Digital AD0 là LSB AD1 1 là MSB C3 ÷ C0 là số của ngõ vào Analog tương ứng C3là MSB C0 là LSB B Khi viết vào thanh ghi : Kích mềm bộ A/D : ( BASE+0 ) • Có thể kích bộ A/D bằng phần mềm , các xung clock trên board ( pacer ) , hoặc bằng xung ngoài Các bit 0 và 1 trong BASE+9 sẽ chọn... hoạt động của PCL_ 818L BASE+9 - Điều khiển chế độ hoạt động Bit D7 D6 D5 D4 D3 D2 D1 D0 Value INTE 12 11 10 x DMAE ST1 ST0 INTE Cấm / cho phép ngắt INTE = 0 : Cấm ngắt ; INTE = 1 : Cho phép ngắt • Nếu DMAE = 0 : PCL_ 818L sẽ phát 1 tín hiệu ngắt khi nó hòan tất 1chuyển đổi A/D Vậy cấu hình INTE = 1 DMAE = 0 dùng để báo cho CPU biết , bằng cách ngắt là đã đổi AD xong • Nếu DMAE = 1 : PCL_ 818L sẽ phát... sẽ được biến đổi Lưu ý : -Nếu kích bộ A/D bằng xung clock trên board (‘pacer’) hoặc xung ngoài thì phần mềm của bạn phải kiểm tra bit INTtrước khi đọc dữ liệu ( không phải bit EOC ) EOC có thể bằng 0 trong 2 trường hợp : + Biến đổi đã hoàn tất + Không có 1 biến đổi nào đã được bắt đầu Do đó phần mềm của bạn phải đợi tín hiệu INT= 1 trước khi đọc data chuyển đổi Rồi cần phải xóa bit INTbằng cách viết... 1 biến đổi nào kể từ khi bit INT bò xóa ) • INT = 1 : A/D đã biến đổi xong , dữ liệu có giá trò Nếu bit INTE = 1 ( BASE+9 ) thì khi đổi xong 1 kênh tín hiệu intterrupt sẽ gởi đến PC qua ngõ IRQn ( IRQn được chọn bởi các bit I2ΙI0 trong BASE+9 ) Dù thanh ghi trạng thái A/D là chỉ đọc , nhưng khi viết vào nó 1 giá trò bất kỳ sẽ xoá bit INT , còn các bit khác không đổi CN3÷CN0 : Khi EOC = 0 thì các. .. Dạng dữ liệu của các thanh ghi đọc/ ghi lúc đó được liệt kê bên dưới Bit Value D7 OUT BASE+12/13/14 _ status readback mode D6 D5 D4 D3 D2 D1 NC RW1 RW0 M2 M1 M0 D0 BCD OUT : trạng thái hiện tại của ngõ ra NC : là 1 số đếm sau cùng đã được ghi lên thanh ghi của bộ đếm 2.2 Chuyển đổi A/D , D/A , DI & DO 2.2.1 Lập trình trực tiếp A Chuyển đổi A/D Việc chuyển đổi A/D có thể hình thành bằng cách viết trực... bằng ngắt hay DMA Các bước hình thành để chuyển đổi A/D với trigger bằng phần mềm và truyền dữ liệu A/D bằng chương trình điều khiển ; • Đặt tầm vào cho mỗi kênh A/D • Đặt kênh vào bằng cách chỉ rõ cho tầm quét kênh • Kích đổi A/D bằng cách viết vào BASE+0 một số bất kỳ nào đó • Kiểm tra chuyển đổi đã kết thúc chưa bằng cách đọc bit EOC của thanh ghi trạng thái • Đọc kết quả chuyển đổi ở thanh ghi... 0 :Cấm truyến DMA • DMAE = 1 : Cho phép truyền DMA Mỗi biến đổi A/D sẽ khởi động hai tín hiệu yêu cầu ngắt liên tiếp Các tín hiệu này cho phép bộ điều khiển DMA 8237 truyền 2 byte dữ liệu chuyển đổi AD từ PCL_ 818L đến bộ nhớ Chọn kênh truyền DMA 1 hay 3 nhờ cầu nối JP1 Lưu ý : Phải lập trình bộ điều khiển DMA và thanh ghi trang DMA 8237 của máy tính trước khi đặt DMAE = 1 ST÷ ST0 Chọn nguồn kích... ta gọi nó, chỉ khi nào bảng tham số có giá trò thay đổi Chương trình cài đặt chứa trong CDROM Trong chương trình ứng dụng, cần phải khai báo sử dụng Driver Driver của hãng ADVANTECH viết chung cho nhiều loại CARD của hãng và việc đọc, và tìm hiểu các hàm viết sẳn sẽ mất nhiều thời gian Chúng ta có thể sử dụng phần UNIT có sẳn bằng ngôn ngữ Delphi của thầy Nguyễn Đức Thành ... chuyể đổi liên tục , MUX sẽ quét từ kênh Start đến kênh Stop rồi lặp lại từ đầu Ví dụ nếu kênh Start là 4 và Stop là 7 thì quét tuần tự 4, 5, 6, 7, 4, 5, 6, 7 Nếu cài đặt chế độ 8 đầu vào vi sai thì c1c bit CH3 và CL3 phải là 0 Nếu chỉ chon một kênh để biến đổi A/D thì nên cài đặt kênh kết thúc và bắt đầu với cùng một trò số ( cũng là trò số của kênh cần thực hiện biến đổi A/D ) BASE+2 (Viết) – Các. .. • Viết vào BASE+8 một giá trò bất kỳ thì nó sẽ xoá bit INT của BASE+8 , còn những bit dữ liệu khác thì không đổi BASE+8 -Trạng thái A/D Bit D7 D6 D5 D4 D3 D2 D1 Value EOC N/A MUX INT CN3 CN2 CN1 D0 CN0 EOC :End Of Conversion • EOC = 0 : Bộ A/D sẵn sàng biến đổi , kết quả đổi kỳ trước chứa trong BASE+0 và BASE+1 • EOC = 1 : Bộ A/D đang biến đổi MUX Chọn 8 kênh vi sai hoặc 16 kênh đơn phản ảnh vò trí ... Value AD1 1 AD1 0 AD9 AD8 AD7 AD6 D1 AD5 D0 AD4 BASE+1 ( Đọc ) – Byte cao A/D Bit D7 D6 D5 D4 Value AD1 1 AD1 0 AD9 AD8 D3 AD7 D2 AD6 D1 AD5 D0 AD4 Trong : AD1 1 ÷ AD0 liệu Analog sang Digital AD0 ... cần biến đổi 1.1.2 Bộ biến đổi AD xấp xỉ liên tiếp Đây biến dùng rộng rãi biến đổi AD Nó có cấu tạo phức tạp biến đổi AD theo hàm dốc tốc độ biến đổi nhanh nhiều Hơn nữa, thời gian biến đổi số... trò lần biến đổi trước tăng giảm tùy thuộc vào giá trò điện áp so với giá trò điện áp cũ 1.4 Bộ biến đổi AD dùng chuyển đổi áp sang tần số Bộ biến đổi loại đơn giản biến đổi AD dùng biến đổi DA