Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
pic16f1936
#1
I have problem can't connect PC
it just time out
I have to define PIC with 485
DE(RC5)(1 for Send) and RE(RA1)(1 for Receive).

but the "setting.inc" have no RE can define ,
i think "USE_TXENABLE" just set DE.

and in "uart.inc" i can't read asm code ,so i have no idea to modify the code.
the download have C code firmware? the "ds30 Loader
Firmware manual" say have the c code,but i didn't find.

Please teach me to modify asm code or show the C code example.
Thanks
Reply
#2
That should not be a problem because rx is disabled by the CREN bit in the RCSTA register while transmitting. Please zip and post your boot loader project.
Reply
#3
my project is for mplabx , file is bootloader


and my app use 485 code with C(piece code)
Code:
#define RE LATA1   
#define DE LATC5
for Receive
Code:
void ur_init(void) {
    INTCON = 0b00000000; //GIE and PEIE disable;TO and INT enable;IntFlag cleared
    SPBRG = 25; // 19200  8M  HIGH 25
    BRGH = 1;
    RCSTA = 0x90;
    // RCSTA: SPEN RX9 SREN CREN ADDEN FERR OERR RX9D 
    //           1   0    0    1    0     0    0    0  
    TXSTA = 0x06;
    // TXSTA : CSRC TX9 TXEN SYNC -- BRGH TRMT TX9D 
    //          0    0   0     0       1    1    0   
    rclenth = 0;
    txlenth = 0;
    TRISC7 = 1;
    RE = 1;
    DE = 0;
    CREN = 1;
    RCIE = 1;
    INTCON = 0b11000000;
}

Send
Code:
DE = 1;
    RE = 0;
    TXEN = 1;
    TXIE = 1;


Attached Files
.zip   firmware_PIC12F_PIC16F.zip (Size: 70.16 KB / Downloads: 14)
Reply
#4
Please try this one, I have added support for an rx enable pin.


Attached Files
.zip   firmware_PIC12F_PIC16F.zip (Size: 41.86 KB / Downloads: 18)
Reply
#5
Thanks for your help!

now i can get the bootloader , but i can't write flash.
the error is in picture.

bootloader bit configure
Code:
        __CONFIG    _CONFIG1, _FOSC_HS & _WDTE_OFF & _PWRTE_OFF & _MCLRE_ON & _BOREN_OFF & _IESO_ON & _FCMEN_ON
        __CONFIG    _CONFIG2, _PLLEN_ON & _LVP_OFF


debug mode
Code:
Parsing hexfile...
      File timestamp: 2014/6/3 上午 08:59:50
      Opening hexfile...ok
      Validating hexfile...ok
      Application vector address: 0x1F3D
      Application address: 0xBC
      Main flash page 0 is used, 0x00 - 0x1F
      Main flash row 0 is used, 0x00 - 0x07
      Main flash row 1 is used, 0x08 - 0x0F
      Main flash row 2 is used, 0x10 - 0x17
      Main flash row 3 is used, 0x18 - 0x1F
      Main flash page 1 is used, 0x20 - 0x3F
      Main flash row 4 is used, 0x20 - 0x27
      Main flash row 5 is used, 0x28 - 0x2F
      Main flash row 6 is used, 0x30 - 0x37
      Main flash row 7 is used, 0x38 - 0x3F
      Main flash page 2 is used, 0x40 - 0x5F
      Main flash row 8 is used, 0x40 - 0x47
      Main flash row 9 is used, 0x48 - 0x4F
      Main flash row 10 is used, 0x50 - 0x57
      Main flash row 11 is used, 0x58 - 0x5F
      Main flash page 3 is used, 0x60 - 0x7F
      Main flash row 12 is used, 0x60 - 0x67
      Main flash row 13 is used, 0x68 - 0x6F
      Main flash row 14 is used, 0x70 - 0x77
      Main flash row 15 is used, 0x78 - 0x7F
      Main flash page 4 is used, 0x80 - 0x9F
      Main flash row 16 is used, 0x80 - 0x87
      Main flash row 17 is used, 0x88 - 0x8F
      Main flash row 18 is used, 0x90 - 0x97
      Main flash row 19 is used, 0x98 - 0x9F
      Main flash page 5 is used, 0xA0 - 0xBF
      Main flash row 20 is used, 0xA0 - 0xA7
      Main flash row 21 is used, 0xA8 - 0xAF
      Main flash row 22 is used, 0xB0 - 0xB7
      Main flash row 23 is used, 0xB8 - 0xBF
      Main flash page 6 is used, 0xC0 - 0xDF
      Main flash row 24 is used, 0xC0 - 0xC7
      Main flash row 25 is used, 0xC8 - 0xCF
      Main flash row 26 is used, 0xD0 - 0xD7
      Main flash row 27 is used, 0xD8 - 0xDF
      Main flash page 7 is used, 0xE0 - 0xFF
      Main flash row 28 is used, 0xE0 - 0xE7
      Main flash row 29 is used, 0xE8 - 0xEF
      Main flash row 30 is used, 0xF0 - 0xF7
      Main flash row 31 is used, 0xF8 - 0xFF
      Main flash page 8 is used, 0x100 - 0x11F
      Main flash row 32 is used, 0x100 - 0x107
      Main flash row 33 is used, 0x108 - 0x10F
      Main flash row 34 is used, 0x110 - 0x117
      Main flash row 35 is used, 0x118 - 0x11F
      Main flash page 9 is used, 0x120 - 0x13F
      Main flash row 36 is used, 0x120 - 0x127
      Main flash row 37 is used, 0x128 - 0x12F
      Main flash row 38 is used, 0x130 - 0x137
      Main flash row 39 is used, 0x138 - 0x13F
      Main flash page 10 is used, 0x140 - 0x15F
      Main flash row 40 is used, 0x140 - 0x147
      Main flash row 41 is used, 0x148 - 0x14F
      Main flash row 42 is used, 0x150 - 0x157
      Main flash row 43 is used, 0x158 - 0x15F
      Main flash page 11 is used, 0x160 - 0x17F
      Main flash row 44 is used, 0x160 - 0x167
      Main flash row 45 is used, 0x168 - 0x16F
      Main flash row 46 is used, 0x170 - 0x177
      Main flash row 47 is used, 0x178 - 0x17F
      Main flash page 12 is used, 0x180 - 0x19F
      Main flash row 48 is used, 0x180 - 0x187
      Main flash row 49 is used, 0x188 - 0x18F
      Main flash row 50 is used, 0x190 - 0x197
      Main flash row 51 is used, 0x198 - 0x19F
      Main flash page 13 is used, 0x1A0 - 0x1BF
      Main flash row 52 is used, 0x1A0 - 0x1A7
      Main flash row 53 is used, 0x1A8 - 0x1AF
      Main flash row 54 is used, 0x1B0 - 0x1B7
      Main flash row 55 is used, 0x1B8 - 0x1BF
      Main flash page 14 is used, 0x1C0 - 0x1DF
      Main flash row 56 is used, 0x1C0 - 0x1C7
      Main flash row 57 is used, 0x1C8 - 0x1CF
      Main flash row 58 is used, 0x1D0 - 0x1D7
      Main flash row 59 is used, 0x1D8 - 0x1DF
      Main flash page 15 is used, 0x1E0 - 0x1FF
      Main flash row 60 is used, 0x1E0 - 0x1E7
      Main flash row 61 is used, 0x1E8 - 0x1EF
      Main flash row 62 is used, 0x1F0 - 0x1F7
      Main flash row 63 is used, 0x1F8 - 0x1FF
      Main flash page 16 is used, 0x200 - 0x21F
      Main flash row 64 is used, 0x200 - 0x207
      Main flash row 65 is used, 0x208 - 0x20F
      Main flash row 66 is used, 0x210 - 0x217
      Main flash row 67 is used, 0x218 - 0x21F
      Main flash page 17 is used, 0x220 - 0x23F
      Main flash row 68 is used, 0x220 - 0x227
      Main flash row 69 is used, 0x228 - 0x22F
      Main flash row 70 is used, 0x230 - 0x237
      Main flash row 71 is used, 0x238 - 0x23F
      Main flash page 18 is used, 0x240 - 0x25F
      Main flash row 72 is used, 0x240 - 0x247
      Main flash row 73 is used, 0x248 - 0x24F
      Main flash row 74 is used, 0x250 - 0x257
      Main flash row 75 is used, 0x258 - 0x25F
      Main flash page 19 is used, 0x260 - 0x27F
      Main flash row 76 is used, 0x260 - 0x267
      Main flash row 77 is used, 0x268 - 0x26F
      Main flash row 78 is used, 0x270 - 0x277
      Main flash row 79 is used, 0x278 - 0x27F
      Main flash page 20 is used, 0x280 - 0x29F
      Main flash row 80 is used, 0x280 - 0x287
      Main flash row 81 is used, 0x288 - 0x28F
      Main flash row 82 is used, 0x290 - 0x297
      Main flash row 83 is used, 0x298 - 0x29F
      Main flash page 21 is used, 0x2A0 - 0x2BF
      Main flash row 84 is used, 0x2A0 - 0x2A7
      Main flash row 85 is used, 0x2A8 - 0x2AF
      Main flash row 86 is used, 0x2B0 - 0x2B7
      Main flash row 87 is used, 0x2B8 - 0x2BF
      Main flash page 22 is used, 0x2C0 - 0x2DF
      Main flash row 88 is used, 0x2C0 - 0x2C7
      Main flash row 89 is used, 0x2C8 - 0x2CF
      Main flash row 90 is used, 0x2D0 - 0x2D7
      Main flash row 91 is used, 0x2D8 - 0x2DF
      Main flash page 23 is used, 0x2E0 - 0x2FF
      Main flash row 92 is used, 0x2E0 - 0x2E7
      Main flash row 93 is used, 0x2E8 - 0x2EF
      Main flash row 94 is used, 0x2F0 - 0x2F7
      Main flash row 95 is used, 0x2F8 - 0x2FF
      Main flash page 24 is used, 0x300 - 0x31F
      Main flash row 96 is used, 0x300 - 0x307
      Main flash row 97 is used, 0x308 - 0x30F
      Main flash row 98 is used, 0x310 - 0x317
      Main flash row 99 is used, 0x318 - 0x31F
      Main flash page 25 is used, 0x320 - 0x33F
      Main flash row 100 is used, 0x320 - 0x327
      Main flash row 101 is used, 0x328 - 0x32F
      Main flash row 102 is used, 0x330 - 0x337
      Main flash row 103 is used, 0x338 - 0x33F
      Main flash page 26 is used, 0x340 - 0x35F
      Main flash row 104 is used, 0x340 - 0x347
      Main flash row 105 is used, 0x348 - 0x34F
      Main flash row 106 is used, 0x350 - 0x357
      Main flash row 107 is used, 0x358 - 0x35F
      Main flash page 27 is used, 0x360 - 0x37F
      Main flash row 108 is used, 0x360 - 0x367
      Main flash row 109 is used, 0x368 - 0x36F
      Main flash row 110 is used, 0x370 - 0x377
      Main flash row 111 is used, 0x378 - 0x37F
      Main flash page 28 is used, 0x380 - 0x39F
      Main flash row 112 is used, 0x380 - 0x387
      Main flash row 113 is used, 0x388 - 0x38F
      Main flash row 114 is used, 0x390 - 0x397
      Main flash row 115 is used, 0x398 - 0x39F
      Main flash page 29 is used, 0x3A0 - 0x3BF
      Main flash row 116 is used, 0x3A0 - 0x3A7
      Main flash row 117 is used, 0x3A8 - 0x3AF
      Main flash row 118 is used, 0x3B0 - 0x3B7
      Main flash row 119 is used, 0x3B8 - 0x3BF
      Main flash page 30 is used, 0x3C0 - 0x3DF
      Main flash row 120 is used, 0x3C0 - 0x3C7
      Main flash row 121 is used, 0x3C8 - 0x3CF
      Main flash row 122 is used, 0x3D0 - 0x3D7
      Main flash row 123 is used, 0x3D8 - 0x3DF
      Main flash page 31 is used, 0x3E0 - 0x3FF
      Main flash row 124 is used, 0x3E0 - 0x3E7
      Main flash row 125 is used, 0x3E8 - 0x3EF
      Main flash row 126 is used, 0x3F0 - 0x3F7
      Main flash row 127 is used, 0x3F8 - 0x3FF
      Main flash page 32 is used, 0x400 - 0x41F
      Main flash row 128 is used, 0x400 - 0x407
      Main flash row 129 is used, 0x408 - 0x40F
      Main flash row 130 is used, 0x410 - 0x417
      Main flash row 131 is used, 0x418 - 0x41F
      Main flash page 33 is used, 0x420 - 0x43F
      Main flash row 132 is used, 0x420 - 0x427
      Main flash row 133 is used, 0x428 - 0x42F
      Main flash row 134 is used, 0x430 - 0x437
      Main flash row 135 is used, 0x438 - 0x43F
      Main flash page 34 is used, 0x440 - 0x45F
      Main flash row 136 is used, 0x440 - 0x447
      Main flash row 137 is used, 0x448 - 0x44F
      Main flash row 138 is used, 0x450 - 0x457
      Main flash row 139 is used, 0x458 - 0x45F
      Main flash page 35 is used, 0x460 - 0x47F
      Main flash row 140 is used, 0x460 - 0x467
      Main flash row 141 is used, 0x468 - 0x46F
      Main flash row 142 is used, 0x470 - 0x477
      Main flash row 143 is used, 0x478 - 0x47F
      Main flash page 36 is used, 0x480 - 0x49F
      Main flash row 144 is used, 0x480 - 0x487
      Main flash row 145 is used, 0x488 - 0x48F
      Main flash row 146 is used, 0x490 - 0x497
      Main flash page 249 is used, 0x1F20 - 0x1F3F
      Main flash row 999 is used, 0x1F38 - 0x1F3F
      Config word 0 is used, value: 0xF9E2
      Config word 1 is used, value: 0xDDFF
      Bootloader is located in the main flash
      Bootloader start address: 0x1F40
      Bootloader end address: 0x1FFF
      Bootloader start page: 250
      Bootloader end page: 255
      Bootloader start row: 1000
      Bootloader end row: 1023
      Hex file successfully parsed in 540ms


Attached Files Thumbnail(s)
       
Reply
#6
Which RS-485 tranceiver are you using?
Reply
#7
PIC16F1936 -> ADM485EARZ -> USB-COM485-PLUS2-FTDI -> PC
i want to know this LINE can write five pic by broadcast(connect with 485) in time?
pic is my app mem.

i want to know "ds30LoaderNativeConsoleLinuxArm" is not in free mode?
this file i didn't find.

bootloader compiler message:
Code:
Message[303] D:\HANK\DOWNLOADS\PIC\�N��\DS30 LOADER\FIRMWARE_PIC12F_PIC16F\DS30LOADER.X\..\SRC\SETTINGS.INC 103 : Program word too large.  Truncated to core size. (C1E4)
Message[303] D:\HANK\DOWNLOADS\PIC\�N��\DS30 LOADER\FIRMWARE_PIC12F_PIC16F\DS30LOADER.X\..\SRC\SETTINGS.INC 104 : Program word too large.  Truncated to core size. (DCFF)

code is:
Code:
__CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_OFF & _PWRTE_OFF & _MCLRE_ON & _CP_OFF & _CPD_OFF & _BOREN_OFF & _CLKOUTEN_ON & _IESO_OFF & _FCMEN_OFF
        __CONFIG _CONFIG2, _WRT_OFF & _VCAPEN_OFF & _PLLEN_OFF & _STVREN_OFF & _BORV_LO & _LVP_OFF


Attached Files Thumbnail(s)
   
Reply
#8
Hi,
I am sorry for the late reply.

The Linux ARM client is not part of ds30 Loader free edition, it is purchased from MG Digital Solutions. See www.ds30loader.com for more information.
Simultaneous programming of multiple units is not supported in ds30 Loader free edition.

The warning about the config words being to large is a bug with the assembler. You can safely disregard it.
Reply
#9
Does it work better with baud rate set to 9600 or something else?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)