Перейти к содержанию
    

FxMODE

Участник
  • Постов

    13
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный
  1. ds18b20 в proteus

    в протеусе по протоколу 1wire не определяется датчик, не могу понять в чем дело. Процедура сброса и поиск устройств: OWReset: cbi OW_PORT,OW_DQ sbi OW_DDR,OW_DQ ldi XH, HIGH(DVUS(480)) ldi XL, LOW(DVUS(480)) rcall Wait4xCycles cbi OW_DDR,OW_DQ ldi XH, HIGH(DVUS(70)) ldi XL, LOW(DVUS(70)) rcall Wait4xCycles set sbis OW_PIN,OW_DQ clt ldi XH, HIGH(DVUS(240)) ldi XL, LOW(DVUS(240)) rcall Wait4xCycles ret Я не могу понять почему в протеусе эта процедура всегда дает "1" (не находит устройства), когда там аж 3 датчика висят. Что я делаю не так? пулап 4.7к. на железе я уверен заработает, так как во всех апноутах примерно одно и тоже написано, вот только время слегка отличается
  2. Тишина и трупы... вообще ничего. Ситуация вцелом: это не код, не фьюзы. Тогда это схема. меги 16 с кварцом KOYO 8.533MHz ладят?
  3. Действительно, горят: PC2 - вход тактового сигнала, PC3 - вход выбора режима, и PC5 - вход данных. JTag устройство не подсоединено. Изменил код на: PORTC=0xFF; DDRC=0x00; однако все равно не горят. Но светятся только входы JTag, когда фьюз JTag=ON.
  4. Дело в том, что когда я врубаю фьюз JTag = On, то там три диода всегда горят. Так что там все в порядке. Настройки кварца верны?
  5. Кристалл дышит, осцилом ткнул - генерит нужную частоту. Из кода оставил только void main(void) { // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected TCCR0=0x00; TCNT0=0x00; OCR0=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer 1 Stopped // Mode: Normal top=FFFFh // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud rate: 9600 UCSRA=0x00; UCSRB=0xD8; UCSRC=DPS; UBRRH=0x00; UBRRL=55; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off // Analog Comparator Output: Off ACSR=0x80; SFIOR=0x00; while (1) { PORTC=0xFF; DDRC=0xFF; } и то негарит. Диоды и вся схема вцелом исправна. Я уж даже незнаю кода проще :07:
  6. Простая отладочная схема: мега16, кварц 8.533Мгц, com-порт, max-232, и порт С весь в светодиодах. Суть в том, что прога вшита в МК и не работает. Даже элементарно неполучается помигать диодами. Я думал что проблема во фьюзах, вот и спрашиваю. С уартом буду разбираться позже, а его настройки вывел для проверкм правильности UBRR. То есть контроллер исправен, но не подает признаков жизни, почему?
  7. Доброе время суток! Спаял схему. Прога элементарно должна зажигать диоды на порте С. Но не зажигает. Походу до нее вообще дело недоходит. Фьюзы вроде впорядке, настройки USART тоже. Не подскажите в чем дело? Программатор пикрог Фьюзы: cksel = 1111 sut = 10 Bod = off VB = 4 B Brst = off Bsize = 00 EES = off scopt = off SPI = off JTAG = off OCD = on CP = L1 BLB0 = BL1 BLB1 = BL1 VDDmin = 4 VDDmax = 5.5 VDDread = 5 Usart: UCSRA=0×00; UCSRB=0xD8; UCSRC=0×86; UBRRH=0×00; UBRRL=55;
  8. Здравствуйте! Есть файл в 32 кб. Вопрос в следующем. Я так понимаю он хронится в шестнадцатиричной системе и его нужно побайтно запихать в массив и отправить на com-порт? Как это лучше сделать? Если есть пример, буду признателен. Заранее спасибо
  9. Привет! У меня стоит задача исследовать (научиться работать) с памятью AT45161D. Есть ли собранные проекты в эмуляторах, и решаема ли эта задача в VMLab, Proteus и где лучше. ATMega16. Имеется ввиду практика, теории полно в сети. Заранее спасибо!
  10. Привет! Хочу увидеть посылку контроллером байта в ком-порт ПК через нульмодемный кабель. Сам контроллер в ВМЛабе.У меня не выходит, может он только с внутренним терминалом работает? #include <90s8515.h> #include <stdio.h> /* quartz crystal frequency [Hz] */ #define xtal 4000000L /* Baud rate */ #define baud 9600 void main(void) { char k; /* initialize the UART's baud rate */ UBRR=xtal/16/baud-1; /* initialize the UART control register RX & TX enabled, no interrupts, 8 data bits */ UCR=0x18; while (1) { /* receive the character */ k=getchar(); /* and echo it back */ putchar(k); }; }
  11. Привет! Есть два компа, соединены нуль модемным кабелем через компорт. С одного посылаются символы с Тератерма. Как с помощью Си реализовать ловлю этих символов на другом компе? Заранее спасибо
  12. Приветствую. Нужно сделать запрос к СКС-3 по протоколу M-Bus. Опыта работы с протоколами не было, да и примеров найти не могу. Есть стандартный мануал, эт конечно хорошо. Но нужен любой пример запроса, просто покажите как это делать. Заранее спасибо
×
×
  • Создать...