make it volatile
This commit is contained in:
parent
4d2ea6013c
commit
de7143887d
|
@ -136,13 +136,12 @@ std::vector<std::string> B15F::getBoardInfo(void)
|
|||
while(n--)
|
||||
{
|
||||
uint8_t len = usart.readByte();
|
||||
std::cout << (int) len << std::endl;
|
||||
std::string str;
|
||||
|
||||
while(len--)
|
||||
while(len--) {
|
||||
str += static_cast<char>(usart.readByte());
|
||||
|
||||
std::cout << str << std::endl;
|
||||
}
|
||||
|
||||
info.push_back(str);
|
||||
}
|
||||
|
||||
|
@ -215,7 +214,7 @@ uint16_t B15F::analogRead(uint8_t channel)
|
|||
return usart.readInt();
|
||||
}
|
||||
|
||||
bool B15F::analogSequence(uint8_t channel_a, uint16_t* buffer_a, uint32_t offset_a, uint8_t channel_b, uint16_t* buffer_b, uint32_t offset_b, uint16_t start, int16_t delta, uint16_t count)
|
||||
void B15F::analogSequence(uint8_t channel_a, uint16_t* buffer_a, uint32_t offset_a, uint8_t channel_b, uint16_t* buffer_b, uint32_t offset_b, uint16_t start, int16_t delta, uint16_t count)
|
||||
{
|
||||
buffer_a += offset_a;
|
||||
buffer_b += offset_b;
|
||||
|
@ -239,13 +238,15 @@ bool B15F::analogSequence(uint8_t channel_a, uint16_t* buffer_a, uint32_t offset
|
|||
{
|
||||
buffer_a[i] = usart.readInt();
|
||||
buffer_b[i] = usart.readInt();
|
||||
if(buffer_a[i] > 1023 || buffer_b[i] > 1023)
|
||||
std::cout << PRE << "bad data detected" << std::endl;
|
||||
}
|
||||
|
||||
uint8_t aw = usart.readByte();
|
||||
if(aw == MSG_OK)
|
||||
return aw;
|
||||
|
||||
throw DriverException("Sequenz unterbrochen");
|
||||
if(aw != MSG_OK)
|
||||
throw DriverException("Sequenz unterbrochen");
|
||||
|
||||
delay_us(1);
|
||||
}
|
||||
|
||||
void B15F::delay_ms(uint16_t ms)
|
||||
|
|
|
@ -162,7 +162,7 @@ public:
|
|||
* \param count Anzahl an Inkrementierungen
|
||||
* \throws DriverException
|
||||
*/
|
||||
bool analogSequence(uint8_t channel_a, uint16_t* buffer_a, uint32_t offset_a, uint8_t channel_b, uint16_t* buffer_b, uint32_t offset_b, uint16_t start, int16_t delta, uint16_t count);
|
||||
void analogSequence(uint8_t channel_a, uint16_t* buffer_a, uint32_t offset_a, uint8_t channel_b, uint16_t* buffer_b, uint32_t offset_b, uint16_t start, int16_t delta, uint16_t count);
|
||||
|
||||
/*************************/
|
||||
|
||||
|
|
Binary file not shown.
|
@ -132,7 +132,7 @@ private:
|
|||
int file_desc = -1; // Linux Dateideskriptor
|
||||
uint32_t baudrate = 9600;
|
||||
int TEST = 0;
|
||||
uint8_t timeout = 10; // in Dezisekunden
|
||||
uint8_t timeout = 5; // in Dezisekunden
|
||||
uint8_t block_buffer[MAX_BLOCK_SIZE + 3];
|
||||
|
||||
// debug statistics
|
||||
|
|
|
@ -2,35 +2,19 @@ set margin 10,10
|
|||
unset key
|
||||
set grid
|
||||
set title ''
|
||||
set xlabel 'U_{GS} [V]'
|
||||
set xlabel 'U_{DS} [V]'
|
||||
set ylabel 'I_D [mA]'
|
||||
set xrange [5:0]
|
||||
set x2range [5:0]
|
||||
set y2range [0:50]
|
||||
set xrange [0:5]
|
||||
set yrange [0:50]
|
||||
set label at 2,36 'U_{DS} [V] = 300' right
|
||||
set label at 2,33 'U_{DS} [V] = 325' right
|
||||
set label at 2,21 'U_{DS} [V] = 350' right
|
||||
set label at 2,38 'U_{DS} [V] = 375' right
|
||||
set label at 2,23 'U_{DS} [V] = 400' right
|
||||
set label at 2,23 'U_{DS} [V] = 425' right
|
||||
set label at 2,24 'U_{DS} [V] = 450' right
|
||||
set label at 2,24 'U_{DS} [V] = 475' right
|
||||
set label at 2,25 'U_{DS} [V] = 500' right
|
||||
set label at 2,5 'U_{DS} [V] = 525' right
|
||||
set label at 2,6 'U_{DS} [V] = 550' right
|
||||
set label at 2,13 'U_{DS} [V] = 575' right
|
||||
set label at 2,13 'U_{DS} [V] = 600' right
|
||||
set label at 2,13 'U_{DS} [V] = 625' right
|
||||
set label at 2,2 'U_{DS} [V] = 650' right
|
||||
set label at 2,2 'U_{DS} [V] = 675' right
|
||||
set label at 2,6 'U_{DS} [V] = 700' right
|
||||
set label at 2,2 'U_{DS} [V] = 725' right
|
||||
set label at 2,2 'U_{DS} [V] = 725' right
|
||||
set y2tics
|
||||
unset ytics
|
||||
set ytics format ''
|
||||
set label at 4,3 'U_{GS} [V] = 460' left
|
||||
set label at 4,7 'U_{GS} [V] = 480' left
|
||||
set label at 3,13 'U_{GS} [V] = 500' left
|
||||
set label at 2,22 'U_{GS} [V] = 520' left
|
||||
set label at 1,32 'U_{GS} [V] = 540' left
|
||||
set label at 0,38 'U_{GS} [V] = 560' left
|
||||
set label at 0,38 'U_{GS} [V] = 580' left
|
||||
set label at 0,38 'U_{GS} [V] = 600' left
|
||||
unset output
|
||||
set terminal qt
|
||||
unset output
|
||||
plot "/tmp/tempfile1" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 300' w l,"/tmp/tempfile2" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 325' w l,"/tmp/tempfile3" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 350' w l,"/tmp/tempfile4" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 375' w l,"/tmp/tempfile5" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 400' w l,"/tmp/tempfile6" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 425' w l,"/tmp/tempfile7" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 450' w l,"/tmp/tempfile8" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 475' w l,"/tmp/tempfile9" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 500' w l,"/tmp/tempfile10" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 525' w l,"/tmp/tempfile11" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 550' w l,"/tmp/tempfile12" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 575' w l,"/tmp/tempfile13" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 600' w l,"/tmp/tempfile14" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 625' w l,"/tmp/tempfile15" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 650' w l,"/tmp/tempfile16" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 675' w l,"/tmp/tempfile17" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 700' w l,"/tmp/tempfile18" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 725' w l,"/tmp/tempfile19" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{DS} [V] = 750' w l
|
||||
plot "/tmp/tempfile0" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{GS} [V] = 440' w l,"/tmp/tempfile1" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{GS} [V] = 460' w l,"/tmp/tempfile2" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{GS} [V] = 480' w l,"/tmp/tempfile3" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{GS} [V] = 500' w l,"/tmp/tempfile4" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{GS} [V] = 520' w l,"/tmp/tempfile5" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{GS} [V] = 540' w l,"/tmp/tempfile6" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{GS} [V] = 560' w l,"/tmp/tempfile7" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{GS} [V] = 580' w l,"/tmp/tempfile8" using ($1*0.004888):($2*0.048876) binary format="%int16%int16" endian=big title 'U_{GS} [V] = 600' w l
|
||||
|
|
BIN
driver/main
BIN
driver/main
Binary file not shown.
|
@ -13,8 +13,8 @@ void kennlinieErsterQuadrant()
|
|||
uint16_t ba[1024];
|
||||
uint16_t bb[1024];
|
||||
|
||||
const uint16_t sample_count = 100;
|
||||
const uint16_t delta = 10;
|
||||
const uint16_t sample_count = 1024;
|
||||
const uint16_t delta = 1;
|
||||
|
||||
const uint16_t u_gs_start = 440;
|
||||
const uint16_t u_gs_delta = 20;
|
||||
|
@ -37,11 +37,11 @@ void kennlinieErsterQuadrant()
|
|||
drv.analogWrite1(u_gs);
|
||||
|
||||
drv.analogSequence(0, &ba[0], 0, 1, &bb[0], 0, 0, delta, sample_count);
|
||||
drv.delay_ms(10);
|
||||
drv.discard();
|
||||
drv.delay_ms(10);
|
||||
//drv.delay_ms(10);
|
||||
//drv.discard();
|
||||
//drv.delay_ms(10);
|
||||
|
||||
for(uint16_t k = 0; k < sample_count+1; k++)
|
||||
for(uint16_t k = 0; k < sample_count; k++)
|
||||
{
|
||||
uint16_t i_d = ba[k] - bb[k];
|
||||
uint16_t u_ds = bb[k];
|
||||
|
@ -64,7 +64,7 @@ void kennlinieZweiterQuadrant()
|
|||
uint16_t ba[1024];
|
||||
uint16_t bb[1024];
|
||||
|
||||
const uint16_t sample_count = 1000;
|
||||
const uint16_t sample_count = 1024;
|
||||
const uint16_t delta = 1;
|
||||
|
||||
const uint16_t u_gs_start = 300;
|
||||
|
@ -91,9 +91,9 @@ void kennlinieZweiterQuadrant()
|
|||
drv.analogSequence(0, &ba[0], 0, 1, &bb[0], 0, 0, delta, sample_count);
|
||||
|
||||
curve = 0;
|
||||
for(uint16_t k = 0; k < sample_count + 1; k++)
|
||||
for(uint16_t k = 0; k < sample_count; k++)
|
||||
{
|
||||
if(ba[k] > bb[k] && bb[k] % 50 == 0 && bb[k] > 0)
|
||||
if(ba[k] > bb[k] && bb[k] % 50 == 0 && bb[k] != 0)
|
||||
{
|
||||
uint16_t i_d = ba[k] - bb[k];
|
||||
pf.addDot(Dot(u_gs, i_d, bb[k] / 50));
|
||||
|
@ -143,7 +143,8 @@ void testFunktionen()
|
|||
int main()
|
||||
{
|
||||
|
||||
testFunktionen();
|
||||
kennlinieZweiterQuadrant();
|
||||
kennlinieErsterQuadrant();
|
||||
|
||||
std::cout << "Schluss." << std::endl;
|
||||
}
|
||||
|
|
BIN
driver/main.o
BIN
driver/main.o
Binary file not shown.
BIN
driver/test_plot
BIN
driver/test_plot
Binary file not shown.
Binary file not shown.
|
@ -3,36 +3,36 @@
|
|||
:100020000C9489000C9489000C9489000C9489002C
|
||||
:100030000C9489000C9489000C9489000C9489001C
|
||||
:100040000C9489000C9489000C9489000C9489000C
|
||||
:100050000C9484080C9489000C94AE080C948900CC
|
||||
:100050000C949B080C9489000C94C5080C9489009E
|
||||
:100060000C9489000C9489000C9489000C948900EC
|
||||
:100070000C9489000C9489000C9489000C948900DC
|
||||
:100080000C9489000C9489000C948900FD000001F7
|
||||
:100090000301E900060109010C010F011201E7004B
|
||||
:1000A000FA00150142093F093C091A0939093609C4
|
||||
:1000B000330930092D0918092A094509480911246D
|
||||
:1000A000FA001501590956095309310950094D093A
|
||||
:1000B0004A09470944092F0941095C095F091124CC
|
||||
:1000C0001FBECFEFD0E4DEBFCDBF11E0A0E0B1E0B6
|
||||
:1000D000E2E0F3E100E00BBF02C007900D92AE3208
|
||||
:1000E000B107D9F722E0AEE2B1E001C01D92AB3218
|
||||
:1000D000E0E3F3E100E00BBF02C007900D92AE3207
|
||||
:1000E000B107D9F722E0AEE2B1E001C01D92AB3812
|
||||
:1000F000B207E1F710E0CFE5D0E004C02197FE01A0
|
||||
:100100000E947609CE35D107C9F70E94D8080C9411
|
||||
:100110007F090C9400008AE292E00E94190160E0DD
|
||||
:1001200087E292E00E945C016FEF87E292E00E941A
|
||||
:100130007D0160E084E292E00E945C016FEF84E266
|
||||
:1001400092E00E947D016FEF81E292E00E947D01CA
|
||||
:100150008AE192E00E9454028FE291E00E944C03F7
|
||||
:100100000E948D09CE35D107C9F70E94EF080C94E3
|
||||
:1001100096090C9400008AE892E00E94190160E0C0
|
||||
:1001200087E892E00E945C016FEF87E892E00E940E
|
||||
:100130007D0160E084E892E00E945C016FEF84E85A
|
||||
:1001400092E00E947D016FEF81E892E00E947D01C4
|
||||
:100150008AE792E00E9454028FE291E00E944C03F1
|
||||
:100160008FE291E00E946C03789484B7877F84BF0C
|
||||
:10017000109260000FB6F894A89580916000886195
|
||||
:1001800080936000109260000FBE0895CF9398E0B6
|
||||
:1001900088E10FB6F894A895809360000FBE909305
|
||||
:1001A0006000A8958FE291E00E94D504C82F682FC7
|
||||
:1001B00084E292E00E949E018C2F90E0FC01319736
|
||||
:1001C000EC30F10530F4EA5BFF4F0C9476090E94A5
|
||||
:1001D000E3078FE291E00E946C030FB6F894A895B4
|
||||
:1001A0006000A8958FE291E00E94E904C82F682FB3
|
||||
:1001B00084E892E00E949E018C2F90E0FC01319730
|
||||
:1001C000EC30F10530F4EA5BFF4F0C948D090E948E
|
||||
:1001D000FA078FE291E00E946C030FB6F894A8959D
|
||||
:1001E00080916000886180936000109260000FBE73
|
||||
:1001F000CF9108950E94F907ECCF0E942A07E9CF1A
|
||||
:100200000E944307E6CF0E946A07E3CF0E947F0760
|
||||
:10021000E0CF0E949507DDCF0E94AB07DACF0E94A6
|
||||
:10022000BC07D7CF0E94CD07D4CF0E940F08D1CFF3
|
||||
:1001F000CF9108950E941008ECCF0E944107E9CFEB
|
||||
:100200000E945A07E6CF0E948107E3CF0E9496071B
|
||||
:10021000E0CF0E94AC07DDCF0E94C207DACF0E9478
|
||||
:10022000D307D7CF0E94E407D4CF0E942608D1CFAE
|
||||
:10023000089584B1806B84B926988AB18C618AB99B
|
||||
:1002400080E58CBD81E08DBD8BB1837E8BB95A9AE0
|
||||
:100250005B9A5C9A08958BB1837E8BB98BB160FDFC
|
||||
|
@ -42,268 +42,270 @@
|
|||
:10029000892B8BB98BB162FFF0CF90E1892B8BB9A1
|
||||
:1002A00008956EBD0DB407FEFDCF8EB50895FC0117
|
||||
:1002B00071836083428308951F93CF93DF93EC0192
|
||||
:1002C000162F6A81888199810E942B0160E48881C0
|
||||
:1002D00099810E94510160E0888199810E945101B9
|
||||
:1002E000612F888199810E94510167E088819981FD
|
||||
:1002C000162F6A81888199810E942B0188819981EA
|
||||
:1002D00060E40E9451018881998160E00E9451018F
|
||||
:1002E00088819981612F0E9451018881998167E0FD
|
||||
:1002F000DF91CF911F910C942B011F93CF93DF932C
|
||||
:10030000EC01162F6A81888199810E942B0160E49B
|
||||
:10031000888199810E94510161E0888199810E94C0
|
||||
:100320005101612F888199810E94510167E0888184
|
||||
:100330009981DF91CF911F910C942B011F93CF9343
|
||||
:10030000EC01162F6A81888199810E942B018881D6
|
||||
:10031000998160E40E9451018881998161E00E9485
|
||||
:10032000510188819981612F0E94510188819981B1
|
||||
:1003300067E0DF91CF911F910C942B011F93CF9316
|
||||
:10034000DF93EC01162F6A81888199810E942B012D
|
||||
:1003500060E4888199810E94510162E188819981DC
|
||||
:100360000E945101612F888199810E94510167E0AB
|
||||
:1003700088819981DF91CF911F910C942B011F935C
|
||||
:100350008881998160E40E9451018881998162E1DC
|
||||
:100360000E94510188819981612F0E9451018881E9
|
||||
:10037000998167E0DF91CF911F910C942B011F931E
|
||||
:10038000CF93DF93EC01162F6A81888199810E94B7
|
||||
:100390002B0160E4888199810E94510163E1888189
|
||||
:1003A00099810E945101612F888199810E94510198
|
||||
:1003B00067E088819981DF91CF911F910C942B0187
|
||||
:100390002B018881998160E40E94510188819981B3
|
||||
:1003A00063E10E94510188819981612F0E9451016E
|
||||
:1003B0008881998167E0DF91CF911F910C942B0187
|
||||
:1003C0001F93CF93DF93EC016A81888199810E940A
|
||||
:1003D0002B0161E4888199810E94510162E1888149
|
||||
:1003E00099810E94510160E0888199810E945101A8
|
||||
:1003F000182F67E0888199810E942B01812FDF915E
|
||||
:1003D0002B018881998161E40E9451018881998172
|
||||
:1003E00062E10E9451018881998160E00E9451017F
|
||||
:1003F000182F8881998167E00E942B01812FDF915E
|
||||
:10040000CF911F9108951F93CF93DF93EC016A81E1
|
||||
:10041000888199810E942B0161E4888199810E94E1
|
||||
:10042000510163E1888199810E94510160E08881D6
|
||||
:1004300099810E945101182F67E0888199810E945B
|
||||
:10041000888199810E942B018881998161E40E94E1
|
||||
:1004200051018881998163E10E94510188819981FC
|
||||
:1004300060E00E945101182F8881998167E00E9435
|
||||
:100440002B01812FDF91CF911F910895FC017183C2
|
||||
:100450006083428308950F931F93CF93DF93EC0142
|
||||
:100460008B016A81888199810E942B01B801002447
|
||||
:10047000660F771F001C660F771F001C672F702DFB
|
||||
:10048000888199810E945101602F660F660F8881D3
|
||||
:1004900099810E94510167E088819981DF91CF9114
|
||||
:100460008B016A81888199810E942B018881998101
|
||||
:10047000B8010024660F771F001C660F771F001C51
|
||||
:10048000672F702D0E94510188819981602F660F1E
|
||||
:10049000660F0E9451018881998167E0DF91CF91B9
|
||||
:1004A0001F910F910C942B0110927C0087E8809390
|
||||
:1004B0007A00089580917C00807E682B60937C0098
|
||||
:1004C00080917A00806480937A0083EA91E00197BA
|
||||
:1004D000F1F700C0000080917A0086FDFCCF80918A
|
||||
:1004E00078009091790008950F931F93CF93DF9335
|
||||
:1004F00061E087E292E00E949E01C1E0D0E001E06D
|
||||
:1004F00061E087E892E00E949E01C1E0D0E001E067
|
||||
:1005000010E02FEF84E39CE0215080409040E1F721
|
||||
:1005100000C00000B8010C2E01C0660F0A94EAF773
|
||||
:1005200087E292E00E949E012196C930D10549F7E9
|
||||
:1005200087E892E00E949E012196C930D10549F7E3
|
||||
:10053000DF91CF911F910F9108950F931F93CF9348
|
||||
:10054000DF9361E084E292E00E949E01C1E0D0E08E
|
||||
:10054000DF9361E084E892E00E949E01C1E0D0E088
|
||||
:1005500001E010E02FEF84E39CE0215080409040C8
|
||||
:10056000E1F700C00000B8010C2E01C0660F0A942C
|
||||
:10057000EAF784E292E00E949E012196C930D105FB
|
||||
:10057000EAF784E892E00E949E012196C930D105F5
|
||||
:1005800049F7DF91CF911F910F910895CF93DF939A
|
||||
:10059000C0E0D0E0BE018EE192E00E942B0287E82D
|
||||
:10059000C0E0D0E0BE018EE792E00E942B0287E827
|
||||
:1005A00093E10197F1F700C000002196C11594E096
|
||||
:1005B000D90781F72FE78AE196E0215080409040EB
|
||||
:1005C000E1F700C0000060E070E08EE192E0DF91B2
|
||||
:1005C000E1F700C0000060E070E08EE792E0DF91AC
|
||||
:1005D000CF910C942B02CF93DF93C0E0D0E0BE010B
|
||||
:1005E0008BE192E00E942B0287E893E10197F1F7FB
|
||||
:1005E0008BE792E00E942B0287E893E10197F1F7F5
|
||||
:1005F00000C000002196C11594E0D90781F72FE7CC
|
||||
:100600008AE196E0215080409040E1F700C0000070
|
||||
:1006100060E070E08BE192E0DF91CF910C942B02CF
|
||||
:1006100060E070E08BE792E0DF91CF910C942B02C9
|
||||
:100620000FB6F894A895809160008861809360006F
|
||||
:10063000109260000FBE60E08AE192E00E945A02D0
|
||||
:10064000BC018EE192E00E942B0261E08AE192E01F
|
||||
:100650000E945A02BC018BE192E00E942B0287E2C9
|
||||
:1006600092E00E940302682F87E292E00E949E01BE
|
||||
:1006700081E292E00E940302682F84E292E00E94ED
|
||||
:10063000109260000FBE60E08AE792E00E945A02CA
|
||||
:10064000BC018EE792E00E942B0261E08AE792E013
|
||||
:100650000E945A02BC018BE792E00E942B0287E8BD
|
||||
:1006600092E00E940302682F87E892E00E949E01B8
|
||||
:1006700081E892E00E940302682F84E892E00E94E1
|
||||
:100680009E01D9CF0E9474020E949D020E94C60260
|
||||
:100690000E94EB020E94100322E02093C00028ED8C
|
||||
:1006A0002093C10026E02093C2001092C50024E1EF
|
||||
:1006B0002093C40086519F4FFC01108208958091C1
|
||||
:1006B0002093C400865B9E4FFC01108208958091B8
|
||||
:1006C000C6008FE792E00197F1F700C0000080912B
|
||||
:1006D000C00087FDF4CF089589519F4FFC0110821F
|
||||
:1006E00008959C01FC01E651FF4F90819111FDCFCF
|
||||
:1006F000F901E851FF4F10820895DC01A951BF4F65
|
||||
:1006D000C00087FDF4CF089589539F4FFC0110821D
|
||||
:1006E00008959C01FC01E65BFE4F90819111FDCFC6
|
||||
:1006F000F901E85BFE4F10820895DC01A953BF4F5A
|
||||
:100700002C9131E0320F3C933091C600FC01E20F96
|
||||
:10071000F11DE953FF4F30832C91FC01E953FF4F4A
|
||||
:10071000F11DE95BFF4F30832C91FC01E95BFF4F3A
|
||||
:10072000E081F0E0E050FF4F8081281720F01C921C
|
||||
:1007300081E080932E0108950F931F93CF93DF9351
|
||||
:10074000EC018C0108511F4FF801608187E292E0B3
|
||||
:10074000EC018C01085B1E4FF801608187E892E0A4
|
||||
:100750000E949E01F801908131968081981740F0A7
|
||||
:10076000C651DF4F1882DF91CF911F910F910895ED
|
||||
:10076000C65BDE4F1882DF91CF911F910F910895E4
|
||||
:100770008091C00085FFFCCFF801808191E0980F47
|
||||
:100780009083C80FD11D89818093C600DF91CF91DE
|
||||
:100790001F910F910895CF92DF92EF92FF920F93E6
|
||||
:1007A0001F93CF93DF93EC01C851DF4F28812111B4
|
||||
:1007B00009C0DF91CF911F910F91FF90EF90DF90D3
|
||||
:1007C000CF9008958C018881780199EEE90EF11C93
|
||||
:1007D000F701808318826801FAEECF0ED11C81E008
|
||||
:1007E000F6018083688187E292E00E949E019881F1
|
||||
:1007F000F7018081981778F49091C00095FFFCCFA5
|
||||
:10080000888191E0980F9883E801C80FD11D8981F4
|
||||
:100810008093C600CECFF6011082CBCFFC01E85109
|
||||
:10082000FF4F208131E0320F3083FC01E20FF11DD8
|
||||
:1008300061830895FC01E851FF4F208131E0320FC0
|
||||
:100840003083DC01A20FB11D11966C93208131E041
|
||||
:10085000320F3083FC01E20FF11D718308950F9375
|
||||
:100860001F93CF93DF938C01FC01E851FF4F8081F0
|
||||
:1008700091E0980F9083D801A80FB11D11964C9369
|
||||
:100880009FEF940F442361F0DB013D91208141E013
|
||||
:10089000420F4083E801C20FD11D39839150A8F760
|
||||
:1008A000DF91CF911F910F910895EF92FF920F93D7
|
||||
:1008B0001F93CF93DF937C01EC01C851DF4F8881F8
|
||||
:1008C00091E0980F9883F701E80FF11D41835FEFE6
|
||||
:1008D000540F442309F467C0FB0120E041E9BF0144
|
||||
:1008E0003191888191E0980F98838701080F111D3D
|
||||
:1008F000D80111963C93DB018C912827822F842705
|
||||
:1009000020FD282F30E035952795842F822720FD64
|
||||
:10091000282F30E035952795842F822720FD282F1A
|
||||
:1009200030E035952795842F822720FD282F30E051
|
||||
:1009300035952795842F822720FD282F30E0359587
|
||||
:100940002795942F922720FD292F30E03595279564
|
||||
:10095000942F922720FD292F30E035952795842F5D
|
||||
:10096000822720FD282F2695515008F0B8CF888186
|
||||
:1009700091E0980F9883F701E80FF11D2183F701AB
|
||||
:10098000E951FF4F808191E0980F9083D701A80F24
|
||||
:10099000B11DA953BF4F8C91DF91CF911F910F9142
|
||||
:1009A000FF90EF90089520E0E2CFFC01E951FF4F66
|
||||
:1009B000208131E0320F3083820F911DFC01E95319
|
||||
:1009C000FF4F80810895FC01E951FF4F208131E004
|
||||
:1009D000320F3083DC01A20FB11DA953BF4F2C9100
|
||||
:1009E000308141E0430F4083830F911DFC01E953A7
|
||||
:1009F000FF4F3081822F90E0932B0895CF93DF93A8
|
||||
:100A0000DC01EC01CB53DF4F888199818230910565
|
||||
:100A100009F467C0B0F4009709F440C0019759F495
|
||||
:100A20008C91FD01E80FF11DEF57FF4F608382E0CD
|
||||
:100A300090E0998388838C918F5F8C93DF91CF9125
|
||||
:100A400008958330910509F4D3C00497A1F78091EC
|
||||
:100A5000C6008FE792E00197F1F700C00000809197
|
||||
:100A6000C00087FDF4CFFD01EC53FF4F8081882348
|
||||
:100A700009F435C19EEFFD01E851FF4F808121E06F
|
||||
:100A8000280F2083FD01E80FF11D91831982188240
|
||||
:100A90008C918F5F8C93DF91CF910895613408F42E
|
||||
:100AA00020C18091C6008FE792E00197F1F700C066
|
||||
:100AB00000008091C00087FDF4CFFD01E851FF4F99
|
||||
:100AC000808191E0980F9083FD01E80FF11D8EEF7A
|
||||
:100AD0008183198218828C918F5F8C93DF91CF91E3
|
||||
:100AE00008958C91FD01E80FF11DEF57FF4F6083D2
|
||||
:100AF000FD01EC53FF4F808168276083808180FF78
|
||||
:100B000004C0908181E989278083808190E0959558
|
||||
:100B100087958083808180FF04C0908181E9892747
|
||||
:100B20008083808190E0959587958083808180FF88
|
||||
:100B300004C0908181E989278083808190E0959528
|
||||
:100B400087958083808180FF04C0908181E9892717
|
||||
:100B50008083808190E0959587958083808180FF58
|
||||
:100B600004C0908181E989278083808190E09595F8
|
||||
:100B700087958083808180FF04C0908181E98927E7
|
||||
:100B80008083808190E0959587958083808180FF28
|
||||
:100B900004C0908181E989278083808190E09595C8
|
||||
:100BA00087958083808180FF04C0908181E98927B7
|
||||
:100BB0008083808190E09595879580839C91FD014D
|
||||
:100BC000EF57FF4F8081981709F498C09C9180815E
|
||||
:100BD000981708F430CF8091C6008FE792E0019714
|
||||
:100BE000F1F700C000008091C00087FDF4CF65CF11
|
||||
:100BF0008C91FD01E80FF11DEF57FF4F6083FD0160
|
||||
:100C0000EC53FF4F808168276083808180FF04C0A0
|
||||
:100C1000908181E989278083808190E095958795EF
|
||||
:100C20008083808180FF04C0908181E9892780834F
|
||||
:100C3000808190E0959587958083808180FF04C0B6
|
||||
:100C4000908181E989278083808190E095958795BF
|
||||
:100C50008083808180FF04C0908181E9892780831F
|
||||
:100C6000808190E0959587958083808180FF04C086
|
||||
:100C7000908181E989278083808190E0959587958F
|
||||
:100C80008083808180FF04C0908181E989278083EF
|
||||
:100C9000808190E0959587958083808180FF04C056
|
||||
:100CA000908181E989278083808190E0959587955F
|
||||
:100CB0008083808180FF04C0908181E989278083BF
|
||||
:100CC000808190E095958795808384E090E099837A
|
||||
:100CD00088838C918F5F8C93DF91CF9108959FEFE4
|
||||
:100CE000CACEFD01EF57FF4F6083ED5BFF4F1082CF
|
||||
:100CF0001C9281E090E0998388839DCE83E090E010
|
||||
:100D00009983888398CECF92DF92FF920F931F939F
|
||||
:100D1000CF93DF93FC01E951FF4F9C0128513F4FD6
|
||||
:100D20006901D1E9640F711DAEEFFA2E208131E027
|
||||
:100D3000320F3083AC01420F511D9A0129533F4FAE
|
||||
:100D4000D9011C91103809F473C0113408F010E077
|
||||
:100D5000C0E020E0308141E0430F4083AC01430F0D
|
||||
:100D6000511DDA01A953BF4F0C91202720FD2D27DB
|
||||
:100D700030E035952795422F20FF02C04D2F4227A6
|
||||
:100D8000242F30E035952795422F20FF02C04D2FAC
|
||||
:100D9000422750E055954795242F40FF02C02D2F44
|
||||
:100DA000242730E035952795422F20FF02C04D2F94
|
||||
:100DB000422750E055954795242F40FF02C02D2F24
|
||||
:100DC000242730E035952795422F20FF02C04D2F74
|
||||
:100DD000422750E055954795242F40FF02C02D2F04
|
||||
:100DE00024272695C11780F1CF5F1C1708F0B2CFDA
|
||||
:100DF0003091C600AFE7B2E01197F1F700C00000F4
|
||||
:100E00003091C00037FDF4CF211112C0F6012081CE
|
||||
:100E100031E0320F3083FC01E20FF11D2FEF21830F
|
||||
:100E2000DF91CF911F910F91FF90DF90CF900895A8
|
||||
:100E3000D6012C9131E0320F3C93AC01420F511D91
|
||||
:100E4000DA011196FC9272CFAB014C0F511DDA0101
|
||||
:100E50000C93CACFCF938FE291E00E9471038FE28F
|
||||
:100E600091E00E94D504C82F6FEF8FE291E00E94BD
|
||||
:100E70000E046C2F8FE291E00E940E048FE291E04D
|
||||
:100E8000CF910C94CB038FE291E00E94710363E059
|
||||
:100E90008FE291E00E940E044CE062E271E08FE28A
|
||||
:100EA00091E00E942F0449E069E171E08FE291E056
|
||||
:100EB0000E942F044CE06DE071E08FE291E00E940F
|
||||
:100EC0002F046FEF8FE291E00E940E048FE291E019
|
||||
:100ED0000C94CB038FE291E00E9471038FE291E0CA
|
||||
:100EE0000E94E304BC01660F771F680F791F8FE231
|
||||
:100EF00091E00E941A048FE291E00C94CB038FE200
|
||||
:100F000091E00E9471038FE291E00E94D504682F66
|
||||
:100F100087E292E00E949E016FEF8FE291E00E94D3
|
||||
:100F20000E048FE291E00C94CB038FE291E00E94DB
|
||||
:100F300071038FE291E00E94D504682F84E292E071
|
||||
:100F40000E949E016FEF8FE291E00E940E048FE2FB
|
||||
:100F500091E00C94CB038FE291E00E94710387E251
|
||||
:100F600092E00E940302682F8FE291E00E940E043B
|
||||
:100F70008FE291E00C94CB038FE291E00E94710329
|
||||
:100F800084E292E00E940302682F8FE291E00E94C7
|
||||
:100F90000E048FE291E00C94CB038FE291E00E946B
|
||||
:100FA00071038FE291E00E94E304BC018EE192E0C4
|
||||
:100FB0000E942B026FEF8FE291E00E940E048FE2FD
|
||||
:100FC00091E00C94CB038FE291E00E9471038FE2D9
|
||||
:100FD00091E00E94E304BC018BE192E00E942B02AD
|
||||
:100FE0006FEF8FE291E00E940E048FE291E00C948B
|
||||
:100FF000CB038FE291E00E9471038FE291E00E94A7
|
||||
:10100000D504682F8AE192E00E945A02BC018FE267
|
||||
:1010100091E00E941A048FE291E00C94CB038F922E
|
||||
:101020009F92AF92BF92CF92DF92EF92FF920F9377
|
||||
:101030001F93CF93DF938FE291E00E94D504882E17
|
||||
:101040008FE291E00E94D504982E8FE291E00E94F9
|
||||
:10105000E304EC018FE291E00E94E3045C018FE283
|
||||
:1010600091E00E94E304A89E6001A99ED00CB89E66
|
||||
:10107000D00C11246FEF84E292E00E949E01CC1507
|
||||
:10108000DD054CF5BE018EE192E00E942B02A89591
|
||||
:10109000682D8AE192E00E945A027C01692D8AE162
|
||||
:1010A00092E00E945A028C018FE291E00E9471034B
|
||||
:1010B000B7018FE291E00E941A04B8018FE291E03B
|
||||
:1010C0000E941A048FE291E00E94CB03CA0DDB1D3F
|
||||
:1010D000CC15DD05BCF28FE291E00E9471036FEF49
|
||||
:1010E0008FE291E00E940E048FE291E0DF91CF91B8
|
||||
:1010F0001F910F91FF90EF90DF90CF90BF90AF9036
|
||||
:101100009F908F900C94CB031F920F920FB60F926B
|
||||
:1011100011240BB60F922F933F934F935F936F93CE
|
||||
:101120007F938F939F93AF93BF93EF93FF938FE240
|
||||
:1011300091E00E947D03FF91EF91BF91AF919F914C
|
||||
:101140008F917F916F915F914F913F912F910F9070
|
||||
:101150000BBE0F900FBE0F901F9018951F920F920D
|
||||
:101160000FB60F9211240BB60F922F933F934F930C
|
||||
:101170005F936F937F938F939F93AF93BF93EF93FF
|
||||
:10118000FF938FE291E00E949C03FF91EF91BF914A
|
||||
:10119000AF919F918F917F916F915F914F913F910F
|
||||
:1011A0002F910F900BBE0F900FBE0F901F901895B0
|
||||
:1011B0000E948B006FEF87E292E00E949E012FE772
|
||||
:1011C0008AE196E0215080409040E1F700C00000A5
|
||||
:1011D00060E087E292E00E949E0118E1D8E004C03E
|
||||
:1011E00026E02A95F1F700C080912E018823C1F3F3
|
||||
:1011F00010922E010FB6F894A895109360000FBEC0
|
||||
:10120000D0936000A8958FE291E00E94D504C82F8A
|
||||
:10121000682F84E292E00E949E018C2F90E0FC01F6
|
||||
:101220003197EC30F10530F4EE5AFF4F0C9476090B
|
||||
:101230000E94E3078FE291E00E946C030FB6F894DE
|
||||
:10124000A895809160008861809360001092600092
|
||||
:101250000FBEC6CF0E94F907EDCF0E94CD07EACF9F
|
||||
:101260000E94BC07E7CF0E94AB07E4CF0E9495071E
|
||||
:10127000E1CF0E947F07DECF0E946A07DBCF0E948A
|
||||
:101280004307D8CF0E942A07D5CF0E940F08D2CF9C
|
||||
:101290008AE292E00E94180142E06AE272E087E28C
|
||||
:1012A00092E00E94570143E06AE272E084E292E039
|
||||
:1012B0000E94570145E06AE272E081E292E00E94FA
|
||||
:1012C000570140E06AE272E08EE192E00E9426025D
|
||||
:1012D00041E06AE272E08BE192E00E942602109205
|
||||
:1012E0002F011092F5011092F4010895EE0FFF1FE7
|
||||
:1012F0000024001C0BBE0790F691E02D0994F89491
|
||||
:02130000FFCF1D
|
||||
:1013020001020103000202010103030209626F618B
|
||||
:101312007264696E666F2E680031353A35393A3338
|
||||
:0E132200390041707220203220323031390003
|
||||
:100780009083C80FD11DC853DF4F88818093C60066
|
||||
:10079000DF91CF911F910F910895CF92DF92EF9249
|
||||
:1007A000FF920F931F93CF93DF93EC01C85BDE4F53
|
||||
:1007B0002881211109C0DF91CF911F910F91FF90E6
|
||||
:1007C000EF90DF90CF9008958C018881780197EBAE
|
||||
:1007D000E91A9EEFF90AF701808318826801F6EBA7
|
||||
:1007E000CF1AFEEFDF0A81E0F6018083688187E897
|
||||
:1007F00092E00E949E019881F7018081981788F409
|
||||
:100800009091C00095FFFCCF888191E0980F98836C
|
||||
:10081000E801C80FD11DC853DF4F88818093C600FF
|
||||
:10082000CACFF6011082C7CFFC01E85BFE4F2081E2
|
||||
:1008300031E0320F3083820F911DFC01E853FF4FEE
|
||||
:1008400060830895FC01E85BFE4F208131E0320FA8
|
||||
:100850003083DC01A20FB11DA853BF4F6C932081E0
|
||||
:1008600031E0320F3083820F911DFC01E853FF4FBE
|
||||
:10087000708308950F931F93CF93DF938C01DC0156
|
||||
:10088000A85BBE4F8C9191E0980F9C93F801E80F04
|
||||
:10089000F11DE853FF4F40839FEF940F442371F005
|
||||
:1008A000EB0139912C9141E0420F4C93F801E20F9A
|
||||
:1008B000F11DE853FF4F3083915098F7DF91CF91AE
|
||||
:1008C0001F910F910895EF92FF920F931F93CF9373
|
||||
:1008D000DF937C01EC01C85BDE4F888191E0980FCB
|
||||
:1008E0009883F701E80FF11DE853FF4F40835FEF56
|
||||
:1008F000540F442309F46BC0FB0120E041E9BF0120
|
||||
:100900003191888191E0980F98838701080F111D1C
|
||||
:10091000C80188539F4FDC013C93DB018C91282751
|
||||
:10092000822F842720FD282F30E035952795842FAE
|
||||
:10093000822720FD282F30E035952795842F8227A8
|
||||
:1009400020FD282F30E035952795842F822720FD24
|
||||
:10095000282F30E035952795842F822720FD282FDA
|
||||
:1009600030E035952795942F922720FD292F30E0F0
|
||||
:1009700035952795942F922720FD292F30E0359526
|
||||
:100980002795842F822720FD282F2695515008F087
|
||||
:10099000B6CF888191E0980F9883F701E80FF11D99
|
||||
:1009A000E853FF4F2083F701E953FF4F808191E027
|
||||
:1009B000980F9083D701A80FB11DA95BBF4F8C91F1
|
||||
:1009C000DF91CF911F910F91FF90EF90089520E05C
|
||||
:1009D000E0CFFC01E953FF4F208131E0320F30833B
|
||||
:1009E000820F911DFC01E95BFF4F80810895FC019E
|
||||
:1009F000E953FF4F208131E0320F3083DC01A20F39
|
||||
:100A0000B11DA95BBF4F2C91308141E0430F408362
|
||||
:100A1000830F911DFC01E95BFF4F3081822F90E035
|
||||
:100A2000932B0895CF93DF93DC01EC01CB5BDF4F79
|
||||
:100A3000888199818230910509F469C0A0F40097FA
|
||||
:100A400009F440C0019749F48C91FD01E80FF11DB4
|
||||
:100A5000618382E090E0998388838C918F5F8C938F
|
||||
:100A6000DF91CF9108958330910509F4D6C00497A2
|
||||
:100A7000A1F78091C6008FE792E00197F1F700C0DF
|
||||
:100A800000008091C00087FDF4CFFD01EC5BFF4FBB
|
||||
:100A90008081882309F436C19EEFFD01E85BFE4F9B
|
||||
:100AA000808121E0280F2083FD01E80FF11DE8532C
|
||||
:100AB000FF4F9083198218828C918F5F8C93DF9106
|
||||
:100AC000CF910895613408F41FC18091C6008FE76B
|
||||
:100AD00092E00197F1F700C000008091C00087FD0F
|
||||
:100AE000F4CFFD01E85BFE4F808191E0980F908389
|
||||
:100AF000FD01E80FF11DE853FF4F8EEF808319824F
|
||||
:100B000018828C918F5F8C93DF91CF9108958C9197
|
||||
:100B1000FD01E80FF11D6183FD01EC5BFF4F80815A
|
||||
:100B200068276083808180FF04C0908181E98927E4
|
||||
:100B30008083808190E0959587958083808180FF78
|
||||
:100B400004C0908181E989278083808190E0959518
|
||||
:100B500087958083808180FF04C0908181E9892707
|
||||
:100B60008083808190E0959587958083808180FF48
|
||||
:100B700004C0908181E989278083808190E09595E8
|
||||
:100B800087958083808180FF04C0908181E98927D7
|
||||
:100B90008083808190E0959587958083808180FF18
|
||||
:100BA00004C0908181E989278083808190E09595B8
|
||||
:100BB00087958083808180FF04C0908181E98927A7
|
||||
:100BC0008083808190E0959587958083808180FFE8
|
||||
:100BD00004C0908181E989278083808190E0959588
|
||||
:100BE000879580839C9111968C911197981709F4A1
|
||||
:100BF00098C09C9111968C911197981708F42DCF5D
|
||||
:100C00008091C6008FE792E00197F1F700C00000E5
|
||||
:100C10008091C00087FDF4CF64CF8C91FD01E80F77
|
||||
:100C2000F11D6183FD01EC5BFF4F808168276083CC
|
||||
:100C3000808180FF04C0908181E989278083808141
|
||||
:100C400090E0959587958083808180FF04C0908196
|
||||
:100C500081E989278083808190E0959587958083BD
|
||||
:100C6000808180FF04C0908181E989278083808111
|
||||
:100C700090E0959587958083808180FF04C0908166
|
||||
:100C800081E989278083808190E09595879580838D
|
||||
:100C9000808180FF04C0908181E9892780838081E1
|
||||
:100CA00090E0959587958083808180FF04C0908136
|
||||
:100CB00081E989278083808190E09595879580835D
|
||||
:100CC000808180FF04C0908181E9892780838081B1
|
||||
:100CD00090E0959587958083808180FF04C0908106
|
||||
:100CE00081E989278083808190E09595879580832D
|
||||
:100CF00084E090E0998388838C918F5F8C93DF915F
|
||||
:100D0000CF9108959FEFC9CE11966C931197FD0175
|
||||
:100D1000EC5BFF4F10821C9281E090E09983888306
|
||||
:100D20009CCE83E090E09983888397CECF92DF9228
|
||||
:100D3000FF920F931F93CF93DF93FC01E953FF4F73
|
||||
:100D40009C01285B3E4F6901D1E9640F711DAEEF34
|
||||
:100D5000FA2E208131E0320F3083AC01420F511D59
|
||||
:100D60009A01295B3F4FD9011C91103809F475C0D5
|
||||
:100D7000113408F010E0C0E020E0308141E0430F82
|
||||
:100D80004083AC01430F511DDA01A95BBF4F0C91A9
|
||||
:100D9000202720FD2D2730E035952795422F20FF75
|
||||
:100DA00002C04D2F4227242F30E035952795422F42
|
||||
:100DB00020FF02C04D2F422750E055954795242F24
|
||||
:100DC00040FF02C02D2F242730E035952795422F74
|
||||
:100DD00020FF02C04D2F422750E055954795242F04
|
||||
:100DE00040FF02C02D2F242730E035952795422F54
|
||||
:100DF00020FF02C04D2F422750E055954795242FE4
|
||||
:100E000040FF02C02D2F24272695C117A0F1CF5FE8
|
||||
:100E10001C1708F0B2CF3091C600AFE7B2E01197CF
|
||||
:100E2000F1F700C000003091C00037FDF4CF211170
|
||||
:100E300014C0F601208131E0320F3083820F911D02
|
||||
:100E4000FC01E853FF4F8FEF8083DF91CF911F911B
|
||||
:100E50000F91FF90DF90CF900895D6012C9131E053
|
||||
:100E6000320F3C93AC01420F511D9A0128533F4F62
|
||||
:100E7000D901FC926ECFAB014C0F511DDA010C93DE
|
||||
:100E8000C6CFCF938FE291E00E9471038FE291E091
|
||||
:100E90000E94E904C82F6FEF8FE291E00E941404D2
|
||||
:100EA0006C2F8FE291E00E9414048FE291E0CF91C9
|
||||
:100EB0000C94CD038FE291E00E94710363E08FE216
|
||||
:100EC00091E00E9414044CE062E271E08FE291E054
|
||||
:100ED0000E943A0449E069E171E08FE291E00E94EA
|
||||
:100EE0003A044CE06DE071E08FE291E00E943A0438
|
||||
:100EF0006FEF8FE291E00E9414048FE291E00C9476
|
||||
:100F0000CD038FE291E00E9471038FE291E00E9495
|
||||
:100F1000F704BC01660F771F680F791F8FE291E01D
|
||||
:100F20000E9422048FE291E00C94CD038FE291E0C5
|
||||
:100F30000E9471038FE291E00E94E904682F87E824
|
||||
:100F400092E00E949E016FEF8FE291E00E941404F4
|
||||
:100F50008FE291E00C94CD038FE291E00E94710347
|
||||
:100F60008FE291E00E94E904682F84E892E00E94F9
|
||||
:100F70009E016FEF8FE291E00E9414048FE291E0F6
|
||||
:100F80000C94CD038FE291E00E94710387E892E018
|
||||
:100F90000E940302682F8FE291E00E9414048FE206
|
||||
:100FA00091E00C94CD038FE291E00E94710384E8FC
|
||||
:100FB00092E00E940302682F8FE291E00E941404E5
|
||||
:100FC0008FE291E00C94CD038FE291E00E947103D7
|
||||
:100FD0008FE291E00E94F704BC018EE792E00E944C
|
||||
:100FE0002B026FEF8FE291E00E9414048FE291E0F8
|
||||
:100FF0000C94CD038FE291E00E9471038FE291E0A7
|
||||
:101000000E94F704BC018BE792E00E942B026FEF75
|
||||
:101010008FE291E00E9414048FE291E00C94CD03E2
|
||||
:101020008FE291E00E9471038FE291E00E94E90457
|
||||
:10103000682F8AE792E00E945A02BC018FE291E099
|
||||
:101040000E9422048FE291E00C94CD038F929F9234
|
||||
:10105000AF92BF92CF92DF92EF92FF920F931F93C6
|
||||
:10106000CF93DF938FE291E00E94E904882E8FE214
|
||||
:1010700091E00E94E904982E8FE291E00E94F7042B
|
||||
:10108000EC018FE291E00E94F7045C018FE291E0B5
|
||||
:101090000E94F704A89E6001A99ED00CB89ED00CB7
|
||||
:1010A00011246FEF84E892E00E949E01CC15DD05CB
|
||||
:1010B0004CF5BE018EE792E00E942B02A895682DA8
|
||||
:1010C0008AE792E00E945A027C01692D8AE792E049
|
||||
:1010D0000E945A028C018FE291E00E947103B701D5
|
||||
:1010E0008FE291E00E942204B8018FE291E00E9419
|
||||
:1010F00022048FE291E00E94CD03CA0DDB1DCC15C6
|
||||
:10110000DD05BCF28FE291E00E9471036FEF8FE288
|
||||
:1011100091E00E9414048FE291E0DF91CF911F9142
|
||||
:101120000F91FF90EF90DF90CF90BF90AF909F9086
|
||||
:101130008F900C94CD031F920F920FB60F92112433
|
||||
:101140000BB60F922F933F934F935F936F937F93C1
|
||||
:101150008F939F93AF93BF93EF93FF938FE291E0B1
|
||||
:101160000E947D03FF91EF91BF91AF919F918F916D
|
||||
:101170007F916F915F914F913F912F910F900BBE97
|
||||
:101180000F900FBE0F901F9018951F920F920FB6E1
|
||||
:101190000F9211240BB60F922F933F934F935F93AF
|
||||
:1011A0006F937F938F939F93AF93BF93EF93FF932F
|
||||
:1011B0008FE291E00E949C03FF91EF91BF91AF916C
|
||||
:1011C0009F918F917F916F915F914F913F912F915F
|
||||
:1011D0000F900BBE0F900FBE0F901F9018950E949E
|
||||
:1011E0008B006FEF87E892E00E949E012FE78AE173
|
||||
:1011F00096E0215080409040E1F700C0000060E0A0
|
||||
:1012000087E892E00E949E0118E1D8E004C026E041
|
||||
:101210002A95F1F700C080912E018823C1F3109226
|
||||
:101220002E010FB6F894A895109360000FBED093CE
|
||||
:101230006000A8958FE291E00E94E904C82F682F12
|
||||
:1012400084E892E00E949E018C2F90E0FC0131978F
|
||||
:10125000EC30F10530F4EE5AFF4F0C948D090E94EA
|
||||
:10126000FA078FE291E00E946C030FB6F894A895FC
|
||||
:1012700080916000886180936000109260000FBED2
|
||||
:10128000C6CF0E941008EDCF0E94E407EACF0E946B
|
||||
:10129000D307E7CF0E94C207E4CF0E94AC07E1CF9B
|
||||
:1012A0000E949607DECF0E948107DBCF0E945A077B
|
||||
:1012B000D8CF0E944107D5CF0E942608D2CF8AE816
|
||||
:1012C00092E00E94180142E06AE872E087E892E04A
|
||||
:1012D0000E94570143E06AE872E084E892E00E94CD
|
||||
:1012E000570145E06AE872E081E892E00E94570108
|
||||
:1012F00040E06AE872E08EE792E00E94260241E058
|
||||
:101300006AE872E08BE792E00E94260210922F01B9
|
||||
:1013100010927501109274010895EE0FFF1F0024C2
|
||||
:10132000001C0BBE0790F691E02D0994F894FFCFB6
|
||||
:1013300001020103000202010103030209626F615D
|
||||
:101340007264696E666F2E680030383A33393A3508
|
||||
:0E1350003700417072202033203230313900D6
|
||||
:00000001FF
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "adu.h"
|
||||
|
||||
void ADU::init()
|
||||
void ADU::init() volatile
|
||||
{
|
||||
// externe Referenz an AREF
|
||||
ADMUX = 0;
|
||||
|
@ -9,7 +9,7 @@ void ADU::init()
|
|||
ADCSRA = _BV(ADEN) | _BV(ADPS2) | _BV(ADPS1) | _BV(ADPS0);
|
||||
}
|
||||
|
||||
uint16_t ADU::getValue(uint8_t channel)
|
||||
uint16_t ADU::getValue(uint8_t channel) volatile
|
||||
{
|
||||
// lege Kanal fest
|
||||
ADMUX = (ADMUX & 0xE0) | channel;
|
||||
|
|
|
@ -8,8 +8,8 @@
|
|||
class ADU
|
||||
{
|
||||
public:
|
||||
void init(void);
|
||||
uint16_t getValue(uint8_t);
|
||||
void init(void) volatile;
|
||||
uint16_t getValue(uint8_t) volatile;
|
||||
};
|
||||
|
||||
#endif // ADC_H
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
#include "global_vars.h"
|
||||
|
||||
volatile SPI spi;
|
||||
volatile MCP23S17 beba0(*((SPI*) &spi), SPIADR::BEBA0);
|
||||
volatile MCP23S17 beba1(*((SPI*) &spi), SPIADR::BEBA1);
|
||||
volatile MCP23S17 sw(*((SPI*) &spi), SPIADR::SWITCH);
|
||||
volatile TLC5615 dac0(*((SPI*) &spi), SPIADR::AA0);
|
||||
volatile TLC5615 dac1(*((SPI*) &spi), SPIADR::AA1);
|
||||
volatile MCP23S17 dio0(spi, SPIADR::BEBA0);
|
||||
volatile MCP23S17 dio1(spi, SPIADR::BEBA1);
|
||||
volatile MCP23S17 dsw(spi, SPIADR::SWITCH);
|
||||
volatile TLC5615 dac0(spi, SPIADR::AA0);
|
||||
volatile TLC5615 dac1(spi, SPIADR::AA1);
|
||||
volatile ADU adu;
|
||||
volatile USART usart;
|
||||
volatile bool nextRequest = false;
|
||||
|
|
|
@ -7,9 +7,9 @@
|
|||
#include "usart.h"
|
||||
|
||||
extern volatile SPI spi;
|
||||
extern volatile MCP23S17 beba0;
|
||||
extern volatile MCP23S17 beba1;
|
||||
extern volatile MCP23S17 sw;
|
||||
extern volatile MCP23S17 dio0;
|
||||
extern volatile MCP23S17 dio1;
|
||||
extern volatile MCP23S17 dsw;
|
||||
extern volatile TLC5615 dac0;
|
||||
extern volatile TLC5615 dac1;
|
||||
extern volatile ADU adu;
|
||||
|
|
|
@ -11,15 +11,15 @@
|
|||
|
||||
void initAll()
|
||||
{
|
||||
((SPI*) &spi)->init();
|
||||
spi.init();
|
||||
|
||||
((MCP23S17*) &beba0)->setDirA(0x00); // alle Ausgang
|
||||
((MCP23S17*) &beba0)->setDirB(0xFF); // alle Eingang
|
||||
((MCP23S17*) &beba1)->setDirA(0x00); // alle Ausgang
|
||||
((MCP23S17*) &beba1)->setDirB(0xFF); // alle Eingang
|
||||
((MCP23S17*) &sw)->setDirB(0xFF); // alle Eingang
|
||||
dio0.setDirA(0x00); // alle Ausgang
|
||||
dio0.setDirB(0xFF); // alle Eingang
|
||||
dio1.setDirA(0x00); // alle Ausgang
|
||||
dio1.setDirB(0xFF); // alle Eingang
|
||||
dsw.setDirB(0xFF); // alle Eingang
|
||||
|
||||
((ADU*) &adu)->init();
|
||||
adu.init();
|
||||
usart.init();
|
||||
usart.initRX();
|
||||
|
||||
|
@ -39,7 +39,7 @@ void handleRequest()
|
|||
wdt_reset();
|
||||
|
||||
const uint8_t req = usart.readByte();
|
||||
((MCP23S17*) &beba1)->writePortA(req);
|
||||
dio1.writePortA(req);
|
||||
|
||||
switch(req)
|
||||
{
|
||||
|
@ -104,9 +104,9 @@ int main()
|
|||
initAll();
|
||||
|
||||
// Reset anzeigen
|
||||
((MCP23S17*) &beba0)->writePortA(0xFF);
|
||||
dio0.writePortA(0xFF);
|
||||
_delay_ms(100);
|
||||
((MCP23S17*) &beba0)->writePortA(0x00);
|
||||
dio0.writePortA(0x00);
|
||||
|
||||
while(1)
|
||||
{
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
#include "mcp23s17.h"
|
||||
|
||||
MCP23S17::MCP23S17(SPI& spi, uint8_t adr) : spi(spi), adr(adr)
|
||||
MCP23S17::MCP23S17(volatile SPI& spi, uint8_t adr) : spi(spi), adr(adr)
|
||||
{
|
||||
}
|
||||
|
||||
void MCP23S17::setDirA(uint8_t dir) const
|
||||
void MCP23S17::setDirA(uint8_t dir) const volatile
|
||||
{
|
||||
spi.setAdr(adr);
|
||||
spi.pushByte(MCP23S17_OPCODE | MCP23S17_WRITE);
|
||||
|
@ -13,7 +13,7 @@ void MCP23S17::setDirA(uint8_t dir) const
|
|||
spi.setAdr(SPIADR::NONE);
|
||||
}
|
||||
|
||||
void MCP23S17::setDirB(uint8_t dir) const
|
||||
void MCP23S17::setDirB(uint8_t dir) const volatile
|
||||
{
|
||||
spi.setAdr(adr);
|
||||
spi.pushByte(MCP23S17_OPCODE | MCP23S17_WRITE);
|
||||
|
@ -22,7 +22,7 @@ void MCP23S17::setDirB(uint8_t dir) const
|
|||
spi.setAdr(SPIADR::NONE);
|
||||
}
|
||||
|
||||
void MCP23S17::writePortA(uint8_t port) const
|
||||
void MCP23S17::writePortA(uint8_t port) const volatile
|
||||
{
|
||||
spi.setAdr(adr);
|
||||
spi.pushByte(MCP23S17_OPCODE | MCP23S17_WRITE);
|
||||
|
@ -31,7 +31,7 @@ void MCP23S17::writePortA(uint8_t port) const
|
|||
spi.setAdr(SPIADR::NONE);
|
||||
}
|
||||
|
||||
void MCP23S17::writePortB(uint8_t port) const
|
||||
void MCP23S17::writePortB(uint8_t port) const volatile
|
||||
{
|
||||
spi.setAdr(adr);
|
||||
spi.pushByte(MCP23S17_OPCODE | MCP23S17_WRITE);
|
||||
|
@ -40,7 +40,7 @@ void MCP23S17::writePortB(uint8_t port) const
|
|||
spi.setAdr(SPIADR::NONE);
|
||||
}
|
||||
|
||||
uint8_t MCP23S17::readPortA(void) const
|
||||
uint8_t MCP23S17::readPortA(void) const volatile
|
||||
{
|
||||
spi.setAdr(adr);
|
||||
spi.pushByte(MCP23S17_OPCODE | MCP23S17_READ);
|
||||
|
@ -50,7 +50,7 @@ uint8_t MCP23S17::readPortA(void) const
|
|||
return port;
|
||||
}
|
||||
|
||||
uint8_t MCP23S17::readPortB(void) const
|
||||
uint8_t MCP23S17::readPortB(void) const volatile
|
||||
{
|
||||
spi.setAdr(adr);
|
||||
spi.pushByte(MCP23S17_OPCODE | MCP23S17_READ);
|
||||
|
|
|
@ -3,28 +3,31 @@
|
|||
|
||||
#include "spi.h"
|
||||
|
||||
constexpr uint8_t MCP23S17_DIRA = 0x00;
|
||||
constexpr uint8_t MCP23S17_DIRB = 0x01;
|
||||
constexpr uint8_t MCP23S17_PORTA = 0x12;
|
||||
constexpr uint8_t MCP23S17_PORTB = 0x13;
|
||||
constexpr uint8_t MCP23S17_READ = 0x01;
|
||||
constexpr uint8_t MCP23S17_WRITE = 0x00;
|
||||
constexpr uint8_t MCP23S17_OPCODE = 0x40;
|
||||
|
||||
|
||||
class MCP23S17
|
||||
{
|
||||
public:
|
||||
MCP23S17(SPI&, uint8_t);
|
||||
void setDirA(uint8_t dir) const;
|
||||
void setDirB(uint8_t dir) const;
|
||||
void writePortA(uint8_t) const;
|
||||
void writePortB(uint8_t) const;
|
||||
uint8_t readPortA(void) const;
|
||||
uint8_t readPortB(void) const;
|
||||
MCP23S17(volatile SPI&, uint8_t);
|
||||
void setDirA(uint8_t dir) const volatile;
|
||||
void setDirB(uint8_t dir) const volatile;
|
||||
void writePortA(uint8_t) const volatile;
|
||||
void writePortB(uint8_t) const volatile;
|
||||
uint8_t readPortA(void) const volatile;
|
||||
uint8_t readPortB(void) const volatile;
|
||||
|
||||
private:
|
||||
SPI& spi;
|
||||
volatile SPI& spi;
|
||||
const uint8_t adr;
|
||||
|
||||
// constants
|
||||
constexpr static uint8_t MCP23S17_DIRA = 0x00;
|
||||
constexpr static uint8_t MCP23S17_DIRB = 0x01;
|
||||
constexpr static uint8_t MCP23S17_PORTA = 0x12;
|
||||
constexpr static uint8_t MCP23S17_PORTB = 0x13;
|
||||
constexpr static uint8_t MCP23S17_READ = 0x01;
|
||||
constexpr static uint8_t MCP23S17_WRITE = 0x00;
|
||||
constexpr static uint8_t MCP23S17_OPCODE = 0x40;
|
||||
};
|
||||
|
||||
#endif // MCP23S17_H
|
||||
|
|
|
@ -32,7 +32,7 @@ void rqDigitalWrite0()
|
|||
{
|
||||
usart.initTX();
|
||||
uint8_t port = usart.readByte();
|
||||
((MCP23S17*) &beba0)->writePortA(port);
|
||||
dio0.writePortA(port);
|
||||
|
||||
usart.writeByte(USART::MSG_OK);
|
||||
usart.flush();
|
||||
|
@ -42,7 +42,7 @@ void rqDigitalWrite1()
|
|||
{
|
||||
usart.initTX();
|
||||
uint8_t port = usart.readByte();
|
||||
((MCP23S17*) &beba1)->writePortA(port);
|
||||
dio1.writePortA(port);
|
||||
|
||||
usart.writeByte(USART::MSG_OK);
|
||||
usart.flush();
|
||||
|
@ -51,7 +51,7 @@ void rqDigitalWrite1()
|
|||
void rqDigitalRead0()
|
||||
{
|
||||
usart.initTX();
|
||||
uint8_t port = ((MCP23S17*) &beba0)->readPortB();
|
||||
uint8_t port = dio0.readPortB();
|
||||
usart.writeByte(port);
|
||||
usart.flush();
|
||||
}
|
||||
|
@ -59,7 +59,7 @@ void rqDigitalRead0()
|
|||
void rqDigitalRead1()
|
||||
{
|
||||
usart.initTX();
|
||||
uint8_t port = ((MCP23S17*) &beba1)->readPortB();
|
||||
uint8_t port = dio1.readPortB();
|
||||
usart.writeByte(port);
|
||||
usart.flush();
|
||||
}
|
||||
|
@ -68,7 +68,7 @@ void rqAnalogWrite0()
|
|||
{
|
||||
usart.initTX();
|
||||
uint16_t value = usart.readInt();
|
||||
((TLC5615*) &dac0)->setValue(value);
|
||||
dac0.setValue(value);
|
||||
|
||||
usart.writeByte(USART::MSG_OK);
|
||||
usart.flush();
|
||||
|
@ -78,7 +78,7 @@ void rqAnalogWrite1()
|
|||
{
|
||||
usart.initTX();
|
||||
uint16_t value = usart.readInt();
|
||||
((TLC5615*) &dac1)->setValue(value);
|
||||
dac1.setValue(value);
|
||||
|
||||
usart.writeByte(USART::MSG_OK);
|
||||
usart.flush();
|
||||
|
@ -88,7 +88,7 @@ void rqAnalogRead()
|
|||
{
|
||||
usart.initTX();
|
||||
uint8_t channel = usart.readByte();
|
||||
uint16_t value = ((ADU*) &adu)->getValue(channel);
|
||||
uint16_t value = adu.getValue(channel);
|
||||
usart.writeInt(value);
|
||||
usart.flush();
|
||||
}
|
||||
|
@ -105,15 +105,15 @@ void rqAdcDacStroke()
|
|||
//usart.writeByte(USART::MSG_OK);
|
||||
|
||||
count *= delta;
|
||||
((MCP23S17*) &beba1)->writePortA(0xFF);
|
||||
dio1.writePortA(0xFF);
|
||||
|
||||
for(int16_t i = start; i < count; i += delta)
|
||||
{
|
||||
((TLC5615*) &dac0)->setValue(i);
|
||||
dac0.setValue(i);
|
||||
wdt_reset();
|
||||
|
||||
uint16_t val_a = ((ADU*) &adu)->getValue(channel_a);
|
||||
uint16_t val_b = ((ADU*) &adu)->getValue(channel_b);
|
||||
uint16_t val_a = adu.getValue(channel_a);
|
||||
uint16_t val_b = adu.getValue(channel_b);
|
||||
|
||||
usart.initTX();
|
||||
usart.writeInt(val_a);
|
||||
|
@ -127,8 +127,8 @@ void rqAdcDacStroke()
|
|||
};
|
||||
|
||||
union doubleword dw;
|
||||
dw.word[0] = ((ADU*) &adu)->getValue(channel_a);
|
||||
dw.word[1] = ((ADU*) &adu)->getValue(channel_b);
|
||||
dw.word[0] = adu.getValue(channel_a);
|
||||
dw.word[1] = adu.getValue(channel_b);
|
||||
|
||||
uint8_t ret = 0;
|
||||
do
|
||||
|
|
|
@ -13,7 +13,7 @@ void testBEBA0(void)
|
|||
{
|
||||
for(uint8_t i = 0; i < 9; i++)
|
||||
{
|
||||
((MCP23S17*) &beba0)->writePortA(_BV(i));
|
||||
dio0.writePortA(_BV(i));
|
||||
|
||||
if(i < 8)
|
||||
_delay_ms(200);
|
||||
|
@ -24,7 +24,7 @@ void testBEBA1(void)
|
|||
{
|
||||
for(uint8_t i = 0; i < 9; i++)
|
||||
{
|
||||
((MCP23S17*) &beba1)->writePortA(_BV(i));
|
||||
dio1.writePortA(_BV(i));
|
||||
|
||||
if(i < 8)
|
||||
_delay_ms(200);
|
||||
|
@ -35,22 +35,22 @@ void testDAC0(void)
|
|||
{
|
||||
for(uint16_t i = 0; i < 1024; i++)
|
||||
{
|
||||
((TLC5615*) &dac0)->setValue(i);
|
||||
dac0.setValue(i);
|
||||
_delay_ms(1);
|
||||
}
|
||||
_delay_ms(100);
|
||||
((TLC5615*) &dac0)->setValue(0);
|
||||
dac0.setValue(0);
|
||||
}
|
||||
|
||||
void testDAC1(void)
|
||||
{
|
||||
for(uint16_t i = 0; i < 1024; i++)
|
||||
{
|
||||
((TLC5615*) &dac1)->setValue(i);
|
||||
dac1.setValue(i);
|
||||
_delay_ms(1);
|
||||
}
|
||||
_delay_ms(100);
|
||||
((TLC5615*) &dac1)->setValue(0);
|
||||
dac1.setValue(0);
|
||||
}
|
||||
|
||||
void testMirror()
|
||||
|
@ -61,9 +61,9 @@ void testMirror()
|
|||
// Endlosschleife
|
||||
while(1)
|
||||
{
|
||||
((TLC5615*) &dac0)->setValue(((ADU*) &adu)->getValue(0));
|
||||
((TLC5615*) &dac1)->setValue(((ADU*) &adu)->getValue(1));
|
||||
((MCP23S17*) &beba0)->writePortA(((MCP23S17*) &beba0)->readPortB());
|
||||
((MCP23S17*) &beba1)->writePortA(((MCP23S17*) &sw)->readPortB());
|
||||
dac0.setValue(adu.getValue(0));
|
||||
dac1.setValue(adu.getValue(1));
|
||||
dio0.writePortA(dio0.readPortB());
|
||||
dio1.writePortA(dsw.readPortB());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@ SPI::SPI(void)
|
|||
{
|
||||
}
|
||||
|
||||
void SPI::init(void) const
|
||||
void SPI::init(void) const volatile
|
||||
{
|
||||
|
||||
// Konfiguriere SPI DDRs
|
||||
|
@ -23,7 +23,7 @@ void SPI::init(void) const
|
|||
setAdr(SPIADR::NONE);
|
||||
}
|
||||
|
||||
void SPI::setAdr(uint8_t adr) const
|
||||
void SPI::setAdr(uint8_t adr) const volatile
|
||||
{
|
||||
PORTD &= ~(_BV(DMUX1) | _BV(DMUX2) | _BV(DMUX3));
|
||||
PORTD |= (adr & 0x01) ? _BV(DMUX1) : 0;
|
||||
|
@ -31,7 +31,7 @@ void SPI::setAdr(uint8_t adr) const
|
|||
PORTD |= (adr & 0x04) ? _BV(DMUX3) : 0;
|
||||
}
|
||||
|
||||
uint8_t SPI::pushByte(uint8_t b) const
|
||||
uint8_t SPI::pushByte(uint8_t b) const volatile
|
||||
{
|
||||
SPDR = b;
|
||||
while(!(SPSR & _BV(SPIF)));
|
||||
|
|
|
@ -28,9 +28,9 @@ class SPI
|
|||
{
|
||||
public:
|
||||
SPI(void);
|
||||
void init(void) const;
|
||||
void setAdr(uint8_t) const;
|
||||
uint8_t pushByte(uint8_t) const;
|
||||
void init(void) const volatile;
|
||||
void setAdr(uint8_t) const volatile;
|
||||
uint8_t pushByte(uint8_t) const volatile;
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
#include "tlc5615.h"
|
||||
|
||||
TLC5615::TLC5615(SPI& spi, uint8_t adr) : spi(spi), adr(adr)
|
||||
TLC5615::TLC5615(volatile SPI& spi, uint8_t adr) : spi(spi), adr(adr)
|
||||
{
|
||||
}
|
||||
|
||||
void TLC5615::setValue(uint16_t val) const
|
||||
void TLC5615::setValue(uint16_t val) const volatile
|
||||
{
|
||||
spi.setAdr(adr);
|
||||
spi.pushByte(val >> 6);
|
||||
|
|
|
@ -6,12 +6,12 @@
|
|||
class TLC5615
|
||||
{
|
||||
public:
|
||||
TLC5615(SPI&, uint8_t);
|
||||
void setValue(uint16_t) const;
|
||||
TLC5615(volatile SPI&, uint8_t);
|
||||
void setValue(uint16_t) const volatile;
|
||||
|
||||
|
||||
private:
|
||||
SPI& spi;
|
||||
volatile SPI& spi;
|
||||
const uint8_t adr;
|
||||
};
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@ void USART::handleRX(void) volatile
|
|||
|
||||
void USART::handleTX(void) volatile
|
||||
{
|
||||
((MCP23S17*) &beba0)->writePortA(send_pos);
|
||||
dio0.writePortA(send_pos);
|
||||
if(send_pos < send_len)
|
||||
{
|
||||
while (!(UCSR0A & (1<<UDRE0)));
|
||||
|
|
Loading…
Reference in a new issue