2010年11月15日月曜日

とりあえずRS232C通信

使うのは2,3,5,7,8番ピン
7番ピンと8番ピンは直結します。
パソコンからの送信要求(7番ピン)に対し、
無条件に送信可(8番ピン)を返すようにするためです。
5番ピンはグランドに接続します。
2番ピンと3番ピンだけが、PICから制御する信号線になります。


aを永遠に送り続けるだけのプログラム
  1. /* 
  2. 概要:取り合えすRS232C通信 
  3.  
  4. 対象PIC  :PIC16F88 
  5. クロック :内蔵8MHz 
  6. コンパイラ:mikroC Version: 8.2.0.0 
  7.  
  8. 電源:5V 
  9.  
  10. コンフィグレーションフラグ: 
  11. _CP_OFF  _CCP1_RB3  _DEBUG_OFF  _WRT_ENABLE_OFF 
  12. _CPD_OFF  _LVP_OFF  _BODEN_OFF  _MCLR_OFF  _PWRTE_ON 
  13. _WDT_OFF  _INTRC_IO  _IESO_ON__CFG2  _FCMEN_ON__CFG2 
  14.  
  15.  
  16. */  
  17.   
  18. void main() {  
  19.  PORTA = 0b00000000;  //PortBの中初期化  
  20.  PORTB = 0b00000000;  //PortBの中初期化  
  21.   
  22.  OSCCON = 0b01110000; //8MHzを指定  
  23.   
  24.  ANSEL = 0b00000000;  //すべてデジタルポート  
  25.   
  26.  TRISA = 0b00000000;  
  27.  TRISB = 0b00000100;    //B2/RXを入力に,B5/TXを出力  
  28.   
  29.  Usart_Init(9600);      //通信速度の設定  
  30.   
  31.  do {  
  32.     Usart_Write('a'); //RS232C通信でPCへ送信  
  33.  } while(1);  
  34.   
  35. }   





mikroC のメニューバーのTools から USART Terminal を開いて接続してたところ


ハイパーターミナルで表示した場合

電源を入れた直後の接続しか正常に常時出来ません。
接続と切断を繰り返すと別な文字が表示されたりします。

0 件のコメント:

コメントを投稿