Lưu ý
Mục đích của file này là để độc giả tiếng Việt có thể đọc và hiểu tài liệu nhân kernel dễ dàng hơn, không phải để tạo ra một nhánh tài liệu riêng. Nếu bạn có bất kỳ nhận xét hoặc cập nhật nào cho file này, vui lòng thử cập nhật file tiếng Anh gốc trước. Nếu bạn thấy có sự khác biệt giữa bản dịch và bản gốc, hoặc có vấn đề về bản dịch, vui lòng gửi góp ý hoặc patch cho người dịch của file này, hoặc nhờ người bảo trì và người review tài liệu tiếng Việt giúp đỡ.
- Bản gốc:
- Người dịch:
Google Translate (machine translation)
- Phiên bản gốc:
8541d8f725c6
Cảnh báo
Tài liệu này được dịch tự động bằng máy và chưa được review bởi người dịch. Nội dung có thể không chính xác hoặc khó hiểu ở một số chỗ. Khi có sự khác biệt với bản gốc, bản gốc luôn là chuẩn. Bản dịch chất lượng cao (được review) được đặt trong thư mục vi_VN/.
10.1.7. Trình điều khiển radio Radiotrack¶
Tác giả: Stephen M. Benoit <benoits@servicepro.com>
Ngày: 14 tháng 12 năm 1996
10.1.7.1. ACKNOWLEDGMENTS¶
Tài liệu này được thực hiện dựa trên mã ‘C’ cho Linux của Gideon le Grange (legrang@active.co.za hoặc legrang@cs.sun.ac.za) vào năm 1994, và các chi tiết từ Frans Brinkman (brinkman@esd.nl) vào năm 1996. Các kết quả được báo cáo ở đây là từ các thử nghiệm mà tác giả đã thực hiện trên thiết lập của riêng mình, vì vậy số dặm của bạn có thể khác nhau... Tôi không đưa ra bất kỳ đảm bảo, khiếu nại hoặc bảo đảm nào về sự phù hợp hoặc tính xác thực của thông tin này. Không có tài liệu nào khác về AIMS Lab (thẻ ZZ0000ZZ RadioTrack đã được cung cấp cho tác giả. Tài liệu này được cung cấp với hy vọng nó có thể giúp ích cho những người dùng muốn sử dụng thẻ RadioTrack trong môi trường không phải là MS Windows.
10.1.7.2. WHY THIS DOCUMENT?¶
Tôi có thẻ RadioTrack từ hồi tôi chạy nền tảng MS-Windows. Sau chuyển sang Linux, tôi tìm thấy phần mềm dòng lệnh của Gideon le Grange dành cho chạy thẻ thì thấy hay! Frans Brinkman đã thực hiện một Giao diện X-windows thoải mái và thêm tính năng quét. Để hack giá trị, tôi muốn xem liệu bộ dò sóng có thể được điều chỉnh ngoài đài FM thông thường hay không băng tần phát sóng, để tôi có thể bắt sóng các nhà cung cấp âm thanh từ Bắc Mỹ phát sóng các kênh truyền hình, nằm ngay dưới và trên dải tần 87,0-109,0 MHz. Tôi không đạt được nhiều thành công nhưng tôi đã học về lập trình ioport dưới Linux và thu được một số hiểu biết sâu sắc về thiết kế phần cứng được sử dụng cho thẻ.
Vì vậy, không chậm trễ hơn nữa, đây là chi tiết.
10.1.7.3. PHYSICAL DESCRIPTION¶
Thẻ RadioTrack là thẻ radio FM 8 bit ISA. Tần số vô tuyến (RF) đầu vào chỉ đơn giản là một dây dẫn ăng-ten và đầu ra là tín hiệu âm thanh nguồn có sẵn thông qua một phích cắm điện thoại thu nhỏ. Tần số hoạt động RF của nó là ít nhiều bị giới hạn từ 87,0 đến 109,0 MHz (chương trình phát sóng FM thương mại ban nhạc). Mặc dù các thanh ghi có thể được lập trình để yêu cầu tần số vượt quá những giới hạn này, các thí nghiệm không cho kết quả đầy hứa hẹn. Biến bộ dao động tần số (VFO) giải điều chế tần số trung gian (IF) tín hiệu có thể có một phạm vi tần số hữu ích nhỏ và bao quanh hoặc bị cắt vượt quá giới hạn nêu trên.
10.1.7.4. CONTROLLING THE CARD WITH IOPORT¶
Ioport RadioTrack (cơ sở) có thể định cấu hình cho 0x30c hoặc 0x20c. Chỉ có một ioport dường như có liên quan. Mạch giải mã ioport phải đẹp đơn giản, vì các bit ioport riêng lẻ được khớp trực tiếp với các chức năng cụ thể (hoặc khối) của thẻ radio. Bằng cách này, nhiều chức năng có thể được thay đổi trong song song với một lần ghi vào ioport. Phản hồi duy nhất có được thông qua ioports dường như là bit “Phát hiện âm thanh nổi”.
Các bit của ioport được sắp xếp như sau:
MSb LSb
+------+------+------+--------+--------+-------+---------+--------+
| VolA | VolB | ???? | Stereo | Radio | TuneA | TuneB | Tune |
| (+) | (-) | | Detect | Audio | (bit) | (latch) | Update |
| | | | Enable | Enable | | | Enable |
+------+------+------+--------+--------+-------+---------+--------+
Kết quả có sẵn bằng cách đọc ioport >60 mili giây sau lần ghi cổng cuối cùng.
0xff ==> không phát hiện thấy âm thanh nổi, 0xfd ==> phát hiện âm thanh nổi.
10.1.7.4.1. Radio to Audio (đường dẫn) Bật Mô tả¶
0 Tắt đường dẫn (im lặng) 1 Đường dẫn kích hoạt (âm thanh được tạo ra) ==============================================================
Mã 24 bit, trong đó bit = (freq*40) + 10486188. 11 bit quan trọng nhất phải là 1010 xxxx 0x0 mới hợp lệ. Các bit được dịch chuyển trong LSb trước tiên.
10.1.7.4.2. Điều chỉnh Cập nhật Kích hoạt Mô tả¶
0 Bộ điều chỉnh được giữ cố định 1 Đang cập nhật bộ chỉnh =================================================
10.1.7.5. PROGRAMMING EXAMPLES¶
Default: BASE <-- 0xc8 (current volume, no stereo detect,
radio enable, tuner adjust disable)
Card Off: BASE <-- 0x00 (audio mute, no stereo detect,
radio disable, tuner adjust disable)
Card On: BASE <-- 0x00 (see "Card Off", clears any unfinished business)
BASE <-- 0xc8 (see "Default")
Volume Down: BASE <-- 0x48 (volume down, no stereo detect,
radio enable, tuner adjust disable)
wait 10 msec
BASE <-- 0xc8 (see "Default")
Volume Up: BASE <-- 0x88 (volume up, no stereo detect,
radio enable, tuner adjust disable)
wait 10 msec
BASE <-- 0xc8 (see "Default")
Check Stereo: BASE <-- 0xd8 (current volume, stereo detect,
radio enable, tuner adjust disable)
wait 100 msec
x <-- BASE (read ioport)
BASE <-- 0xc8 (see "Default")
x=0xff ==> "not stereo", x=0xfd ==> "stereo detected"
Set Frequency: code = (freq*40) + 10486188
foreach of the 24 bits in code,
(from Least to Most Significant):
to write a "zero" bit,
BASE <-- 0x01 (audio mute, no stereo detect, radio
disable, "zero" bit phase 1, tuner adjust)
BASE <-- 0x03 (audio mute, no stereo detect, radio
disable, "zero" bit phase 2, tuner adjust)
to write a "one" bit,
BASE <-- 0x05 (audio mute, no stereo detect, radio
disable, "one" bit phase 1, tuner adjust)
BASE <-- 0x07 (audio mute, no stereo detect, radio
disable, "one" bit phase 2, tuner adjust)