![]() |
|
Tài trợ cho PIC Vietnam |
Tiny Bootloader Mọi vấn đề liên quan tinybootloader sẽ được tổng hợp ở đây. |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#91 | |
Trưởng lão PIC bang
|
Trích:
http://www.picvietnam.com/forum//showthread.php?t=439 Module cung cấp chức năng nạp qua Tiny Bootloader cũng có thể dùng để giao tiếp thông qua RS-232. Không nhất thiết RS-232 dùng để giao tiếp PC với thiết bị ngoại vi, vẫn có thể giao tiếp giữa các ngoại vi bằng RS-232. Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
#92 |
Đệ tử 3 túi
Tham gia ngày: Dec 2007
Bài gửi: 51
: |
cho mình xin file hex của con 877a chạy TA 8Mhz.
mình cũng đã thử viết nhưng khi dùng tinyBld search Pic thì nó không nhận đc và có thông báo lỗi như thế này: Connected to \\.\COM1 at 9600 Searching for PIC ... pic sending unknown data: "K" <> 1h= Check baudrate & Start Write while PIC is not sending serial data (e.g. in reset) ERROR! cho mình hỏi đây là lỗi gì vậy? |
![]() |
![]() |
![]() |
#93 | |
Trưởng lão PIC bang
|
Trích:
Như bạn có thể thấy, trong luồng này, những thành viên cần firmware Tiny Bootloader cho một PIC cụ thể với một cấu hình cụ thể (nên giống với cấu hình của chương trình ứng dụng) có thể gửi yêu cầu lên, và tôi hay một thành viên nào đó sẽ cung cấp firmware đó. Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
#94 |
Đệ tử 3 túi
Tham gia ngày: Dec 2007
Bài gửi: 51
: |
mình dùng tinybld198.
cho mình xin firmware cho con 16f877a.cấu hình như sau: #fuses HS, NOWDT,PUT, NOPROTECT, NOLVP, NODEBUG, BROWNOUT #use delay(clock=8000000) thanks. |
![]() |
![]() |
![]() |
#95 |
Đệ tử 3 túi
Tham gia ngày: Dec 2007
Bài gửi: 51
: |
nếu có thể đc cho mình xin luôn file .asm nha.
thanks |
![]() |
![]() |
![]() |
#96 | |
Trưởng lão PIC bang
|
Trích:
Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
#97 |
Trưởng lão PIC bang
|
Tập tin nguồn đã có sẵn trong thư mục "picsource\pic16" của tập tin "tinybld198.zip". Bạn chỉ cần sửa 3 dòng đầu tiên cho phù hợp với loại PIC, tốc độ thạch anh, và tốc độ baud của bạn, và chỉnh dòng cấu hình cho phù hợp với cấu hình trong chương trình ứng dụng của bạn.
Tôi cũng chỉ làm đúng những động tác trên khi biên dịch firmware vừa gửi lên. Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
![]() |
![]() |
![]() |
#98 |
Đệ tử 3 túi
Tham gia ngày: Dec 2007
Bài gửi: 51
: |
cảm ơn anh. cho e hỏi câu lệnh này fai chỉnh như thế nào với các TA khác nhau?
movlw xtal/2000000+1 e thấy trong picsource có thay đổi giá trị này nhưng e vẫn k hiểu cách tính. e cảm ơn!. |
![]() |
![]() |
![]() |
#99 | |
Trưởng lão PIC bang
|
Trích:
Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
#100 |
Đệ tử 3 túi
Tham gia ngày: Dec 2007
Bài gửi: 51
: |
cac a xem giup e cai firmware này co van de j k?sao e dich ma no k nhận đc chip
Code:
radix DECLIST P=16F877A, F=INHX8M ; change also: Configure->SelectDevice from Mplab include <p16f877a.inc> xtal EQU 8000000 ; you may also want to change: _HS_OSC _XT_OSC baud EQU 9600 ; standard TinyBld baud rates: 115200 or 19200 ; The above 3 lines can be changed and buid a bootloader for the desired frequency (and PIC type) ;******************************************************************** ; Tiny Bootloader 16FxxxA series Size=100words ; claudiu.chiculita@ugal.ro ; http://www.etc.ugal.ro/cchiculita/software/picbootloader.htm ;******************************************************************** #include "D:\tinybld198\picsource\icdpictypes.inc" #include "D:\tinybld198\picsource\spbrgselect.inc" #include "D:\tinybld198\picsource\bankswitch.inc" #define first_address max_flash-100 ; 100 word in size __CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF errorlevel 1, -305 ; suppress warning msg that takes f as default cblock 0x20 buffer:80 endc cblock 0x78 crc contor i cnt1 cnt2 cnt3 flag endc SendL macro car movlw car movwf TXREG endm ;0000000000000000000000000 RESET 00000000000000000000000000 ORG 0x0000 PAGESEL IntrareBootloader GOTO IntrareBootloader ;view with TabSize=4 ;&&&&&&&&&&&&&&&&&&&&&&& START &&&&&&&&&&&&&&&&& ;---------------------- Bootloader ---------------------- ; ;PC_flash: C1h AddrH AddrL nr ...(DataLo DataHi)... crc ;PIC_response: id K K ORG first_address nop nop nop nop org first_address+4 IntrareBootloader ;init serial port clrf STATUS bsf STATUS,RP0 ;BANK1_ movlw b'00100100' movwf TXSTA movlw spbrg_value movwf SPBRG BANK0_ movlw b'10010000' movwf RCSTA ;wait for computer call Receive sublw 0xC1 ;Expect C1 skpz goto way_to_exit SendL IdTypePIC ;PIC type ;SendL IdSoftVer ;firmware ver x MainLoop clrf STATUS ;bank0 SendL 'K' mainl clrf crc call Receive ;H bsf STATUS,RP1 ;bank2 movwf EEADRH movwf flag ;used to detect if is eeprom call Receive ;L bsf STATUS,RP1 ;bank2 movwf EEADR call Receive ;count movwf contor movwf i incf i movlw buffer-1 movwf FSR rcvoct call Receive incf FSR movwf INDF decfsz i goto rcvoct movf crc,f ;check checksum skpz goto ziieroare ;write bsf STATUS,RP1 ;bank switch 0->2 movlw buffer movwf FSR writeloop ; write 2 bytes = 1 instruction clrwdt movf INDF,w movwf EEDATA incf FSR movf INDF,w movwf EEDATH incf FSR BANK3_ ;bank 2->3 bcf EECON1,EEPGD btfss flag,6 ;is eeprom (or flash) bsf EECON1,EEPGD bsf EECON1,WREN movlw 0x55 movwf EECON2 movlw 0xaa movwf EECON2 bsf EECON1,WR nop nop waitwre btfsc EECON1,WR ;for eeprom writes (wait to finish write) goto waitwre bcf EECON1,WREN BANK2_ ;bank2 incf EEADR ;does not cross zones btfss flag,6 ; if writing to EEPROM, skip first counter dec. decf contor decfsz contor goto writeloop goto MainLoop ziieroare SendL 'N' goto mainl Receive clrf STATUS movlw xtal/1000000+1 ; for 20MHz => 11 => 1second movwf cnt1 rpt2 clrf cnt2 rpt3 clrf cnt3 rptc btfss PIR1,RCIF ;test RX goto $+4 movf RCREG,w ;return in W addwf crc,f ;compute checksum return clrwdt decfsz cnt3 goto rptc decfsz cnt2 goto rpt3 decfsz cnt1 goto rpt2 ;timeout: way_to_exit ;exit in all other cases; must be BANK0/1 ;BANK0_ bcf RCSTA, SPEN ; deactivate UART goto first_address ;************************************************************* ; After reset ; Do not expect the memory to be zero, ; Do not expect registers to be initialised like in catalog. END movlw xtal/2000000+1 như anh chính nói nhưng vẫn k đc. anh chính cho e xin firmware cho con 16f877a.cấu hình như sau: #fuses XT, NOWDT,PUT, NOPROTECT, NOLVP, NODEBUG, BROWNOUT #use delay(clock=3579545) e cảm ơn anh. |
![]() |
![]() |
![]() |
#101 | |
Trưởng lão PIC bang
|
Trích:
Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
#102 |
Đệ tử 3 túi
Tham gia ngày: Dec 2007
Bài gửi: 51
: |
e muốn dịch lại để biết cách tự dịch các firmware với các TA khác nhau cho con 877A.cái firmware của a chạy tốt a.vì e có mấy cái mạch làm dùng mấy loại TA khác nhau.hỏi xin hoài cũng hơi ngại
|
![]() |
![]() |
![]() |
#103 | |
Trưởng lão PIC bang
|
Trích:
Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
#104 |
Đệ tử 3 túi
Tham gia ngày: Dec 2007
Bài gửi: 51
: |
anh nam dịch giúp em cái firmware cua con 18f4550 với cấu hình :
#fuses HS, NOWDT,PUT, NOPROTECT, NOLVP // for debug mode #use delay(clock=8000000) // e k dùng usb e cảm ơn anh! |
![]() |
![]() |
![]() |
#105 | |
Trưởng lão PIC bang
|
Trích:
Code:
CONFIG PLLDIV = 2, CPUDIV = OSC1_PLL2, USBDIV = 2 CONFIG FOSC = HS, FCMEM = OFF, IESO = OFF CONFIG PWRT = ON, BOR = OFF, BORV = 21, VREGEN = OFF CONFIG WDT = OFF, WDTPS = 128 CONFIG MCLRE = ON, LPT1OSC = OFF, PBADEN = OFF, CCP2MX = OFF CONFIG STVREN = ON, LVP = OFF, ICPRT = OFF, DEBUG = OFF, XINST = OFF
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
|
|
![]() |
||||
Ðề tài | Người gửi | Chuyên mục | Trả lời | Bài mới |
Microchip Bootloader | falleaf | Bootloaders - Programmers - Debuggers - Emulators | 2 | 20-05-2017 11:43 AM |
Pvn Tiny Bootloader | ntc | Tiny Bootloader | 52 | 31-10-2012 01:27 PM |
xin bootloader của pic18f4331 | hoangminh1234 | Tiny Bootloader | 30 | 24-12-2011 02:38 PM |
Tiny bootloaders | falleaf | Tiny Bootloader | 15 | 01-02-2010 03:13 PM |
Xin file hex bootloader của PIC16F84A | hanhluckyly | Tiny Bootloader | 1 | 18-10-2006 09:36 PM |