Форум

Радиолюбительский форум.

Если у Вас возникли вопросы, задавайте их на форуме.

В сети

Пользователей: 56
Из них просматривают:
Аналоги: 21. Даташиты: 9. Инструкции: 2. Новости: 10. Остальное: 2. Профиль пользователя: 2. Форум: 10.
Участников: 2
Гостей: 54

Google , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

В настоящее время нет объявлений.

1 2 3 4 5 ... 12


Re: Семисегментный индикатор с микроконтроллером
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
спасибо

я алкоголик из Москвы



Re: Семисегментный индикатор с микроконтроллером
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
все работает

LIST        P=PIC16F84A
 
 
#include    <P16F84A.INC>

 
__CONFIG  _HS_OSC _WDT_ON _PWRTE_OFF _CP_OFF


PC          EQU         02h
STATUS      EQU         03h
PortB       EQU         06h
TrisB       EQU         06h
Reg_1       EQU         0Ch
Reg_2       EQU         0Dh
Reg_3       EQU         0Eh
W           EQU         0 
;
F           EQU         1 ;

            
org         0           начало программы             
 
подготовительные моменты
             bsf         STATUS
,5    переход в Банк 1 
             clrf        TrisB
             bcf         STATUS
,5    переход назад в Банк 0
отрисовка фразы "УРА_" звук
m1           clrf        PortB       
очистка порта
            
             CLRWDT
             movlw       .0
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             call        Pause

             movlw       .1
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             call        Pause

             movlw       .2
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             call        Pause

             movlw       .3
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             CLRWDT 
             call        Pause
             
             movlw       .4
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             call        Pause

             movlw       .5
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             call        Pause

             movlw       .6
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             CLRWDT             
             call        Pause
            
             movlw       .7
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             call        Pause

             movlw       .8
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             call        Pause

             movlw       .9
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             CLRWDT 
             call        Pause

             movlw       .10
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             call        Pause

             movlw       .11
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             CLRWDT 
             call        Pause

             movlw       .12
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             call        Pause

             movlw       .13
             call        TABLE       
переход на метку TABLE
             movwf       PortB
             CLRWDT
             bsf         PortB
,7     звук
             call        Pause
             
goto        m1          переход на метку (зацикливание)
 ;====================================
TABLE        addwf      PC,F        Содержимое счетчика команд PC PC W
             retlw      
b'01101111' 0
             retlw      
b'00001100' 1
             retlw      
b'01011011' 2
             retlw      
b'01011110' 3
             retlw      
b'00111100' 4
             retlw      
b'01110110' 5
             retlw      
b'01110111' 6
             retlw      
b'01001100' 7
             retlw      
b'01111111' 8
             retlw      
b'01111110' 9
             retlw      
b'00111110' У
             retlw      
b'01111001' Р
             retlw      
b'01111101' А
             retlw      
b'00000010' _
             retlw      
b'00110101' h
              
;====================================
 ;
delay 500000 machine cycles
Pause       movlw       .85
             movwf       Reg_1
             movlw       .138
             movwf       Reg_2
             movlw       .3
             movwf       Reg_3
wr          decfsz      Reg_1
F
             
goto        wr
             decfsz      Reg_2
F
             
goto        wr
             decfsz      Reg_3
F
             
goto        wr
             
return

            
end                     конец программы


вот код.


Отредактировано пользователем MACTEP 26.07.2013 8:22:00


Re: Семисегментный индикатор с микроконтроллером
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
можно ли просто прописывать в строках например до 4 и после 4
дописать CLRWDT?

я алкоголик из Москвы



Re: Семисегментный индикатор с микроконтроллером
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
PIC_master пишет:
Я выделил красным в предыдущем посту почему.

Отсчет включенного сторожевого таймера заканчивается в подпрограмме задержки после вывода на экран символа 4, происходит сброс микроконтроллера и все начинается сначала.


Спасибо большое помог)
как говорится
я не волшебник, я только учусь))))

И вот хотелось бы узнать как можно увелечить время задержки сброса в этой программе
или хотя бы пример



Re: Семисегментный индикатор с микроконтроллером
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
может быть проблема в регистре счетчика команд PC?


Прикреплённый файл:



jpg  PC.JPG (201.64 KB)
206_51ee1a8624ed9.jpg 879X854 px

jpg  PC2.JPG (150.00 KB)
206_51ee1a929f435.jpg 832X616 px



Re: Семисегментный индикатор с микроконтроллером
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
Вот полностью код который залил на МК


LIST P=PIC16F84A

#include <P16F84A.INC>

__CONFIG _HS_OSC & _WDT_ON & _PWRTE_OFF & _CP_OFF


PC EQU 02h
STATUS EQU 03h
PortB EQU 06h
TrisB EQU 06h
Reg_1 EQU 0Ch
Reg_2 EQU 0Dh
Reg_3 EQU 0Eh
W EQU 0 ;
F EQU 1 ;

org 0 ; начало программы
; подготовительные моменты
bsf STATUS,5 ; переход в Банк 1
clrf TrisB
bcf STATUS,5 ; переход назад в Банк 0
; отрисовка фразы "УРА_" + звук
m1 clrf PortB ; очистка порта

movlw .0
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .1
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .2
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .3
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .4
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .5
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .6
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .7
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .8
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .9
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .10
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .11
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .12
call TABLE ; переход на метку TABLE
movwf PortB
call Pause

movlw .13
call TABLE ; переход на метку TABLE
movwf PortB
bsf PortB,7 ; звук
call Pause
goto m1 ; переход на метку (зацикливание)
;====================================
TABLE addwf PC,F ; Содержимое счетчика команд PC = PC + W
retlw b'01101111' ; 0
retlw b'00001100' ; 1
retlw b'01011011' ; 2
retlw b'01011110' ; 3
retlw b'00111100' ; 4
retlw b'01110110' ; 5
retlw b'01110111' ; 6
retlw b'01001100' ; 7
retlw b'01111111' ; 8
retlw b'01111110' ; 9
retlw b'00111110' ; У
retlw b'01111001' ; Р
retlw b'01111101' ; А
retlw b'00000010' ; _
retlw b'00110101' ; h
;====================================
;delay = 500000 machine cycles
Pause movlw .85
movwf Reg_1
movlw .138
movwf Reg_2
movlw .3
movwf Reg_3
wr decfsz Reg_1, F
goto wr
decfsz Reg_2, F
goto wr
decfsz Reg_3, F
goto wr
return

end ; конец программы



и внизу видео снятое что из этого получилось
от 0 до 4 и все дальше не хочет.

http://vk.com/id8094741?z=video8094741_165689875%2Fvideos8094741



Re: Семисегментный индикатор с микроконтроллером
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
сделал залил, на индикаторе один за одним отоброжает всего 5 символов вместо всего ряда написанного
при компиляции ошибок никаких нет.
Вот хотел и узнать почему только 5 символов? от 0 - 4

я алкоголик из Москвы



Re: Проблема с ноутбуком
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
напряжение по питанию на входе инвентора 18 19 В

я алкоголик из Москвы



Re: Семисегментный индикатор с микроконтроллером
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
спасибо большое!
все сделал скомпилировал файл.
В свойствах проекта стоит Hexadecirial.
осталось залить в микроконтроллер прошивку

я алкоголик из Москвы



Re: Проблема с ноутбуком
Технолог
Зарегистрирован:
12.01.2009 7:28
Из: Уфа
Сообщений: 128
Не в сети
Кто может подсказать по ноутбуку модели CQ61-210ER.
Проблема заключается в инвенторе.
постоянно греються ключи менял лампу, все равно греются, покупал другой инвентор, так же. Возможно ли из за проблем поступления управляющего сигнала на вход инвентора?
Вчера проверял греется не сильно ключи на инветоре все собрался пооработал и сдох предохранитель и ключь причем это уже второй инвентор, который подыхает.
Нашел родной так он вообще запускается на секунду и выключается. Пробывал с новыми лампами с магазинами и с родной, все так же




1 2 3 4 5 ... 12




Разное

Интересно

Во время поиска небольших радиодеталей, упавших со стола, вероятность их обнаружения прямо пропорциональна размеру детали и обратно пропорциональна их значению для завершения работы