Перейти к блогу GetChip.net - блог        JilTE[1] - в разработке     Модификации устройств - модификации

 
Текущее время: 29 мар 2024, 00:33

Часовой пояс: UTC + 3 часа [ Летнее время ]



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Трубка связиста на МЕГЕ8
СообщениеДобавлено: 13 окт 2014, 17:43 
Не в сети

Зарегистрирован: 20 сен 2014, 07:20
Сообщения: 1
Всем доброго времени суток!!на вашем сайте я недавно,как и в изучении avr-ов.Но с паяльником дружу давно,хоть и были перерывы!Ладно ближе к делу!работаю связистом, 1.5 года.Само собой как и у каждого связиста есть неотъемлемый инструмент данной профессии - телефонная трубка связиста.Схема проста - динамик,микрофон,номеронабиратель(включено последовательно),ну и пара крокодилов на концах.Просто!!Но после долго изучения литературы и посещения форум связанных с данным семейством микроконтроллеров(ну и пары залоченных 2313 :-)),пришла в голову идея по созданию "своей" уникальной трубы!Базой для её создания скорее всего будет служить mega8a.Функции и инструменты которые собираюсь в неё впихнуть, минимальные : естественно вольтметр,может быть амперметр,прозвонка жил хотя бы относительно друг друга,ЗАЩИТА ОТ 220в(мало ли),Вывод на дисплей набираемый номер.Для начала хватит.теперь основное. Дисплей от мобилы ,как вариант Ls020.
Самое важное-клава!!Хочу сделать на базе АЦП мк,(в протэусе уже есть проэкт,написанный мною, на паскале,чуть позже приложу исходник)но если идея паттовая прошу меня поправить,или направить на путь истинный))Короче прощу помощи у опытных программистов и радиолюбителей!!!С радостью выслушаю советы пожелания и критику. p.s Пишу на паскале))


Вложения:
84032595-tru.jpg
84032595-tru.jpg [ 33.71 КБ | Просмотров: 9567 ]
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Трубка связиста на МЕГЕ8
СообщениеДобавлено: 13 окт 2014, 19:14 
Не в сети

Зарегистрирован: 20 май 2011, 23:58
Сообщения: 134
Откуда: St.-Petersburg
Вообще для работы с телефонной линией есть специализированные микросхемы.
Вот, например, мега-хрень на базе одной из них. Но без вольтметра, это да...


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Трубка связиста на МЕГЕ8
СообщениеДобавлено: 14 окт 2014, 04:40 
Хм...схема интересная,спасибо за ответ.но всё же функционал маловат.Нужно будет дополнить!Наверное на базе данной микрухи и буду собирать свой девайс.Но всё же хотелось бы запилить на базе меги 8!мне всё же важен не только результат,а еще и процесс.Так как я новичок,то хотел не только собрать мега трубу,чтоб все связисты в моем цехе молча курили в сторонке,но и набраться опыта в построении устройств на мк и изучении паскаля.Так что если у кого то есть идеи как это можно реализовать на avr-е,подскажите.p.s исходники своих недолгив трудов,выложу сегодня


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Трубка связиста на МЕГЕ8
СообщениеДобавлено: 14 окт 2014, 15:36 
$regfile = "m8def.dat"
$crystal = 8000000
$hwstack = 32
$swstack = 32
$framesize = 32

Open "comb.3:9600,8,n,1" For Output As #2

Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portd.7 , Db6 = Portd.6 , Db7 = Portd.5 , E = Portd.4 , Rs = Portd.3
Config Lcd = 16 * 1a
Config Portb.1 = Output
Led Alias Portb.1 'Светодиод имитирует импульсный набор
Dim R As Word
Config Adc = Single , Prescaler = Auto , Reference = Internal

Do
Portb.1 = 0
R = Getadc(0)
Print #2 , R 'Вывод значения ацп на терминал "


Select Case R " Клавиатура на ацп"
Case 0 : Exit Do
Case 636 : Lcd "1"
Portb.1 = 1
Waitms 50
Portb.1 = 0

Case 335 : Lcd "2"
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0

Case 423 : Lcd "3"
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0

Case 585 : Lcd "4"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0

Case 321 : Lcd "5"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0

Case 403 : Lcd "6"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0

Case 541 : Lcd "7"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0

Case 307 : Lcd "8"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0

Case 385 : Lcd "9"
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0
Waitms 50
Portb.1 = 1
Waitms 50
Portb.1 = 0

Case 369 : Cls

Case 295 : Locate 1 , 4
Lcd "MENU"
Waitms 700
Locate 1 , 3
Lcd "VOLTMETR"
Locate 2 , 3
Lcd "TELEFON"




Case 1000 : Led = 1
Waitms 500
Led = 0
Waitms 500
Led = 1

Waitms 300
Return
End Select
Loop
End

Исходник в баскоме,строго не судите.Тут всего лишь прога для клавиш и начало для меню,естественно много недоработок,всётаки первая моя прога))).Прошу помогите как упростить прогу,в плане включения- отключения порта!А также как обьявить вместо одного значения АЦП, отрезока типа: от 320 до 340,так как на практике значения ацп будут естественно скакать.Ну и если это гиблая затея(клавиатура на ацп),так и скажите,буду собирать на сдвиговых!Ну а по поводу основной схемы трубы,2 варианта.Готовый,который нужно будет подправить http://madelectronics.ru/zhuk/bugs3.htm. Либо свой,который всё еще в разработке...Жду советов и упреков))


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Трубка связиста на МЕГЕ8
СообщениеДобавлено: 14 окт 2014, 21:30 
Не в сети
Аватара пользователя

Зарегистрирован: 11 янв 2014, 16:23
Сообщения: 64
Как я понимаю, в программе вы пытались имитировать импульсы набора. Я бы рекомендовал использовать приблизительно такую функцию набора:
While i>0 do begin
dec(i)
Portb.1 = 1
Waitms 50
end
где i - набираемая цифра
Как вариант можно и лучше прикрутить, перекомпилировав на Мегу8. Не совсем понятно, зачем нужна АЦП для клавиатуры, другое дело для вольтметра достаточно всего один такой порт.
PS: А вообще, я будучи связистом использовал вот такой агрегат, очень удобно и практично (особенно прослушивать разговоры :) ).


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Трубка связиста на МЕГЕ8
СообщениеДобавлено: 21 окт 2014, 00:42 
Не в сети

Зарегистрирован: 20 май 2011, 23:58
Сообщения: 134
Откуда: St.-Petersburg


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 19


Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB