/Designs/Tools/I2C-PIC-USB/SW/PIC18F4550/main.c
102,7 → 102,6
{
 
unsigned int8 replyBuf[4];
unsigned int8 i=0;
 
setup_adc_ports(NO_ANALOGS|VSS_VDD);
setup_adc(ADC_CLOCK_DIV_2);
116,72 → 115,60
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
 
printf("MLAB I2C to USB adapter started \n\r ");
usb_init();
 
output_high(PIN_B4);
 
usb_init();
 
while (TRUE) {
if (usb_enumerated())
{
usb_gets(0,control_data,8,100);
 
output_low(PIN_B4);
 
/* if(usb_kbhit(0))
switch(control_data[1])
{
printf("control data received... \n\r");
usb_gets(0,control_data,8,100);
switch(control_data[1])
{
case CMD_ECHO: // echo (for transfer reliability testing)
replyBuf[0] = control_data[2];
replyBuf[1] = control_data[3];
usb_puts(0,replyBuf,2,50);
break;
case CMD_GET_FUNC:
usb_puts(0,(I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL),32,50);
break;
case CMD_SET_DELAY:
clock_delay = *(unsigned short*)(control_data+2);
if(!clock_delay) clock_delay = 1;
clock_delay2 = clock_delay/2;
if(!clock_delay2) clock_delay2 = 1;
break;
case CMD_I2C_IO:
case CMD_I2C_IO + CMD_I2C_BEGIN:
case CMD_I2C_IO + CMD_I2C_END:
case CMD_I2C_IO + CMD_I2C_BEGIN + CMD_I2C_END:
// these are only allowed as class transfers
return i2c_do((struct i2c_cmd*)data);
break;
case CMD_GET_STATUS:
replyBuf[0] = status;
usb_puts(0,replyBuf,1,50);
break;
default:
// must not happen ...
break;
}
}*/
 
if(usb_kbhit(i))
{
printf(" data received at endpoint %d \n\r ", i);
case CMD_ECHO: // echo (for transfer reliability testing)
replyBuf[0] = control_data[2];
replyBuf[1] = control_data[3];
usb_puts(0,replyBuf,2,50);
break;
case CMD_GET_FUNC:
usb_puts(0,(I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL),32,50);
break;
case CMD_SET_DELAY:
/* The delay function used delays 4 system ticks per cycle. */
/* This gives 1/3us at 12Mhz per cycle. The delay function is */
/* called twice per clock edge and thus four times per full cycle. */
/* Thus it is called one time per edge with the full delay */
/* value and one time with the half one. Resulting in */
/* 2 * n * 1/3 + 2 * 1/2 n * 1/3 = n us. */
clock_delay = *(unsigned short*)(control_data+2);
if(!clock_delay) clock_delay = 1;
clock_delay2 = clock_delay/2;
if(!clock_delay2) clock_delay2 = 1;
break;
case CMD_I2C_IO:
case CMD_I2C_IO + CMD_I2C_BEGIN:
case CMD_I2C_IO + CMD_I2C_END:
case CMD_I2C_IO + CMD_I2C_BEGIN + CMD_I2C_END:
// these are only allowed as class transfers
// return i2c_do((struct i2c_cmd*)data);
break;
case CMD_GET_STATUS:
replyBuf[0] = status;
usb_puts(0,replyBuf,1,50);
break;
default:
// must not happen ...
break;
}
 
delay_ms(10);
 
output_high(PIN_B4);
i++;
}
}
}
/Designs/Tools/I2C-PIC-USB/SW/PIC18F4550/main.h
1,38 → 1,36
#include <18F4550.h>
#device adc=8
 
#FUSES NOWDT //No Watch Dog Timer
#FUSES WDT128 //Watch Dog Timer uses 1:128 Postscale
#FUSES HSPLL //High Speed Crystal/Resonator with PLL enabled
#FUSES NOPROTECT //Code not protected from reading
#FUSES NOBROWNOUT //No brownout reset
#FUSES BORV20 //Brownout reset at 2.0V
#FUSES NOPUT //No Power Up Timer
#FUSES NOCPD //No EE protection
#FUSES STVREN //Stack full/underflow will cause reset
#FUSES NODEBUG //No Debug mode for ICD
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOWRT //Program memory not write protected
#FUSES NOWRTD //Data EEPROM not write protected
#FUSES IESO //Internal External Switch Over mode enabled
#FUSES FCMEN //Fail-safe clock monitor enabled
#FUSES NOPBADEN //PORTB pins are configured as analog input channels on RESET
#FUSES NOWRTC //configuration not registers write protected
#FUSES NOWRTB //Boot block not write protected
#FUSES NOEBTR //Memory not protected from table reads
#FUSES NOEBTRB //Boot block not protected from table reads
#FUSES NOCPB //No Boot Block code protection
#FUSES MCLR //Master Clear pin enabled
#FUSES LPT1OSC //Timer1 configured for low-power operation
#FUSES NOXINST //Extended set extension and Indexed Addressing mode disabled (Legacy mode)
#FUSES PLL5 //Divide By 5(20MHz crystall input)
#FUSES CPUDIV1 //System Clock by 4
#FUSES USBDIV //USB clock source comes from PLL divide by 2
#FUSES VREGEN //USB voltage regulator enabled
#FUSES ICPRT //ICPRT enabled
#FUSES NOWDT //No Watch Dog Timer
#FUSES WDT128 //Watch Dog Timer uses 1:128 Postscale
#FUSES HSPLL //High Speed Crystal/Resonator with PLL enabled
#FUSES NOPROTECT //Code not protected from reading
#FUSES NOBROWNOUT //No brownout reset
#FUSES BORV20 //Brownout reset at 2.0V
#FUSES NOPUT //No Power Up Timer
#FUSES NOCPD //No EE protection
#FUSES STVREN //Stack full/underflow will cause reset
#FUSES NODEBUG //No Debug mode for ICD
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOWRT //Program memory not write protected
#FUSES NOWRTD //Data EEPROM not write protected
#FUSES IESO //Internal External Switch Over mode enabled
#FUSES FCMEN //Fail-safe clock monitor enabled
#FUSES NOPBADEN //PORTB pins are configured as analog input channels on RESET
#FUSES NOWRTC //configuration not registers write protected
#FUSES NOWRTB //Boot block not write protected
#FUSES NOEBTR //Memory not protected from table reads
#FUSES NOEBTRB //Boot block not protected from table reads
#FUSES NOCPB //No Boot Block code protection
#FUSES MCLR //Master Clear pin enabled
#FUSES LPT1OSC //Timer1 configured for low-power operation
#FUSES NOXINST //Extended set extension and Indexed Addressing mode disabled (Legacy mode)
#FUSES PLL5 //Divide By 12(48MHz oscillator input)
#FUSES CPUDIV4 //System Clock by 4
#FUSES USBDIV //USB clock source comes from PLL divide by 2
#FUSES VREGEN //USB voltage regulator enabled
#FUSES ICPRT //ICPRT enabled
 
#use delay(clock=48000000)
#use i2c(Master,Fast,sda=PIN_B0,scl=PIN_B1)
#use rs232(baud=9600,parity=N,UART1,bits=8)
#use delay(clock=24000000)
#use i2c(Master,Fast,sda=PIN_C4,scl=PIN_B7)
 
 
/Designs/Tools/I2C-PIC-USB/SW/PIC18F4550/main.hex
1,9 → 1,9
:10000000D9EF07F06896000C046ED8CF05F0E0CF6A
:100000003BEF09F06896000C046ED8CF05F0E0CF06
:1000100006F00001E9CF0CF0EACF07F0E1CF08F0DD
:10002000E2CF09F0D9CF0AF0DACF0BF0F3CF12F01C
:10003000F4CF13F0FACF14F0F5CF15F0F6CF16F099
:10004000F7CF17F000C00EF001C00FF002C010F0A3
:1000500003C011F0A0AA30EF00F0A1BA5EEF06F0E5
:1000500003C011F0A0AA30EF00F0A1BA5DEF06F0E6
:100060000EC000F00FC001F010C002F011C003F08C
:100070000CC0E9FF07C0EAFF078E08C0E1FF09C016
:10008000E2FF0AC0D9FF0BC0DAFF12C0F3FF13C0B2
38,34 → 38,34
:1002500012000403090408035500530054001C0352
:100260006900320063002D005000490043002D005A
:10027000550053004200200020006D92699468A44C
:1002800002D06894FCD76AEF06F0400E0401016FBB
:1002800002D06894FCD769EF06F0400E0401016FBC
:10029000040E036F100E026F880E006F046B040EC5
:1002A000076F500E066F0001000C70A002D0EDDF4A
:1002B0007090689A73EF06F06A6A689279EF06F0B8
:1002C0004E904DBE4E804D9E4D50100803E2000EE4
:1002D000016E17D04EA00BD0036A4D50E8DEFF0828
:1002B0007090689A72EF06F06A6A689278EF06F0BA
:1002C000679166BF6781669F6651100803E2000E62
:1002D000016E17D067A10BD0036A6651E8DEFF08F4
:1002E00002E1000E01D0010E016E0BD00AD0036AAC
:1002F0004D50EDDEFF0802E1000E01D0010E016E4F
:1003000000D0000C036A4C50700FE96E0F0E0320F2
:10031000EA6EEF6A4CC04DF0D3DF015218E04C504A
:10032000080DF3504E6AE96E040E4E24EA6EEF6A31
:100330004C50080DF3504E6A4D6E040E4D26000EC3
:100340004E224DC0E9FF040E4E24EA6EEF6A000C07
:10035000010E4B6E4B500F0805E34BC04CF0D2DF43
:100360004B2AF8D7000C416A41520AE1036A415016
:10037000240FE96E000E0320EA6EEF6A412AF4D7DB
:1002F0006651EDDEFF0802E1000E01D0010E016E35
:1003000000D0000C036A6551700FE96E0F0E0320D8
:10031000EA6EEF6A65C066F0D3DF015218E06551FE
:10032000080DF350676BE96E040E6725EA6EEF6AFD
:100330006551080DF350676B666F040E6627000E5B
:10034000672366C0E9FF040E6725EA6EEF6A000CBA
:10035000010E646F64510F0805E364C065F0D2DFDD
:10036000642BF8D7000C5A6A5A520AE1036A5A50B1
:10037000240FE96E000E0320EA6EEF6A5A2AF4D7C2
:100380001B6A010E1C6E1A6A000C6A6A686A9F0E6C
:100390006B6E3D0E696E6E6ADBDFE5DF160E706E0A
:1003A00068A602D02FDEFCD76D986FDF030E1F6E9C
:1003B0007FEF06F0698468986D8285EF06F0689C8F
:1003C0008BEF06F046C020F0000CFF0E206E000CF4
:1003D000446A23522AE044503F0827E31D50FC0F93
:1003E00017E2040F1FEF02F0036A2250E4DE456EAD
:1003F0000FD0036A2250ABDE456E0AD0036A22504A
:1004000020DF456E05D0036A225000DF456E00D024
:10041000222A23064450442A036A500FE96E040E30
:100420000320EA6E45C0EFFFD4D7235204E14450C5
:10043000400801E01A6A44C046F0C4DF000CE8241A
:1003B0007EEF06F0698468986D8284EF06F0689C91
:1003C0008AEF06F05FC020F0000CFF0E206E000CDC
:1003D0005D6A23522AE05D503F0827E31D50FC0F61
:1003E00017E2040F1FEF02F0036A2250E4DE5E6E94
:1003F0000FD0036A2250ABDE5E6E0AD0036A225031
:1004000020DF5E6E05D0036A225000DF5E6E00D0F2
:10041000222A23065D505D2A036A500FE96E040EFE
:100420000320EA6E5EC0EFFFD4D7235204E15D5093
:10043000400801E01A6A5DC05FF0C4DF000CE824E8
:10044000F76AF736590FF66E040EF7220A00F550D8
:10045000FA6E0800F550F96EE803F203FC03060497
:10046000226A1D6A04011351010A000109E0030A0E
80,191 → 80,241
:1004F0001D6ED89004011435036A000153DE090013
:10050000F5CF03F0236E05D002D05FDF0ED05DDFA4
:100510000CD00401175305E12350165D02E216C406
:1005200023F0010E1A6E000153DF000C435204E168
:10053000040E1F6E0DDFB1D0050E1F6E040E466E49
:10054000900E456E010E446E44500F08D8A0A5D001
:1005500044C04CF0D7DE476A036A4450B8DDFF0858
:100560004DE0040E476ED8904434036AD8DD09008C
:10057000F5CF03F0486E03C049F04450080DF35026
:100580004C6A4B6E010E4B24016E000E4C20036E24
:1005900001C0E9FF040E0324EA6E48C0EFFF445097
:1005A000080DF3504C6A4B6E020E4B24016E000E88
:1005B0004C20036E01C0E9FF040E0324EA6E46C01E
:1005C000ECFFED5245C0EFFFD8904434036AA7DD3D
:1005D0000900F5CF03F0452603504622880E4A6EE7
:1005E00049B04A8049B24A824450080DF3504C6ADF
:1005F000E96E040E4C24EA6E4AC0EFFF036A4450D1
:1006000056DDFF0834E047824450080DF3504C6A31
:100610004B6E040E4B26000E4C22020E4B24016E34
:10062000000E4C20036E01C0E9FF040E0324EA6EA5
:1006300046C0ECFFED5245C0EFFFD8904434036A4A
:1006400056DD0900F5CF03F04526035046224450FD
:10065000080DF3504C6A4B6E040E4B26000E4C22D4
:100660004BC0E9FF040E4C24EA6E400EEF6E47507B
:10067000060802E10E0E476E036A445018DD0108B9
:10068000D8A44788036A4450700FE96E0F0E032008
:10069000EA6E47C0EFFF442A57D79AEF03F00401F0
:1005200023F0010E1A6E000153DF000C5C5204E14F
:10053000040E1F6E0DDFB1D0050E1F6E040E5F6E30
:10054000900E5E6E010E5D6E5D500F08D8A0A5D0B6
:100550005DC065F0D7DE606B036A5D50B8DDFF08F3
:100560004DE0040E606FD8905D34036AD8DD090059
:10057000F5CF03F0616F03C062F05D50080DF350DA
:10058000656B646F010E6425016E000E6521036EBC
:1005900001C0E9FF040E0324EA6E61C0EFFF5D5065
:1005A000080DF350656B646F020E6425016E000E3A
:1005B0006521036E01C0E9FF040E0324EA6E5FC0EB
:1005C000ECFFED525EC0EFFFD8905D34036AA7DD0B
:1005D0000900F5CF03F05E2603505F22880E636F9B
:1005E00062B1638162B363835D50080DF350656B44
:1005F000E96E040E6525EA6E63C0EFFF036A5D5085
:1006000056DDFF0834E060835D50080DF350656BE4
:10061000646F040E6427000E6523020E6425016ECC
:10062000000E6521036E01C0E9FF040E0324EA6E8B
:100630005FC0ECFFED525EC0EFFFD8905D34036AFF
:1006400056DD0900F5CF03F05E2603505F225D50B2
:10065000080DF350656B646F040E6427000E65236C
:1006600064C0E9FF040E6525EA6E400EEF6E60512E
:10067000060802E10E0E606F036A5D5018DD010886
:10068000D8A46089036A5D50700FE96E0F0E0320D5
:10069000EA6E60C0EFFF5D2A57D79AEF03F00401BE
:1006A0001151000A00010DE0010A14E0020A1EE0E7
:1006B000060A27E0030A2CE00E0A2CE0010A30E0CB
:1006C0003DD01CC050F40401516B020E466E000177
:1006D00079DE36D00401122D06D0010E1C16466AB2
:1006C0003DD01CC050F40401516B020E5F6E00015E
:1006D00079DE36D00401122D06D0010E1C165F6A99
:1006E000000170DE02D0000170DE2AD00401122D5C
:1006F00005D01C82466A000165DE02D0000165DE7D
:100700001FD0020E1A6E12C421F0466A5BDE18D0AA
:10071000A7DE16D01BC050F4010E466E53DE10D07B
:1007200004011251010808E312C41BF012C443F083
:100730000001FCD6466A46DE000102D046DE00D04B
:10074000ADEF04F01BC043F004011151000A000199
:1006F00005D01C825F6A000165DE02D0000165DE64
:100700001FD0020E1A6E12C421F05F6A5BDE18D091
:10071000A7DE16D01BC050F4010E5F6E53DE10D062
:1007200004011251010808E312C41BF012C45CF06A
:100730000001FCD65F6A46DE000102D046DE00D032
:10074000ADEF04F01BC05CF004011151000A000180
:1007500007E00A0A0DE0010A28E00D0A38E039D066
:100760000401506B516B020E466E00012BDE33D03C
:10077000435219E0010E435C036A36DD016E040149
:100760000401506B516B020E5F6E00012BDE33D023
:100770005C5219E0010E5C5C036A36DD016E040117
:10078000145DD8A002D000010ED0036A1451240FCA
:10079000E96E000E0320EA6EEFCF50F4010E466EB4
:1007A000000110DE01D011DE16D043520EE0036AC4
:10079000E96E000E0320EA6EEFCF50F4010E5F6E9B
:1007A000000110DE01D011DE16D05C520EE0036AAB
:1007B00004011451240FE96E000E0320EA6E12C4E6
:1007C000EFFF466A0001FEDD01D0FFDD04D048DE08
:1007D00002D0FBDD00D0ADEF04F0449043BE448076
:1007E000439E44A011D04350080DF350466A456E15
:1007F000040E4526000E462245C0E9FF040E46249D
:10080000EA6E880EEF6E09D04350080DF350466A29
:10081000E96E040E4624EA6EEF6A6FEF04F044902E
:1008200043BE4480439E44A011D04350080DF35072
:10083000466A456E040E4526000E462245C0E9FF75
:10084000040E4624EA6E840EEF6E0AD04350080D63
:10085000F350466AE96E040E4624EA6E840EEF6E8B
:1008600075EF04F0449043BE4480439E44A011D0F1
:100870004350080DF350476A466E040E4626000E9C
:10088000472246C0E9FF040E4724EA6EEFCF45F049
:100890000AD04350080DF350476AE96E040E47240E
:1008A000EA6EEFCF45F045AE02D045B402D0000E5F
:1008B00001D0010E016E7FEF04F014C44DF000DD95
:1007C000EFFF5F6A0001FEDD01D0FFDD04D048DEEF
:1007D00002D0FBDD00D0ADEF04F05D905CBE5D802B
:1007E0005C9E5DA011D05C50080DF3505F6A5E6E98
:1007F000040E5E26000E5F225EC0E9FF040E5F2439
:10080000EA6E880EEF6E09D05C50080DF3505F6AF7
:10081000E96E040E5F24EA6EEF6A6FEF04F05D90FC
:100820005CBE5D805C9E5DA011D05C50080DF350F5
:100830005F6A5E6E040E5E26000E5F225EC0E9FFF8
:10084000040E5F24EA6E840EEF6E0AD05C50080D31
:10085000F3505F6AE96E040E5F24EA6E840EEF6E59
:1008600075EF04F05D905CBE5D805C9E5DA011D074
:100870005C50080DF350606B5F6E040E5F26000E37
:1008800060235FC0E9FF040E6025EA6EEFCF5EF0E3
:100890000AD05C50080DF350606BE96E040E6025C1
:1008A000EA6EEFCF5EF05EAE02D05EB402D0000E14
:1008B00001D0010E016E7FEF04F014C466F000DD7C
:1008C000015229E004011151010A000105E0020A68
:1008D00009E0030A0DE01DD014C443F07ED7466A38
:1008E00071DD19D014C443F09AD7466A6BDD13D07A
:1008F0000401506B516B14C443F00001B3D7015293
:1009000004E0010E0401506F0001020E466E5ADD34
:1008D00009E0030A0DE01DD014C45CF07ED75F6A06
:1008E00071DD19D014C45CF09AD75F6A6BDD13D048
:1008F0000401506B516B14C45CF00001B3D701527A
:1009000004E0010E0401506F0001020E5F6E5ADD1B
:1009100002D05BDD00D0ADEF04F00401115100D036
:10092000000153DD00D0ADEF04F01A6A040110514C
:100930007F0B000A000107E0010A07E0030A07E055
:10094000230A07E008D0ABD608D0FCD606D0B5D72E
:1009500004D0E3D702D039DD00D0CDEF05F043500D
:10096000080DF350496AE96E040E4924EA6EEFCF90
:1009700045F04450020806E145AC02D0446A02D07A
:10098000010E446E4450030813E1840E456E43503B
:10099000080DF350496A486E040E4826000E49229D
:1009A00048C0E9FF040E4924EA6E840EEF6E07D0BA
:1009B000442C03D0C80E456E02D0880E456ED890E8
:1009C0004334036A8FEC00F00900F5CF03F0466E64
:1009D00003C047F04350080DF350496A486E010EBA
:1009E0004824016E000E4920036E01C0E9FF040E89
:1009F0000324EA6E46C0EFFF47B0458047B2458208
:100A00004350080DF350496AE96E040E4924EA6E1A
:100A100045C0EFFF000C036A4850700FE96E0F0EDF
:100A20000320EA6EEF5212E04850080DF3504A6A74
:100A3000496E040E4926000E4A2249C0E9FF040E01
:100A40004A24EA6EEFCF49F049AE02D0000E01D041
:100A5000010E016E2FEF05F043C048F0DCD70152C4
:100A600062E04350080DF350496A486E040E482670
:100A7000000E4922010E4824016E000E4920036E2B
:100A800001C0E9FF040E0324EA6E44C0EFFF4650A4
:100A9000020817E14350080DF350496A486E040EEE
:100AA0004826000E492248C0E9FF040E4924EA6E98
:100AB000EFCF47F047AC02D0466A02D0010E466E37
:100AC00013D04650040810E14350080DF350496A12
:100AD000E96E040E4924EA6EEFCF47F047AC03D02D
:100AE000010E466E01D0466A462C03D0C80E476EF2
:100AF00002D0880E476E45B0478045B247824350CA
:100B0000080DF350496A486E040E4826000E49222B
:100B100048C0E9FF040E4924EA6E47C0EFFF010E0A
:100B2000016E03D000D0000E016E000C435200E1B4
:100B3000000C44C06EFF445203E0040E1F6E02D04E
:100B4000020E1F6EA9EF05F01B6A1A6A21C044F05D
:100B5000F0D7B5EF05F0435208E11A2C02D038DC8B
:100B600004D01A50020801E1EFD7000C1E30416E8C
:100B7000413241321F0E41161E5242E10401005122
:100B80003C0B426E430E0017425034081EE10451E4
:100B9000800B01E0046B0001C8D66D98203C05D0A5
:100BA000436A030E446EDBDE0ED0436A020E446ECF
:100BB000D6DE2050FE0807E0436A456A20C044F0B4
:100BC000040E466E49DF19D004014250040816E1B4
:100BD000436A0001ABDF436A020E446EC0DE205060
:100BE000FE080AE0203C01D007D0436A456A20C0D5
:100BF00044F0010E466E30DF00D004015CD00001ED
:100C00001E50040814E1430E04010417FF0E206E69
:100C1000436A0001A0DF203C01D008D0436A456A46
:100C200020C044F0020E466E17DF00D043D01EB441
:100C30001BD04150080DF350446A016E040E442449
:100C4000036E4150080DF350466AE96E040E4624C7
:100C5000EA6EEF50430B03C0EAFF01C0E9FFEF6EFD
:100C600041C043F063DF26D04150080DF350446A81
:100C7000436E040E4326000E442243C001F0040ECE
:100C80004424036E4150080DF350466A456E040E2D
:100C90004526000E462245C0E9FF040E4624EA6EB2
:100CA000EF50430B03C0EAFF43C0E9FFEF6E41C0C2
:100CB00043F051DF0401000195EF06F0A19A1F52A5
:100CC00001E139D0685237E068A404D069A402D0A9
:100CD0003DEF01F06DA201D02ED068AA04D069AA20
:100CE00002D055EF01F068A204D069A202D05CEFF7
:100CF00001F068A004D069A002D0C5EF01F068A897
:100D000004D069A802D0DAEF01F068AC04D069AC75
:100D100002D0DFEF01F0406A68A608D069A606D0CD
:100D20006CCF1EF002EC00F021D701D004D040506F
:100D3000402A0308F1E230EF00F04D4C41422049D7
:100D4000324320746F205553422061646170746592
:100D5000722073746172746564200A0D200020642F
:100D600061746120726563656976656420617420D1
:100D7000656E64706F696E74202564200A0D200012
:100D80000900F5520DE0F6CF37F0F7CF38F0F55007
:100D90009EA8FED7AD6E37C0F6FF38C0F7FFF0D77C
:100DA0001FEF08F06D6A696A080E6F6E9450300983
:100DB000946E1F6A196AF2BE198EF29EB3EC01F0AE
:100DC00019BEF28E000CEEDF11EF07F0196AF2BEC9
:100DD000198EF29EB3EC01F019BEF28E6D6A140EFC
:100DE0006F6E696A6D86010E1F6EFDEF06F09588C5
:100DF00083A804D06DB601D0E9D703D06DA601D089
:100E0000D1DF1F2C0BD06DBA09D0686A696AA08A3D
:100E1000C00EF212110E696E020E1F6E12EF07F075
:100E2000D2D7E5D71F500208FCE122EF08F01B5093
:100E3000016E23EF08F0036A3750700FE96E0F0E52
:100E40000320EA6EEF520DE03750080DF350396A77
:100E5000386EE96E040E3924EA6EEFCF38F038AE02
:100E600002D0000E01D0010E016E2AEF08F0090039
:100E7000F6CF38F0F7CF39F0F5509EA8FED7AD6E1B
:100E800038C0F6FF39C0F7FF372EF1D7000C3E50BF
:100E9000016A3D5C03E23DC000F00CD0006A080E20
:100EA0003F6E3D3600363E50005CD8B0006E0136D5
:100EB0003F2EF7D7000C200E38A8300E396E37C001
:100EC00000F037AE07D0001E002A00C037F02D0E0C
:100ED000396E388E015037C03DF0640E3E6ED7DF5C
:100EE00000C037F0300E01243A6E37C03DF00A0ED4
:100EF0003E6ECDDF300E00243C6E300E01243B6E82
:100F000039C000F038A602D038AE389438B80BD0CB
:100F100038AE22D038B420D000C03AF038B21CD05D
:100F200000C03BF019D0300E3A5C16E100C03AF038
:100F3000200E396E38A604D03894388238AE3892F4
:100F4000300E3B5C09E100C03BF0200E3A6E38A643
:100F5000F7D7389238AE389038A404D039509EA8CC
:100F6000FED7AD6E38A204D03A509EA8FED7AD6E23
:100F700038A004D03B509EA8FED7AD6E3C509EA832
:100F8000FED7AD6E38EF08F0EA6A370EE96EEF5023
:100F90000EE00F0E016E006A002EFED7012EFBD769
:100FA0008F0E006E002EFED70000EF2EF2D742EF1C
:100FB00008F0F86AD09E078EEA6AE96AB886E10E00
:100FC000AF6E040EB06EA60EAC6E900EAB6E1F6AC6
:100FD000236A0A0E256E050E266E316AC150C00BBB
:100FE0000F09C16E070EB46E2790286A366AC15089
:100FF000C00B0F09C16EC090C092C094C09EC28049
:101000009698D190800ED56ECD6A000ECA6E000EF5
:10101000CB6EB16A9484BD6AB76AB66A070EB46EC5
:101020009250926E270E006E002EFED700D0B45064
:10103000A19CB56A3A0EF66E0D0EF76EA1D6939886
:101040008A88EED6F4D6015220E093988A9836C06A
:1010500037F0F1D6015213E05E0EF66E0D0EF76E0C
:101060001B0E376E04DF36C037F01F0E386E23D7E5
:101070007B0EF66E0D0EF76E040E376EF8DE0A0E5E
:0E108000376E82D793988A88362ADCD7030011
:1009500004D0E3D702D039DD00D0CCEF05F05C50F5
:10096000080DF350626BE96E040E6225EA6EEFCF5C
:100970005EF05D50020806E15EAC02D05D6A02D016
:10098000010E5D6E5D50030813E1840E5E6E5C50D7
:10099000080DF350626B616F040E6127000E622335
:1009A00061C0E9FF040E6225EA6E840EEF6E07D087
:1009B0005D2C03D0C80E5E6E02D0880E5E6ED8909D
:1009C0005C34036A8FEC00F00900F5CF03F05F6E32
:1009D00003C060F05C50080DF350626B616F010E54
:1009E0006125016E000E6221036E01C0E9FF040E55
:1009F0000324EA6E5FC0EFFF60B15E8060B35E8289
:100A00005C50080DF350626BE96E040E6225EA6ECD
:100A10005EC0EFFF000C036A6151700FE96E0F0EAC
:100A20000320EA6EEF5212E06151080DF350636B40
:100A3000626F040E6227000E632362C0E9FF040E9A
:100A40006325EA6EEFCF62F062AF02D0000E01D0F4
:100A5000010E016E000C5CC061F0DDDF015262E04E
:100A60005C50080DF350626B616F040E6127000E3D
:100A70006223010E6125016E000E6221036E01C02A
:100A8000E9FF040E0324EA6E5DC0EFFF5F50020829
:100A900017E15C50080DF350626B616F040E612723
:100AA000000E622361C0E9FF040E6225EA6EEFCFFB
:100AB00060F060AD02D05F6A02D0010E5F6E13D0AD
:100AC0005F50040810E15C50080DF350626BE96E52
:100AD000040E6225EA6EEFCF60F060AD03D0010E28
:100AE0005F6E01D05F6A5F2C03D0C80E606F02D0CA
:100AF000880E606F5EB060815EB260835C50080DEE
:100B0000F350626B616F040E6127000E622361C0B7
:100B1000E9FF040E6225EA6E60C0EFFF010E016E70
:100B200003D000D0000E016E000C5C5200E1000CFE
:100B30005DC06EFF5D5203E0040E1F6E02D0020E18
:100B40001F6EA8EF05F01B6A1A6A21C05DF0F0D78E
:100B5000B4EF05F05C5208E11A2C02D039DC04D065
:100B60001A50020801E1EFD7000C1E305A6E5A32BB
:100B70005A321F0E5A161E5242E1040100513C0B1C
:100B80005B6E430E00175B5034081EE10451800B6E
:100B900001E0046B0001C9D66D98203C05D05C6A69
:100BA000030E5D6EDCDE0ED05C6A020E5D6ED7DE7B
:100BB0002050FE0807E05C6A5E6A20C05DF0040E0B
:100BC0005F6E49DF19D004015B50040816E15C6ACE
:100BD0000001ABDF5C6A020E5D6EC1DE2050FE08D4
:100BE0000AE0203C01D007D05C6A5E6A20C05DF05C
:100BF000010E5F6E30DF00D004015CD000011E509A
:100C0000040814E1430E04010417FF0E206E5C6A11
:100C10000001A0DF203C01D008D05C6A5E6A20C0E1
:100C20005DF0020E5F6E17DF00D043D01EB41BD004
:100C30005A50080DF3505D6A016E040E5D24036E78
:100C40005A50080DF3505F6AE96E040E5F24EA6E95
:100C5000EF50430B03C0EAFF01C0E9FFEF6E5AC03B
:100C60005CF063DF26D05A50080DF3505D6A5C6E6D
:100C7000040E5C26000E5D225CC001F0040E5D24B3
:100C8000036E5A50080DF3505F6A5E6E040E5E26C6
:100C9000000E5F225EC0E9FF040E5F24EA6EEF5093
:100CA000430B03C0EAFF5CC0E9FFEF6E5AC05CF083
:100CB00051DF0401000194EF06F0A19A1F5201E1F7
:100CC00039D0685237E068A404D069A402D03DEF5F
:100CD00001F06DA201D02ED068AA04D069AA02D07A
:100CE00055EF01F068A204D069A202D05CEF01F0D8
:100CF00068A004D069A002D0C5EF01F068A804D0B4
:100D000069A802D0DAEF01F068AC04D069AC02D077
:100D1000DFEF01F0596A68A608D069A606D06CCF4B
:100D20001EF002EC00F021D701D004D05950592A0E
:100D30000308F1E230EF00F06D6A696A080E6F6E29
:100D400094503009946E1F6A196AF2BE198EF29E91
:100D5000B3EC01F019BEF28E000CEEDFDBEF06F013
:100D6000196AF2BE198EF29EB3EC01F019BEF28E32
:100D70006D6A140E6F6E696A6D86010E1F6EC7EF85
:100D800006F0958883A804D06DB601D0E9D703D0CA
:100D90006DA601D0D1DF1F2C0BD06DBA09D0686AC7
:100DA000696AA08AC00EF212110E696E020E1F6EE1
:100DB000DCEF06F0D2D7E5D71F500208FCE173EF55
:100DC00009F01B50016E74EF09F0036A4750700F71
:100DD000E96E0F0E0320EA6EEF520DE04750080D4A
:100DE000F350496A486EE96E040E4924EA6EEFCF6B
:100DF00048F048AE02D0000E01D0010E016EBAEFED
:100E000007F04C50080DF350576A566E020E5624E8
:100E1000016E000E5720036E01C0E9FF040E03248B
:100E2000EA6EECCF03F0ED52EFCF51F003C052F079
:100E30004C50080DF350576A566E010E5624016E41
:100E4000000E5720036E01C0E9FF040E0324EA6E72
:100E5000EF50036A546E03C055F04C50080DF35028
:100E6000576AE96E040E5724EA6EEFCF53F053B081
:100E7000558053B255825550505C08E303E14F5002
:100E8000545C04E255C050F054C04FF04EC0EAFF2D
:100E90004DC0E9FF52C0E2FF51C0E1FF50C002F077
:100EA0004FC001F0015202E0022A02D0025206E0D5
:100EB000E6CFEEFF012EFCD7022EFAD74FC001F08D
:100EC00050C002F06FEF07F047C04CF049C04EF041
:100ED00048C04DF04BC050F04AC04FF092D702C00E
:100EE0004BF001C04AF0196AF2BE198EF29E47C05B
:100EF0005CF0020E5D6E33DD19BEF28E4AC001F069
:100F00004BC002F0C7EF07F0EA6A470EE96EEF50F8
:100F10000EE0070E016E006A002EFED7012EFBD7F1
:100F2000C70E006E002EFED70000EF2EF2D7000C89
:100F30003E6A3D6AD8903634036A8FEC00F00900AF
:100F4000F5CF03F0436E03C044F044503A5C09E32C
:100F500003E13950435C05E244C046F043C045F02C
:100F600004D03AC046F039C045F0406A3F6A36C006
:100F700047F02BD701521DE036C047F038C049F08A
:100F800037C048F046C04BF045C04AF09DD702C07C
:100F900042F001C041F041503726425038224150C2
:100FA000395E42503A5A41503D2642503E220DD0C1
:100FB00006D03F2AD8B4402A010E476EA5DF3B5029
:100FC0003F5CD5E13C50405CD2E14350415C0CE1D8
:100FD0004450425C09E13B503F5C03E13C50405CC3
:100FE00003E039503A10B1E13DC001F03EC002F0DB
:100FF00081EF09F0536A546A010E556EDA6AD96AB4
:10100000586A4B0E576EEA6A4F0EE96E58C0E2FFFF
:1010100057C0E1FF55C056F0D890E550EE02F350AE
:101020005322F4505422562EF7D753C0DEFF54C03B
:1010300053F0546AD8B0542A572AD8B4582A552A9B
:1010400055500508E0E1000C196AF2BE198EF29EB7
:1010500049C061F0E0DC19BEF28E015245E0495012
:10106000080DF350526A516E040E5126000E5222A2
:10107000020E5124016E000E5220036E01C0E9FFE2
:10108000040E0324EA6EECCF03F0ED52EFCF4FF0E5
:1010900003C050F050C0EAFF4FC0E9FF4BC0E2FF71
:1010A0004AC0E1FF4DC002F04CC001F0015202E025
:1010B000022A02D0025206E0E6CFEEFF012EFCD754
:1010C000022EFAD7196AF2BE198EF29E49C05CF060
:1010D0004DC05EF04CC05DF04EC05FF0BCDC19BE90
:1010E000F28E015003D000D0000E016E000C3D6A5C
:1010F0003C6AD8903634036A77EC00F00900F5CFEB
:1011000003F0416E03C042F03D503A5CD8A069D074
:1011100003E139503C5C65E24A6A496A486A3BC06F
:1011200047F04AC04EF049C04DF048C04CF03BC0BB
:101130004BF0526A516A030E506EE80E4F6E5ADF42
:1011400003C046F002C045F001C044F000C043F0C7
:101150003C50395C476E3D503A58486E4250485CAE
:1011600009E303E14750415C05E242C040F041C061
:101170003FF006D03C50395C3F6E3D503A58406ECF
:101180003C503724476E3D503820486E36C049F0F9
:101190004B6E47C04AF040C04DF03FC04CF0020ECD
:1011A0004E6E52DF3E9001B03E803EB00BD000D07C
:1011B00000D000D0FF0E4326D8A04426D8A0452654
:1011C000D8A046263EB008D04352DAE14452D8E1D6
:1011D0004552D6E14652D4E141503C2642503D2290
:1011E00093D739503C5C42E13A503D5C3FE14A6A5A
:1011F000496A486A3BC047F04AC04EF049C04DF0CA
:1012000048C04CF03BC04BF0526A516A030E506E1E
:10121000E80E4F6EEFDE03C046F002C045F001C09D
:1012200044F000C043F036C049F04B6A4A6A4D6A48
:101230004C6A020E4E6E08DF3E9001B03E803EB01A
:101240000BD000D000D000D0FF0E4326D8A04426FB
:10125000D8A04526D8A046263EB008D04352E3E1A8
:101260004452E1E14552DFE14652DDE1000E3EB07D
:10127000010E016E000CF86AD09E078EEA6AE96AD8
:101280001F6A236A0A0E256E050E266E316AC1504A
:10129000C00B0F09C16E070EB46E2790286AC150AB
:1012A000C00B0F09C16EC090C092C094C09EC28096
:1012B0009698D190800ED56ECD6A000ECA6E000E43
:1012C000CB6EB16A9484BD6AB76AB66A070EB46E13
:1012D0009250926E130E006E002EFED700D0B450C6
:1012E000A19CB56A67D56DD501525CE0366A386A53
:1012F000290E376E3A6A080E396E3C6A640E3B6EF0
:1013000017D62A500FE0010A1CE0030A25E0060A5E
:1013100037E0010A35E0030A33E0010A31E0040A4C
:1013200030E03CD02BC032F02CC033F0366A386A43
:10133000320E376E3A6A020E396E320E3B6ED7DECF
:101340002ED0366A386A010E376E3A6A200E396E30
:10135000320E3B6ECCDE23D0376A2B0EE96E37C0DF
:10136000EAFF256AEFB0252A255202E1010E256E1B
:10137000D8902530266E265202E1010E266E0FD03F
:101380000ED031C032F0366A386A320E376E3A6AA1
:10139000010E396E320E3B6EAADE01D000D00A0E6D
:0813A000476EB2DDA0D7030087
:020000040030CA
:0E00000024CE390E0085A1000FC00FE00F4086
:0E0000003CCE390E0085A1000FC00FE00F406E
:00000001FF
;PIC18F4550
;CRC=C035 CREATED="29-IX-13 15:44"
;CRC=6CBE CREATED="29-IX-13 00:37"
/Designs/Tools/I2C-PIC-USB/SW/PIC18F4550/main.pjt
15,20 → 15,16
1=Z:\home\kaklik\svnMLAB\Designs\Tools\I2C-PIC-USB\SW\PIC18F4550\main.c
[Windows]
0=0000 %S 0 0 796 451 3 0
[Units]
Link=0
Count=1
1=Z:\home\kaklik\svnMLAB\Designs\Tools\I2C-PIC-USB\SW\PIC18F4550\main
[Opened Files]
1=main.c
2=main.h
2=
3=C:\Program Files (x86)\PICC\devices\18F4550.h
4=C:\Program Files (x86)\PICC\drivers\pic18_usb.h
5=C:\Program Files (x86)\PICC\drivers\usb_hw_layer.h
6=usbconfig.h
7=C:\Program Files (x86)\PICC\drivers\usb.h
8=C:\Program Files (x86)\PICC\drivers\usb.c
9=C:\Program Files (x86)\PICC\drivers\pic18_usb.c
10=
[Target Data]
OptionString=-p +FH
FileList=Z:\home\kaklik\svnMLAB\Designs\Tools\I2C-PIC-USB\SW\PIC18F4550\main.c
[Units]
Count=1
1=main (main)
8=