Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

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

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


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Mega48 помогите разобраться


Mega48 помогите разобраться

Сообщений 1 страница 13 из 13

1

Добрый день уважаемые форумчане. Помогите пожалуйста разрешить одну проблему.
Недавно начал изучать контроллеры AVR за основу программирования взял BASCOM первый опыт в написании программы был успешен. Сделал макет на Меге16 подключил к ней датчик DS18B20 все заработало нормально так же пробовал работать с АЦП все работает без проблем.

Тут решил сделать градусник за основу взял контроллер Мега48 и два датчика температуры один цифровой второй аналоговый собрал схему и тут начались проблемы почему то контроллер упорно не хочет общаться с датчиком что бы я не делал, а АЦП почему то работает только от питания контроллера и не хочет работать от опорного напряжения показывая постоянно значение 1023.

Может кто подскажет в чем может быть проблема вот текст программы?

$regfile = "m48def.dat"                                     
'------------------------------------------

On Timer0 Timer0_int Nosave                                 

$crystal = 1000000                                         

Config 1wire = Portd.0                                     

Config Adc = Single , Prescaler = Auto , Reference = Internal       

   1wreset                                                 
   1wwrite &HCC                                             
   1wwrite &H44                                             

   Waitms 750

   1wreset                                                 
   1wwrite &HCC                                             
   1wwrite &HBE                                              Êîìàíäà ÷òåíèÿ ÎÇÓ äàò÷èêà

    Byte0 = 1wread()                                       
    Byte1 = 1wread()                                       

Tccr0b = &B00000011                                         

   Ddrb = &B00000110                                       
  Portb = &B00111001                                       

   Ddrc = &B00111111
  Portc = &B11000000
'---------------------

   Ddrd = &B10011100
  Portd = &B01000010

Wait 5                                                     

Enable Timer0                                               
'Enable Timer2
Enable Interrupts                                           

Bufr = Str(byte1) ‘ выводим информацию на дисплей
Bufr = Bufr + Str(byte0)
Gosub New_led 

  Wait 2

Start Adc

Bufr = ""

do

W = Getadc(7)
Bufr = Str(w) : Gosub New_led:
Wait 1                                                     

loop

0

2

:'(

0

3

а как ты думаешь какая опора у меги48?
и сколько реально приходит на ацп?

0

4

c АЦП я понял свою ошибку. Как оказывается у меги48 опорное напряжение 1.1 В а я подавал на вход 1.5 вот у меня и показывало постоянно 1023.
Может вы мне подскажите почему у меня не работает датчик температуры DS18B20?
Зарание всем спасибо.

0

5

из серии каков вопрос, таков ответ...
ты как-то не правильно работаешь с DS18B20

0

6

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

0

7

смотрел ссылки

DS18S20+NOKIA3510+MEGA16

и "AN #111" на сайте http://www.mcselec.com

ничего не понял  в чем же ошибка? может кто объяснит что я делаю не правильно и почему на меге16 все работает без проблем а на меге48 не хочет работать

0

8

Мне почему то тоже кажется что дело в самом BASCOME при программировании 0 таймера нашел ошибку  в файле m48def.dat   почему то СS01 и CS00 находятся в регистре TCCR0B хотя в ДШ написано, что они должны находится в TCCR0А.

Пробовал сначала компилировать в программе BASCOM версия 1.11.9.1 DEMO,  потом скачал  1.11.9.0 но уже не демо версию это не помогло. В схеме ошибок нет все проверял 100 раз.
Прям не знаю, что и делать с этим датчиком.

0

9

Большое спасибо за совет так и сделаю, а то я уже совсем отчаялся, думал бросить эту затею.
Проблема только в том что у меня все собранно на поверхностном монтаже а контроллер установлен в корпусе TQFP32

0

10

приезжай ко мне, я тебе ее сдую феном

0

11

:cool:  шутник однако

0

12

раз у тебя город не заполнен, значит ты не далеко от меня живешь, а значит можешь ко мне заехать...  :D

Отредактировано EdGull (2009-04-29 15:41:47)

0

13

Ура я разобрался с датчиком оказалось, что я его по схеме не правильно подключил. Этож надо было так накосячить. Ну все теперь все работает всем спасибо за участие и помощ.

0


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Mega48 помогите разобраться