Ignore:
Timestamp:
Aug 23, 2017, 9:27:43 AM (7 years ago)
Author:
coas-nagasima
Message:

文字コードを設定

File:
1 edited

Legend:

Unmodified
Added
Removed
  • EcnlProtoTool/trunk/mrbgems/mruby-arduino/src/sI2c.c

    • Property svn:keywords deleted
    • Property svn:mime-type changed from text/x-csrc to text/x-csrc;charset=UTF-8
    r270 r321  
    11/*
    2  * I2C通信関連
     2 * I2C通信関連
    33 *
    44 * Copyright (c) 2016 Wakayama.rb Ruby Board developers
     
    2323
    2424/******************************************************/
    25 /* メモリの開放時に走る*/
     25/* メモリの開放時に走る*/
    2626/******************************************************/
    2727static void i2c_free(mrb_state *mrb, void *ptr)
     
    3232
    3333/******************************************************/
    34 /* この構造体の意味はよくわかっていない*/
     34/* この構造体の意味はよくわかっていない*/
    3535/******************************************************/
    3636static struct mrb_data_type i2c_type = {"I2c", i2c_free};
    3737
    3838/******************************************************/
    39 /* I2Cを初期化します: I2c.new*/
    40 /*  I2c.new(num) */
    41 /*  num: 通信番号(0:SDA-0/SCL-1, 1:SDA-5/SCL-6, 2:SDA-7/SCL-8, 3:SDA-12/SCL-11, 4:SDA-9(26)/SCL-3)*/
    42 /**/
    43 /* 戻り値*/
    44 /*  I2cのインスタンス*/
     39/* I2Cを初期化します: I2c.new*/
     40/*  I2c.new(num) */
     41/*  num: 通信番号(0:SDA-0/SCL-1, 1:SDA-5/SCL-6, 2:SDA-7/SCL-8, 3:SDA-12/SCL-11, 4:SDA-9(26)/SCL-3)*/
     42/**/
     43/* 戻り値*/
     44/*  I2cのインスタンス*/
    4545/******************************************************/
    4646static mrb_value mrb_i2c_initialize(mrb_state *mrb, mrb_value self)
     
    5555
    5656        if (num <= 0 && num >= WIRE_MAX) {
    57                 return mrb_nil_value();                 /*戻り値は無しですよ。*/
     57                return mrb_nil_value();                 /*戻り値は無しですよ。*/
    5858        }
    5959
     
    6666
    6767/******************************************************/
    68 /* アドレスにデータを書き込みます: I2c.write*/
     68/* アドレスにデータを書き込みます: I2c.write*/
    6969/*  I2c.write( deviceID, address, data )*/
    70 /*      deviceID: デバイスID*/
    71 /*  address: 書き込みアドレス*/
    72 /*  data: データ*/
    73 /**/
    74 /*  戻り値は以下のとおり*/
    75 /*              0: 成功*/
    76 /*              4: その他のエラー*/
     70/*      deviceID: デバイスID*/
     71/*  address: 書き込みアドレス*/
     72/*  data: データ*/
     73/**/
     74/*  戻り値は以下のとおり*/
     75/*              0: 成功*/
     76/*              4: その他のエラー*/
    7777/******************************************************/
    7878mrb_value mrb_i2c_write(mrb_state *mrb, mrb_value self)
     
    8888
    8989/******************************************************/
    90 /* アドレスからデータを読み込み: I2c.read*/
     90/* アドレスからデータを読み込み: I2c.read*/
    9191/*  I2c.read( deviceID, addressL[, addressH] )*/
    92 /*      deviceID: デバイスID*/
    93 /*  addressL: 読み込み下位アドレス*/
    94 /*  addressH: 読み込み上位アドレス*/
    95 /**/
    96 /*  戻り値は読み込んだ値*/
     92/*      deviceID: デバイスID*/
     93/*  addressL: 読み込み下位アドレス*/
     94/*  addressH: 読み込み上位アドレス*/
     95/**/
     96/*  戻り値は読み込んだ値*/
    9797/******************************************************/
    9898mrb_value mrb_i2c_read(mrb_state *mrb, mrb_value self)
     
    113113
    114114/******************************************************/
    115 /* I2Cデバイスに対して送信を開始するための準備をする: I2c.begin*/
     115/* I2Cデバイスに対して送信を開始するための準備をする: I2c.begin*/
    116116/*      I2c.begin( deviceID )*/
    117 /*      この関数は送信バッファを初期化するだけで、実際の動作は行わない。繰り返し呼ぶと、送信バッファがå
    118 ˆé ­ã«æˆ»ã‚‹ã€‚*/
    119 /*      deviceID: デバイスID 0~0x7Fまでの純粋なアドレス*/
     117/*      この関数は送信バッファを初期化するだけで、実際の動作は行わない。繰り返し呼ぶと、送信バッファが先頭に戻る。*/
     118/*      deviceID: デバイスID 0~0x7Fまでの純粋なアドレス*/
    120119/******************************************************/
    121120mrb_value mrb_i2c_beginTransmission(mrb_state *mrb, mrb_value self)
     
    130129        i2c_byte_write(i2c, deviceID);
    131130
    132         return mrb_nil_value();                 /*戻り値は無しですよ。*/
    133 }
    134 
    135 /******************************************************/
    136 /* 送信バッファの末尾に数値を追加する: I2c.lwrite*/
     131        return mrb_nil_value();                 /*戻り値は無しですよ。*/
     132}
     133
     134/******************************************************/
     135/* 送信バッファの末尾に数値を追加する: I2c.lwrite*/
    137136/*      I2c.lwrite( data )*/
    138 /*      data: セットする値*/
    139 /**/
    140 /* 戻り値は、送信したバイト数(バッファに溜めたバイト数)を返す。*/
    141 /*      送信バッファ(260バイト)に空き容量が無ければ失敗して0を返す*/
     137/*      data: セットする値*/
     138/**/
     139/* 戻り値は、送信したバイト数(バッファに溜めたバイト数)を返す。*/
     140/*      送信バッファ(260バイト)に空き容量が無ければ失敗して0を返す*/
    142141/******************************************************/
    143142mrb_value mrb_i2c_lwrite(mrb_state *mrb, mrb_value self)
     
    153152
    154153/******************************************************/
    155 /* デバイスに対してI2Cの送信シーケンスを発行する: I2c.end*/
     154/* デバイスに対してI2Cの送信シーケンスを発行する: I2c.end*/
    156155/*      I2c.end()*/
    157 /*      I2Cの送信はこの関数を実行して初めて実際に行われる。*/
    158 /**/
    159 /* 戻り値は以下のとおり*/
    160 /*      0: 成功*/
    161 /*      4: その他のエラー*/
     156/*      I2Cの送信はこの関数を実行して初めて実際に行われる。*/
     157/**/
     158/* 戻り値は以下のとおり*/
     159/*      0: 成功*/
     160/*      4: その他のエラー*/
    162161/******************************************************/
    163162mrb_value mrb_i2c_endTransmission(mrb_state *mrb, mrb_value self)
     
    169168
    170169/******************************************************/
    171 /* デバイスに対して受信シーケンスを発行しデータを読み出す: I2c.request*/
     170/* デバイスに対して受信シーケンスを発行しデータを読み出す: I2c.request*/
    172171/*      I2c.request( address, count )*/
    173 /*  num: 通信番号(0:SDA-0/SCL-1, 1:SDA-5/SCL-6, 2:SDA-7/SCL-8, 3:SDA-12/SCL-11, 4:SDA-9(26)/SCL-3)*/
    174 /*      address: 読み込み開始アドレス*/
    175 /*      count: 読み出す数*/
    176 /**/
    177 /*  戻り値は、実際に受信したバイト数。*/
     172/*  num: 通信番号(0:SDA-0/SCL-1, 1:SDA-5/SCL-6, 2:SDA-7/SCL-8, 3:SDA-12/SCL-11, 4:SDA-9(26)/SCL-3)*/
     173/*      address: 読み込み開始アドレス*/
     174/*      count: 読み出す数*/
     175/**/
     176/*  戻り値は、実際に受信したバイト数。*/
    178177/******************************************************/
    179178mrb_value mrb_i2c_requestFrom(mrb_state *mrb, mrb_value self)
     
    192191
    193192/******************************************************/
    194 /* デバイスに対して受信シーケンスを発行しデータを読み出す: I2c.lread*/
     193/* デバイスに対して受信シーケンスを発行しデータを読み出す: I2c.lread*/
    195194/*      I2c.lread()*/
    196195/**/
    197 /*  戻り値は読み込んだ値*/
     196/*  戻り値は読み込んだ値*/
    198197/******************************************************/
    199198mrb_value mrb_i2c_lread(mrb_state *mrb, mrb_value self)
     
    204203
    205204/******************************************************/
    206 /* デバイスに対して受信バッファå†
    207 ã«ã‚るデータ数を調べる: I2c.available*/
     205/* デバイスに対して受信バッファ内にあるデータ数を調べる: I2c.available*/
    208206/*      I2c.available()*/
    209207/**/
    210 /*  戻り値はデータ数*/
     208/*  戻り値はデータ数*/
    211209/******************************************************/
    212210mrb_value mrb_i2c_available(mrb_state *mrb, mrb_value self)
     
    217215#if 0
    218216/******************************************************/
    219 /* 周波数を変更する: I2c.freq*/
     217/* 周波数を変更する: I2c.freq*/
    220218/*  I2c.freq( Hz )*/
    221 /*  Hz: クロックの周波数をHz単位で指定する。*/
    222 /*      有効な値は1~200000程度。基本的にソフトでやっているので400kHzは出ない。*/
     219/*  Hz: クロックの周波数をHz単位で指定する。*/
     220/*      有効な値は1~200000程度。基本的にソフトでやっているので400kHzは出ない。*/
    223221/******************************************************/
    224222mrb_value mrb_i2c_freq(mrb_state *mrb, mrb_value self)
     
    230228        i2c_frequency(i2c, fq);
    231229
    232         return mrb_nil_value();                 /* 戻り値は無しですよ。 */
     230        return mrb_nil_value();                 /* 戻り値は無しですよ。 */
    233231}
    234232#endif
    235233/******************************************************/
    236 /* ライブラリを定義します*/
     234/* ライブラリを定義します*/
    237235/******************************************************/
    238236void i2c_Init(mrb_state *mrb)
Note: See TracChangeset for help on using the changeset viewer.