Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
04.10.2006, 00:19
|
#111
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
для "чайников" вот:
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
04.10.2006, 22:00
|
#112
|
Частый гость
Регистрация: 14.07.2006
Сообщений: 11
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Подскажите пожалуйста
Как в CVAVR вывести на LCD число с точкой? В кратком курсе я этого не нашел
|
|
|
|
05.10.2006, 09:15
|
#113
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
в кратком курсе на странице
avr123.nm.ru/01.htm
написано:
"начинайте с изучения примеров компилятора
и других используемых программ"
смотрите пример с термометром :
C:CVAVRexamplesTHERM75
=========
Советую перед использованием ЛЮБОГО ИНСТРУМЕНТА !!!
ознакомится с примерами его применения.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
05.10.2006, 10:03
|
#114
|
Частый гость
Регистрация: 14.07.2006
Сообщений: 11
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Там немного не то. В примере написана строчка
printf("t=%c%i.%uxf8C
",sign,temp/10,temp%10); Она выводит информацию на RS-232. Команды lcd_putsf,puts,putchar с такими параметрами не работают. Компилятор ругается что много параметров. Может быть можно как-нибудь настроить функцию printf для работы с LCD? Или надо отделить целую и дробную части и вывести их по отдельности? Если да, то как это сделать?
|
|
|
|
05.10.2006, 11:04
|
#115
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Сообщение от luck26
|
Там немного не то.
В примере написана строчка
printf("t=%c%i.%uxf8C
",sign,temp/10,temp%10); Она выводит информацию на RS-232. Команды lcd_putsf,puts,putchar с такими параметрами не работают.
|
Естественно! Пример это не готовое решение а ИМЕННО пример.
Идею же вы уловили.
Сообщение от luck26
|
надо отделить целую и дробную части и вывести их по отдельности? Если да, то как это сделать?
|
Напишите на бумажке (забыв про Си) как это сделать на РУССКОМ языке. Это обычная арифметика.
Получится алгоритм.
Алгоритм запишите на Си.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
05.10.2006, 20:32
|
#116
|
Частый гость
Регистрация: 28.06.2006
Сообщений: 33
Сказал спасибо: 7
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
программа обыкновенных часов с функциями установки,
для контроллера AT90S8515 в CodeVisionAVR C Compiler
кусочек программы инициализации таймеров 1 и 0
так вопрос в чем: на AT90S8515 работает без вопросов секунды
бегут ,а на ATмега16 стоят как вкопанные причем и в живую на плате и
в VMLAB.На мой взгляд проблема в T0 очевидна и связана с TOIE0
а вот с Т1 противоречия в переносе на ATмега16 я запутался
1. TCCR1B = 9 - 1бит- CTC1
- 1бит- СК тактовый сигнал(001)
В ATмега16 CTC1 просто нет может тот случай невозможности переноса
с AT90S8515 на ATмега16
//set up timer 0
/*62.5 x (64x.25) microSec = 1.0 mSec, so prescale 64, and count 62 times.
8-разрадный таймер T0 3 младших разряда TCCR0
N=1cek*4000000Гц/64prescale =62500
*/
reload=256-62; //value for 1 Msec, we are using 4 MHz clock
TCNT0=reload; //preload timer 1 so that is interrupts after 1 mSec.
TCCR0=3; //prescalar to 64
TIMSK=2; //для 90S8515 TOIE0 turn on timer 0 overflow ISR
//TIMSK=1; //для mega16 TOIE0 turn on timer 0 overflow ISR
//================================================== ==================
//set up timer 1
/*16-разрадный таймер T1 3 младших разряда TCCR1B
*/
TIMSK = TIMSK | 0x40; //turn on timer 1 compare match interrupt
TCCR1B = 9;
OCR1A= 8000;
TCNT1 = 0; //and zero the timer
UBRR = 51; //для 90S8515
UBRRL = 51; //для mega16
пожалуйста подскажите
|
|
|
|
05.10.2006, 20:46
|
#117
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
мастером начального кода настройте таймер и посмотрите код - что куда писать.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
05.10.2006, 21:50
|
#118
|
Частый гость
Регистрация: 28.06.2006
Сообщений: 33
Сказал спасибо: 7
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
это как?
в задаче №8 у Вас временные интервалы почемуто в программе прописаны "головой"
внимательнее прочтите мою просьбу-вопрос
|
|
|
|
05.10.2006, 23:43
|
#119
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
мастером сделайте настройку для двух МК и стравните.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
06.10.2006, 05:41
|
#120
|
Частый гость
Регистрация: 14.07.2006
Сообщений: 11
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Цитата:
|
Советую перед использованием ЛЮБОГО ИНСТРУМЕНТА !!!
ознакомится с примерами его применения
|
Спасибо!!! У меня всё получилось. HELP компилятора + переводчик = классная штука
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 16:45.
|
|