/**    TEST 03   完成
* PIC 12F683 使用
* RS-232Cをsoft UARTで使う。ECHOを返す  
* 作成開始 2008/3/29 -->2008/3/30
*
*
* アナログ入力: AN3(GP4 PIN No.3),AN2(GP2 PIN No.5)
*               AN1(GP1 PIN No.6),AN0(GP0 PIN No.7)
* データ出力:GP5(PIN No.2)
* データ入力:GP3(PIN No.4)
* POWER(Vdd) : PIN No.1
* EARTH(Vss) :PIN No.8
*
*Clock: 8.0MHz 内蔵発振器使用
*Device Flags:
* _CP_OFF  _MCLRE_OFF _PWRTE_ON _WDT_OFF _INTRC_OSC_NOCLKOUT
*
* MikroC v8.1.0.0
*/

void main() {
    //使用変数の定義
    unsigned int temp;
    unsigned short data = 0 , ro = 0; // RS232C input-data
    unsigned short *er ; // RS232C read error pointer



    //マイコンの初期化
    //内臓クロック8MHzに設定
    OSCCON.IRCF2=1;
    OSCCON.IRCF1=1;
    OSCCON.IRCF0=1;

    //A/D変換clock設定 0.125us*16倍=2.0us
    ANSEL.ADCS2=1;
    ANSEL.ADCS1=0;
    ANSEL.ADCS0=1;

    // A/D利用ピンの設定 // ANALOG=1, DIGITAL=0 //
    ANSEL.ANS3 = 1; //AN3(GP4)をアナログ使用
    ANSEL.ANS2 = 1; //AN2(GP2)をアナログ使用
    ANSEL.ANS1 = 1; //AN1(GP1)をアナログ使用
    ANSEL.ANS0 = 1; //AN0(GP0)をアナログ使用

    GPIO = 0b00000000; //GPIOの中身をきれいにする
    // 参考 TRISIO = 0b00010000; //GP4を1:入力、他5個を0:出力設定
    TRISIO = 0b00011111; //GP5を0:出力に、他5個を1:入力に設定

    //マイコンの初期化終わり

    er = &ro ;

    // RS232C Initialize  8bit non-parity  9600 baud rate
    //void Soft_Uart_Init(unsigned short port, unsigned short rx inport , unsigned short tx outport, unsigned short baud_rate, unsigned short inverted);
    Soft_Uart_Init(GPIO, 3, 5,9600,0) ;
    
    do {
       do {
          data = Soft_Uart_Read(er) ; // Receive data
       }  while (*er) ;
          Soft_Uart_Write(data) ;   //  Send data via UART
    }  while (1) ;

}

電子工作のことへ     HomePage     このページのトップ