Напечатал простейший код, но он неработает.
|
|
xxxmonejall |
Дата: Вс, 14.09.2008, 01:55 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
139
Замечания:
±
На сайте с 17.05.2008
Статус:
Offline
|
В чем проблема? Добавлено (14.09.2008, 7:55:45) --------------------------------------------- И еще где взять Compiler для Microcode Studio Plus
Сообщение отредактировал
xxxmonejall - Вс, 14.09.2008, 01:56
|
|
|
|
ADMIN |
Дата: Вс, 14.09.2008, 10:48 | Сообщение # 2 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
1.точка после END не нужна. 2.здесь
|
|
|
|
xxxmonejall |
Дата: Вс, 14.09.2008, 15:34 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
139
Замечания:
±
На сайте с 17.05.2008
Статус:
Offline
|
Спасибо!!!!!!!!!!!!!
|
|
|
|
kolas |
Дата: Сб, 07.11.2009, 20:14 | Сообщение # 4 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
10
Замечания:
±
На сайте с 18.03.2009
Статус:
Offline
|
Всем привет, как заставить выполнять следующую программу не дожидаясь выполнения предыдущих?, вероятно нужно включить прерывания ?, не смогли бы поправить текст программы и по возможности прокомментировать, заранее благодарен. Алексей. Code @ device pic12F675, intrc_osc, wdt_on, mclr_off, protect_off CMCON = 7 ANSEL = 0 gpio = %001000 trisio = %001000 symbol sw1 = gpio.3 s var byte s = 0 f var byte pause 100 clear M:
Button sw1,0,1000,50,f,1,P goto M P: s = s + 1 if s = 1 then goto a if s = 2 then goto b if s = 3 then goto c if s = 4 then goto d if s = 5 then goto e if s = 6 then s = 0 goto M
a: for f = 1 to 5 pause 300 gpio = %000001 pause 300 gpio = %000000 next goto M
b: for f = 1 to 5 pause 300 gpio = %000010 pause 300 gpio = %000000 next goto M
c: for f = 1 to 5 pause 300 gpio = %000100 pause 300 gpio = %000000 next goto M
d: for f = 1 to 5 pause 300 gpio = %010000 pause 300 gpio = %000000 next goto M
e: for f = 1 to 5 pause 300 gpio = %100000 pause 300 gpio = %000000 next goto M
|
|
|
|
ADMIN |
Дата: Вс, 08.11.2009, 07:11 | Сообщение # 5 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Прокомментировать доходчиво может автор программы. Вы, в свою очередь, хотя бы объяснили, чего хотите от программы. Что она должна делать?
|
|
|
|
kolas |
Дата: Пн, 16.11.2009, 20:52 | Сообщение # 6 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
10
Замечания:
±
На сайте с 18.03.2009
Статус:
Offline
|
При первом нажатии на кнопку выполняется команда "а", светодиод( подключенный к порту GPIO.0) мигает 5 раз, после того как он моргнул 5 раз нажимаем на кнопку второй раз выполняется команда "b", следующий светодиод ( подключенный к порту GPIO.1) мигает 5 раз, после того как он моргнул 5 раз, нажимаем на кнопку третий раз выполняется команда "с", следующий светодиод( подключенный к порту GPIO.2) мигает 5 раз и так далее, как сделать так чтобы можно было заставить мигать светодиод ( подключенный к порту GPIO.2), в тот момент когда мигает светодиод ( подключенный к порту GPIO.0), а прокомментировать только те изменения которые будут внесены в данный текст программы ( если это возможно ). Добавлено (16.11.2009, 20.52.00) --------------------------------------------- Народ, ну хоть кто нибудь подскажите!
|
|
|
|
sanek |
Дата: Пн, 16.11.2009, 22:46 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
84
Замечания:
±
На сайте с 09.04.2009
Статус:
Offline
|
если нужно чтобы мигало два светодиода на портах 0 и 2: a: for f = 1 to 5 pause 300 gpio = %000101'будут мигать светодиоды на портах 0 и 2 pause 300 gpio = %000000 next goto M если нужно от кнопки: a: for f = 1 to 5 pause 300 if кнопка нажата then gpio = %000101 else gpio = %000001 endif pause 300 gpio = %000000 next goto M
Сообщение отредактировал
sanek - Пн, 16.11.2009, 22:59
|
|
|
|
kolas |
Дата: Пт, 20.11.2009, 00:10 | Сообщение # 8 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
10
Замечания:
±
На сайте с 18.03.2009
Статус:
Offline
|
sanek, добрый вечер, или другое время суток, я может быть не совсем верно изъяснился. Я имел в виду немного другое . Допустим выполняется программа "а" , но при нажатии кнопки прекращается выполнение этой программы и начинается выполнение следующей программы и т.д.
|
|
|
|
sanek |
Дата: Сб, 21.11.2009, 16:06 | Сообщение # 9 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
84
Замечания:
±
На сайте с 09.04.2009
Статус:
Offline
|
хочу уточнить,при нажатии кнопки во время выполнения программы "а", должна заработать следующая за ней программа или нужна возможность выбрать?
|
|
|
|
kolas |
Дата: Вс, 22.11.2009, 21:07 | Сообщение # 10 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
10
Замечания:
±
На сайте с 18.03.2009
Статус:
Offline
|
допустим программ всего 5, "a"."b","c","d","e". При первом нажатии начинает выполнятся программа"а" и в момент её выполнения(или в момент выполнения любой другой из перечисленных) при помощи кнопки чтобы можно было перейти к любой из последующих программ. Наверняка нужно применять прерывания, но как это делается практически я пока не знаю. Буду признателен за помощь.
|
|
|
|
Dmitry |
Дата: Вс, 22.11.2009, 22:31 | Сообщение # 11 |
Группа:
Пользователи
Ранг:
Могу и подсказать
Сообщений:
157
Замечания:
±
На сайте с 12.05.2009
Статус:
Offline
|
Нафик прерывания. Во всех программах a-e (они же у тебя состоят из цикла for..next) вставляешь чтение порта с кнопкой: if sw1=0 then прыгаешь куда надо. Я так понял, надо на следующую программу. Только вставляй чтение порта после первой задержки (300 мс), а то еще неотпущенную кнопку поймет как вновь нажатую.
Сообщение отредактировал
Dmitry - Вс, 22.11.2009, 22:31
|
|
|
|
kolas |
Дата: Пн, 23.11.2009, 12:42 | Сообщение # 12 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
10
Замечания:
±
На сайте с 18.03.2009
Статус:
Offline
|
sanek, спасибо всё работает!!!
|
|
|
|