ВНИМАНИЕ! На форуме начался конкурс - астрофотография месяца - ИЮЛЬ!
0 Пользователей и 1 Гость просматривают эту тему.
не знаю пока насчёт дипскай и прочего на данный момент стоит задача добиться стабильности кадров, чтоб без брака, а пока что от 10 до 30% с нарушением цвета. Снимаю то, что видно в окно, то есть луну,да окрестности.
`timescale 1ms / 1ns//////////////////////////////////////////////////////////////////////////////////// Company: // Engineer: // Create Date: 31.08.2013 20:38:09// Module Name: adc_spi. настройка ацп по спи//////////////////////////////////////////////////////////////////////////////////module adc_spi( // Clock input wire clock, input wire init_en, input wire [5:0]Gain_Reg, // = 6'h3F; input wire [7:0]Offset_Reg,// = 8'hFF; // ADC Out output reg adc_sload, output wire adc_sclk, output reg adc_sdata);reg [7:0] p;reg[5:0] num;always @ ( posedge clock ) begin if(!init_en) begin p <= 0; num <= 6'd0;//[b]обнуление переменных перед началом счёта байт инициализации[/b] end else begin case (p) 0,17,34,51: adc_sload <= 1'b1; default: adc_sload <= 1'b0;// endcase p <= (p == 51) ? 51 : p + 1; if(!adc_sload) begin num <= num + 1'b1; case (num) 6'd8: adc_sdata <= 1'b1; //bit10 Internal VREF 6'd10: adc_sdata <= 1'b1; //bit12 CDS 1 CH Red //=========================================================================== 6'd17: adc_sdata <= 1'b1; //bit20 addr Gain_Reg_ 6'd25: adc_sdata <= Gain_Reg[5]; //bit28 6'd26: adc_sdata <= Gain_Reg[4]; //bit29 6'd27: adc_sdata <= Gain_Reg[3]; //bit30 6'd28: adc_sdata <= Gain_Reg[2]; //bit31 6'd29: adc_sdata <= Gain_Reg[1]; //bit32 6'd30: adc_sdata <= Gain_Reg[0]; //bit33 //========================================================================== 6'd32: adc_sdata <= 1'b1; //bit36 addr Offset_Reg_ 6'd34: adc_sdata <= 1'b1; //bit38 addr Offset_Reg_ //6'd38: adc_sdata <= 1'b0;//Offset_Reg[7];//bit42 знак . 1'b1 -, 1'b0 + 6'd39: adc_sdata <= Offset_Reg[7]; //bit43 6'd40: adc_sdata <= Offset_Reg[6]; //bit44 6'd41: adc_sdata <= Offset_Reg[5]; //bit45 6'd42: adc_sdata <= Offset_Reg[4]; //bit46 6'd43: adc_sdata <= Offset_Reg[3]; //bit47 6'd44: adc_sdata <= Offset_Reg[2]; //bit48 6'd45: adc_sdata <= Offset_Reg[1]; //bit49 6'd46: adc_sdata <= Offset_Reg[0]; //bit50 default: adc_sdata <= 1'b0;//все остальные endcase end else if(num==6'd46) num <= 6'd0; endendassign adc_sclk = ~clock;initialbeginnum = 6'd0; p = 1'b0; //t = 1'b0; adc_sload = 1'b1;endendmodule
Но он инициализируется перед каждым кадром (?) .
//===========================================================================================================//===================== ЗАПИСЬ ПОЛЬЗОВАТЕЛЬСКИХ НАСТРОЕК В ФАЙЛ userdata.txt ================================//=========================================================================================================== void write_wert(void)//{ String^ fileName = "userdata.txt"; StreamWriter^ sw = gcnew StreamWriter(fileName); sw->WriteLine(+Fsize+" "+SelIndex+" "+number+" "+gain+" "+offset+"");// запись значений sw->Close();}//===========================================================================================================//====================== ЧИТАЕМ ПОЛЬЗОВАТЕЛЬСКИЕ НАСТРОЙКА С ФАЙЛА userdata.txt =============================//===========================================================================================================void read_nastroiki() { FILE *file = NULL; unsigned int fs, si, nn, gg, oo; file = fopen("userdata.txt", "rb"); fscanf(file, "%d%d%d%d%d", &fs, &si, &nn, &gg, &oo); Fsize = fs;//формат кадра SelIndex = si;//выдержка number = nn;//кол-во кадров gain = gg;//усиление АЦП offset = oo;//смещение АЦП fclose(file);}
num <=
Помню германо-сирийский зоопарк. Если требуется дебаеризовать или ещё что-то - делать до этого.