Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 10.07.2007, 12:44  
vly67
Прописка
 
Регистрация: 21.04.2007
Сообщений: 171
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 3 сообщении(ях)
vly67 на пути к лучшему
По умолчанию

Учтите , что адрес RSTA для вашего проца может отличаться. Возьмите из даташита.
У меня он 0xfab. Да и на положенияе OERR бита посмотрите - в общем всё просто.
Реклама:
vly67 вне форума  
Непрочитано 10.07.2007, 21:57  
double_dash
Прописка
 
Аватар для double_dash
 
Регистрация: 15.10.2006
Сообщений: 130
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
double_dash на пути к лучшему
По умолчанию

Сообщение от urry
Проект в студию (за хайтек обидно )
Самый нормальный компилятор для 16 пиков.
прошу прощения
Завалился на глупости:
выставил слово конфигурации в меню MPLab,
а оно в hex не записалось(?)
(__CONFIG я закоментарил -
все таки хайтековских предопределений я еще хорошенько не знаю,
думал так надежней - да уж!)
Только недавно дернуло заглянуть во вкладку конфигурации WinPic
- а там конечно же бардак.
В общем все что должно работать - работает.

... а все что не должно - не работает:
с прерыванием по перепаду уровня на RB4-RB7
та же история что и в CCS,
только активизирую: RBIE=1
- и все накрывается медным тазом
(и это в proteus'е, а в МК и записывать боюсь).

А еще хотелось бы узнать,
обработчик этого прерывания нужно помещать в новую процедуру interrupt,
или уже в существующей можно дописать if(RBIF) {....} ?
double_dash вне форума  
Непрочитано 12.07.2007, 22:38  
urry
Почётный гражданин KAZUS.RU
 
Аватар для urry
 
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
urry на пути к лучшему
По умолчанию

пожалуйста, проект в студию. Разберемся.
urry вне форума  
Непрочитано 13.07.2007, 07:15  
rogonov
Прохожий
 
Регистрация: 15.06.2007
Сообщений: 4
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 1 сообщении
rogonov на пути к лучшему
По умолчанию

По поводу прерывания по перепаду уровня на RB4-RB7:
Перед тем как установить RBIE, необходимо прочитать PORTB и сбросить RBIF. Причем порт читать обязательно, даже если он вам ненужен.
rogonov вне форума  
Непрочитано 15.07.2007, 20:01  
double_dash
Прописка
 
Аватар для double_dash
 
Регистрация: 15.10.2006
Сообщений: 130
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
double_dash на пути к лучшему
По умолчанию

Сообщение от urry
проект в студию
Дело в том что как оказалось проблемы по большей части аппаратные
(которые по видимому еще и усулубляются программными глюками)
Я уже писал что между стабилизатором и МК у меня включен резистор
на 680 Ом чтобы телефон не вырубался
Так вот, когда замыкается датчик
напряжение на МК падает до 1.6 В - и все повисает.
Попробовал гасить напряжение на самих линиях TX-RX:
с линией МК-›телефон мне справиться удалось
- телефон перестал вырубаться, команды проходят.
А вот с линией телефон-›МК так ничего и не получилось.
Ниже предлагают также поставить на нее резистор:

Странно...
Мне кажется что в этом направлении сигнал наоборот надо усиливать(?)
в любом случае ни то ни другое не помогает.
Вот такая вот дилемма:
или оставить баластный резистор и будет работать дозвон
или убрать - и будет срабатывать датчик.
Я даже с горя подумал:
а не сделать ли все на двух МК
- один будет общаться телефоном,
другой обрабатывать сигналы от датчика
Глупо? конечно
Но ничего лучше мне пока в голову не пришло
double_dash вне форума  
Непрочитано 15.07.2007, 20:07  
double_dash
Прописка
 
Аватар для double_dash
 
Регистрация: 15.10.2006
Сообщений: 130
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
double_dash на пути к лучшему
По умолчанию

Еще хотелось бы сказать пару гадостей в адрес Proteus'a.
Вот простая программка: мигает красный диод,
по перепаду на RB5 включается/выключается зеленый

Код:
list p=16F628a;
#include ‹p16F628a.inc›

#define led_red PORTA, 4
#define led_green PORTA, 1

; 628:
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC & _BODEN_OFF & _LVP_OFF & _MCLRE_ON 

tmp		EQU 0x20
_c1 	EQU 0x21
_c2 	EQU 0x22
w_tmp 	EQU 0x23
st_tmp	EQU 0x24 

bank0	macro
		bcf STATUS, RP0
		bcf STATUS, RP1
		endm

bank1	macro
		bsf STATUS, RP0
		bcf STATUS, RP1
		endm



		ORG 0x000
		goto main
		
;======================================		
		ORG 0x004	
		bank0		
		movwf w_tmp
		movf STATUS, w
		movwf st_tmp

		btfss led_green
		goto led_ON
		bcf led_green	
		goto int_end
led_ON:		bsf led_green


;=======================================

int_end:

		
		movf st_tmp, w
		movwf STATUS
		swapf w_tmp, f
		swapf w_tmp, w
			
		bcf INTCON, RBIF
			
		retfie

;============= main ====================

main:

		bank0
		clrf PORTA
		clrf PORTB 

		bank1
		movlw b'00100000'
		movwf TRISA      
		movlw b'00100001'
		movwf TRISB
		
		bsf OPTION_REG, NOT_RBPU
		
		bank0
		bsf led_red
		
	
		bcf INTCON, RBIF
		bsf INTCON, RBIE
		bsf INTCON, GIE
			
									
stand_by:

		call delay_sec		
		btfss led_red
		goto led_ON2
		bcf led_red
		goto stand_by
led_ON2:	
		bsf led_red		
		goto stand_by


;=======================================
delay_sec 	
		bank0
		movlw 0xFF
		movwf _c1
	c1: 	movlw 0xFF
		movwf _c2
	c2:	decfsz _c2, f
		goto c2
		decfsz _c1, f
		goto c1
		return
						
		end

- в реальности все работает в лучшем виде
(испытывал как на 628 так и на 84 ПИКе).
В Proteus'е симулируется полный бред

Прикрепленный файл: 9175384.rar
double_dash вне форума  
Непрочитано 15.07.2007, 22:16  
vly67
Прописка
 
Регистрация: 21.04.2007
Сообщений: 171
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 3 сообщении(ях)
vly67 на пути к лучшему
По умолчанию

Лично мне мало что понятно из вашего мутного описания аппаратной части. Отсюда не могу и посоветовать ничего дельного. Кажется проще сбросить схему вашего проекта.
vly67 вне форума  
Непрочитано 16.07.2007, 22:22  
double_dash
Прописка
 
Аватар для double_dash
 
Регистрация: 15.10.2006
Сообщений: 130
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
double_dash на пути к лучшему
По умолчанию

и ничего не мутно
Все очень даже четко описано.
Мне так из этого описания все прекрасно понятно
Но если нужна конкретика,
вот конкретный вопрос:
что нужно изменить в программе
чтобы правильно обработать прерывание по перепаду на RB5?
В файле - модель в Proteus'е и проект в MPLab на хайтеке
(в основном это проект urry'я, я в нем мало что изменил)

Но еще раз повторяю
Пример работы с прерыванием по перепаду на RB4-RB7
который в реальности функционирует без проблем,
в Proteus'е симулируется неверно.
Так что
как в нем можно отлаживать мой проект
- непонятно

Прикрепленный файл: 7729121.rar
double_dash вне форума  
Непрочитано 17.07.2007, 07:14  
vly67
Прописка
 
Регистрация: 21.04.2007
Сообщений: 171
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 3 сообщении(ях)
vly67 на пути к лучшему
По умолчанию

Сообщение от double_dash
Дело в том что как оказалось проблемы по большей части аппаратные
(которые по видимому еще и усулубляются программными глюками)
Я это имел в виду - принципиальную схему вашего проекта, вы же пишите, что у вас проблемы ,в основном, в аппаратной части.
Отладку я делаю на MPLAB IDE2 (debuger), поэтому всё вижу на реальном железе.

Прикрепленный файл: 7729121.rar
vly67 вне форума  
Непрочитано 17.07.2007, 09:34  
genimax
Прохожий
 
Регистрация: 17.07.2007
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
genimax на пути к лучшему
По умолчанию

посмотрите на сайте http://www.guarda.ru

в частности здесь
genimax вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Может кто делал лазерный дальномер на микроконтроллере? andron13 Микроконтроллеры, АЦП, память и т.д 14 08.04.2016 07:47
Соеденение микроконтролера через FastEthernet - кто делал ? expolit Микроконтроллеры, АЦП, память и т.д 13 29.12.2007 22:51
зарядка для gsm-pager'а double_dash Источники питания и свет 48 04.08.2007 16:31
Кто делал DC-DC наTDA2004? FOLKSDOICH Источники питания и свет 13 14.09.2006 15:41
Кто нибудь делал вольтметр на ПИК - откликнитесь AnB Измерительное оборудование 23 20.12.2005 22:49


Часовой пояс GMT +4, время: 00:24.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot