• R/O
  • SSH
  • HTTPS

cc1101driver: List of commits


RSS
Rev. Time Author
r119 2011-01-20 16:34:47 blackzoro

CC1101のスリープモードに4つの種類のスリープモードがあるとのことで、
これに沿って電流消費がカットできるかテストする。
CC1101データシートP.8の内容”4 Electrical Specifications”


2011年1月20日 16:32

r118 2011-01-20 16:32:26 blackzoro

(empty log message)

r117 2011-01-20 16:32:07 blackzoro

各動作モード時の電流消費の項目を追加。

r116 2011-01-20 15:21:13 blackzoro

CC1101電源カット時+ATmega88スリープ = 38uA


しかしディップスイッチが1つON時だと113uAになる。

ディップスイッチ1個ONで75uA上昇している。


基板1101001

r115 2011-01-20 14:54:11 blackzoro

6番スイッチ=ONでCC1101の電源OFF
5番スイッチ=ONでCC1101のスリープモードへ

r114 2011-01-20 13:44:12 blackzoro

ATmega88 + CC1101両方ともスリープモードにもっていった場合は電流消費296uA

ATmega88 だけスリープモードにもって行った場合の電流消費量は1.86mA

このようになった。

2011年1月20日 13:40

r113 2011-01-20 13:28:32 blackzoro

割り込みが入ったときにディップスイッチボタン5,6番が両方ONになっているかを確認して、

両方ONならば割り込みルーチン抜けた後CC1101 + ATmega88をスリープモードへ
そうでなければATmega88のみをスリープモードへ。

r112 2011-01-20 11:40:05 blackzoro

MCU種別列を追加。

r111 2011-01-20 11:27:35 blackzoro

spi_signalpin_opendrain_active関数
spi_signalpin_opendrain_nonactive関数

この関数内の

B_CTLの端子を入力モードに切り替えてはいインピーダンスにする機能を削除。

r110 2011-01-20 10:41:39 blackzoro

eepromの0x00番地の値で周波数の微調整を行えるように設定

r109 2011-01-20 09:41:11 blackzoro

(empty log message)

r108 2011-01-19 20:52:33 blackzoro

(empty log message)

r107 2011-01-19 20:50:26 blackzoro

(empty log message)

r106 2011-01-19 18:48:45 blackzoro

エクセルファイルにデータを渡せるようにするため、テキストデータを編集。

r105 2011-01-19 18:35:28 blackzoro

eepromからのデータ読み込み成功。

r104 2011-01-19 18:19:13 blackzoro

現在の内部に入っていたEEPROMデータの内容を保存

r103 2011-01-19 18:08:31 blackzoro

eepromに書き込みできるようにした。

http://avrwiki.jpn.ph/wiki.cgi?page=Getting+Started+Notes+-+EEPROM

このサイトで確認

r102 2011-01-19 17:51:04 blackzoro

(empty log message)

r101 2011-01-19 11:39:10 blackzoro

基板1101004番でテスト時のキャリア周波数確認(ATmega48搭載)


0xC0の時 426.3625MHz nearly 426.362152設定
実際の周波数 426.374360MHz出力

0x80の時 426.4625MHz nearly 426.462128設定
実際の周波数 426.474360MHz出力

0x40の時 426.5625MHz 設定
実際の周波数 426.5759225MHz出力

0x00の時 426.6625MHz(Ch17) nearly 426.662476設定
実際の周波数 426.6759225MHz出力


だいたい理論値と実際の周波数では-13.4225kHzぐらいのずれがあることが分かった。

r100 2011-01-19 11:16:11 blackzoro

(empty log message)

r99 2011-01-19 11:15:39 blackzoro

ディップスイッチのプルアップ抵抗はATmega88の内部プルアップにすることにする。

r98 2011-01-19 09:42:39 blackzoro

(empty log message)

r97 2011-01-19 09:32:08 blackzoro

2011/1/19R8,R9,R7,R6,R5,R4の抵抗をはずす。スイッチ回路部分の入力はATmega88の内部抵抗でプルアップすること。   

r96 2011-01-19 09:30:32 blackzoro

2011/1/19R8,R9,R7,R6,R5,R4の抵抗をはずす。スイッチ回路部分の入力はATmega88の内部抵抗でプルアップすること。   

r95 2011-01-18 22:27:04 blackzoro

INT1内のステートの一部を変更。

r94 2011-01-18 22:22:57 blackzoro

void cc1101_carrier_waveoutput_setup(u8 input_data,u8 * pt_data)関数内で



//fosc chech
cc1100_write_reg(CC1100_REG_IOCFG2, CC1100_GDOx_CLK_XOSC_1);

fosc周波数を出力するようにして周波数を確認できるように設定。

r93 2011-01-18 22:10:07 blackzoro

基板1101002番でテスト時のキャリア周波数確認


0xC0の時 426.3625MHz nearly 426.362152設定
実際の周波数 426.386860MHz出力

0x80の時 426.4625MHz nearly 426.462128設定
実際の周波数 426.486860MHz出力

0x40の時 426.5625MHz 設定
実際の周波数 426.586860MHz出力

0x00の時 426.6625MHz(Ch17) nearly 426.662476設定
実際の周波数 426.686860MHz出力


だいたい理論値と実際の周波数では-24.36kHzぐらいのずれがあることが分かった。

r92 2011-01-18 20:59:23 blackzoro

void cc1101_carrier_waveoutput_setup(u8 input_data,u8 * pt_data)


この関数を宣言しさえすれば、キャリア波のみを出力できるようになる。


注意:
PATABLE[0]のバイトとPATABLE[1]のバイトには必ず同じ数値を入れること。
数値がそれぞれ別だと、キャリア波だけでなくスプリアスが出力されてしまう。

(例) 10dBのキャリア波出力を出したい場合は
u8 pt_data[] = {0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00};//10dB

とすること。

悪い例:
u8 pt_data[] = {0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00};//10dB
など

r91 2011-01-18 20:38:08 blackzoro

(empty log message)

r90 2011-01-18 19:19:31 blackzoro

u8 pt_data[] = {0x60,0x34,0x00,0x00,0x00,0x00,0x00,0x00}; //-10dB


このような設定にするとスプリアスが出てしまう。

Show on old repository browser