|  | 
| 
 | 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 | 
|  27-08-2008, 06:32 PM | #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 | |
|   |   | 
|  25-03-2009, 04:14 PM | #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? | 
|   |   | 
|  25-03-2009, 05:30 PM | #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 | |
|   |   | 
|  26-03-2009, 08:19 AM | #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. | 
|   |   | 
|  26-03-2009, 08:20 AM | #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 | 
|   |   | 
|  26-03-2009, 03:50 PM | #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 | |
|   |   | 
|  26-03-2009, 03:52 PM | #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 | 
|   |   | 
|  27-03-2009, 08:23 AM | #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!. | 
|   |   | 
|  27-03-2009, 05:06 PM | #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 | |
|   |   | 
|  30-03-2009, 12:56 PM | #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.
            ENDmovlw 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. | 
|   |   | 
|  31-03-2009, 03:55 AM | #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 | |
|   |   | 
|  31-03-2009, 09:54 AM | #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 | 
|   |   | 
|  31-03-2009, 05:58 PM | #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 | |
|   |   | 
|  03-04-2009, 05:08 PM | #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! | 
|   |   | 
|  04-04-2009, 04:37 AM | #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 | |
|   |   | 
|  | 
| 
 | 
 | 
|  Similar Threads | ||||
| Ðề 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 |