реклама на сайте
подробности

 
 
> Hello world, че за фигня а?
DmitrySvrv
сообщение Mar 31 2011, 17:51
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 27-10-10
Пользователь №: 60 475



Собрал себе макетную плату.
Подключил PIC по стандартной схеме.

5В на сброс, 5В на питание, внешний генератор кварц 4 МГц конденсаторы 18пФ

Написал программу

LIST P=16F876
; указывает программе тип контроллера
TITLE Программа моргания светодиодами
; имя программы
include "C:\Program Files\Microchip\MPASM Suite\P16F876A.INC"
; включение в текст имен стандартных регистров микроконтроллера
include "C:\LED\Header\LED.h"
; включение в текст файла заголовка с нашими определениями
; ************************************************** *********
org 0x00
goto Entry ; переход к основной программе
;************************************************* ***********
; Инициализация
; ************************************************** *********
Entry
clrwdt ; убиваем сторожа
bcf INTCON,GIE ; запрет прерываний
bcf _RP1 ; выбор банка 1
bsf _RP0
clrf TRISB ; порт В как выход

; ************************************************** **************
; Основная программа
; ************************************************** **************
bcf _RP0 ; выбор банка 0
movlw 0xFF ; записываем в аккумулятор 11111111
movwf PORTB ; логическая 1 на выходах
goto Entry ; зациклили
; ************************************************** **************
END


Компилятор выдал

Make: The target "C:\LED\Source\LED.o" is out of date.
Executing: "C:\Program Files\Microchip\MPASM Suite\MPAsmWin.exe" /q /p16F876A "LED.asm" /l"LED.lst" /e"LED.err"
Warning[205] C:\LED\SOURCE\LED.ASM 1 : Found directive in column 1. (LIST)
Message[302] C:\LED\SOURCE\LED.ASM 20 : Register in operand not in bank 0. Ensure that bank bits are correct.
Warning[203] C:\LED\SOURCE\LED.ASM 25 : Found opcode in column 1. (bcf)
Warning[203] C:\LED\SOURCE\LED.ASM 26 : Found opcode in column 1. (movlw)
Warning[203] C:\LED\SOURCE\LED.ASM 27 : Found opcode in column 1. (movwf)
Warning[203] C:\LED\SOURCE\LED.ASM 28 : Found opcode in column 1. (goto)
Loaded C:\LED\Source\LED.COD.
BUILD SUCCEEDED: Thu Mar 31 21:41:22 2011

Заливаю хекс программатором фитон Chip Prog-2
Не работает, почему? 1111493779.gif
Чем можно посмотреть есть ли тактовая частота, осцил. не показваетsad.gif то ли уровень малый то ли сажает



Сообщение отредактировал DmitrySvrv - Mar 31 2011, 17:55
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
GetSmart
сообщение Mar 31 2011, 17:54
Сообщение #2


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



табуляций не хватает перед инструкциями. (наверное)

а название правильнее писать - чё за ботва, пацаны?

Сообщение отредактировал GetSmart - Mar 31 2011, 17:55


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
DmitrySvrv
сообщение May 3 2011, 17:36
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 27-10-10
Пользователь №: 60 475



никак не хочет дружить со мной микроконтроллер.

Следующий мой шаг был поморгать светодиодом.
есть такая периферия TMR0.

Частота 4МГЦ, предделитель на 256 - итого 15 Гц
или 0,07с за такт.
256*0,07=17с- задеражка при переполнении регистра ТМР0

Код:
Код
   LIST P=16F876
; указывает программе тип контроллера
TITLE Программа моргания светодиодами
; имя программы
include "C:\Program Files\Microchip\MPASM Suite\P16F876A.INC"
; включение в текст имен стандартных регистров микроконтроллера
include "C:\LED\Header\LED.h"
; включение в текст файла заголовка с нашими определениями
; ********************************************************
    org 0x00
    goto Entry; переход к основной программе
;*********************************************************
; Инициализация
; *******************************************************
Entry
    bcf INTCON,2
    clrwdt; убиваем сторожа
    bcf INTCON,GIE; запрет прерываний
    bcf _RP1; выбор банка 1
    bsf _RP0
    clrf TRISB; порт В как выход
    
LED_ON
    bcf _RP0; выбор банка 0
    movlw 0xFF; записываем в аккумулятор 11111111
    movwf PORTB; логическая 1 на выходах

Pause1
    movlw b'11000111'; Настроить предделитель на 256  тмр0,от внутр.г.                      
    movwf OPTION_REG
    bsf INTCON,5      ; Разрешить прерывания
    incf TMR0,1         ;ИНкримент регистра тмр0
    BTFSS INTCON,2   ;Проверим на прерывание от регистра
    goto Pause1
LED_OFF
    bcf _RP0; выбор банка 0
    movlw 0x00;  
    movwf PORTB; логический 0 на выходах
Pause2
    movlw b'11000111'
    movwf OPTION_REG
    bsf INTCON,5
    incf TMR0,1
    BTFSS INTCON,2
    goto Pause2
    goto LED_ON

END



И что он не хочет работать то?
Go to the top of the page
 
+Quote Post
_Pasha
сообщение May 4 2011, 06:06
Сообщение #4


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(DmitrySvrv @ May 3 2011, 20:36) *
И что он не хочет работать то?

Хинт: все попытки наладить дружбу с пиками лучше делать на основе симулятора MPLAB. Потому что он- правильный и ему можно верить.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th June 2025 - 05:38
Рейтинг@Mail.ru


Страница сгенерированна за 0.0137 секунд с 7
ELECTRONIX ©2004-2016