Электроприводы, КИПиА, станции водоподготовки бассейнов, электроника

PNP-LinE

Объявление

Добрый день, Уважаемые поситители форума компании Пи Эн Пи - Лайн!

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PNP-LinE » Контроллеры и Компьютеры. » Языки программирования


Языки программирования

Сообщений 41 страница 60 из 63

41

Запоминается легко:
TRIS = 1 - input.
TRIS = 0- output.

Программа крутая. Надеюсь имитировать мелодию не собираешся.  :)

42

Deimos написал(а):

Запоминается легко:
TRIS = 1 - input.
TRIS = 0- output.

Программа крутая. Надеюсь имитировать мелодию не собираешся.  :)

Нет, не собираюсь... там в программе уже забито 8 мелодий....
Может быть когда разберусь как редактировать ноты каждой, тогда и зашью туда свои...

самая длинная песня:
КОД:
;********************************************************************
;*      Jingle bells                                                *
;********************************************************************
pesem_2                 ; Длина песни - 113 нот
addwf   pcl,f           ; Адрес - 554

retlw   0x1A            ; 1
retlw   0x1A
retlw   0x2A
retlw   0x1A            ; 2
retlw   0x1A
retlw   0x2A
retlw   0x1A            ; 3
retlw   0x1D
retlw   0x16
retlw   0x18
retlw   0x4A            ; 4
retlw   0x1B            ; 5
retlw   0x1B
retlw   0x2B
retlw   0x1A            ; 6
retlw   0x1A
retlw   0x2A
retlw   0x18            ; 7
retlw   0x18
retlw   0x18
retlw   0x1A
retlw   0x28            ; 8
retlw   0x2D
retlw   0x1A            ; 91
retlw   0x1A
retlw   0x2A
retlw   0x1A            ; 92
retlw   0x1A
retlw   0x2A
retlw   0x1A            ; 93
retlw   0x1D
retlw   0x16
retlw   0x18
retlw   0x4A            ; 94
retlw   0x1B            ; 95
retlw   0x1B
retlw   0x2B
retlw   0x1A            ; 96
retlw   0x1A             
retlw   0x2A
retlw   0x1D            ; 10
retlw   0x1B
retlw   0x1A
retlw   0x18
retlw   0x46            ; 11
retlw   0x11            ; 12
retlw   0x1A
retlw   0x18
retlw   0x16
retlw   0x41            ; 13
retlw   0x11            ; 14
retlw   0x1A
retlw   0x18
retlw   0x16
retlw   0x43            ; 15
retlw   0x13            ; 16
retlw   0x1B
retlw   0x1A
retlw   0x18
retlw   0x1D            ; 17
retlw   0x1D
retlw   0x2D
retlw   0x1F            ; 18
retlw   0x1D
retlw   0x18
retlw   0x19
retlw   0x4A            ; 19
retlw   0x11            ; 20_12
retlw   0x1A
retlw   0x18
retlw   0x16
retlw   0x41            ; 20_13
retlw   0x11            ; 20_14
retlw   0x1A
retlw   0x18
retlw   0x16
retlw   0x43            ; 20_15
retlw   0x13            ; 20_16
retlw   0x1B
retlw   0x1A
retlw   0x18
retlw   0x1D            ; 20_17
retlw   0x1D
retlw   0x2D
retlw   0x1F            ; 21
retlw   0x1D
retlw   0x1B
retlw   0x18
retlw   0x26            ; 22
retlw   0x2D
retlw   0x1A            ; 23_91
retlw   0x1A
retlw   0x2A
retlw   0x1A            ; 23_92
retlw   0x1A
retlw   0x2A
retlw   0x1A            ; 23_93
retlw   0x1D
retlw   0x16
retlw   0x18
retlw   0x4A            ; 23_94
retlw   0x1B            ; 23_95
retlw   0x1B
retlw   0x2B
retlw   0x1A            ; 23_96
retlw   0x1A             
retlw   0x2A
retlw   0x1D            ; 23_10
retlw   0x1B
retlw   0x1A
retlw   0x18
retlw   0x46            ; 23_11
retlw   0x80            ; Адрес - 667

43

Устройство функционирует, а вот как бы теперь мелодии переписать? :(

44

Зачем их переписывать?

45

Deimos написал(а):

Зачем их переписывать?

Хочется что нибудь свое! Или понять смысл... как они формируются...

46

Для начала нужно разобраться в самом микроконтроллере, а потом экспериментировать.
Можно для начала по двум кнопкам регулировать яркость свечения диода.

47

Deimos написал(а):

Для начала нужно разобраться в самом микроконтроллере, а потом экспериментировать.
Можно для начала по двум кнопкам регулировать яркость свечения диода.

А как? Программно много переделывать?

48

По прерываниям отслеживать кнопки.
Яркость можно изменять регулируя длительность высокого  и низкого уровней.

49

Думаешь это легче чем мелодии переделать?
Есть у меня книга "PIC-микроконтроллеры практика применения" - автор Кристиан Тавернье, там очень хорошо описан ассемблер. Буду познавать! А как осознать что такое прерывания?
Это что-то вроде динамического управления индикаторами?

50

Это наподобие перехода на более приоритетную задачу(1) с возвращением к выполняемой в текущее время(2), но после обработки приоритетной задачи.
(Причем возвращение произодет не к началу(2), а именно к тому месту откуда произошел переход. )

Да уж, объяснил :(

51

А чего? Вполне доступно!  :)
Только я пока не имею представление как это выглядит программно! :/

52

В тойже проге.

Код:
	org     0x0004
	goto    int_rtcc        ; прерывание от таймера RTCC

0х0004 - вектор прерывания.
При появлении флага переполненя таймера происходит переход на этот адрес.
int_rtcc программа обработки прерывания.

53

Программа обработки прерывания пишется отдельно?

54

В том примере да, а вообще можно было и сразу написать.

55

Так... про ассемблер я вроде внял (учу его теперь)... Про Си тоже немного...
А для чего Борланд, дельфи? Бейсик..  Можно - ли на бейсике писать для Пиков или Атмелей?

56

Alexder1 написал(а):

А для чего Борланд, дельфи? Бейсик..  Можно - ли на бейсике писать для Пиков или Атмелей?

Можно, конечно, если компилятор под контроллер найти, но вот только незадача в другом.
дело в том, что это языки высокого уровня, и с нашими задачами они справятся, но не оптимально - т. е. медленно и много памяти съест :)
поэтому пишите на асме!
АСМ рулит. я писал на си, но проги расходлись по длине почти в 2 раза - думайте сами.
притом скорость моих программ намного была выше чем сишный аналогов, мною же писанных!

Отредактировано sja (2006-05-29 15:47:00)

57

А Си от Ассмы глобально отличается?

58

По времени написания работоспособного кода Си намного быстрее чем асм.

59

обычно требуется оптимальный и корректный код, ну хотя си считаецца почему-то языком низкого уровня, поэтому на чем писать - выбор автора. но если можешь на асме - сможешь на любом. эт точно!

читай подпись :)

60

Пообщавшись с людьми, я все же решил что Си! По голосам большинства!


Вы здесь » PNP-LinE » Контроллеры и Компьютеры. » Языки программирования