#freeze 閲覧総計:&counter(); (本日:&counter(today); 昨日:&counter(yesterday);)~ ~ *PIC-PICの無線通信(ラジコンへの応用) [#xf251a95] PIC-PICの通信(USART) の有線通信部分を無線送信機と受信機に入れ替えるだけで よい。 【無線通信モジュール】315MHz AM送受信機(IPI Shopで購入) 送信機 AM-RT5-315 @1,200円 受信機 AM-HRR3-315 @1,400円 送受信機合計で2,600円 http://www.ipishop.com/rfmodule.html 送信部、受信部のプログラムは有線のものと同一の物でよい。 スイッチのON、OFFに連動して、相手方のPICに接続した発光ダイオ ードが点滅した。成功! 06/11/03 |&attachref(211228401_56.jpg,zoom,150x150,button){新しい写真添付};|&attachref(211228401_12.jpg,zoom,150x150,button){新しい写真添付};|&attachref(211228401_89.jpg,zoom,150x150,button){新しい写真添付};| /** * USART送信 * * PIC 16F628A * 発信器:内臓4MHz * 電源:乾電池3本(4.5V) * switch: RA0 * * Device Flags: _BODEN_OFF _BOREN_OFF _CP_OFF _PWRTE_ON _WDT_OFF * _LVP_OFF _MCLRE_OFF _INTRC_OSC_NOCLKOUT * * 言語 MikroC v2.1 */ void main() { PORTA = 0b00000000; //PORTAの中身をきれいにする PORTB = 0b00000000; //PORTBの中身をきれいにする CMCON = 0b00000111; //PORTAをデジタル入出力使用に設定 TRISA = 0b00000001; //RA0を1:入力に、他を0:出力に設定 TRISB = 0b00000010; //PORTB RB1:入力、他7ヶは出力設定 Usart_Init(2400); //通信速度を2400 band rateに設定 do { if(PORTA.F0 == 1) { Usart_Write('A'); //RA0=1なら'A'を送信 } else { Usart_Write(0); //RA0=0なら 0 を送信 } } while(1); } /** * USART受信 * * PIC 16F628A * 発信器:内臓4MHz * 電源:乾電池4本(6.0V) * LED: RB3 * * Device Flags: _BODEN_OFF _BOREN_OFF _CP_OFF _PWRTE_ON _WDT_OFF * _LVP_OFF _MCLRE_OFF _INTRC_OSC_NOCLKOUT * * 言語 MikroC v2.1 */ unsigned short int data; void main() { PORTB = 0b00000000; //PORTBの中身をきれいにする TRISB = 0b00000010; //PORTB RB1:入力、他7ヶは出力設定 Usart_Init(2400); //通信速度を2400 band rateに設定 do { if(Usart_Data_Ready()) { data = Usart_Read(); if(data == 'A') { PORTB.F3 = 1; //dataが'A'ならRB3=1(LED ON) } else { PORTB.F3 = 0; //それ以外はRB3=0(LED OFF) } } } while(1); } ★この情報は役に立ちましたか? #vote(はい[38],普通[7],いいえ[10]) #comment_nospam