Автор Тема: Проблем с PIC18F6620  (Прочетена 33859 пъти)

bateAz

  • Зомбиран Роботостроител
  • *****
  • Публикации: 187
    • Профил
Проблем с PIC18F6620
« Отговор #15 -: Април 30, 2010, 05:45:22 pm »
0.7 волта ми изглежда ниско.  Очаквах и двете да са в интервала 1.5 - 3.0. Това означава, че или чипът не е читав, или фюзовете му нещо са сбъркани или Бог знае какво. Как разбра, че точно осцилаторът не работи? Ако го пуснеш на въшнен осцилатор или на вътрешен RC работи ли?
Не може да не може

Венцислав Караджов, 61 год.

IbT

  • Зомбиран Роботостроител
  • *****
  • Публикации: 156
    • Профил
Проблем с PIC18F6620
« Отговор #16 -: Май 01, 2010, 12:11:26 am »
Вътрешен такт няма (поне така пише в даташийта), а на външен такт (от генератор) не работи, затова реших, че просто не става. И без това като чета форуми се оказва, че е доста бъгав и доколкото разбрах е спрян от производство. Направо го махам и няма да се мъча с него. Слагам си 18F2580 i ще пробвам с него. Той даже има възможност за 4x PLL с вътрешния, което ще рече 32Mhz. Устройва ме перфектно.

bateAz

  • Зомбиран Роботостроител
  • *****
  • Публикации: 187
    • Профил
Проблем с PIC18F6620
« Отговор #17 -: Май 01, 2010, 10:46:36 am »
Дай малко информация с какъв компилатор си, какъв дебъгер ползваш, как го ползваш и т.н. Колкото и да е бъгав чипът, поне един изход може да вдигне.
Има ли разлика в положението на дебъгер и ако го пуснеш "да си върви" ?
Не може да не може

Венцислав Караджов, 61 год.

IbT

  • Зомбиран Роботостроител
  • *****
  • Публикации: 156
    • Профил
Проблем с PIC18F6620
« Отговор #18 -: Май 01, 2010, 05:12:27 pm »
Пробвах CCS, както MPLAB с асемблер. Програматорът е PicKit2 Clone. Под дебъг режим не мога да го пусна. Работи и програмира със сигурност, защото с други контролери нямам никакви проблеми.

bateAz

  • Зомбиран Роботостроител
  • *****
  • Публикации: 187
    • Профил
Проблем с PIC18F6620
« Отговор #19 -: Май 01, 2010, 05:29:45 pm »
А наистина ли програмира и твоя процесор? Ако си сетнал да прави "verify" след програмиране, ще се разбере.
Не може да не може

Венцислав Караджов, 61 год.

IbT

  • Зомбиран Роботостроител
  • *****
  • Публикации: 156
    • Профил
Проблем с PIC18F6620
« Отговор #20 -: Май 01, 2010, 06:20:09 pm »
Прави си verify без проблеми, както и го прочитам.

CarBeta5

  • Вече знае какво е робот!
  • *****
  • Публикации: 81
    • Профил
Проблем с PIC18F6620
« Отговор #21 -: Май 02, 2010, 10:20:01 am »
След като се чете и се пише нормално според мен проблемът си остава в конфигурацията на контролера. Може ли да постнеш каквото си му качвал с MPLAB на асемблер.

IbT

  • Зомбиран Роботостроител
  • *****
  • Публикации: 156
    • Профил
Проблем с PIC18F6620
« Отговор #22 -: Май 02, 2010, 03:02:32 pm »
Ами качвах му единствено template-а:

;******************************************************************************
;   This file is a basic template for assembly code for a PIC18F6620. Copy    *
;   this file into your project directory and modify or add to it as needed.  *
;                                                                             *
;   Refer to the MPASM User's Guide for additional information on the         *
;   features of the assembler.                                                *
;                                                                             *
;   Refer to the PIC18FXX20 Data Sheet for additional information on the      *
;   architecture and instruction set.                                         *
;                                                                             *
;******************************************************************************
;                                                                             *
;    Filename:                                                                *
;    Date:                                                                    *
;    File Version:                                                            *
;                                                                             *
;    Author:                                                                  *
;    Company:                                                                 *
;                                                                             *
;******************************************************************************
;                                                                             *
;    Files Required: P18F6620.INC                                             *
;                                                                             *
;******************************************************************************

LIST P=18F6620 ;directive to define processor
#include <P18F6620.INC> ;processor specific variable definitions

;******************************************************************************
;Configuration bits
;Microchip has changed the format for defining the configuration bits, please
;see the .inc file for futher details on notation.  Below are a few examples.





;   Oscillator Selection:

;******************************************************************************
;Variable definitions
; These variables are only needed if low priority interrupts are used.
; More variables may be needed to store other special function registers used
; in the interrupt routines.

CBLOCK 0x060
WREG_TEMP ;variable used for context saving
STATUS_TEMP ;variable used for context saving
BSR_TEMP ;variable used for context saving
ENDC

CBLOCK 0x000
EXAMPLE ;example of a variable in access RAM
ENDC

;******************************************************************************
;EEPROM data
; Data to be programmed into the Data EEPROM is defined here

ORG 0xf00000

DE "Test Data",0,1,2,3,4,5

;******************************************************************************
;Reset vector
; This code will start executing when a reset occurs.

ORG 0x0000

goto Main ;go to start of main code

;******************************************************************************
;High priority interrupt vector
; This code will start executing when a high priority interrupt occurs or
; when any interrupt occurs if interrupt priorities are not enabled.

ORG 0x0008

bra HighInt ;go to high priority interrupt routine

;******************************************************************************
;Low priority interrupt vector and routine
; This code will start executing when a low priority interrupt occurs.
; This code can be removed if low priority interrupts are not used.

ORG 0x0018

movff STATUS,STATUS_TEMP ;save STATUS register
movff WREG,WREG_TEMP ;save working register
movff BSR,BSR_TEMP ;save BSR register

; *** low priority interrupt code goes here ***


movff BSR_TEMP,BSR ;restore BSR register
movff WREG_TEMP,WREG ;restore working register
movff STATUS_TEMP,STATUS ;restore STATUS register
retfie

;******************************************************************************
;High priority interrupt routine
; The high priority interrupt code is placed here to avoid conflicting with
; the low priority interrupt vector.

HighInt:

; *** high priority interrupt code goes here ***


retfie FAST

;******************************************************************************
;Start of main program
; The main program code is placed here.

Main:

; *** main code goes here ***
clrf PORTG
clrf TRISG
bsf PORTG,3

;******************************************************************************
;End of program

END

hunter

  • Направо Робот! :)
  • *****
  • Публикации: 638
    • Профил
Проблем с PIC18F6620
« Отговор #23 -: Май 02, 2010, 03:13:46 pm »
Не съм се занимавал със серията 18 но не би ли трябвало да му се избират банки като на 16-ките. Имам чуството, че нещо не е както трябва. Междудругити BRA съм го срещъл някой може ли да каже за какво е и дали се подържа от 16ф877а. :D
Цвятко Цветков/ Бургас

http://www.youtube.com/watch?v=I1y67hzRWQY&feature=related

bateAz

  • Зомбиран Роботостроител
  • *****
  • Публикации: 187
    • Профил
Проблем с PIC18F6620
« Отговор #24 -: Май 02, 2010, 04:43:10 pm »
Гледам ти Main-a и се чудя:
ясно ми е какво прави процесирът в понеделник, вторник и сряда. ама в четвъртък май отива у реката. Нещо като цикълче да се спре няма ли да му сложиш?
Не може да не може

Венцислав Караджов, 61 год.

IbT

  • Зомбиран Роботостроител
  • *****
  • Публикации: 156
    • Профил
Проблем с PIC18F6620
« Отговор #25 -: Май 02, 2010, 06:56:38 pm »
Ами този main дори го бях махнал. А са цикъла не се сетих - на CCS го слагам винаги по навик, ама тук не се съм се сетил.

hunter

  • Направо Робот! :)
  • *****
  • Публикации: 638
    • Профил
Проблем с PIC18F6620
« Отговор #26 -: Май 02, 2010, 08:04:16 pm »
braaaaaaaaaaaaaaaaaaaaaaaaaaaaa ако може все пак
Цвятко Цветков/ Бургас

http://www.youtube.com/watch?v=I1y67hzRWQY&feature=related

CarBeta5

  • Вече знае какво е робот!
  • *****
  • Публикации: 81
    • Профил
Проблем с PIC18F6620
« Отговор #27 -: Май 02, 2010, 11:28:13 pm »
Опитай така:


;******************************************************************************
;   This file is a basic template for assembly code for a PIC18F6620. Copy    *
;   this file into your project directory and modify or add to it as needed.  *
;                                                                             *
;   Refer to the MPASM User's Guide for additional information on the         *
;   features of the assembler.                                                *
;                                                                             *
;   Refer to the PIC18FXX20 Data Sheet for additional information on the      *
;   architecture and instruction set.                                         *
;                                                                             *
;******************************************************************************
;                                                                             *
;    Filename:                                                                *
;    Date:                                                                    *
;    File Version:                                                            *
;                                                                             *
;    Author:                                                                  *
;    Company:                                                                 *
;                                                                             *
;******************************************************************************
;                                                                             *
;    Files Required: P18F6620.INC                                             *
;                                                                             *
;******************************************************************************

   LIST P=18F6620      ;directive to define processor
   #include <P18F6620.INC>   ;processor specific variable definitions

;******************************************************************************
;Configuration bits
;Microchip has changed the format for defining the configuration bits, please
;see the .inc file for futher details on notation.  Below are a few examples.





;   Oscillator Selection:    
CONFIG OSC=HS , OSCS=ON
;******************************************************************************
;Variable definitions
; These variables are only needed if low priority interrupts are used.
; More variables may be needed to store other special function registers used
; in the interrupt routines.

      CBLOCK   0x060
      WREG_TEMP   ;variable used for context saving
      STATUS_TEMP   ;variable used for context saving
      BSR_TEMP   ;variable used for context saving
      ENDC

      CBLOCK   0x000
      EXAMPLE      ;example of a variable in access RAM
      ENDC

;******************************************************************************
;EEPROM data
; Data to be programmed into the Data EEPROM is defined here

      ORG   0xf00000

      DE   "Test Data",0,1,2,3,4,5

;******************************************************************************
;Reset vector
; This code will start executing when a reset occurs.

      ORG   0x0000

      goto   Main      ;go to start of main code

;******************************************************************************
;High priority interrupt vector
; This code will start executing when a high priority interrupt occurs or
; when any interrupt occurs if interrupt priorities are not enabled.

      ORG   0x0008

      ;bra   HighInt      ;go to high priority interrupt routine

;******************************************************************************
;Low priority interrupt vector and routine
; This code will start executing when a low priority interrupt occurs.
; This code can be removed if low priority interrupts are not used.

      ORG   0x0018

      movff   STATUS,STATUS_TEMP   ;save STATUS register
      movff   WREG,WREG_TEMP      ;save working register
      movff   BSR,BSR_TEMP      ;save BSR register

;   *** low priority interrupt code goes here ***
MOVLW H'8'
BTFSC EXAMPLE,7
XORWF PORTG
MOVLW H'4'
XORWF PORTG
BCF INTCON,2


      movff   BSR_TEMP,BSR      ;restore BSR register
      movff   WREG_TEMP,WREG      ;restore working register
      movff   STATUS_TEMP,STATUS   ;restore STATUS register
      retfie

;******************************************************************************
;High priority interrupt routine
; The high priority interrupt code is placed here to avoid conflicting with
; the low priority interrupt vector.

HighInt:

;   *** high priority interrupt code goes here ***


      retfie   FAST

;******************************************************************************
;Start of main program
; The main program code is placed here.

Main:

;   *** main code goes here ***
clrf PORTG
clrf    TRISG
CLRF LATG
MOVLW H'88'
MOVWF T0CON
MOVLW H'E0'
MOVWF INTCON
bsf PORTG,3
T1:
INCF EXAMPLE
goto T1

;******************************************************************************
;End of program

      END


... и провери изводи 5 и 6

Vexorian

  • Заклет Роботостроител
  • *****
  • Публикации: 305
    • Профил
Проблем с PIC18F6620
« Отговор #28 -: Май 02, 2010, 11:34:55 pm »
Още ли го мъчите процесора? Значи видях ти сорс-а и никъде не виждам зададени конфигуриращите бит-ове, сиг. защото го правиш в самия mplab.. ако е така, провери дали си премахнал тикчето на "Configuration bits set in code". Ако искаш да ги зададеш в кода, Help -> Topics -> PIC18 Config Settings -> PIC18F6620 . Задават се с "config". Освен това MPLAB задава DEBUG бит-а автоматично. Така, че промени проекта от Debug към Release. Казваш, че програматора чете Пик-а? Тогава можеш ли да пост-неш hex файл-а? Пробвай и да пуснеш процесора на собствен осцилатор.

Освен това ми е интересно, каква е развойната среда на този ПИК? Тестова платка или готова? Виж дали всички Vdd/Vss(включително и AVdd и AVss) са захранени.
Викторио Семир Ел Хаким, София 20г.
Аналогова/Цифрова електроника, програмиране
I\'m watching your ass! :D

hunter

  • Направо Робот! :)
  • *****
  • Публикации: 638
    • Профил
Проблем с PIC18F6620
« Отговор #29 -: Май 03, 2010, 05:57:44 pm »
Добре хора аз да питам случайно да са ми невидими мненията сори че ползвам темата на колегата ама го видях това БРА някой от вас компетентните що не се произнесе за какво е така да се прескача вече второ мнение с въпросами е леко пренибрежение смятъм че не е проблем да се напише един ред закакво е и дали го подържа 16ф877а какво толкова. И се извинявам на колегата че му пълня темата ама до сега се някой да беше писал.

За ад не пиша новомнение да пълня, пиша в този отговор благодаря най сетне на CarBeta5 единствения отговорил на въпроса ми и да кажа че аз се бях включил по темата още в първия си пост и междъдругото като скоби попитах и за БРА-то но да не разтягам благодаря за отговора.
Цвятко Цветков/ Бургас

http://www.youtube.com/watch?v=I1y67hzRWQY&feature=related