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

archic

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

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

  • Посещение

Репутация

0 Обычный

Информация

  • Город
    Array

Посетители профиля

631 просмотр профиля
  1. Приглашаем активного специалиста электронщика на ремонт частотных преобразователей , желающего развиваться вместе с нами. Мечтаем об ответственном человеке с обязательным условием опыта в пусконаладке и ремонте силовой электроники, а именно частотных преобразователей , который сумел бы вместе с нами, стать частью КОМАНДЫ со следующими задачами: Ремонт и пуско-наладка частотных преобразователей, лифтовых плат и другого оборудования (Конечно обучим и поможем) Развитие и поддержка организации производственного процесса по ремонту частотных преобразователей. (Многое уже сделано). Частичная «отверточная» сборка разрабатываемого оборудования (Мы все умеем это делать и поверьте это не сложно). Помогать писать инструкции, паспорта устройств и прочее. Мы любим «мозговой штурм», он укрепляет команду. Участвовать также в обсуждении создания новых устройств, разрабатываемых компанией. Условия: Оплачиваем зарплату вовремя и всегда – ориентир - 50 000 - 85 000 руб/мес. В зависимости от проектов конечно отдельно проговариваются и премии . Работа в Москве – пос. Коммунарка, Александры Монаховой – ЗДАНИЕ Администрации (15 мин от метро Теплый Стан на автобусе) График с 9-00 до 18:00 / Понедельник-Пятница или по желанию 9-00 до 20-00 / Два через Два (у нас лояльный подход ко всем ) В здании есть приятная столовая, где можно прийти на завтрак или обед [email protected] Если вам интересно наше предложение, пишите и звоните
  2. Хорошо. Поставим вопрос по другому :rolleyes: Нужно спроектировать частотный преобразователь привода дверей на асинхронный двигатель 0,25kWa О частотнике: Устройство должно управлять асинхронными электродвигателями АИР71В8------------------------------------"треугольник"(220В) АИР80В8------------------------------------ "звезда" (380В) С обратной связью с помощью сдвоенного оптического таходатчика Механический прерыватель с числом пазов 60 Устройство должно выполнять следующие функции: 1 Обеспечивать быстрое и плавное перемещение дверей 2 Определять текущее положение дверей и наличие препятствия 3 Выдавать открытое и закрытое положение,а также наличие препятствия 4 Защита устройства и электродвигателя от перенапряжения,превышение тока и др. Может у кого есть готовые решения? Сколько будет стоить? пишите на мыло.
  3. Ищу программиста-электронщика для разработки электронного лифтового оборудования. О себе: Сам являюсь ведущим инженером в крупной лифтовой компании. Требования: 1.Опыт работы с микроконтроллерами. 2.Опыт в разработки устройств и доведение его до конечного результата. 3.Интересует долгосрочное сотрудничество Самое главное: Главное заинтересованность в совместном,быстром достижении целей и от этого получить материальное и моральное удовольствие. По условиям сотрудничества обсуждается индивидуально.Предполагается только долевое участие. Возможны варианты какого-то фиксированного объема работ. Занятость: Студент, работающий человек... не имеет значения. Нужен результат, а не кол-во потраченного времени. Mail: [email protected]
  4. Вы о чем?)))Я просто не знаю куда цифры подставить и откуда потом снять эти значения, а так в протеусе все работает
  5. ; Вот написал такую программу, но она считает только до 9-и кто подскажет что не так? ;Не судите строго я новичек. А на C писать не умею. ; ПРОГРАММА - счетчик электронный для счета импульсов ; ; Кварц - 4 МГц ; .include file "C:\AVR\AvrAssembler2\Appnotes\tn2313def.inc" ;====================================================== #define F_CPU (4000000) ;Здесь идёт определение тактовой частоты. Нужно для ;библиотеки задержек,используемой в этой либе. ;Частота в Герцах. ;====================================================== .def temp =r16 ;временный .def temp1 =r17 ;временный .def temp2 =r18 ;временный .def temp3 =r19 ;временный .def temp4 =r20 ;временный .CSEG .org 0 rjmp START ; На основную программу .org INT0addr rjmp Forward ;Oбработкa прерывания по INT0 (инкремент) .org INT1addr rjmp Back ;Oбработкa прерывания по INT1 (декремент) ;************************************************************************* START: ; ldi temp,$0F ; out WDTCR,temp ;Включение сторожевого таймера 1,9 секунды. ;====================================================== ldi Temp1,RamEnd ; установка указателя стека out SPL,Temp1 ;Инициализация стека. Обязательно!!! ;------------------------------------------------------ ldi temp1,0b00000000 out DDRD,temp1 ;Направление данных PortD (1)-выходы ldi temp1,0b11111111 out PORTD,temp1 ldi temp1,0b11111111 out DDRB,temp1 ;Направление данных порта B на вывод,В.1,2 -как входы out PORTB,temp1 ;Выдать данные на порт В ; rcall LongDelay ;программная задержка при включении wdr ;сбросить стор. таймер ; sbic pinb,Kn_2 ;если кнопка не нажата перейти на следующую команду ldi temp1,(1<<ISC01|1<<ISC11);устанавливаем прерывания INT0 и INT1 по спадающему фронту (ШУЛМ) out MCUCR,temp1 ;************************************************************************** rcall lcd_init;Инициализация дисплея. nop nop ldi temp,225 ;************************************************************************** sei ;разрешаем прерывания Inf: ldi temp1,(1<<INT1)+(1<<INT0);разрешаем прерывания INT1,INT0 out GIMSK,temp1 rjmp Inf ;бесконечный цикл ;************************************************************************* Forward:;(ПРИБАВИТЬ) ;************************************************************************* inc temp ldi r17,0 ; ldi r16,9 rcall bin16_ascii ;ldi r16,0x45 ;rcall LCD_SetAddressDD ;------------------------------------------------------------------------- reti ;выход из обработчика ;////////////////////////////////////////////////////////////////////////////// ;************************************************************************* bin16_ascii: ;************************************************************************* ;* * ;* Convert unsigned 16 bit to 5 digit ASCII * ;* * ;* * ;* * ;************************************************************************* ; ;входной: R17, R16 = 16 bit значение 0... 65535 ; выход: R20, R18, R19, R17, R16 = 5 цифр (ASCII) ; цикл: 20... 170 ldi r21, 10 + '0' _bcd0: dec r21 subi r16, low(-100000) ;+100000 sbci r17, high(-100000) brcs _bcd0 ldi r20, -1 + '0' _bcd1: inc r20 subi r16, low(10000) ;-10000 sbci r17, high(10000) brcc _bcd1 ldi r19, 10 + '0' _bcd2: dec r19 subi r16, low(-1000) ;+1000 sbci r17, high(-1000) brcs _bcd2 ldi r18, -1 + '0' _bcd3: inc r18 subi r16, low(100) ;-100 sbci r17, high(100) brcc _bcd3 ldi r17, 10 + '0' _bcd4: dec r17 subi r16, -10 ;+10 brcs _bcd4 subi r16, -'0' ;------------------------------------------------------------------------- push temp ldi r16,0x01 ;Команда очистки дисплея rcall LCD_WriteCommand ldi r16,0x45 rcall LCD_SetAddressDD pop temp ;Число должно быть в r16,чтоб отобразить на LCD rcall LCD_WriteData ; А вывод кода неупакованного BCD на дисплей зависит от его типа (дисплея). ; Если требуются ASCII символы, перед выводом добавляете к цифре $30 (0x30h). ret Back:;(Отнять) ;////////////////////////////////////////////////////////////////////////////// ;************************************************************************* dec temp ldi r17,0 ; ldi r16,9 rcall bin16_ascii ;ldi r16,0x45 ;rcall LCD_SetAddressDD ;------------------------------------------------------------------------- reti ;выход из обработчика ;************************************************************************** ; Подпрограммы выдержек времени (0,5 сек и 2,5 миллисекунды) LongDelay: ;Задержка 0,5 сек push temp1 ldi temp1,$85 out TCNT1H,temp1 ;загрузим старший байт Т1 ldi temp1,$EE out TCNT1L,temp1 ;загрузим младший байт Т1 rjmp PUSK Delay: ;Задержка 2,5 мсек push temp1 ldi temp1,$FF out TCNT1H,temp1 ;загрузим старший байт Т1 ldi temp1,$64 out TCNT1L,temp1 ;загрузим младший байт Т1 PUSK: ;запуск таймера ldi temp1,3 out TCCR1B,temp1 ;загрузим к-т предделителя Т1 и запустим его LooP: ;цикл in temp1,TIFR sbrs temp1,7 ;таймер-счетчик переполнен? rjmp LooP ldi temp1,0 out TCCR1B,temp1 ;остановить счетчик таймера ldi temp1,$80 out TIFR,temp1 ;сбросить флаг переполнения таймера pop temp1 ret .include file "C:\AVR\WH4\hd44780.asm" ; Подключение библиотеки для ; работы с дисплеем.
  6. Здравствуйте!!! Господа Подскажите как преобразовать в BCD формат для отображения на LCD в этой программе я не знаю ПОМОГИТЕ ПОЖАЛУЙСТА!!! мне надо от 0 до 9999. Пишу на асме 1.;******************************************************************** ***** 2. ;* * 3. ;* Convert unsigned 16 bit to 5 digit ASCII * 4. ;* * 5. ;* * 6. ;* * 7. ;************************************************************************* 8. ; 9. ;Входной: R17, R16 = 16 bit значение 0… 65535 10.; выход: R20, R18, R19, R17, R16 = 5 цифр (ASCII) 11.; цикл: 20… 170 12. 13.push temp 14. 15.LCDCLR ;очистка LCD 16.LCD_COORD 1,0; 17. 18.pop temp 19. 20. bin16_ascii: 21. 22. 23. 24.inc temp 25. ldi r17,0 26. 27. 28. 29.; ldi r21, 10 + ’0′ 30.; _bcd0: dec r21 31.; subi r16, low(-100000) ;+100000 32.; sbci r17, high(-100000) 33.; brcs _bcd0 34. 35. ldi r20, -1 + ’0′ 36. _bcd1: inc r20 37. subi r16, low(10000) ;-10000 38. sbci r17, high(10000) 39. brcc _bcd1 40. 41. ldi r19, 10 + ’0′ 42. _bcd2: dec r19 43. subi r16, low(-1000) ;+1000 44. sbci r17, high(-1000) 45. brcs _bcd2 46. 47. ldi r18, -1 + ’0′ 48. _bcd3: inc r18 49. subi r16, low(100) ;-100 50. sbci r17, high(100) 51. brcc _bcd3 52. 53. ldi r17, 10 + ’0′ 54. _bcd4: dec r17 55. subi r16, -10 ;+10 56. brcs _bcd4 57. 58. subi r16, -’0′ 59. 60. ;————————————————————————- 61. 62. rcall RD_DATA; 63. 64. 65. 66. 67.reti ;выход
×
×
  • Создать...