|
|
  |
Не работает код для PIC12F675 из 15 строк, PIC отстой |
|
|
|
Apr 26 2005, 11:06
|
Участник

Группа: Новичок
Сообщений: 20
Регистрация: 24-03-05
Пользователь №: 3 637

|
Подскажите почему не работает следующий код, если кто может ORG 0x000 ; coding begins here
bcf STATUS, RP0
clrf GPIO movwf 0x07 movlw CMCON
bsf STATUS, RP0 movwf 0x00 movlw TRISIO bcf STATUS, RP0
lp:
movwf 0xFF movlw GPIO movwf 0x00 movlw GPIO GOTO lp
END
|
|
|
|
|
Apr 26 2005, 12:17
|

Адепт
   
Группа: Свой
Сообщений: 520
Регистрация: 15-02-05
Пользователь №: 2 656

|
Цитата(Vyatsek @ Apr 26 2005, 08:06) Подскажите почему не работает следующий код, если кто может ORG 0x000 ; coding begins here bcf STATUS, RP0 clrf GPIO movwf 0x07 movlw CMCON bsf STATUS, RP0 movwf 0x00 movlw TRISIO bcf STATUS, RP0 lp: movwf 0xFF movlw GPIO movwf 0x00 movlw GPIO GOTO lp END Как минимум, не настроен ANSEL. Кстати, для очистки регистра можно использовать команду clrf, например clrf TRISIO.
|
|
|
|
|
Apr 26 2005, 12:28
|
Участник

Группа: Новичок
Сообщений: 20
Регистрация: 24-03-05
Пользователь №: 3 637

|
Цитата Кстати, для очистки регистра можно использовать команду clrf, там стоит так чтобы не переписывать команду а просто менять значение которое записывается в TRISIO.
|
|
|
|
|
Apr 27 2005, 08:55
|
Частый гость
 
Группа: Свой
Сообщений: 140
Регистрация: 7-04-05
Из: Россия, Владимир
Пользователь №: 3 941

|
Сразу бросилось в глаза...ошибка по невнимательности, у меня один раз тож такой баг был... Цитата movwf 0x07 movlw CMCON По логике вы хотите записать 0х07 в CMCON, только посмотрите внимательно, вы перепутали команды местами. У вас выполняется запись W->0x07 содержимое CMCON->W Хотя по логике нужно константа 0х07->W содержимое W->CMCON Таким образом, правильно будет написать movlw 0x07 movwf CMCON PS: ниже по ходу программы нужно все поправить по аналогии!
|
|
|
|
|
Apr 28 2005, 11:13
|
Участник

Группа: Новичок
Сообщений: 20
Регистрация: 24-03-05
Пользователь №: 3 637

|
Спасибо за подсказку сказываются команды другого ассемблера  )
|
|
|
|
|
Apr 28 2005, 11:34
|
Участник

Группа: Новичок
Сообщений: 20
Регистрация: 24-03-05
Пользователь №: 3 637

|
теперь прога имеет вид: __CONFIG _INTRC_OSC_NOCLKOUT
ORG 0x000 ; coding begins here
bcf STATUS, RP0 clrf GPIO movlw 0x07 movwf CMCON bsf STATUS, RP0 movlw 0x00 movwf TRISIO clrf ANSEL bcf STATUS, RP0
lp: movlw 0xFF movwf GPIO
movlw 0x00 movwf GPIO GOTO lp
END работает в симуляторе, но порт контроллера молчит............может еще что-то?? питание есть и директива указывает на внутреннюю ЭР ЦЭ - цепочку
|
|
|
|
|
Apr 29 2005, 08:29
|
Участник

Группа: Новичок
Сообщений: 20
Регистрация: 24-03-05
Пользователь №: 3 637

|
Да спасибо без вэ дэ работает когда запаял резюк...........но по идее я его настраивал как выход............по этому думал что не надо, надо еще почитать, спасибо за совет.........
|
|
|
|
|
May 2 2005, 18:37
|
Участник

Группа: Свой
Сообщений: 56
Регистрация: 11-03-05
Из: Подмосковье
Пользователь №: 3 260

|
Цитата(Vyatsek @ Apr 29 2005, 11:29) Да спасибо без вэ дэ работает когда запаял резюк...........но по идее я его настраивал как выход............по этому думал что не надо, надо еще почитать, спасибо за совет......... Если вход MCLR не используется не забудь повесить на него кондерчик примерно 1 нФ тогда помехи не будут беспокоить даже сильные. А вообще это хороший PIC только он очень богат регистрами и тем сложен но если все настроить то работает отлично.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|