ともさんのHP >ものつくり >2次元CCDを使った自作カメラ >天体写真用冷却CCDカメラの製作(CCDの制御 ソフトウエア)

天体写真用冷却CCDカメラの製作(CCDの制御 ソフトウエア)

 11の各動作をC言語の関数に直したのが下。実際にこのソフトで動かしたことがないのでたぶんこのままでは動かないと思うけど、それほど間違ってはいないはず。

 「何かいてあるのかさっぱりわからない」という方は、C言語の勉強をされることをお勧めします。

/*

CCD-TC245駆動用信号を出すための関数集

2003/01/31

端子割り当て

P4-5 IAG

P4-4 SAG

P4-3 SRG3

P4-2 SRG2

P4-1 SRG1

P4-0 TRG

信号はDS0026を通すので反転する。

ストレージエリアクリア動作の信号発送順

*内を247回繰り返す。

1111 1111 FF

* 1111 1110 FE

* 1110 1110 EE

* 1110 0001 E1

* 1111 0001 F1

1111 1111 FF

イメージエリアクリア動作の信号発送順

*内を247回繰り返す。(242か?)

500回でイメージ、ストレージエリアすべてをクリア

1111 1111 FF

* 1111 1110 FE

* 1110 1110 EE

* 1100 0001 C1

* 1101 0001 D1

1111 1111 FF

ストレージエリア内のdataを1行移動して3つをビニングする動作

* 1111 1111 FF

* 1111 1110 FE

* 1111 1111 FF

* 1111 1110 FE

* 1111 1111 FF

* 1111 1110 FE

* 1111 0001 F1

* 1110 1111 EF

* 1111 1111 FF

* 1ピクセル移動 11+252回

1ピクセル移動してad変換を行う動作

最初の11ピクセルは空なので捨ててしまう。

* 1111 1111 FF

* 1111 1101 FD

* 1111 1111 FF

* 1111 1011 FB

* 1111 1111 FF

* 1111 0111 F7

* AD変換

1111 1111 FF

*/

#include <h8/reg3067.h> /*I/Oアクセス用インクルード*/

//TC245制御の初期設定

void iniTc245( void );

//ストレージエリア内をきれいにする

void clearStArea( void );

//イメージ、ストレージエリア内をきれいにする

void clearImgArea( void );

//イメージエリアにあるdataをストレージエリアへ移動する

void moveImgArea( void );

//ストレージエリア内の1行のdataを1つ移動させてビニングをする

void move1Line(void);

//末端行に入っているDATAを1ピクセル動かす

void move1Pixel(void);

void move1Pixel(void)

{

P4DR = 0xff;

P4DR = 0xfd; asm( "nop" ); asm( "nop" );

P4DR = 0xff; asm( "nop" ); asm( "nop" );

P4DR = 0xfb; asm( "nop" ); asm( "nop" );

P4DR = 0xff; asm( "nop" ); asm( "nop" );

P4DR = 0xf7; asm( "nop" ); asm( "nop" );

return;

}

void move1Line(void)

{

P4DR = 0xff;

P4DR = 0xfe; asm( "nop" ); asm( "nop" );

P4DR = 0xff; asm( "nop" ); asm( "nop" );

P4DR = 0xfe; asm( "nop" ); asm( "nop" );

P4DR = 0xff; asm( "nop" ); asm( "nop" );

P4DR = 0xfe; asm( "nop" ); asm( "nop" );

P4DR = 0xf1; asm( "nop" ); asm( "nop" );

P4DR = 0xef; asm( "nop" ); asm( "nop" );

P4DR = 0xff;

return;

}

void moveImgArea( void )

{

int I;

P4DR = 0xff;

for(I=0;I<247;I++){

P4DR = 0xfe; asm( "nop" ); asm( "nop" );

P4DR = 0xee; asm( "nop" ); asm( "nop" );

P4DR = 0xc1; asm( "nop" ); asm( "nop" );

P4DR = 0xd1; asm( "nop" ); asm( "nop" );

}

P4DR = 0xff;

return;

}

void clearImgArea( void )

{

int I;

P4DR = 0xff;

for(I=0;I<500;I++){

P4DR = 0xfe; asm( "nop" ); asm( "nop" );

P4DR = 0xee; asm( "nop" ); asm( "nop" );

P4DR = 0xc1; asm( "nop" ); asm( "nop" );

P4DR = 0xd1; asm( "nop" ); asm( "nop" );

}

P4DR = 0xff;

return;

}

void clearStArea( void )

{

int I;

P4DR = 0xff;

for(I=0;I<247;I++){

P4DR = 0xfe; asm( "nop" ); asm( "nop" );

P4DR = 0xee; asm( "nop" ); asm( "nop" );

P4DR = 0xe1; asm( "nop" ); asm( "nop" );

P4DR = 0xf1; asm( "nop" ); asm( "nop" );

}

P4DR = 0xff;

return;

}

void iniTc245( void )

{

P4DR = 0xff;

P4DDR = 0x3f; //Port4-5〜0を出力に設定

P4DR = 0xff;

return;

}/**/

最終更新日: 2003-01-31 00:00:00

ともさんのHP >ものつくり >2次元CCDを使った自作カメラ >天体写真用冷却CCDカメラの製作(CCDの制御 ソフトウエア)

このエントリーをはてなブックマークに追加
広告
おすすめ記事
新着ページ

ツールチップの表示  
アイコンの差し替え  
日本ミツバチ用重箱式巣箱の各部名称と機能  
柿の消毒  
IMEの自動設定  
みつばち日記  
初心者用巣箱その1  
アプリ終了時にダイアログを表示  
書類の整理方法  
人用の型紙をドール用に変換  
スイートピーの栽培、手入れ、増やしかた  

私の他のサイト

ともさんの箱庭(ブログ)
家庭菜園
3D-CAD
洋裁CAD

いいねなど

 RSS 
PageSpeedInsights
html5チェック

Author: Tomoyuki Ito

このサイトの文章・写真の無断転載を禁じます