RSS   



  可打印版本 | 推薦給朋友 | 訂閱主題 | 收藏主題 | 純文字版  


 


 
主題: [轉貼]用一條網路線讓電腦和電視共用第四台機上盒   字型大小:||| 
pop
銀驢友〔初級〕
等級: 12等級: 12等級: 12


 . 積分: 361
 . 文章: 667
 . 收花: 2882 支
 . 送花: 76 支
 . 比例: 0.03
 . 在線: 489 小時
 . 瀏覽: 15121 頁
 . 註冊: 5407
 . 失蹤: 4
 . taipei
#1 : 2019-5-8 02:58 PM     只看本作者 引言回覆

自從第四台數位化之後,每台電視旁都要擺機上盒轉成AV端子或HDMI再接電視才能看,以前買的電視棒和電視卡都廢了,要和第四台業者申請機上盒還要押金和占空間,於是有了一些想法

是我家的機上盒


這是放在角落很久的電視卡


這張電視卡可以接收AV端子信號


看了一下 ,機上盒背面有AV端子,想把訊號拉到房間,但是市面上沒賣這麼長的AV訊號線,後來想到可以用網路線來傳送訊號,一條網路線可以分8條


於是去光華電子材料行買RCA接頭和網路分接盒,然後DIY把以前在外租屋買的30米網路線接上



音源用掉3條(左聲道,右聲道,地線)影像用兩條(影像和地線) 8-3-2=3 還剩3條可利用
後來想 ....光把訊號傳到房間也沒用,要能選台才行
要控制機上盒就要用遙控,後來想到用arduino來發送紅外線訊號控制機上盒選台
然後看了網路上很多高手的文
用紅外線遙控家電
http://coopermaa2nd.blogspot.tw/2012/12/arduino.html
葉難: Arduino練習:紅外線傳送與接收

http://yehnan.blogspot.tw/2013/05/arduino.html
如何用紅外線遙控Arduino

http://blog.udn.com/andy840119/15096120
        然後決定用剩下3條線做選台功能(選台上 選台下 地線)


點網頁綠色的按鈕,按download zip



解壓縮改資料夾檔名存在arduino目錄的libraries資料夾內


後開始做實驗了
                    這是我的測試用程式碼 接收端 (參考網路並修改過)

#include <IRremote.h>

int RECV_PIN = 2; // 使用數位腳位2接收紅外線訊號
IRrecv irrecv(RECV_PIN); // 初始化紅外線訊號輸入
decode_results results; // 儲存訊號的結構

void setup()
{
  Serial.begin(9600);
  irrecv.blink13(true); // 設為true的話,當收到訊號時,腳位13的LED便會閃爍
  irrecv.enableIRIn(); // 啟動接收
}

void loop() {
  if (irrecv.decode(&results))
  { // 接收紅外線訊號並解碼
    Serial.print("results value is "); // 輸出解碼後的資料
    Serial.print(results.value, HEX);
    Serial.print(", bits is ");
    Serial.print(results.bits);
    Serial.print(", decode_type is ");
    showIRProtocol(&results);
    Serial.println(results.decode_type);
    irrecv.resume(); // 準備接收下一個訊號
  }
}
void showIRProtocol(decode_results *results)
{
   switch(results->decode_type) {
     case NEC:
     Serial.print("NEC");
     break;
     case SONY:
     Serial.print("SONY");
     break;
     case RC5:
     Serial.print("RC5");
     break;
     case RC6:
     Serial.print("RC6");
     break;
     default:
     Serial.print("Unknown encoding");
  }   
}


測試出來頻道鍵的遙控碼如下 80BF01FE  NEC和 80BF817E NEC
於是開始寫發送端程式碼
經過反覆測試後,變如下

int I,J;
unsigned long v = 0x0;
#include <IRremote.h>
IRsend irsend; // IRRemote限定使用數位腳位3
void setup()
{
  pinMode(4, INPUT);
  pinMode(5, INPUT);
I=0;
J=0;
}

void loop()
{
if(digitalRead(4)==LOW)
  {
  I=1;
  }
if(digitalRead(4)==HIGH && I==1)
  {
  I=0;
   v = 0x80BF01FE;
  irsend.sendNEC(v,32);
  }


   if(digitalRead(5)==LOW)
  {
  J=1;
  }
if(digitalRead(5)==HIGH && J==1)
  {
  J=0;
  v =0x80BF817E;
  irsend.sendNEC(v,32);

  }

  if(I==1&& J==1)
  {
  v=0x80BF3BC4;
  irsend.sendNEC(v,32);
   I=0;
   J=0;
  delay(1000);
  }
}


這是我測試配備,右邊那台是我自製行動電源


測試訊號ok,可以轉台,準備焊接電路


加工電路板用來裝dc接頭


零件試擺


焊接中


arduino uno腳位定義


328腳位圖


焊接初步完成(省略reset鍵和晶體振盪器和電容,因為我用ic內建晶振)


燒錄中,用自製燒錄板接上arduino燒錄


arduino燒錄方式(無晶振和有晶振接法)


合體,準備測試


測試後發現線太短太硬 換成綠色多芯線並固定在機上盒上



如上圖,機上盒有usb, 直接從機上盒取出5v電壓給328晶片用


將線拉到房間,並安裝好訊號線


安裝電視卡驅動程式和軟體

後來發現廣寰的軟體有bug ,只有安裝好第一次執行可以播av訊號,關閉軟體再開後就只有聲音無畫面,害我以為是電腦或線路問題,測試好幾次並重灌win7,直到重灌完還是一樣,才上網找其他電視卡撥放軟體,最後我用kmp試成功,方法如下

右鍵>開啟>開啟WDM


右鍵>WDM >video composite 和audio line (這時就看到av端子的訊號了)


如果還有問題,則右鍵>開啟>設定WDM/BDA


如圖設定,我這張卡這樣設定就能看了


這是我的軟體版本


接下來做選台用的的按鍵


蓋上蓋子


裝上並接好線


拉到桌上


測試後可正常選台和觀看,音量用電腦控制即可
總結: 這個裝置可以充分利用機上盒,但是客廳如果同時有人看電視轉台時,就會有搶台狀況,畢竟只有一台機上盒,不過對我家來說不必擔心,我只是懶得在客廳滿身大汗看電視,選台雖然只有上下兩鍵,但對我來說夠了,要更多功能也可以,只要用另一顆328ic 做發送端,送串列訊號到遙控端即可,這樣做即使選號轉台也ok

9/20日更新 經過數日使用,一次只能一台一台轉太慢,於是改了程式碼,讓兩鍵同時按時可以快速切換到10 ,50 , 200 , 250,並把程式碼加上註解如下


int I,J,k; //I和J用於判斷頻道上下鍵是否被按下,k則用於兩鍵同時按下記數用
unsigned long v = 0x0;
#include <IRremote.h>
IRsend irsend; // IRRemote限定使用數位腳位3
void setup()
{
  pinMode(4, INPUT);//按鈕輸入腳位
  pinMode(5, INPUT);//按鈕輸入腳位
I=0;
J=0;
k=0;
}

void loop()
{
if(digitalRead(4)==LOW)  //按鈕按下時
  {
  I=1;
  }
if(digitalRead(4)==HIGH && I==1)  //按鈕放開時
  {
  I=0;
   v = 0x80BF01FE;
  irsend.sendNEC(v,32); //轉台上(發送紅外線訊號)
  }


   if(digitalRead(5)==LOW)  //按鈕按下時
  {
  J=1;
  }
if(digitalRead(5)==HIGH && J==1)  //按鈕放開時
  {
  J=0;
  v =0x80BF817E;
  irsend.sendNEC(v,32);//轉台下(發送紅外線訊號)
  }

  if(I==1&& J==1) //當兩鍵同時按下時
  {
   k=k+1;
   I=0;
   J=0;
     switch(k) {
     case 1: //轉到10台(當兩鍵同時按下第一次時)
     v =0x80BF49B6;
     irsend.sendNEC(v,32);//1(發送紅外線訊號)
     delay(200);
     v =0x80BFE11E;
     irsend.sendNEC(v,32);//0(發送紅外線訊號)
     break;
     case 2: //轉到50台(當兩鍵同時按下第二次時)
      v =0x80BFF10E;
     irsend.sendNEC(v,32);//5(發送紅外線訊號)
     delay(200);
     v =0x80BFE11E;
     irsend.sendNEC(v,32);//0(發送紅外線訊號)
     break;
     case 3://轉到200台(當兩鍵同時按下第三次時)
     v =0x80BFC936;
     irsend.sendNEC(v,32);//2(發送紅外線訊號)
     delay(200);
     v =0x80BFE11E;
     irsend.sendNEC(v,32);//0(發送紅外線訊號)
     delay(200);
     v =0x80BFE11E;
     irsend.sendNEC(v,32);//0(發送紅外線訊號)
     break;
     case 4://轉到250台(當兩鍵同時按下第四次時)
     v =0x80BFC936;
     irsend.sendNEC(v,32);//2(發送紅外線訊號)
     delay(200);
     v =0x80BFF10E;
     irsend.sendNEC(v,32);//5(發送紅外線訊號)
     delay(200);
     v =0x80BFE11E;
     irsend.sendNEC(v,32);//0(發送紅外線訊號)
     k=0; //兩鍵同時按下記數歸零
     break;
     default:
     k=0;
   
  }
  
  delay(1000);
  }
}
10月16日更新
實際操作影片



[pop 在  2019-5-8 07:26 PM 作了最後編輯]



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
bv8aw
白金驢友〔初級〕
等級: 20等級: 20等級: 20等級: 20等級: 20


今日心情

 . 積分: 4326
 . 文章: 3711
 . 收花: 17097 支
 . 送花: 44261 支
 . 比例: 2.59
 . 在線: 65535 小時
 . 瀏覽: 2445898 頁
 . 註冊: 5644
 . 失蹤: 0
 . TWed2k-DVD幫
#2 : 2019-5-8 10:17 PM     只看本作者 引言回覆

真是太強了!



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
kavinson
開墾隊隊員
等級: 11等級: 11等級: 11等級: 11


十週年紀念徽章(五級)  

 . 積分: 298
 . 文章: 518
 . 收花: 2383 支
 . 送花: 11615 支
 . 比例: 4.87
 . 在線: 1830 小時
 . 瀏覽: 33631 頁
 . 註冊: 5350
 . 失蹤: 3
 . TWed2k-DVD幫分流組
#3 : 2019-5-8 10:28 PM     只看本作者 引言回覆

系統最多送三朵花

順便收下我的膝蓋!
實在太厲害了!



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
innova
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14


十週年紀念徽章(五級)  

今日心情

 . 積分: 905
 . 文章: 2702
 . 收花: 7089 支
 . 送花: 1458 支
 . 比例: 0.21
 . 在線: 2160 小時
 . 瀏覽: 14382 頁
 . 註冊: 5371
 . 失蹤: 0
 . 火星
#4 : 2019-5-9 11:38 PM     只看本作者 引言回覆

我先說出 我對 1F 的理解, 也許會有許多誤解存在:

1. 只有一台機上盒,不想另外花錢添購第二台
2. 有兩間(以上?)房間,想要看電視
3. 兩房間中間 已經拉好網路線
4. AV訊號 使用 網路線 其中的 5芯 (Video:影1+地1  +  Audio: 左1+右1+地1)
5. 網路線 剩下三芯,於 另一房間 使用 兩按鈕 將訊號接至 有機上盒 的房間 由Arduino接收 並控制機上盒
6. 機上盒 紅外線前方 使用 Arduino模擬 遙控器 訊號;Arduino發射假的(模擬)遙控器訊號 做控制


首先, AV訊號部分
如果沒記錯, AV三個端子 的 外殼 應該都是接到  機上盒PCB板上 共同的『地』才對?
所以, Video的Gnd跟 Audio的Gnd 理該是沒有電壓差的
您可以拿電表量測 做確認;可以的話,用示波器會更準確些
所以,Video-Gnd 應該是可以跟 Audio-Gnd 接在一起。可以節省一根網路芯

只有兩按鈕,還有3芯可以使用...
為什麼 不直接 1芯 拉 5V過去,另兩芯 直接接到 Arduino的 DI點上? (Button Project)
還要多搞一塊電路板出來;到時候 整個系統出問題 要 debug的點 超多...
估計其他家人沒法直接使用電話就能排除故障


既然都將 Arduino搬出來了~ 紅外線模組也買了
不如 直接搞兩組 Arduino+紅外線
另一房間 使用 Arduino接收紅外線訊號
使用 網路線 2芯 接到 機上盒房間的 Arduino Tx/Rx, 建議兩邊的 Arduino Gnd也接在一起, 以免兩邊電壓差不同
機上盒房間的 Arduino仍是當前設計,使用 Arduino發送紅外線 模擬遙控器
Serial port data就是 IR收到的資料,機上盒房間的 Arduino Serial port收到什麼 就直接丟什麼出來...
這樣, 沒有機上盒的房間,一樣可以使用遙控器,遙控上有的功能 也都能完全展現
不過,前面IR用的 應該是 UART
得先搞定 第二組 UART才行


最後,來惡搞一下
僅只是臆測,不確定可行性
IR receiver有3 pin: Vcc/Gnd/Vout
IR LED有2 pin: Vcc/Gnd
沒有機上盒的房間,將 IR Receiver 3跟 pins接上 剩下的 三根網路線
有機上盒房間, IR Receiver的 :
Vcc接 USB 5V
Gnd接 USB Gnd,並 並聯 IR LED Gnd
Vout接 IR LED Vcc
如果 網路線拉的不長,壓降不大
上面一堆電路都省了



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  訪問主頁  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
innova
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14


十週年紀念徽章(五級)  

今日心情

 . 積分: 905
 . 文章: 2702
 . 收花: 7089 支
 . 送花: 1458 支
 . 比例: 0.21
 . 在線: 2160 小時
 . 瀏覽: 14382 頁
 . 註冊: 5371
 . 失蹤: 0
 . 火星
#5 : 2019-5-10 12:00 AM     只看本作者 引言回覆


引用:

[pop 在  2019-5-8 07:26 PM 作了最後編輯]



--
發佈日期:2016年10月16日



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  訪問主頁  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Observer
論壇第一龜毛
等級: 21等級: 21等級: 21等級: 21等級: 21等級: 21
藏雲

 . 積分: 4813
 . 精華: 5
 . 文章: 9288
 . 收花: 41495 支
 . 送花: 9752 支
 . 比例: 0.24
 . 在線: 7728 小時
 . 瀏覽: 102800 頁
 . 註冊: 6386
 . 失蹤: 0
 . 單身宿舍
#6 : 2019-5-10 09:31 PM     只看本作者 引言回覆

我突然感嘆為什麼我只有一對膝蓋....


[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
mitewold
銅驢友〔初級〕
等級: 8等級: 8


今日心情

 . 積分: 123
 . 文章: 494
 . 收花: 847 支
 . 送花: 106 支
 . 比例: 0.13
 . 在線: 822 小時
 . 瀏覽: 6370 頁
 . 註冊: 5631
 . 失蹤: 1
 . TWed2k-DVD幫BT組
#7 : 2019-5-13 10:43 PM     只看本作者 引言回覆

哇賽,還有這招阿.....
真的厲害!



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
   

快速回覆
表情符號

更多 Smilies

字型大小 : |||      [完成後可按 Ctrl+Enter 發佈]        

溫馨提示:本區開放遊客瀏覽。
選項:
關閉 URL 識別    關閉 表情符號    關閉 Discuz! 代碼    使用個人簽名    接收新回覆信件通知
發表時自動複製內容   [立即複製] (IE only)


 



所在時區為 GMT+8, 現在時間是 2019-12-16 10:11 PM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.022160 second(s), 6 queries , Qzip disabled