Jump to content

    

ElectraLord

Участник
  • Content Count

    11
  • Joined

  • Last visited

Community Reputation

0 Обычный
  1. Скачал другую версию C30 все работает тема закрыта!!!
  2. Здраствуйте!!! Создал проект в MPLAB компил C30 мк PIC24HJ256GP210 #include <p24hj256gp210.h> main() { // инициализация управляющих регистров TRISB = 0x0000; // Выводы 0..7 порта PORT настраиваем как выходы T1CON = 0x8030; // TMR1 включен, предделитель 1:256, Tclk/2 // главный цикл приложения while(1) { // 1. Включаем выводы 0-7 и ждём 1/4 секунды PORTB = 0xFFFF; TMR1 = 0; // обнуляем счётчик while (TMR1 < 100) { } // просто ждём // 2. Выключаем все выводы и ждём 1/4 секунды PORTB =0x0000; TMR1 = 0; // обнуляем счётчик while ( TMR1 < 100) { } // просто ждём } // главный цикл } // main Работает только с портом D в книге Лусио ди Джасио Программирование на С PIC24 используется pic24fj!!! AD1PCFG=0xFFFF; ---компилятор это неест. в даташите написано AD1PCFGH (or) AD1PCFGL пробоввал AD1PCFGH=0xFFFF; AD1PCFGL=0xFFFF; компилятор неругается но ничего непроисходит Смотрел в Simulator Logic analizer
  3. Конечно нет LCD это только небольшая часть. Остальная часть программы уже реализована в виде отдельного блока осталось только индикацию прикрутить.
  4. т.е написать всю прогу через if ? t=t+1; if t>17 ----- if t>20 ------ if t>500 --- --- if t>5000 if if только так???
  5. неужели никто незнает как получить такое ? E=1; 200 нс E=0; 500нс E=1; 400нс D=DATA; 400нс E=0; 800нс RN=1; на Veryloge Мне сказали что легко можно перенести прогу для контроллера на плис но сдесь нет таких задержек как там. Но все же может ктото может помочь Что же касается схематика так я и так из veryloga создаю модуль в схематике. Ну собственно я так и сделал t=t+1 if t>17 begin ---end if t>20 ------ Получается очень громозко и неуниверсально
  6. Если несинтезируемы тогда как их получают??????? ведь у меня задержка всеравно получается примерно 17 тактов ок 500 нс Зная сколько длится один такт можно подсчитать задержку или всетаки нетак? Предложите вариант если знаете как сделать например E=1; 200 нс E=0; 500нс E=1; 400нс D=DATA; 400нс E=0; 800нс RN=1; Как такое реализовать,пожалуйста предложите ваши варианты
  7. Может ктонибудь обьяснить принцип реализации задержки Все, что написано внутри блока выполняется за один такт. но как тогда сделать последовательную задержку??? через if ??? t=t+1; if t>17 ----- if t>20 ------ if t>500 --- --- if t>5000 if if только так??? пробовал через always но тогда тоже будет нагромождение
  8. FSM??? Спасибо конечно но Может всетаки есть примеры уже реализованныйх задержек? или конкретные сылки
  9. Всем Привет!!!! Пожалуста помогите разобратся. Раньше програмировал PIC и таких проблем невозникало . А сейчас решил прикрутить LCD к Cyclone 1 и задержки неработают Может есть другие методы мне нужно реализовать передачу данных пробовал E=1; delay(15); DATA=DD; delay(15); E=0; task delay //// endtask Интересует Verylog always @ (posedge clk) begin t=t+1; if ((t>17)||q) begin p=1; t=0; end end always @ (posedge p) пробовал делать то что выше но так неудобно Мне нужна универсальная задержка Почемуто в разных примерах встречается запись # но в quartus 91 почемуто неработает
  10. Всем Привет!!!! Пожалуста помогите разобратся. Раньше програмировал PIC и таких проблем невозникало . А сейчас решил прикрутить LCD к Cyclone 1 и задержки неработают Может есть другие методы мне нужно реализовать передачу данных пробовал E=1; delay(15); DATA=DD; delay(15); E=0; task delay //// endtask Интересует Verylog always @ (posedge clk) begin t=t+1; if ((t>17)||q) begin p=1; t=0; end end always @ (posedge p) пробовал делать то что выше но так неудобно Мне нужна универсальная задержка Почемуто в разных примерах встречается запись # но в quartus 91 почемуто неработает