Dịch MPLAB

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • falleaf
    PIC Bang chủ
    • May 2005
    • 2627

    #31
    Nguyên văn bởi hinapicvietnam View Post
    Bên 8051 có phần mềm dịch ngược từ tệp 'hex' qua 'asm', hình như là disasm... thì phải. Còn pic thì sao hả các bạn? Có cái dịch dc o? Có chính xác o?
    Có thằng ICProg, đây là phần source của Nigel Goodwin, đã được nhúng vào ICProg. Nó cho phép dịch ngược các dòng PIC.

    DeASM chứ không phải Diasm. Viết từ đầy đủ ra rồi tra trên google sẽ có bạn à.

    Chúc vui
    Công ty TNHH Thương mại và Giao nhận R&P
    store.hn@rpc.vn - store.hcm@rpc.vn

    Học PIC như thế nào?

    Comment

    • namqn
      Trưởng lão PIC bang
      • Feb 2006
      • 3020

      #32
      Nguyên văn bởi hinapicvietnam View Post
      Bên 8051 có phần mềm dịch ngược từ tệp 'hex' qua 'asm', hình như là disasm... thì phải. Còn pic thì sao hả các bạn? Có cái dịch dc o? Có chính xác o?
      Import tập tin .hex vào MPLAB IDE, sau đó vào menu View, chọn Program Memory. Ở cột Disassembly là mã mnemonic tương ứng của các lệnh trong bộ nhớ chương trình.

      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

      Comment

      • cuongkstn
        Nhập môn đệ tử
        • Feb 2008
        • 7

        #33
        Phù ,may quá>Cuối cùng cũng có cao nhân chỉ giúp.

        Comment

        • nobitahanh
          Nhập môn đệ tử
          • Nov 2008
          • 1

          #34
          mọi người cho em hỏi làm thế nào để save được một file .c chứ không phải là file .asm??

          Comment

          • namqn
            Trưởng lão PIC bang
            • Feb 2006
            • 3020

            #35
            Nguyên văn bởi nobitahanh View Post
            mọi người cho em hỏi làm thế nào để save được một file .c chứ không phải là file .asm??
            Ở hộp thoại "Save As", bạn đánh đầy đủ tên của tập tin (cả phần mở rộng .c).

            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

            Comment

            • t_h_k
              Nhập môn đệ tử
              • Mar 2009
              • 1

              #36
              các bác ơi giúp em với, em mò hoài mà ko tài nào dịch nổi ra file .hex nữa. không biết dịch xong rồi file .hex nằm ở đâu nữa, các bác giúp em với ! cảm ơn các bác

              Comment

              • thaithien
                Đệ tử 7 túi
                • Aug 2007
                • 211

                #37
                Nguyên văn bởi t_h_k View Post
                các bác ơi giúp em với, em mò hoài mà ko tài nào dịch nổi ra file .hex nữa. không biết dịch xong rồi file .hex nằm ở đâu nữa, các bác giúp em với ! cảm ơn các bác
                Bạn có tạo project không?Nếu có thì mặc định file hex dịch ra sẽ nằm trong cùng thư mục,trừ phi bạn đã cấu hình cho trình biên dịch vị trí khác cho file .hex

                Comment

                • thi_si_co_don
                  Nhập môn đệ tử
                  • Feb 2009
                  • 6

                  #38
                  Các bác giúp em cái này với, em đang tập sử dụng MPLAB, em gõ thử 1 đoạn code được lấy từ tài liệu như sau:
                  Code:
                  ;chuong trinh 1
                  ;testled1
                  
                  processor	16F877A			;khai bao vdk
                  #include	"p16f877a.inc"	;header file dinh kem
                  
                  _CONFIG	_CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF
                  							;khai bao cac configuration bits
                  
                  	ORG		0X000
                  	GOTO	start
                  start
                  	BCF		STATUS,RP1
                  	BCF		STATUS,RP0
                  	
                  	CLRF	PORTB
                  	BSF		STATUS,RP0
                  	
                  	MOVLW	0X00
                  	MOVWF	TRISB
                  	
                  	BCF		STATUS,RP0
                  
                  	MOVLW	0X8F
                  	MOVWF	PORTB
                  
                  	loop	GOTO	loop
                  
                  END
                  và nhận được một thông báo trong file err là:
                  Code:
                  Warning[205] C:\DOCUMENTS AND SETTINGS\TA DINH THAM\DESKTOP\THANG\VD1\TEST LED 16F877A.ASM 4 : Found directive in column 1. (processor)
                  Error[122]   C:\DOCUMENTS AND SETTINGS\TA DINH THAM\DESKTOP\THANG\VD1\TEST LED 16F877A.ASM 7 : Illegal opcode (_CP_OFF)
                  Message[302] C:\DOCUMENTS AND SETTINGS\TA DINH THAM\DESKTOP\THANG\VD1\TEST LED 16F877A.ASM 20 : Register in operand not in bank 0.  Ensure that bank bits are correct.
                  Warning[207] C:\DOCUMENTS AND SETTINGS\TA DINH THAM\DESKTOP\THANG\VD1\TEST LED 16F877A.ASM 27 : Found label after column 1. (loop)
                  Warning[205] C:\DOCUMENTS AND SETTINGS\TA DINH THAM\DESKTOP\THANG\VD1\TEST LED 16F877A.ASM 29 : Found directive in column 1. (END)
                  các bác giúp em cái

                  Comment

                  • thaithien
                    Đệ tử 7 túi
                    • Aug 2007
                    • 211

                    #39
                    Bạn đánh sai ở chỗ config rồi.MÌnh đã chỉnh lại như sau và đã build thành công.Bạn coi thử nhé.
                    Code:
                    ;chuong trinh 1
                    ;testled1
                    
                    processor	16F877A			;khai bao vdk
                    INCLUDE	"P16F877A.inc"	;header file dinh kem
                    
                    __CONFIG   _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF
                    							;khai bao cac configuration bits
                    
                    	ORG		0x000
                    	GOTO	start
                    start
                    	BCF		STATUS,RP1
                    	BCF		STATUS,RP0
                    	
                    	CLRF	PORTB
                    	BSF		STATUS,RP0
                    	
                    	MOVLW	0X00
                    	MOVWF	TRISB
                    	
                    	BCF		STATUS,RP0
                    
                    	MOVLW	0X8F
                    	MOVWF	PORTB
                    
                    	loop	GOTO	loop
                    
                    END
                    CHú ý chỗ __config là 2 dấu gạnh dưới đó nghe.Khi đánh một gạch thì dòng lệnh sẽ không hiện ra màu xanh,chứng tỏ câu lệnh này sai đó.

                    Comment

                    • thi_si_co_don
                      Nhập môn đệ tử
                      • Feb 2009
                      • 6

                      #40
                      hi, em thanks bác rất nhiều, giờ em lại đang gặp trục trặc với cái bài sau.
                      em định cho ma trận led hiển thị chữ A-I bằng ma trạn 8x8 em quét hàng bằng portC và đưa dữ liệu ra cột bằng portB, tuy nhiên vì áp rơi trên led cao hơn so với chân ra nên em phải dùng mấy con NPN để đưa áp vào, hình vẽ dưới
                      em code và dịch ra ko vđề gì, but khi cho nó chạy mô phỏng thì hỡi ôi toàn bị thông báo là over flow, chả hiểu đc.
                      Code:
                      processor 16f877a		;khai bao vdk
                      #include "p16f877a.inc"		;header file dinh kem
                      
                      __CONFIG _CP_OFF&_WDT_OFF&_BODEN_OFF&_PWRTE_OFF&_XT_OSC&_WRT_OFF&_LVP_OFF&_CPD_OFF
                      				;khai bao configuration
                      ;------------------------------------------------------
                      ;khai bao bien
                      ;------------------------------------------------------
                      count	equ	0x23
                      COUNT1	EQU	0X20		;dung cho delay
                      COUNTA	EQU	0X21		;dung cho delay
                      COUNTB	EQU	0X22		;dung cho delay
                      
                      	org		0x000
                      	goto	START
                      START
                      	BCF		STATUS,RP1
                      	bcf		STATUS,RP0
                      	clrf	PORTB
                      	CLRF	PORTC
                      	bsf		STATUS,RP0
                      	movlw	0x00
                      	movwf	TRISB
                      	MOVWF	TRISC
                      	BCF		STATUS,RP0
                      	MOVLW	B'11111110'
                      	MOVWF	PORTC
                      loop
                      	clrf	count
                      loop1
                      	movwf	count
                      	RRF		PORTC,1
                      	call	table
                      	movwf	PORTB
                      	call	DELAY100MS
                      	incf	count,0
                      	xorlw	d'8'
                      	btfsc	STATUS,Z
                      	goto	loop
                      	incf	count,1
                      	goto	loop1
                      
                      table
                      	addwf	PCL,1
                      	retlw	b'00111111'
                      	RETLW	B'01010000'
                      	RETLW	B'10010000'
                      	RETLW	B'01010000'
                      	RETLW	B'00111111'
                      	RETLW	B'00000000'
                      	RETLW	B'11111111'
                      	RETLW	B'00000000'
                      
                      DELAY100MS
                      	MOVLW	D'200'
                      	MOVWF	COUNT1
                      D1
                      	MOVLW	0XC7
                      	MOVWF	COUNTA
                      	MOVLW	0X01
                      	MOVWF	COUNTB
                      DELAY_0
                      	DECFSZ	COUNTA,1
                      	GOTO	$+2
                      	DECFSZ	COUNTB,1
                      	GOTO	DELAY_0
                      	DECFSZ	COUNT1,1
                      	GOTO	D1
                      	RETURN
                      
                      end
                      em ko gửi đc cái file của proteus nên chỉ chụp đc hình thôi, các bác xem họ em nhé ^^
                      Attached Files
                      Last edited by namqn; 02-05-2009, 04:38 PM. Lý do: .bmp => .gif

                      Comment

                      • thi_si_co_don
                        Nhập môn đệ tử
                        • Feb 2009
                        • 6

                        #41
                        hic hic bác nào giúp em vụ này cái (

                        Comment

                        • thaithien
                          Đệ tử 7 túi
                          • Aug 2007
                          • 211

                          #42
                          Nguyên văn bởi thi_si_co_don View Post
                          hic hic bác nào giúp em vụ này cái (
                          Bạn gửi cả project và file mô phỏng proteus lên đi

                          Comment

                          • thi_si_co_don
                            Nhập môn đệ tử
                            • Feb 2009
                            • 6

                            #43
                            dạ, em vừa rar lại cái folder project em làm xong, em chạy bằng MPlab.
                            Các bác xem hộ em mí nhé
                            Attached Files

                            Comment

                            • anhbahung_dh
                              Nhập môn đệ tử
                              • Feb 2009
                              • 2

                              #44
                              có ai giúp mình ko mình đang làm đồ án về đèn giao thông có nút nhấn điều khiển ai có tài liệu hay code giúp mình được không? hay co wed naò giúp mình nha
                              thanks nhiêu nhiều
                              mà dùng còn PIC 16F877A nha mấy bạn

                              Comment

                              • anhbahung_dh
                                Nhập môn đệ tử
                                • Feb 2009
                                • 2

                                #45
                                Ai Giúp Mình Về Mạch Giao Thông Dùng Pic 16F877A ko

                                Mình Dàng làm đồ án môn học Vi Xử Lí mà mới vào học nên còn iú lắm ai bix giúp mình nha

                                Comment

                                Working...