роботы
робототехника
микроконтроллеры
Главная
Как сделать робота
Новости
Спорт
Статьи
Wiki
Форум
Downloads
Ссылки
Контакты  


 Страниц (17): В начало « ... 2 3 4 5 [6] 7 8 9 10 ... » В конец    

> Без описания
1_ulyanovsk
Отправлено: 10 Октября, 2009 - 21:46:34
Post Id



Маршал


Сообщений всего: 126
Дата рег-ции: Сент. 2009  





Да СПАСИБО. Пробую сейчас оформить это в цикл.
 
 Top
nest Администратор
Отправлено: 10 Октября, 2009 - 23:07:00
Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  





1_ulyanovsk, у многих µC есть встроенный ADC. у меги8, правда, всего 6 (8)... но ...
можно коммутировать две группы датчиков по 5 штук... в зависимости от применённых датчиков можно аналоговый коммутатор и ОУ вообще убрать....
 
 Top
Alex_cnc
Отправлено: 11 Октября, 2009 - 20:11:37
Post Id



Лейтенант


Сообщений всего: 32
Дата рег-ции: Февр. 2009  





Parni pomogite LCD ne zapuskaetsa, proshivaju Atmega8 i vse chto na ekrane 16 zalitix simvolov v odny strochky i bolshe ni chego.

CODE:
/*****************************************************
This program was produced by the
CodeWizardAVR V2.04.3a Evaluation
Automatic Program Generator
© Copyright 1998-2009 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com

Project :
Version :
Date : 26/09/2009
Author : Freeware, for evaluation and non-commercial use only
Company :
Comments:


Chip type : ATmega8
Program type : Application
AVR Core Clock frequency: 10.240000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 256
*****************************************************/

#include <mega8.h>

// Alphanumeric LCD Module functions
#asm
.equ __lcd_port=0x12 ;PORTD
#endasm
#include <lcd.h>

typedef unsigned char byte;

// table for the user defined character
// arrow that points to the top right corner
flash byte char0[8]={
0b10000000,
0b10001111,
0b10000011,
0b10000101,
0b10001001,
0b10010000,
0b10100000,
0b11000000};

// function used to define user characters
void define_char(byte flash *pc,byte char_code)
{
byte i,a;
a=(char_code<<3)|0x40;
for (i=0; i<8; i++) lcd_write_byte(a++,*pc++);
}

void main(void)
{
// initialize the LCD for
// 2 lines & 16 columns
lcd_init(16);

// define user character 0
define_char(char0,0);

// switch to writing in Display RAM
lcd_gotoxy(0,0);
// display the user defined characters
lcd_putsf("User defined\nchar 0:");
// display the user defined char 0
lcd_putchar(0);

// stop here
while (1);
 
 Top
VCOM Супермодератор
Отправлено: 11 Октября, 2009 - 20:41:14
Post Id



Супермодератор


Сообщений всего: 658
Дата рег-ции: Март 2007  





У тебя скорей всего контрастность не настроена... Покрути резистор контрастности.
 
 Top
Alex_cnc
Отправлено: 11 Октября, 2009 - 21:17:28
Post Id



Лейтенант


Сообщений всего: 32
Дата рег-ции: Февр. 2009  





Net y mena VR 0-15Kom stoit krytil bez rezyltatov
(Добавление)
Y mena takoi vopros a esli y mena AVRprog 910 ili BM9010 kogda ja proshiva Atmega 8 mozet bit' takoe chto po usb porty pitanija ne hvataet?
 
 Top
nest Администратор
Отправлено: 11 Октября, 2009 - 21:45:58
Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  





Alex_cnc пишет:
16 zalitix simvolov v odny strochky i bolshe nichego

ЛЦД модуль не инициализированн.
это всё, что можно сказать из этой информации.
схема, по которой собранно, есть ?
ЛЦД подключён по 8-ми или 4-ёх битной шине ?

(Отредактировано автором: 12 Октября, 2009 - 04:02:01)

 
 Top
Alex_cnc
Отправлено: 11 Октября, 2009 - 22:11:39
Post Id



Лейтенант


Сообщений всего: 32
Дата рег-ции: Февр. 2009  





Pohody moi BM9010 prikazal dolgo zit', pohody ego mesto v mysorke.
vtikajy v usb port na +5 i gnd tetikom meril daze 0.01V
vidaet
 
 Top
nest Администратор
Отправлено: 11 Октября, 2009 - 22:42:27
Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  





да судя по схеме программатор то довольно сложно спалить...
или вся схема питалась от УСБ ?
 
 Top
Alex_cnc
Отправлено: 11 Октября, 2009 - 23:06:41
Post Id



Лейтенант


Сообщений всего: 32
Дата рег-ции: Февр. 2009  





Polychaetsa chto vtikajy v usb bm 9010 krasnii svetodiod na nem zagoraetsa a na otladochnoi plate ne zagoraetsa chto eto mozet bit'. a AVRprog1.40 pishet"Can't enter programing mode", Chipblaster pishet toze samoe.
 
 Top
nest Администратор
Отправлено: 11 Октября, 2009 - 23:15:48
Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  





вся схема питается от УСБ ?
 
 Top
Белый Волк Супермодератор
Отправлено: 12 Октября, 2009 - 03:29:45
Post Id



Супермодератор


Сообщений всего: 648
Дата рег-ции: Февр. 2007  





Ни на принципиальной схеме, ни на печатной плате (http://www.masterkit.ru/info/magshow.php?num=380 ) нет соответствующего соединения шины питания USB с конечным устройством. Учитывая, что в оригинальной конструкции программатора есть предохранитель по шине питания (чтобы не вывести из строя USB), а в данной - его нет, а также опираясь на описание MasterKIT ("Ток потребления: не более 50 мА"Подмигивающий, стоит предположить, что конечное (программируемое) устройство необходимо запитать отдельно.
 
 Top
1_ulyanovsk
Отправлено: 12 Октября, 2009 - 20:32:08
Post Id



Маршал


Сообщений всего: 126
Дата рег-ции: Сент. 2009  





Вопросы тут конечно интересные. Но Безграмоности бой ! ! ! Бобедите безграмоность ! Помогите )) А есть ли что то вроде маски для вывода в порт. Мне нужно вывести на выводы D0-D3 код а D4-D7 оставить без изменения. Не 0 и не 1 . .п росто без изменения. Или аналог маски для вывода только, для чтения я понял как работает а для вывода нет . Искал похожие примеры не нашел. (нужен пример на Си) HE-E-E-LP ! !

(Отредактировано автором: 12 Октября, 2009 - 20:41:44)

 
 Top
nest Администратор
Отправлено: 12 Октября, 2009 - 21:37:45
Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  





леххко:

CODE:

ldi temp1,0b11010011; регистр, bits0..3 которого должны отправиться в D0-D3

in temp0,PIND
andi temp0,0b11110000 ;mask bits3..0
andi temp1,0b00001111
or temp0,temp1
out PORTD,temp0


но можно и раздельно ставить/сбрасывать биты через sbi/cbi
 
 Top
VCOM Супермодератор
Отправлено: 12 Октября, 2009 - 21:39:22
Post Id



Супермодератор


Сообщений всего: 658
Дата рег-ции: Март 2007  





Чот может я спросоня не понял, но имхо
unsigned char temport,out;
out=0x01;
temport=(0xF0 | out);
PORTD=(PORTD | temport);
В out то что нужно вывести....
(Добавление)
А зачем с PIND то читать? Ж)))) Ему без изменения надо... Да еще и на С Ж)))
 
 Top
1_ulyanovsk
Отправлено: 12 Октября, 2009 - 21:43:47
Post Id



Маршал


Сообщений всего: 126
Дата рег-ции: Сент. 2009  





nest пишет:
леххко:

CODE:

ldi temp1,0b11010011; регистр, bits0..3 которого должны отправиться в D0-D3

in temp0,PIND
andi temp0,0b11110000 ;mask bits3..0
andi temp1,0b00001111
or temp0,temp1
out PORTD,temp0


но можно и раздельно ставить/сбрасывать биты через sbi/cbi


Вот я вижу маску для вывода как бы. Но как ее в Си реализовать ? Мой Асенмблер оставляет желать лучшего. На симуляторе уже тупо перебирал комбинации масок с портами- никак. Как же все же на Си ?
 
 Top
Страниц (17): В начало « ... 2 3 4 5 [6] 7 8 9 10 ... » В конец
« Программирование микроконтроллеров »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 





Powered by Exclusive Bulletin Board
ExBB FM 1.0 RC1 Smiles by Fool from Foolstown