Просмотр этой темы:
3 анонимных пользователей
Технолог
Зарегистрирован:
12.01.2009 7:28 Из: Уфа
Сообщений:
128
|
спасибо большое!
все сделал скомпилировал файл. В свойствах проекта стоит Hexadecirial. осталось залить в микроконтроллер прошивку
Отправлено: 18.07.2013 21:08
|
|
я алкоголик из Москвы
|
||
Технолог
Зарегистрирован:
12.01.2009 7:28 Из: Уфа
Сообщений:
128
|
сделал залил, на индикаторе один за одним отоброжает всего 5 символов вместо всего ряда написанного
при компиляции ошибок никаких нет. Вот хотел и узнать почему только 5 символов? от 0 - 4
Отправлено: 22.07.2013 10:59
|
|
я алкоголик из Москвы
|
||
Администратор
Зарегистрирован:
07.08.2008 20:40 Из: Тирасполь
Сообщений:
7276
|
а почему идет 0 1 2 3 4 и затем 10?
Отправлено: 22.07.2013 22:51
|
|
Технолог
Зарегистрирован:
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 и все дальше не хочет.
Отправлено: 23.07.2013 9:37
|
|
Технолог
Зарегистрирован:
12.01.2009 7:28 Из: Уфа
Сообщений:
128
|
может быть проблема в регистре счетчика команд PC?
Прикреплённый файл: PC.JPG (201.64 KB) PC2.JPG (150.00 KB)
Отправлено: 23.07.2013 9:54
|
|
Младший сотрудник
Зарегистрирован:
31.07.2011 14:51 Из: Тирасполь
Сообщений:
30
|
Цитата:
Отсчет включенного сторожевого таймера заканчивается в подпрограмме задержки после вывода на экран символа 4, происходит сброс микроконтроллера и все начинается сначала. Прочтите описание на выбранный микроконтроллер, в сети полно переводов на русский.
Отправлено: 23.07.2013 9:55
|
|
Технолог
Зарегистрирован:
12.01.2009 7:28 Из: Уфа
Сообщений:
128
|
PIC_master пишет:
Я выделил красным в предыдущем посту почему. Отсчет включенного сторожевого таймера заканчивается в подпрограмме задержки после вывода на экран символа 4, происходит сброс микроконтроллера и все начинается сначала. Спасибо большое помог) как говорится я не волшебник, я только учусь)))) И вот хотелось бы узнать как можно увелечить время задержки сброса в этой программе или хотя бы пример
Отправлено: 24.07.2013 9:15
|
|
Технолог
Зарегистрирован:
12.01.2009 7:28 Из: Уфа
Сообщений:
128
|
можно ли просто прописывать в строках например до 4 и после 4
дописать CLRWDT?
Отправлено: 24.07.2013 9:26
|
|
я алкоголик из Москвы
|
||
Младший сотрудник
Зарегистрирован:
31.07.2011 14:51 Из: Тирасполь
Сообщений:
30
|
Можно в отладчике найти точку где он срабатывает и поставить команду CLRWDT немного раньше. Можно просто отключить WDT.
Отправлено: 24.07.2013 9:43
|
|
Технический Директор
Зарегистрирован:
09.01.2009 0:19 Из: Tallinn
Сообщений:
2303
|
Цитата:
Кинь файл сюда,люди глянут,если им не лень,потом сравнишь,а то придется курсы открывать.
Отправлено: 24.07.2013 12:49
|
|